Столько не живут…NebelWefer писал(а):а вот есть ли данные по чтению?
Мелкие вопросы по МК и ПЛИС.
Re: Мелкие вопросы по МК и ПЛИС.
- Реклама
- Starichok51
- Модератор
- Сообщения: 19053
- Зарегистрирован: Сб авг 14, 2010 15:05:51
- Откуда: г. Озерск, Челябинская обл.
Re: Мелкие вопросы по МК и ПЛИС.
зачитать "до дыр" не получится...
Мудрость приходит вместе с импотенцией...
Когда на русском форуме переходят на Вы, в реальной жизни начинают бить морду.
Когда на русском форуме переходят на Вы, в реальной жизни начинают бить морду.
- oleg63m
- Друг Кота
- Сообщения: 20132
- Зарегистрирован: Чт сен 01, 2011 12:53:27
- Откуда: ТьмуТаракания. Почетный житель подмостовья
- Контактная информация:
Re: Мелкие вопросы по МК и ПЛИС.
что записано в епром-не вырубать топором 
Шекспир сказал: Судить меня -дано лишь Богу, другим я укажу дорогу... https://natribu.org/
Я его полностью поддерживаю.
Программирую на Fuse AtmelAVR.
Я его полностью поддерживаю.
Программирую на Fuse AtmelAVR.
- Chip115
- Сверлит текстолит когтями
- Сообщения: 1132
- Зарегистрирован: Пт фев 16, 2007 14:18:20
- Откуда: Новосибирск
- Контактная информация:
Re: Мелкие вопросы по МК и ПЛИС.
Всем привет!
Есть камень STM32F103 на китайской отладочной плате под DIP40.
Надо пикнуть писчалкой на частоте примерно 1кГц.
Что бы сгенерить звук буду инвертировать состояние вывода PB1 на котором сидит (через транзистор) зуммер.
Все это делаю в прерывании.
Настройка таймера на 1 кГц вот
Вопросы.
1. Почему начинает пищать когда TIM_Cmd(TIM4, ENABLE) не активная? Я так понимаю что таймер не должен считать, пока не врубим его, но он начинает работать после настройки прерываний. Звук чистый.
2. Если врубать таймер вызывая функцию TIM_Cmd(TIM4, ENABLE), то звук становится какой-то хрипящий, частота падает. Осциллографа нет под рукой. всё на слух (( Впечатление что прерываение обрабатывается по разным событиям. Почему так?
3. Отладчик (отладка через STLINK SWD) попадает в обработчик TIM4_IRQHandler только при первом проходе. Потом, почему-то, точка останова в обработчике прерывания игнорится. В обработчк от таймера 3 (юзаю еще один таймер, завел на тик в 1 сек.) попадает исправно и "фишка" с TIM_Cmd работает. Этот таймер мигает светодиодом раз в сек.
-------
Всё. Разобрался. Оказывается мне подсунули зуммер со встроенным генератором внутри. отсюда и путаница
Есть камень STM32F103 на китайской отладочной плате под DIP40.
Надо пикнуть писчалкой на частоте примерно 1кГц.
Что бы сгенерить звук буду инвертировать состояние вывода PB1 на котором сидит (через транзистор) зуммер.
Все это делаю в прерывании.
Код: Выделить всё
extern "C"{
void TIM4_IRQHandler(void)
{
if (TIM_GetITStatus(TIM4, TIM_IT_Update) == SET)
{
TIM_ClearITPendingBit(TIM4, TIM_IT_Update);
GPIOB->ODR^=GPIO_Pin_1;
}
}
}Код: Выделить всё
void tim4_config (void)
{
RCC_ClocksTypeDef RCC_Clocks;
RCC_GetClocksFreq(&RCC_Clocks);
RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM4, ENABLE);
TIM_TimeBaseInitTypeDef TIM_InitStructure;
TIM_TimeBaseStructInit(&TIM_InitStructure);
TIM_InitStructure.TIM_Prescaler = (RCC_Clocks.HCLK_Frequency/1000000 - 1);
TIM_InitStructure.TIM_Period = 1000;
TIM_TimeBaseInit(TIM4, &TIM_InitStructure);
//TIM_Cmd(TIM4, ENABLE);
NVIC_EnableIRQ(TIM4_IRQn);
TIM_ITConfig(TIM4, TIM_IT_Update, ENABLE);
}
1. Почему начинает пищать когда TIM_Cmd(TIM4, ENABLE) не активная? Я так понимаю что таймер не должен считать, пока не врубим его, но он начинает работать после настройки прерываний. Звук чистый.
2. Если врубать таймер вызывая функцию TIM_Cmd(TIM4, ENABLE), то звук становится какой-то хрипящий, частота падает. Осциллографа нет под рукой. всё на слух (( Впечатление что прерываение обрабатывается по разным событиям. Почему так?
3. Отладчик (отладка через STLINK SWD) попадает в обработчик TIM4_IRQHandler только при первом проходе. Потом, почему-то, точка останова в обработчике прерывания игнорится. В обработчк от таймера 3 (юзаю еще один таймер, завел на тик в 1 сек.) попадает исправно и "фишка" с TIM_Cmd работает. Этот таймер мигает светодиодом раз в сек.
-------
Всё. Разобрался. Оказывается мне подсунули зуммер со встроенным генератором внутри. отсюда и путаница
Теория — это когда все известно, но ничего не работает. Практика — это когда все работает, но никто не знает почему. Мы же объединяем теорию и практику: ничего не работает… и никто не знает почему!
© Альберт Эйнштейн
© Альберт Эйнштейн
- Linuxoid91
- Грызет канифоль
- Сообщения: 295
- Зарегистрирован: Вс дек 18, 2011 14:41:24
- Откуда: Ангарск
Re: Мелкие вопросы по МК и ПЛИС.
Всем здрасьте. Помогите найти даташит на микросхему AB1520CG1F15.1-83EM. Эта микросхема стоит в китайском плеере. Хочу поглядеть даташит на предмет наличия незадействованных в плеере функций. Вдруг, там есть, скажем, режим рандомного воспроизведения аудио или что нибудь еще.
- Реклама
-
Chettuser
Re: Мелкие вопросы по МК и ПЛИС.
В даташите скорее всего нет - реализовано программно в прошивке.
Re: Мелкие вопросы по МК и ПЛИС.
Помогите понять, где ошибка. Altera Max Plus 2 выдает "Process clocking is too complex". На иностранных сайтах на похожий вопрос был дан ответ - что-то с if-else конструкциями, но непонятно, как исправить.
Код: Выделить всё
LIBRARY ieee;
USE ieee.std_logic_1164.all;
ENTITY shift_reg IS
PORT
(clk : IN STD_LOGIC ;
data : IN STD_LOGIC ;
reset : IN STD_LOGIC ;
q : OUT STD_LOGIC
);
END shift_reg;
ARCHITECTURE behav OF shift_reg IS
SIGNAL rs: STD_LOGIC_VECTOR (3 downto 0) ;
SIGNAL rscopy: STD_LOGIC_VECTOR (3 downto 0);
BEGIN
process (clk, reset) begin
if (reset = '0') then
rs <= "0000";
else
if (clk'event and clk='1') then rscopy<=rs; end if;
if (clk'event and clk='0') then rs <= data & rscopy(3 downto 1); end if;
end if;
end process;
q <= rs(0);
END behav; Re: Мелкие вопросы по МК и ПЛИС.
Если еще актуально...
Может, махплюс не может распарсить два отдельных ивента. Попробуйте так
А ваше "железо" имеет фичу dual edge? А то смоделировать, может и удастся, а вот синтезировать - может быть облом.
в ISE я делал двумя процессами:
Может, махплюс не может распарсить два отдельных ивента. Попробуйте так
Код: Выделить всё
if (clk'event) then
if (clk='0') then....
else....
end if
end ifв ISE я делал двумя процессами:
Код: Выделить всё
process (scl)
begin
if scl'event and scl='0' then
shift_reg <= shift_reg (shift_size-2 downto 0) & sda;
end if;
end process;
process (scl)
begin
if scl'event and scl='1' then
if sda = '1' then
latch_reg <= shift_reg;
end if;
end if;
end process; А люди посмотрят и скажут: "Собаки летят. Вот и осень."
- Евгений33
- Встал на лапы
- Сообщения: 85
- Зарегистрирован: Пн ноя 08, 2010 14:07:14
- Откуда: Владимирская область
Re: Мелкие вопросы по МК и ПЛИС.
День добрый! Есть устройство на ATmega162 которое врем от времени зависает при подаче питания. Питается контроллер от 7805, тактируется от кварца, reset - подтянут, фьюзы - старт с нулевой задержкой. В приложении переходной процесс на ногах контроллера.
- Вложения
-
- Задержка.jpg
- (90.36 КБ) 346 скачиваний
.....
Re: Мелкие вопросы по МК и ПЛИС.
Попробуйте увеличить задержку.Евгений33 писал(а):фьюзы - старт с нулевой задержкой
Этот пост оказался полезен? Не поленись, нажми
слева!

Куплю индикаторы ИТС-1А, ИТС-1Б, ИГВ1-8х5Л, ИГПС1-222/7, ИГПС1-111/7 и подобные.
слева!Куплю индикаторы ИТС-1А, ИТС-1Б, ИГВ1-8х5Л, ИГПС1-222/7, ИГПС1-111/7 и подобные.
Re: Мелкие вопросы по МК и ПЛИС.
Собственно схема с низким (относительно параметров источника питания) энергопотреблением.
При повторном включении из-за "недоразряженности" электролитов и прочих паразитно-переходных процессов получаем неопределенность для цепей запуска МК.
Лечение применением схем BOD, WDT, внешним монитором питания и их комбинаций.
Да и задержку запуска при внешнем кварце лучше увеличивать, а не уменьшать.
(Заодно проверить параметры генератора в отношении размаха сигнала на выводах - может понадобится максимальный).
Ну и последнее (или первое) - некорректная программа устройства.

При повторном включении из-за "недоразряженности" электролитов и прочих паразитно-переходных процессов получаем неопределенность для цепей запуска МК.
Лечение применением схем BOD, WDT, внешним монитором питания и их комбинаций.
Да и задержку запуска при внешнем кварце лучше увеличивать, а не уменьшать.
(Заодно проверить параметры генератора в отношении размаха сигнала на выводах - может понадобится максимальный).
Ну и последнее (или первое) - некорректная программа устройства.
- Евгений33
- Встал на лапы
- Сообщения: 85
- Зарегистрирован: Пн ноя 08, 2010 14:07:14
- Откуда: Владимирская область
Re: Мелкие вопросы по МК и ПЛИС.
Ввел задержку по старту 65 мс и настроил внутренний BOD на 4,3 В, вроде все нормально.
.....
Re: Мелкие вопросы по МК и ПЛИС.
Народ поможите, уже не знаю куда копать. Ситуация- ds1307 + avr 8515 . Тупо часы. Ds 1307 не запускается от кварца. От внешнего генератора 32768- на ура , а вот от кварца -никак. Всё по даташиту. менял 5 кварцев, 2 микросхемы, думал про питание- от батареек тоже никак. В протеусе всё работает
- Baasil
- Говорящий с текстолитом
- Сообщения: 1641
- Зарегистрирован: Пн авг 25, 2014 21:52:26
- Откуда: Ленинград
Re: Мелкие вопросы по МК и ПЛИС.
https://datasheets.maximintegrated.com/en/ds/DS1307.pdfThe internal oscillator circuitry is designed for operation with a crystal having a specified load capacitance (CL) of 12.5pF.
Страница 6.
Не всякий резонатор сюда подойдет.
Re: Мелкие вопросы по МК и ПЛИС.
[uquote="Baasil",url="/forum/viewtopic.php?p=3096068#p3096068"]
Страница 6.
Не всякий резонатор сюда подойдет.[/uquote]
Как бы ещё узнать нужный....
https://datasheets.maximintegrated.com/en/ds/DS1307.pdfThe internal oscillator circuitry is designed for operation with a crystal having a specified load capacitance (CL) of 12.5pF.
Страница 6.
Не всякий резонатор сюда подойдет.[/uquote]
Как бы ещё узнать нужный....
Re: Мелкие вопросы по МК и ПЛИС.
[uquote="Hot",url="/forum/viewtopic.php?p=3096072#p3096072"]нужный....[/uquote]
Эти ставил работает нормуль! http://chip-nn.ru/find.php?f=32.768+%CA%C3%F6%2C+KX-38T
Эти ставил работает нормуль! http://chip-nn.ru/find.php?f=32.768+%CA%C3%F6%2C+KX-38T
Re: Мелкие вопросы по МК и ПЛИС.
Спасибо попробую
-
sergey-arhipov-1988
- Родился
- Сообщения: 8
- Зарегистрирован: Пн апр 10, 2017 20:04:05
Re: Мелкие вопросы по МК и ПЛИС.
Доброго времени суток уважаемые форумчане! Есть акустика 2.1 хотелось бы сделать для нее проводной пульт с цифровой регулировкой громкости и басов, данная акс уже имеет проводной пульт с двумя переменными резисторами (резисторы моно). Вот хочется их заменить на кнопки, да и с индикацией 8 светодиодов. Есть у меня тинька 2313 вот хотелось бы на ней это дело собрать. Подскажите как это лучше реализовать. Да к стати в программировании мк я новичок.
-
petrenko
- Друг Кота
- Сообщения: 5326
- Зарегистрирован: Вт фев 21, 2012 13:51:55
- Откуда: Начинающий
- Контактная информация:
Re: Мелкие вопросы по МК и ПЛИС.
Решение " в лоб" : переменные сопротивления заменить на перемножающие ц.а.п. ,управляемые м.к.
Но ведь есть и готовые решения, хотя чуток дороже.
Но ведь есть и готовые решения, хотя чуток дороже.
< виртуальная "кнопочка" >--( WWW ) <- Убедительная просьба интересующимся старыми компьютерами типа РК86 - не пишите в теме в барахолке, пишите Ваши вопросы в ( лс ) пожалуйста
-
sergey-arhipov-1988
- Родился
- Сообщения: 8
- Зарегистрирован: Пн апр 10, 2017 20:04:05
Re: Мелкие вопросы по МК и ПЛИС.
[uquote="petrenko",url="/forum/viewtopic.php?p=3096835#p3096835"]Решение " в лоб" : переменные сопротивления заменить на перемножающие ц.а.п. ,управляемые м.к.
Но ведь есть и готовые решения, хотя чуток дороже.[/uquote]
Про мк я читал достаточно много, и то что переменные сопротивления можно заменить я знаю, только как это реализовать? Вот здесь мои знания расплываются. Так примерная картина есть но очень слабая. А именно какую и куда подавать команду?
Но ведь есть и готовые решения, хотя чуток дороже.[/uquote]
Про мк я читал достаточно много, и то что переменные сопротивления можно заменить я знаю, только как это реализовать? Вот здесь мои знания расплываются. Так примерная картина есть но очень слабая. А именно какую и куда подавать команду?


