Переменная mode как объявлена? Запомните, все переменные, использующиеся в основной программе и изменяемые в обработчиках прерывания нужно объявлять с квалификатором volatile.Vergilium писал(а):Помогите, не пойму в чем проблема...
Все бы да ничего но, байт передается, заносится в переменную но в основной программе она не передается. смотрим код...
Мелкие вопросы по МК и ПЛИС.
- Сообщения: 459
- Зарегистрирован: Вс июн 01, 2008 12:16:38
- Реклама
- Сообщения: 459
- Зарегистрирован: Вс июн 01, 2008 12:16:38
Вот например:Vergilium писал(а): ...или примерчик маленький.
Код: Выделить всё
volatile unsigned char mode;
...
ISR(USART_RX_vect)
{
mode = usart_rec();
...
main(void){
...
switch(mode)
{ ...
}
...
}
}- Сообщения: 492
- Зарегистрирован: Вт июл 22, 2008 08:10:54
Выставлять надо. Галочка установлен, иначе сброшен. Никаких заморочек с этим нет. Работает со своим ПО.Stalker46 писал(а):вот те на, нашел в своем городе чаловека, который может мне зашить мегу 8 парралельным программатором ТРИТОН+.
так вот. как там, так же, надо через софт - программатор (у мя uni prof) выставлять фьюзы, и все тоже самое, как и ISP программатором?
- Сообщения: 4435
- Зарегистрирован: Сб мар 07, 2009 20:44:36
- Реклама
- Сообщения: 13
- Зарегистрирован: Вт авг 18, 2009 10:52:02
Господа знатоки нужен крутой программатор с возможностью программирования в автономе.
Кто может посоветовать чонь-ть?
Сразу скажу, что меньше $1000 - не серьёзно.
Но пишу на полном серьёзе, возникла такая проблема - программировать практически все типы известных и, может быть , даже пока ещё неизветных процессоров, плис, и пзу разных видов.
Предлагают всякую любительщину, типа "клон", хрен знает чего...
Кто может посоветовать чонь-ть?
Сразу скажу, что меньше $1000 - не серьёзно.
Но пишу на полном серьёзе, возникла такая проблема - программировать практически все типы известных и, может быть , даже пока ещё неизветных процессоров, плис, и пзу разных видов.
Предлагают всякую любительщину, типа "клон", хрен знает чего...
Не знаю куда написать, поэтому напишу сюда.
Хочу начать-таки осваивать микроконтроллеры, с чего посоветуете начать?
Хочу начать-таки осваивать микроконтроллеры, с чего посоветуете начать?
Я не "Вы"
- Сообщения: 3961
- Зарегистрирован: Пн июл 13, 2009 14:37:39
- Откуда: Московская область, наукоград.....
Поиск - самое лучшее средство для предварительной разминки!WerenGlos писал(а):Хочу начать-таки осваивать микроконтроллеры, с чего посоветуете начать?
Вот одна из веток по "освоить микроконтроллеры"
http://radiokot.ru/forum/viewtopic.php? ... B%E5%F0%FB
Задай пошире и будет тебе щазтья на многие месяцы разгреблений;)
Загружая на вход компьютера "мусор", на выходе получим "мусор^32".
PS. Не работаю с: Proteus, Multisim, EWB, Micro-Cap... не спрашивайте даже
PS. Не работаю с: Proteus, Multisim, EWB, Micro-Cap... не спрашивайте даже
- Сообщения: 13
- Зарегистрирован: Вт авг 18, 2009 10:52:02
Лично мне кажется с AVR, более развитая и понятная система команд.
Книги следующие:
Микроконтроллеры AVR в радиолюбительской практике (Белов)(2007)
Практическое программирование микроконтроллеров Atmel AVR на языке ассемблера Юрий Ревич.
Шпак Ю.А. - Программирование на языке С для AVR и PIC микроконтроллеров
CodeVisionAVR Пособие для начинающих М.Б.Лебедев 2008-600M
Этих книг за глаза хватит для начала.
Первая книга это неплохой перевод даташита на tiny2313 с некоторыми дополнениями.
Программатор лучьше использовать заводской, типа AVRISP mkII.
И дёшево и надёжно. Работает через USB с AVR Studio.
А то как начнёшь программаторы лепить сразу порты лететь начнут, микросхемы сикось накось жечься будут, с тем компом работает, с этим не работает. Короче себе дороже.
Книги следующие:
Микроконтроллеры AVR в радиолюбительской практике (Белов)(2007)
Практическое программирование микроконтроллеров Atmel AVR на языке ассемблера Юрий Ревич.
Шпак Ю.А. - Программирование на языке С для AVR и PIC микроконтроллеров
CodeVisionAVR Пособие для начинающих М.Б.Лебедев 2008-600M
Этих книг за глаза хватит для начала.
Первая книга это неплохой перевод даташита на tiny2313 с некоторыми дополнениями.
Программатор лучьше использовать заводской, типа AVRISP mkII.
И дёшево и надёжно. Работает через USB с AVR Studio.
А то как начнёшь программаторы лепить сразу порты лететь начнут, микросхемы сикось накось жечься будут, с тем компом работает, с этим не работает. Короче себе дороже.
Задача: зажигать определённые светодиоды в последовательном порядке. Программа работает, но доходит до определённого числа (45-го) в выделенной области памяти (seg_table), а дальше берёт значения из самой первой ячейки памяти и так по порядку. Использую Atmega8.
.def m=r25
.equ seg=PORTB
...
ldi ZH,High(seg_table*2)
ldi ZL,Low(seg_table*2)
add ZL,m
lpm
out seg,r0
inc m
...
seg_table:
.db $0,$0,$0,$0,$0,$0,$c,$c,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$c,$c,$c,$c,$c,$c,$c,$c,$c,$c,$c,$c,$c,$c,$c,$c,$c,$c,$c,$c,$c,$c,$c,$c,$c,$c,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$c,$c,$0,$0,$0,$0,$0,$0
.exit
.def m=r25
.equ seg=PORTB
...
ldi ZH,High(seg_table*2)
ldi ZL,Low(seg_table*2)
add ZL,m
lpm
out seg,r0
inc m
...
seg_table:
.db $0,$0,$0,$0,$0,$0,$c,$c,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$c,$c,$c,$c,$c,$c,$c,$c,$c,$c,$c,$c,$c,$c,$c,$c,$c,$c,$c,$c,$c,$c,$c,$c,$c,$c,$0,$0,$0,$0,$0,$0,$0,$0,$0,$0,$c,$c,$0,$0,$0,$0,$0,$0
.exit
происходит переполнение ZL, и обращение происходит к яп с адресом ZH:0
после команды
add ZL,m
нужно добавить
adc ZH,rx
где rx любой регист с 0-значением
после команды
add ZL,m
нужно добавить
adc ZH,rx
где rx любой регист с 0-значением
- Сообщения: 4435
- Зарегистрирован: Сб мар 07, 2009 20:44:36
http://www.elitan.ru/price/index.php?se ... re&mfg=all
чем они тут различаются? только ценой?
все ли AVR он программирует?
и вообще не глючный ли программатор? и ваше мнение. С каким софтом он работает?
чем они тут различаются? только ценой?
все ли AVR он программирует?
и вообще не глючный ли программатор? и ваше мнение. С каким софтом он работает?
Не умеешь - не берись, но не взявшись не научишься...
- Сообщения: 4435
- Зарегистрирован: Сб мар 07, 2009 20:44:36
Распиновка и остальное на диске есть, который с ним идет. 
- Вложения
-
- AVRISP.GIF
- (4.39 КБ) 340 скачиваний
- Сообщения: 4435
- Зарегистрирован: Сб мар 07, 2009 20:44:36
вопрос.
к выводам программирования мисо, моси, сцк, наглужо через резисторы подсоединены светодиоды. Но при программировании что случится? светодиоды будут перемигивать?
Как этого избежать? просто в тини 2313 на порту В эти выводы программирования. А у мя ко всем выводам порта В светодиоды подключены.
к выводам программирования мисо, моси, сцк, наглужо через резисторы подсоединены светодиоды. Но при программировании что случится? светодиоды будут перемигивать?
Как этого избежать? просто в тини 2313 на порту В эти выводы программирования. А у мя ко всем выводам порта В светодиоды подключены.
Не умеешь - не берись, но не взявшись не научишься...
перемигивать будут, а вош шиться...
тут уже надо пробовать, многое будет зависить от длины шлейфа программирования, по какой схеме собран программатор и т.п.
тут уже надо пробовать, многое будет зависить от длины шлейфа программирования, по какой схеме собран программатор и т.п.
- Сообщения: 3961
- Зарегистрирован: Пн июл 13, 2009 14:37:39
- Откуда: Московская область, наукоград.....
Главное что б они не мешали программированию. А еще лучше поставить джамперы.
Загружая на вход компьютера "мусор", на выходе получим "мусор^32".
PS. Не работаю с: Proteus, Multisim, EWB, Micro-Cap... не спрашивайте даже
PS. Не работаю с: Proteus, Multisim, EWB, Micro-Cap... не спрашивайте даже
- Сообщения: 4435
- Зарегистрирован: Сб мар 07, 2009 20:44:36



