|
Не стартует Mega8, Help! |
|
|
|
Oct 16 2006, 04:52
|
Знающий
   
Группа: Свой
Сообщений: 754
Регистрация: 29-06-06
Из: Volgograd
Пользователь №: 18 458

|
Всем привет! Народ, не могу запустить Atmega8, подскажите, pls, что я забыл? Fusebits:Пробовал внутренний генератор 1 Мгц: CKSEL3210=0001, SUT10=10,BODEN=1,BOOTRST=1, CKOPT=1, WDTON=1,RSTDISBL=1 Пробовал внешний кварц 4 МГц (кварц “свистит”): CKSEL3210=1111, SUT10=00, BODEN=1,BOOTRST=1, CKOPT=1, WDTON=1,RSTDISBL=1 Настройки компилятора:Тип программы: Application, тактовая частота, остальное, вроде ерунда. Программа:В симуляторе AVR Studio все работает, по адресу 0000 сидит RJMP на программу, т.е. по RESET проц. должен обработать прерывание и прыгнуть на мою программу, тогда на PORTB.1 должна появиться частота, которую я смотрю осциллографом. Код // Port B initialization // Func0=Out Func1=Out Func2=In Func3=In Func4=In Func5=In Func6=In Func7=In PORTB=0x00; DDRB=0x03; x=0xff; while (1) { PORTB=x; x=~x; };
|
|
|
|
|
Oct 16 2006, 05:16
|
Группа: Участник
Сообщений: 6
Регистрация: 6-03-06
Пользователь №: 15 007

|
WDTON=1 - это значит Watch dog включен? Если да, то не мешало бы его сбрасывать.
|
|
|
|
|
Oct 16 2006, 06:42
|

Частый гость
 
Группа: Свой
Сообщений: 112
Регистрация: 15-10-05
Из: Томск
Пользователь №: 9 680

|
Цитата(AndreyVN @ Oct 16 2006, 10:52)  Всем привет! Народ, не могу запустить Atmega8, подскажите, pls, что я забыл? Покажи файл, который в мегу собственно зашиваешь программатором. И скажи каким программатором шьёшь? Может он reset не отпускает после прошивки?
|
|
|
|
|
Oct 16 2006, 08:42
|
Знающий
   
Группа: Свой
Сообщений: 754
Регистрация: 29-06-06
Из: Volgograd
Пользователь №: 18 458

|
Цитата Покажи файл, который в мегу собственно зашиваешь программатором. И скажи каким программатором шьёшь? Может он reset не отпускает после прошивки? Шью самодельным STK-200/300 (LPT) и CodeVision AVR, после читаю, сравниваю FLASH, все нормально. В окне программатора есть кнопка RESET, смотрю на первую ногу меги (RESET), нажимаю кнопку и вижу как 'нога' падает в 0 где-то на секунду, потом возвращается в единичку. То есть ресет проходит. PS: Пробую вставить *.rom и *.obj - чегой-то файл не вставляется.  Цитата И ешё некоторые восмые плохо стартуют без резистора RESET ->> V+ (10k) Попробую!
Сообщение отредактировал AndreyVN - Oct 16 2006, 09:26
|
|
|
|
|
Oct 16 2006, 20:25
|

Частый гость
 
Группа: Свой
Сообщений: 112
Регистрация: 15-10-05
Из: Томск
Пользователь №: 9 680

|
Цитата(AndreyVN @ Oct 16 2006, 14:42)  Шью самодельным STK-200/300 (LPT) и CodeVision AVR, после читаю, сравниваю FLASH, все нормально. В окне программатора есть кнопка RESET, смотрю на первую ногу меги (RESET), нажимаю кнопку и вижу как 'нога' падает в 0 где-то на секунду, потом возвращается в единичку. То есть ресет проходит. Попробуй в своей среде разработки включить выходной формат intel-hex, после чего зашей его своим программатором, используя софт avreal: http://www.ln.com.ua/~real/avreal/Только не забудь, что контроллер надо стирать перед прошивкой. Вот так примерно надо запускать avreal для твоего случая: avreal32.exe -as -p1 +mega8 -o1000 -e -v -w <файл прошивки> Если не поможет, то давай этот hex сюда - будем разбираться. Цитата(AndreyVN @ Oct 16 2006, 14:42)  PS: Пробую вставить *.rom и *.obj - чегой-то файл не вставляется.  Возможно, стоит запаковать зипом.
|
|
|
|
|
Oct 17 2006, 04:42
|
Знающий
   
Группа: Свой
Сообщений: 754
Регистрация: 29-06-06
Из: Volgograd
Пользователь №: 18 458

|
[quote name='starter48' date='Oct 17 2006, 00:25' post='165535'] Только не забудь, что контроллер надо стирать перед прошивкой. Вот так примерно надо запускать avreal для твоего случая: avreal32.exe -as -p1 +mega8 -o1000 -e -v -w <файл прошивки> Если не поможет, то давай этот hex сюда - будем разбираться. [quote name='AndreyVN' post='165222' date='Oct 16 2006, 14:42'] PS: Пробую вставить *.rom и *.obj - чегой-то файл не вставляется.  [/quote] Я пробовал прошивать PonyProg, результат тот-же, а вот стирать флэшку никогда не стирал(!), возможно все дело именно в этом.
|
|
|
|
|
Oct 17 2006, 04:43
|

Знающий
   
Группа: Свой
Сообщений: 902
Регистрация: 2-01-06
Из: Краснодар
Пользователь №: 12 768

|
Цитата(starter48 @ Oct 17 2006, 00:25)  Цитата(AndreyVN @ Oct 16 2006, 14:42)  Шью самодельным STK-200/300 (LPT) и CodeVision AVR, после читаю, сравниваю FLASH, все нормально. В окне программатора есть кнопка RESET, смотрю на первую ногу меги (RESET), нажимаю кнопку и вижу как 'нога' падает в 0 где-то на секунду, потом возвращается в единичку. То есть ресет проходит.
Попробуй в своей среде разработки включить выходной формат intel-hex, после чего зашей его своим программатором, используя софт avreal: http://www.ln.com.ua/~real/avreal/Только не забудь, что контроллер надо стирать перед прошивкой. Вот так примерно надо запускать avreal для твоего случая: avreal32.exe -as -p1 +mega8 -o1000 -e -v -w <файл прошивки> Если не поможет, то давай этот hex сюда - будем разбираться. Цитата(AndreyVN @ Oct 16 2006, 14:42)  PS: Пробую вставить *.rom и *.obj - чегой-то файл не вставляется.  Возможно, стоит запаковать зипом. Это все абсолютно лишнее,у CV нормальный встроенный программатор.А что у тебя осцилл показывает на порте В3?Может,дефект монтажа и он банально засажен на 0 или 1? Попробуй так: unsigned char x; void main(void) { PORTB=0x00; DDRB=0xff; x=0xff; while (1) { PORTB=x; x=~x; } }
--------------------
"Hello, word!" - 17 errors 56 warnings
|
|
|
|
|
Oct 17 2006, 09:51
|
Знающий
   
Группа: Свой
Сообщений: 754
Регистрация: 29-06-06
Из: Volgograd
Пользователь №: 18 458

|
Цитата(Михаил Горюнов @ Oct 17 2006, 09:20)  Проблема еще бывает и аппаратной. Питание есть? Кварц генерит? Первое, что ты должен был проверить. Ну зачем Вы так.  Цитата PORTB=0x00; DDRB=0xff; PortB3 висит в единичке, самое интересное, что по RESET он сваливается в 0, и снова возвращается в 1 навсегда. Пожалуй, стоит попробовать записать в порт 0, (без генерации) и посмотреть управляется он или нет.
|
|
|
|
|
Oct 17 2006, 10:31
|

Частый гость
 
Группа: Свой
Сообщений: 89
Регистрация: 28-10-05
Из: Киев
Пользователь №: 10 227

|
Цитата(AndreyVN @ Oct 17 2006, 07:42)  флэшку никогда не стирал(!), возможно все дело именно в этом. ну по-моему это первое и обязательное что нужно сделать  иначе прога не записывается (вернее, записывается не правильно)
|
|
|
|
|
Oct 17 2006, 11:53
|
Местный
  
Группа: Свой
Сообщений: 300
Регистрация: 15-03-06
Из: Москва
Пользователь №: 15 284

|
Цитата(Joy @ Oct 17 2006, 14:31)  Цитата(AndreyVN @ Oct 17 2006, 07:42)  флэшку никогда не стирал(!), возможно все дело именно в этом.
ну по-моему это первое и обязательное что нужно сделать  иначе прога не записывается (вернее, записывается не правильно) Да нет, записывается, причем, абсолютно правильно. Просто поверх старой программы, при этом ее затирая.
|
|
|
|
|
Oct 17 2006, 12:11
|

Частый гость
 
Группа: Свой
Сообщений: 112
Регистрация: 15-10-05
Из: Томск
Пользователь №: 9 680

|
Цитата(ps1x @ Oct 17 2006, 17:53)  Цитата(Joy @ Oct 17 2006, 14:31)  Цитата(AndreyVN @ Oct 17 2006, 07:42)  флэшку никогда не стирал(!), возможно все дело именно в этом.
ну по-моему это первое и обязательное что нужно сделать  иначе прога не записывается (вернее, записывается не правильно) Да нет, записывается, причем, абсолютно правильно. Просто поверх старой программы, при этом ее затирая. Нет, при программировании происходит изменение только 1 -> 0 Возможно у тебя программатор автоматом стирает сектора. Цитата(AndreyVN @ Oct 17 2006, 10:42)  Я пробовал прошивать PonyProg, результат тот-же, а вот стирать флэшку никогда не стирал(!), возможно все дело именно в этом. Ты файл прошивки-то будешь показывать? Чтобы не гадать, может у тебя программа какя-то кривая... Зипом запакуй.
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|