16+
Четверг
23 мая
Вход |Карта сайта |Upload |codebook | PARTS

 О смысле всего сущего 0xFF

 Средства и методы разработки

 Мобильная и беспроводная связь

 Блошиный рынок Объявления

caxapa

Микроконтроллеры ARM 

AVR PIC MSP PLD,FPGA,DSP 

Кибернетика Технологии 

Схемы, платы, компоненты 

Микроконтроллеры AVR

 
Новая темаПравила РегистрацияСтатистика Архив
Вернуться в конференциюТопик полностью
De_User  (15.03.2019 15:32 - 15.03.2019 15:51, ссылка) , в ответ на Эта фигня была замечена только на тыньках , со свежими мегами было всё ОК на тот момент. Вот дискуссия на телесиськах --> автор: m16_home
В описании команд для вывода регистра в PORT требуется 1 такт. ЕМНИП, "ногодрыганьем" на "новой" ATmega88 удалось гарантировано переключать только с интервалом в 3 (три) такта. 
Так не работало
LDI R1,0
LDI R2,1
...

OUT PORTA, R1
OUT PORTA, R2
OUT PORTA, R1
OUT PORTA, R2
OUT PORTA, R1
OUT PORTA, R2
Так работает
LDI R1,0
LDI R2,255
...

OUT PORTA, R1
NOP
NOP
OUT PORTA, R2
NOP
NOP
OUT PORTA, R1
NOP
NOP
OUT PORTA, R2
NOP
NOP
OUT PORTA, R1
NOP
NOP
OUT PORTA, R2
Та же ерунда с чтением - не работало, считывалось предыдущее значение порта, до команды OUT PORTA, R1
OUT PORTA, R1
IN  R3, PORTA
Так работает
OUT PORTA, R1
NOP
NOP
IN  R3, PORTA
Цитата: ATTiny2313_revI.pdf стр.52: When reading back a software assigned pin value, a nop instruction must be inserted as indicated in Figure 24 и далее по тексту...
"хватит насиловать труп старого бояна!" "Соблюдайте меру во всём, не допускайте в себя профессиональную деформацию!"
Главная | Карта сайта | О проекте | Проекты | Файлообменник | Регистрация | Вебмастер | RSS
Лето 7527 от сотворения мира. При использовании материалов сайта ссылка на caxapу обязательна.
MMI © MMXIX