Короче я всё делал по статье с майробота. Мигание светодиодами. Всё подсоединил правильно МК сначала не мигал, после программирования сразу же замигал. Я решил поэксперементировать и сделать побольше задержку, переделал код, нажал Make Cleane, Make All и Make Programm, но ничего не изменилось, я уже по 2000 мл ставил на задержку, но ничего. Мигает как с самого начала. В чем может быть проблемма? З.Ы. Мк использую Mega8.
// Функция задержки. Минимальная задержка с кварцем 4MHz, равна 1 ms // При пошаговой отладке эту функцию можно оключить void delay_ms(unsigned short ms) { unsigned short outer1, outer2; outer1 = 200; while (outer1) { outer2 = 1000; while (outer2) { while ( ms ) ms--; outer2--; } outer1--; } }
// ------- Основная программа --------- void main(void) { DDRD |= _BV(PD4); // Установить линию 5 порта D в "1" т.е. на вывод while(1) { // Бесконечный цикл PORTD &= ~_BV(PD4); // Сбросить бит PD5 в "0" = 0V, светодиод включен delay_ms(500); // Ждем 0.5 сек. PORTD |= _BV(PD4); // Установить бит PD5 в "1" = 5V, светодиод выключен delay_ms(500); // Ждем 0.5 сек. } }
Работает всё от и до. Проверенно. Изменять вот эту строчку
Такой прикол- у альтеровских ПЛИСок перешивка порядка 100 раз, потом в помойку. Совместимые ( читай, такие же) ПЛИСки делает атмель. Дык у них все как всегда- 10 К перешивок Хотя вот чесно говоря не знаю, какая в ПЛИС технология. FLASH быстрее 20 МГц нормально не работает, а у ПЛИСок обычно порядка 200-250 МГц. Даже в АРМах это уже существенно- там из флэша гонят команды двумя потоками по три команды за выборку (NXP LPC, MAM модуль).
Вопрос к avr123. Почему, hex файл, полученный через CVAVR не прошивается на кристалл через AVRStudio4? И какие фюзы нужно ставить в CVAVR? что бы непосредственно с него прошивать?????
Фьюзы ставят не для того чтобы прошивать, а для настройки кварца, питания и еще чего-нибудь, НО так же фьюзами можно отключить режим прошивания ISP и тогда тебе придется собирать параллельный программатор, поэтому прежде чем что-то шить вначале скажи какой МК ты собираешься шить, потом скажи какие фьюзы и для чего хочешь выставлять, а потом когда мы дадим добро уже будешь шить. А hex он вообще-то универсальный, поэтому ты скорее всего где-то уже налажал.
Дело обстоит так: проггер - AVRmk2, чип - mega32. Ранее прошивал простые проги, написанные на WinAvr через AVRStudio4...но из-за отсутствия литературы решил перейти на CVAVR...взял простейшую прогу...написанную в задаче 2 с светодиодами по таймеру. Сменил библиотеку на MEGA32.h в настройках поставил 32-й... и не прошивается...и даже через симулятор в Studio4 не прет...попробовал напрямую из CVAVR прошить...он то же глючит...... Что делать???