Вложений: 4
Помогите с кодом на С++. ATtiny2313. Бегущие огни
Доброго времени суток дорогие форумчане!!!
Нужна Ваша консультация (помощь). Изучаю работу микроконтроллера ATtiny2313 все как бы получается, все работает, но по моему мнению некорректно. Суть схемы очень проста (фото ниже). Собранная схема хорошо функцианирует если программа работает по первому варианту (от внутреннего RC генератора с использованием функции из библиотеки delay.h с временем 200 мс.).
Но при работе от внешнего кварцевого резонатора на 4 МГц (CKSEL=1101, SUT=10) с использованием 16-ти разрядного таймера T1 (Предделитель на 1024 TCCR1B=0x05, коэффициент деления рассчитан по формуле: 4000000/1024=3906,25~3906; 1/3906=0,000256; 200мс/256мкс=781~780). реально время переключения светодиодов стало более 1 сек. О времени переключения 200 мс даже и речи быть не может. В чем косяк???
В архиве svetodiod.rar исходный код программы в CodeVision AVR (вариант с таймером, который работает некорректно);
В архиве Prog5.rar исходный код программы в CodeVision AVR (вариант с использованием внутреннего RC генератора и библиотеки delay.h. рабочий вариант)