У вас таймер настроен на нормальную работу верх FFh (CVAVR довольно понятно комментарии пишет), а вы до прерывания по переполнению его сливаете.Вот ничего и не происходит.
Там есть режим специально для такого дела- верх OCRx Сейчас негде посмотреть вроде в режиме CTC выставляется.
Вот что тут не правильно,не получается самому сделать BAM http://bsvi.ru/bam-alternativa-shimu/, не пойму никак, контролер мега 8 1мгц (((
Таблица счетов таймера для разрядов-
счет разряд
128 7
64 6
32 5
16 4
8 3
4 2
2 1
1 0
mich91 писал(а):При таком значении VALUE=0x80 , выход должен быть 50%, тоисть 128 тактов 1, все остальные такты 0, а при таком коде не так (
Один из подводных камней выбранного способа заключается в том, что прерывания в определённые моменты следуют с очень малым периодом.
Предделитель таймера настроен на 8 тактов процессора. Таким образом, исходя из логики алгоритма, прерывания должны следовать через 8, 16, 32, 64, 128, 256, 512, 1024 такта.
Длительность обработчика прерывания скорее всего больше 32 тактов, поэтому происходят пропуски.
Вывод такой - смотрите, сколько тактов длится прерывание и настраивайте предделитель на большее значение.
А из наших труб идет необычный дым. Стой! Опасная зона! Работа мозга!...
Это капец, вчера пол ночи мучался, а сегодня просто перекинул всё тоже в ТАЙМЕР 1 , и заработало с первого раза...как это обьяснить, токо поменял OCR2 на OCR1A; ??? Что получается время исполнения прерываний у разных таймеров разное ?
Доброго времени суток уважаемые форумчане. Кто может поделиться бутлоадером
для xmega128a1 у меня для загрузи используется rxd0, txd0, за ранние благодарю
BCluster писал(а):Другая разрядность таймера? Время между прерываниями больше, вот он и успевает...
Да, таймер в том что пашет 16 битный, но прикол в том что он считает тоже самое что и 8 битный, от 128 тактов к 1 такту,в коде ничего не менял, но вот в 16 битном пашет, а в 8 битном нет.. в чем прикол, не пойму..
Делал и в реальном устройстве, тоже самое, что хочет то и выдаёт на выходе, цеплял светодиод,LCD16*2, и энкодером менял значение...Какая то мистика, можете сами попробовать вкинуть мой код в 8 битный и 16 битный таймер и посмотреть в протеусе.
вот скачал CodeVision AVR написал програмку. как мне скомпилировать файл?http://radiomix.wen.ru/534535.bmpи где мне взять эти все коды по которым пишется программа с описанием
mixon46 писал(а):вот скачал CodeVision AVR написал програмку. как мне скомпилировать файл?http://radiomix.wen.ru/534535.bmpи где мне взять эти все коды по которым пишется программа с описанием
Как компилить, обвёл. Оно у Вас неактивно .
Зачем расширение .asm? Вы что на ассемблере написали? Не вводите компилятор в заблуждение. У него нет чувства юмора.
Если не знаете, с чего начать, можно использовать генератор начального кода. Хорошая вещь, не пренебрегайте им.
Я даже когда на WinAVR пишу, беру куски из этих "болванок".
понял.. программа у меня плохая. компилировать не умеет. у меня еще есть AVR studio. там же язык ассемблер? как там компилировать? что такое генератор начального кода?