Список форумов ModLabs.net ModLabs.net
Порtал tехногенных эkспериментов
 
FAQ  •  Правила  •  Поиск  •  Пользователи  •  Группы  •  Регистрация
Профиль  •  Войти и проверить личные сообщения  •  Вход


Стыковка AVR с ПК по СОМ порту?

 
новая тема ответить    Список форумов ModLabs.net -> Схемотехника и электроника
Автор Сообщение
Papan
Junior Member



Зарегистрирован: 20.02.2007
Сообщения: 4

Сообщение28.02.2007 13:48  Стыковка AVR с ПК по СОМ порту? профиль цитировать

Делаю диплом, пытаюсь написать проги для стыковки ATMega8535 с ПК. Сейчас есть есть программа в МК принимающая данные котрые отображаются на индикаторе(7 сегментов), с ПК из проги на Delphi7 данные выталкиваются, индикатор зажигается(за основу взяты проги из книжек), но высвечивает непонятно что. У кого есть информация по программированию МК - поделитесь.
Пишу на ассемблере.

Добавлено спустя 4 минуты 32 секунды:

В книжке читаю в примере "отправляем в порт строку 5А 21 00 00 00 00 7А
дальше коментируется 5А - стартовый байт"
не понимаю, вот этот стартовый байт всегда должен быть 5А или нет, может это конкретный пример (для конкретной проги)?
Вот часть кода для проги на Delphi:
begin
if not VaComm1.Active then VaComm1.Open;
sCMD:='5A'+Format(' %2.x',[cmRS]);
sum:=$5A+$21;
sCMD:=sCMD+' 00 00';
for J:=1 to 128 do begin
sum:= sum+I;
sCMD:= sCMD+Format(' %.2x',[J]);
end;
sCMD:= sCMD+A+Format(' %.2x',[12]);
sum:= sum+$12;
sCMD:=sCMD+Format(' %.2x',[Hi(sum)])+Format(' %.2x',[Lo(sum)]);
Edit1.Text :=sCMD;
VaComm1.WriteText(sCMD);
end;
end.
Строковая переменная sCMD и есть то что мы передаём на контророллер. Она формируется из стартового байта(5А) и байта команды(cmRS=$21). Непонятно зачем добавляются вот это '00 00'. То что цикл забивает 128 байт цифрами вроде понял, но итересует как вместо цифр забить конкретные данные. Да и вообще как изменить длину слова данных.

Вот кусочек для МК:

**********************
LOOP:
clr r18;

rcall RECIVE

cbi UCSRB,pb4 ;Disable Receiver and Transmitter

out porta,r18 ;это
sbi portb,pb0 ;семисеоментник
sbi portb,pb1 ;

rjmp LOOP

RECIVE:
ldi r16,0x12
out UBRRH, r16
ldi r16, (1<<URSEL)|(0<<USBS)|(2<<UCSZ0) ;Set frame format: 7data, 1stop bit
out UCSRC,r16
ldi r16, (1<<RXEN) ;Enable Receiver and Transmitter
out UCSRB,r16
rec: sbis UCSRA,RXC ;ждать загрузки данных в буфер приёмника
rjmp rec
in r18,UDR
ret
**************
Раз протокола нет, то вроде бы больше ничего не нужно, но наверное я чего-то не понимаю.
Помогите плиз!!!
Papan
Junior Member



Зарегистрирован: 20.02.2007
Сообщения: 4

Сообщение05.03.2007 14:58   профиль цитировать

Вроде были здесь ребята разбирающиеся в AVR, что то тишина
Rocketer
Junior Member



Зарегистрирован: 19.12.2005
Сообщения: 56
Откуда: Москва

Сообщение12.03.2007 02:06   профиль цитировать

А не проще будет на АВР прописать эмуляцию терминала через уарт и посылать с компа просто нужную строку из того же delphi?

Подсказал как знал, прогу для мк не понял - просто в ассемблере я не силен...
Papan
Junior Member



Зарегистрирован: 20.02.2007
Сообщения: 4

Сообщение12.03.2007 10:42   профиль цитировать

Rocketer писал(а):
А не проще будет на АВР прописать эмуляцию терминала через уарт и посылать с компа просто нужную строку из того же delphi?

Подсказал как знал, прогу для мк не понял - просто в ассемблере я не силен...


а, что значит эмуляцию терминала?
Rocketer
Junior Member



Зарегистрирован: 19.12.2005
Сообщения: 56
Откуда: Москва

Сообщение12.03.2007 16:33   профиль цитировать

то есть заставить контроллер вести себя как программу-терминал (например HyperTerminal в винде).
неплохой пример реализации такой идеи: http://avr123.nm.ru/z4.htm
Papan
Junior Member



Зарегистрирован: 20.02.2007
Сообщения: 4

Сообщение12.03.2007 16:56   профиль цитировать

спасибо за ссылку
Показать сообщения:   
новая тема ответить    Список форумов ModLabs.net -> Схемотехника и электроника Часовой пояс: GMT + 4
Страница 1 из 1

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы можете вкладывать файлы
Вы можете скачивать файлы


Powered by phpBB © 2001, 2005 phpBB Group

File Attachment © by Meik Sievertsen
Rambler's Top100