сначало прозвони весь чип на наличие кз ,а программатору ни чего не будетCrest писал(а):Боюсь сжеч программатор или бук. (AVR910). Попробовать?
Мелкие вопросы по МК и ПЛИС.
- Реклама
USHIN
помогите осознать ошибку и найти правильное решение
вопрос касается атмега8 и таймера №2 в режиме СТС
мне надо чтобы данный таймер работая в режиме СТС поочередно включал то трерывание по совпадению(и в теле этого преывания отключал прерывание по совпадению и разрешал прерывание по переполнению TIMSK=0x50;), то прерывание по переполнению (и в теле этого прерывания включал прерывание по совпадению TIMSK=0xD0;)......., тоесть чтобы прерывания шли по очереди: совпадение-переполнение-совпадение и т.д.
в симуляторе студии 4 я вижу что первым у меня срабатывает прерывание по совпадению, в TIMSK записывается 0x50 , а вот дальше мое прерывание по переполнению почемуто не срабатывает......, что я делаю не так ?
вопрос касается атмега8 и таймера №2 в режиме СТС
мне надо чтобы данный таймер работая в режиме СТС поочередно включал то трерывание по совпадению(и в теле этого преывания отключал прерывание по совпадению и разрешал прерывание по переполнению TIMSK=0x50;), то прерывание по переполнению (и в теле этого прерывания включал прерывание по совпадению TIMSK=0xD0;)......., тоесть чтобы прерывания шли по очереди: совпадение-переполнение-совпадение и т.д.
в симуляторе студии 4 я вижу что первым у меня срабатывает прерывание по совпадению, в TIMSK записывается 0x50 , а вот дальше мое прерывание по переполнению почемуто не срабатывает......, что я делаю не так ?
Tell Me The Truth
Программатор питается от USB бука через диод. Если я подключу чип с почти коротышом по питанию, то нагружу порт бука. Очкую.USHIN256 писал(а):сначало прозвони весь чип на наличие кз ,а программатору ни чего не будет
В режиме CTC таймер сбрасыватся при достижении значения в OCR, и тогда он не может переполнится.FreshMan писал(а):что я делаю не так ?
Этот пост оказался полезен? Не поленись, нажми
слева!

Куплю индикаторы ИТС-1А, ИТС-1Б, ИГВ1-8х5Л, ИГПС1-222/7, ИГПС1-111/7 и подобные.
слева!Куплю индикаторы ИТС-1А, ИТС-1Б, ИГВ1-8х5Л, ИГПС1-222/7, ИГПС1-111/7 и подобные.
- Реклама
*Trigger*, почитай мой предыдущий пост внимательно
я хочу чтобы прерывания шли по очереди: совпадение-переполнение-совпадение и т.д.
я хочу чтобы прерывания шли по очереди: совпадение-переполнение-совпадение и т.д.
Tell Me The Truth
Нужно химисить не только с прерываниями, а еще и с режимом работы таймера. Он у тебя сбрасывается по совпадению, а прерывание запрещено - вот он и крутится не доходя до переполнения. Либо прерывание использовать одно а трогать только регистр совпадения - по очереди ставить то $50 то $FF.
Я об этом и говорю. Нужно при включении прерывания по переполнению ставить таймер в режим сброса при переполнении.
Этот пост оказался полезен? Не поленись, нажми
слева!

Куплю индикаторы ИТС-1А, ИТС-1Б, ИГВ1-8х5Л, ИГПС1-222/7, ИГПС1-111/7 и подобные.
слева!Куплю индикаторы ИТС-1А, ИТС-1Б, ИГВ1-8х5Л, ИГПС1-222/7, ИГПС1-111/7 и подобные.
что-то я вас недопонимаю
разжуйте пожалуйста по подробне
вот моя прога
http://s1.ipicture.ru/uploads/20130407/rHbxNDiU.jpg
разжуйте пожалуйста по подробне
вот моя прога
http://s1.ipicture.ru/uploads/20130407/rHbxNDiU.jpg
Tell Me The Truth
О это гениальное решение код показывать в виде картинки...
Чего же подробнее? Все что нужно уже сказано...
Чего же подробнее? Все что нужно уже сказано...
Alexeyslav, я не могу понять почему в конце кода прерывания по совпадению я запрещаю прерывание по совпадению и разрешаю прерывание по переполнению но последнее не срабатываеи......, почему ? 
Tell Me The Truth
Поставь себя на место счетчика. Ты настроен на счет до совпадения и сброс. То что ты запрещаешь прерывание по совпадению не отменяет того факта что счетчик будет сбрасываться. Досчитал до 50 - сбросился... досчитал - сбросился... когда ему переполнятся?
ааааааааааа......, тогда выходит надо не только запрещать прерывание по переполнению но и поднимать планку до FF
я правильно уразумел ?
я правильно уразумел ?
Tell Me The Truth
Народ, есть всем известное преобразование BIN2BCD, а кто делал обратное BCD2BIN?
По тому же принципу, с циклами и вычитанием? Или есть какая то хитрость?
Исходные:
A= единицы,
B = десятки,
С = сотни,
D = тысячи...
в переменной DATA - результат.
По тому же принципу, с циклами и вычитанием? Или есть какая то хитрость?
Исходные:
A= единицы,
B = десятки,
С = сотни,
D = тысячи...
в переменной DATA - результат.
Код: Выделить всё
ABCD = D*1000 + C*100 + B*10 + A;
Ээээ!
У меня не суперкомпьютер! А всего лишь скромные PIC16/18. Затолкать в них такое даже с вазелином не получится. 
Последний раз редактировалось Chettuser Вс апр 07, 2013 20:46:55, всего редактировалось 1 раз.
- Сообщения: 1163
- Зарегистрирован: Ср янв 05, 2011 16:25:15
...примеров море, стоит только поискать http://www.avr-asm-tutorial.net/avr_en/ ... RSION.htmlНарод, есть всем известное преобразование BIN2BCD, а кто делал обратное BCD2BIN?
Опять ассемблер
В сети ассемблера завались, а вот на Сях...
Так и придётся циклами.
В сети ассемблера завались, а вот на Сях...
Так и придётся циклами.
Последний раз редактировалось Chettuser Вс апр 07, 2013 20:49:48, всего редактировалось 1 раз.
Код: Выделить всё
uint fn_atoi(uchar *cPAR)
{
uint iRez=0;
while(*cPAR)
{
iRez = iRez*10+(*cPAR-'0');
*cPAR++;
}
return iRez;
}


