mega8, нет PWM на выводах 3 5 6

std
Offline
Зарегистрирован: 05.01.2012

Полный код, скорее всего будет малополезен. Есть 4 режима, сейчас интересует 2, когда A0 посажен на землю. Программа недописана.

Суть проблемы: на плате Duemilanove пр-ва Италии с 328 этот же код выполняется и шимятся все 6 выводов. На самодельной плате, сляпанной из 8й меги из Китая, в TQFP корпусе творится следующая херня: на выводах 11, 10, 9 нормально. На выводах 3, 5, 6 - больше 127 - горит, меньше не горит. Куда копать? программа наитупейшая, никаких нехваток памяти не может быть в принципе. Все таймеры работают. иначе как я понимаю - нет на 3 - не было бы и на 11. Чо за хрень? Что ещё можно убить в меге? Разъём программатора вверх тормашками НЕ втыкался.

Заодно прицепом вопрос, можно ли читать D0 когда запущен сериал? типа:

Serial.begin(9600);
x=digitalRead(0);

Фотки будут, если надо.

std
Offline
Зарегистрирован: 05.01.2012

Фотки платы:

 

jeka_tm
jeka_tm аватар
Offline
Зарегистрирован: 19.05.2013

даташит почитай. там всего 3 хардваных шима)) на 9 10 и 11

std
Offline
Зарегистрирован: 05.01.2012

О как. ну блин, голова помидор. А я думал они только объёмом флеша, EEPROM и мозгов отличаются.

А как с сериалом, если он запущен, можно читать вывод Rx по digitalRead()?

jeka_tm
jeka_tm аватар
Offline
Зарегистрирован: 19.05.2013

да нет. разница больше))

а с вопросом не понял

axill
Offline
Зарегистрирован: 05.09.2011

по теме - сделайте програмный ШИМ

у атмела было несколько поколений МК, мега8 из самых первых, старее чем тини13, а мега328 практически из последнего поколения, новее только тини4/5/9/10

так что отличий и правда куда больше, чем просто память. количество ШИМ одно из них, еще более критичные - отсутствие системы PCINT, меньше режимов у таймеров, отсутствие железной отладки и т.д.

Даже больше. atmega8 заметно отличается от atmega8a. Последняя говоря языком програмистов  багфикс к atmega8, говоря языком автомобилистов - рестайлинг

Ровесник atmega328 - atmega88. У них и даташит один. Но по цене смысла покупать 88-ю нет никакого. Либо мириться с отличиями мега8 и покупать ее по 60 центов либо практически за теже деньги что 88-я покупать 328-ю (вместо 1.1 платить 1.3)

std
Offline
Зарегистрирован: 05.01.2012

Не, у меня atmega8a-au, на фотге видно.