реклама на сайте
подробности

 
 
> Работа с STK500 и STK501
fpmoleg
сообщение Oct 4 2007, 11:26
Сообщение #1


Участник
*

Группа: Новичок
Сообщений: 33
Регистрация: 13-08-07
Пользователь №: 29 751



Привет всем.

Купил был отладочный комплект STK500 и STK501. Использую ма ATmega128L.
написал простенькую прогу (использовал winAVR 2007 года)

#include <avr/io.h>
int main(void){
PORTF = (1<<PF7)|(1<<PF6)|(1<<PF5)|(1<<PF4)|(1<<PF3)|(1<<PF2)|(1<<PF1)|(1<<PF0);
DDRF = 0xFF;
while (1){}
return(0);
}

прошивал с помощью AVR Studio выставил фьюзы:

;boot flash section size=4096 words
;Brown-out detection level at VCC=2,7 V
;Brown-out detection enabled
;Ext. Crystal/Resonator High Freq.;Strt-up time: 1K CK+0ms

Проверил осциллографом на портах стоит 0.

Проверял и кварц и напряжение. Все есть все программируется и читается.

Извечный вопрос: что делать ?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
GDI
сообщение Oct 4 2007, 14:18
Сообщение #2


Профессионал
*****

Группа: Свой
Сообщений: 1 235
Регистрация: 14-05-05
Из: Санкт-Петербург
Пользователь №: 5 008



убрать ретурн из майна, и в цикл что то внести, например завести переменную и там ее инкрементировать, а то может у вас оптимизатор просто выкинул пустой цикл а за ним сразу ретурн стоит, вот программа и завершается. А еще лучше не тупо ставить в порты единицы, а светодиодами помигать, наверняка есть соответствующий пример в комплекте или на просторах интернет его можно отыскать, или самому сварганить.
Кстати для кварца я ставлю всегда самое долгое время старта, т.е. 16КСК+65мс


--------------------
http://www.embedders.org Блоги разработчиков электроники.
Go to the top of the page
 
+Quote Post
fpmoleg
сообщение Oct 4 2007, 14:45
Сообщение #3


Участник
*

Группа: Новичок
Сообщений: 33
Регистрация: 13-08-07
Пользователь №: 29 751



Цитата(GDI @ Oct 4 2007, 17:18) *
убрать ретурн из майна, и в цикл что то внести, например завести переменную и там ее инкрементировать, а то может у вас оптимизатор просто выкинул пустой цикл а за ним сразу ретурн стоит, вот программа и завершается. А еще лучше не тупо ставить в порты единицы, а светодиодами помигать, наверняка есть соответствующий пример в комплекте или на просторах интернет его можно отыскать, или самому сварганить.
Кстати для кварца я ставлю всегда самое долгое время старта, т.е. 16КСК+65мс



по поводу программы я написал так:
#include <avr/io.h>
#include <avr/iom128.h>
void main(void){
int i;
PORTE = (1<<PE7)|(1<<PE6)|(1<<PE5)|(1<<PE4)|(1<<PE3)|(1<<PE2)|(1<<PE1)|(1<<PE0);
DDRE = 0x00;
while(1){
PORTE = 0;
for (i=0;i<1000;i++){
asm volatile("nop\n\t"
"nop\n\t"
"nop\n\t"
"nop\n\t"
:smile.gif;
}
PORTE = 0xFF;
}
}

По поводу светодиодиков или осцеллографа - это дело вкуса. Если есть сигнал на портах то это видно и осцеллогрофом.
У меня кварц на 7.372МГц, напряжение тоже есть - 4.91 В. На порт XTAL1 сигналы от кварца поступают.
Фьюзы прошивал и читал все данны совпадают.
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 18th August 2025 - 00:02
Рейтинг@Mail.ru


Страница сгенерированна за 0.01394 секунд с 7
ELECTRONIX ©2004-2016