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

 
 
 
Reply to this topicStart new topic
> Как начинающий, пытаюсь сделать первый проект, и не получается!, Не могу заставить работать простейший прект для АВР.
Andrey K.
сообщение Oct 30 2008, 07:57
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 19
Регистрация: 10-12-07
Из: Благовещенск
Пользователь №: 33 145



Здравствуй, уважемый ALL!
Вопрос такой. Только начинаю осваивать микроконтроллеры. Написал простейший проект в IAR 5.11, в котором пытаюсь заставить моргать светодиоды. Думаю, не надо приводить его в пример здесь. Микросхему, Mega8535, прошиваю программатором Sterh 011. Вроде все понятно, но ни чего не работает! Сконфигурировал биты конфигурации для работы с кварцевым резонатором, частота 11,059Мгц. После компиляции получаю два файла прошивки, один большего размера, другой гораздо меньшего. Вот вопрос по этому поводу: они оба нужны для прошивки? Если оба, то куда и как прошивать второй файл? И еще! В инете почти нет информации по осваиванию IARа! С английски совсем туго, потому родной файл справки для меня совсем непонятен, даже с Промптом... Если укажете на нормальный сайт или книгу по освоению IARа, буду бесконечно признателен!!! Помогите заставить работать проект! help.gif

Извиняюсь, может не в ту тему написал...
Go to the top of the page
 
+Quote Post
Vladimir_J
сообщение Oct 30 2008, 08:10
Сообщение #2


Участник
*

Группа: Свой
Сообщений: 74
Регистрация: 9-01-07
Из: Украина
Пользователь №: 24 228



Приветствую smile.gif
По поводу не работает может быть много факторов (не в обиду):
- конфигурацию порта вывода;
- не тот include файл подлинкованный;
- и т.д.

По поводу книг, к сожалению сам искал, но в Инете только английская инфа sad.gif

С Уважением, Владимир.
Go to the top of the page
 
+Quote Post
Andrey K.
сообщение Oct 30 2008, 08:16
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 19
Регистрация: 10-12-07
Из: Благовещенск
Пользователь №: 33 145



Прилинкованный файл правильный! А вот как сконфигурировать порты ввода вывода?
Go to the top of the page
 
+Quote Post
GDI
сообщение Oct 30 2008, 08:17
Сообщение #4


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

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



Начитнать проще не с ИАРа, а с CodeVision-а, в основном из-за того что в последнем есть мастер создания проекта, который сделает за вас часть работы, начальную инициализацию портов и другой приферии. Да и с результирующими файлами та мпроще, он сразу генерит 2 файла - .hex и .eep, первый это сама прошивка, а второй это содержимое еепром.


--------------------
http://www.embedders.org Блоги разработчиков электроники.
Go to the top of the page
 
+Quote Post
singlskv
сообщение Oct 30 2008, 08:47
Сообщение #5


дятел
*****

Группа: Свой
Сообщений: 1 681
Регистрация: 13-05-06
Из: Питер
Пользователь №: 17 065



Цитата(Andrey K. @ Oct 30 2008, 10:57) *
Микросхему, Mega8535, прошиваю программатором Sterh 011. Вроде все понятно, но ни чего не работает! Сконфигурировал биты конфигурации для работы с кварцевым резонатором, частота 11,059Мгц.

Шьете через Chip Sterh Studio под win ?
Покажите конфигурационное слово в 16ричном виде.
Возможно Вы не так его конфигурируете, в Sterh Studio
On=0=вкл.
Off=1=выкл.
Go to the top of the page
 
+Quote Post
Andrey K.
сообщение Oct 30 2008, 09:46
Сообщение #6


Участник
*

Группа: Участник
Сообщений: 19
Регистрация: 10-12-07
Из: Благовещенск
Пользователь №: 33 145



Цитата
Шьете через Chip Sterh Studio под win ?Покажите конфигурационное слово в 16ричном виде.Возможно Вы не так его конфигурируете, в Sterh StudioOn=0=вкл.Off=1=выкл.

Да, шью в Sterh Studio под WinXP. Конфигурационное слово: ЕЕ59.

Заодно прикладываю саму программу:
#include <iom8535.h>
#include <inavr.h>
int main(void)

{
DDRB_Bit0 = 1; //
while (1)
{
__delay_cycles(1000000); // задержка
PORTA_Bit0 = 1; // включить B0
PORTA_Bit1 = 1;
PORTA_Bit2 = 1;
__delay_cycles(1000000); // еще задержка
PORTB_Bit0 = 0; // ... и выключить.
PORTB_Bit1 = 0;
PORTB_Bit2 = 0;
}
}



Уважаемые, бьюсь головой о стену! crying.gif Моя невнимательность опять сыграла злую шутку!!! Нашел косяк, он в програмном коде... Все исправил, теперь все моргает и мельтешит как надо! 08.gif

Всем большое спасибо!

Сообщение отредактировал Andrey K. - Oct 30 2008, 09:46
Go to the top of the page
 
+Quote Post
espectro
сообщение Nov 1 2008, 18:52
Сообщение #7


Участник
*

Группа: Участник
Сообщений: 31
Регистрация: 17-02-08
Пользователь №: 35 137



Цитата(Andrey K. @ Oct 30 2008, 12:46) *
{
DDRB_Bit0 = 1; //
while (1)
{
__delay_cycles(1000000); // задержка
PORTA_Bit0 = 1; // включить B0
PORTA_Bit1 = 1;
PORTA_Bit2 = 1;
__delay_cycles(1000000); // еще задержка
PORTB_Bit0 = 0; // ... и выключить.
PORTB_Bit1 = 0;
PORTB_Bit2 = 0;
}
}


Ну хотя бы так :

Код
DDRA=0x7; // Настравиваем 3 ноги на выход

__delay_cycles(1000000); // задержка

    PORTA_Bit0 = 1;          // включить[b]B[/b]
    PORTA_Bit1 = 1;
    PORTA_Bit2 = 1;

__delay_cycles(1000000); // задержка

    PORTA_Bit0 = 0;          // выключить[b]B[/b]
    PORTA_Bit1 = 0;
    PORTA_Bit2 = 0;


А то Вы включаете светодиоды на одном порту, а выключаете уже на другом )
Go to the top of the page
 
+Quote Post

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

 


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


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