Реклама на сайте DatasheetsDatasheets

KAZUS.RUN - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Книги и журналы
FAQ по электронике

  Datasheets
Поиск SMD
Онлайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Схемы и проекты
Принципиальные схемы
  Программы
Каталог сайтов
Калькуляторы
  Форумы по электронике
Помощь проекту

Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей...

 
Опции темы

Atmega8+COM-порт

Непрочитано 07.10.2011, 17:28  
Ara41
Почётный гражданин KAZUS.RUN
 
Регистрация: 30.09.2006
Сообщений: 1,557
Сказал спасибо: 157
Сказали Спасибо 660 раз(а) в 430 сообщении(ях)
Ara41 на пути к лучшему
По умолчанию Atmega8+COM-порт

Приветствую всех. Пытаюсь разобраться с атмегой, хочу настроить взаимодействие с ПК через ком-порт. Простенький код прерывается по окончанию приема по USART и отсылает принятое обратно. com0com используется для тестирования. Отправляю терминалом символ - получаю в ответ кучу FF (иногда 80), в протеусе ошибка - [AVR USART] Rx frame error. Перебирал разные скорости, разные тактовые частоты - что-то ничего не выходит =(
В чем проблема и как пофиксить? Код, проект протеуса и прошивки прилагаю.
Код:
#include ‹avr/io.h›
    #include ‹avr/interrupt.h›
    #include ‹avr/signal.h›
    void USART_Transmit( unsigned char data );
    ISR(USART_RXC_vect)
    {
    int b;
    b = UDR;
   USART_Transmit(b);
    }
       
    void USART_Transmit( unsigned char data )
    {
    while ( !(UCSRA & (1‹‹UDRE)) );
    UDR = data;
    }
     
    int main(void)
    {
// USART initialization
// Communication Parameters: 8 Data, 2 Stop, No Parity
// USART Receiver: On
// USART Transmitter: On
// USART Mode: Asynchronous
// USART Baud Rate: 4800
UCSRA=0x00;
UCSRB=0xD8;
UCSRC=0x8E;
UBRRH=0x00;
UBRRL=0x33;
DDRB = 0xFF;
    sei();
   
    while(1)
    {
    }//
    }
Вложения:
Тип файла: rar COM-diods.rar (18.3 Кб, 104 просмотров)
Реклама:

Последний раз редактировалось Ara41; 07.10.2011 в 19:16.
Ara41 вне форума  
Непрочитано 07.10.2011, 17:40  
hostel6psu
Частый гость
 
Регистрация: 23.08.2007
Сообщений: 27
Сказал спасибо: 1
Сказали Спасибо 28 раз(а) в 13 сообщении(ях)
hostel6psu на пути к лучшему
По умолчанию Re: Atmega8+COM-порт

b почему int??? char должен быть
hostel6psu вне форума  
Непрочитано 07.10.2011, 17:46  
skrynia
Прописка
 
Аватар для skrynia
 
Регистрация: 07.03.2009
Адрес: MN
Сообщений: 168
Сказал спасибо: 6
Сказали Спасибо 31 раз(а) в 21 сообщении(ях)
skrynia на пути к лучшему
По умолчанию Re: Atmega8+COM-порт

Сделайте сначала, чтобы программа после старта сама отправляла 1 байт по USART и посмотрите на графиках в протеусе, что там выходит.
__________________
  • Квадрат - это тоже прямоугольник, только более квадратный и не такой вытянутый
  • Двуугольник - это треугольник, только поломанный
  • Одноугольника не видел
skrynia вне форума  
Непрочитано 07.10.2011, 20:30  
Ara41
Почётный гражданин KAZUS.RUN
 
Регистрация: 30.09.2006
Сообщений: 1,557
Сказал спасибо: 157
Сказали Спасибо 660 раз(а) в 430 сообщении(ях)
Ara41 на пути к лучшему
По умолчанию Re: Atmega8+COM-порт

вот, отправка одного байта от МК
Миниатюры:
Нажмите на изображение для увеличения
Название: 6677.jpg
Просмотров: 71
Размер:	69.5 Кб
ID:	26892  
Ara41 вне форума  
Непрочитано 08.10.2011, 20:17  
CodeNameHawk
Вид на жительство
 
Регистрация: 21.10.2009
Сообщений: 349
Сказал спасибо: 181
Сказали Спасибо 65 раз(а) в 57 сообщении(ях)
CodeNameHawk на пути к лучшему
По умолчанию Re: Atmega8+COM-порт

Virtual terminal пробовали?
CodeNameHawk вне форума  
Непрочитано 08.10.2011, 20:22  
CodeNameHawk
Вид на жительство
 
Регистрация: 21.10.2009
Сообщений: 349
Сказал спасибо: 181
Сказали Спасибо 65 раз(а) в 57 сообщении(ях)
CodeNameHawk на пути к лучшему
По умолчанию Re: Atmega8+COM-порт

Сообщение от Ara41 Посмотреть сообщение
// Communication Parameters: 8 Data, 2 Stop, No Parity
2 Stop по каким соображениям? Как комп настроен?
CodeNameHawk вне форума  
Непрочитано 08.10.2011, 20:45  
Ara41
Почётный гражданин KAZUS.RUN
 
Регистрация: 30.09.2006
Сообщений: 1,557
Сказал спасибо: 157
Сказали Спасибо 660 раз(а) в 430 сообщении(ях)
Ara41 на пути к лучшему
По умолчанию Re: Atmega8+COM-порт

2 стоп из соображений, что всё уже перепробывал Видимо, это был последний из вариантов. Виртуал терминал пробовал, кажет аналогично terminal.
А что значит "как комп настроен"?
Ara41 вне форума  
Непрочитано 08.10.2011, 23:20  
ru
Частый гость
 
Аватар для ru
 
Регистрация: 07.07.2004
Сообщений: 37
Сказал спасибо: 3
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
ru на пути к лучшему
По умолчанию Re: Atmega8+COM-порт

а зачем включено прерывание передача завершена? попробуй его отключить для начала
ru вне форума  
Непрочитано 09.10.2011, 04:41  
Ara41
Почётный гражданин KAZUS.RUN
 
Регистрация: 30.09.2006
Сообщений: 1,557
Сказал спасибо: 157
Сказали Спасибо 660 раз(а) в 430 сообщении(ях)
Ara41 на пути к лучшему
По умолчанию Re: Atmega8+COM-порт

Господа, просьба давать более развернутые ответы, хотя бы на несколько слов. Ведь если бы я был гуру АВР - я бы не задавал этот простенький для вас вопрос?
Если речь идет про обработку ISR(USART_RXC_vect) - то это обработка "прием завершен", а не передача. Программка тестовая, цель - осуществить устойчивое взаимодействие с ПК в обе стороны. Потом прикручу проверку ЦРЦ, будет простенький протокол передачи данных.
Отключил прерывания - ничего не изменилось.
Ara41 вне форума  
Непрочитано 09.10.2011, 09:01  
Zemlyanov
Гражданин KAZUS.RUN
 
Регистрация: 17.09.2006
Сообщений: 633
Сказал спасибо: 78
Сказали Спасибо 69 раз(а) в 57 сообщении(ях)
Zemlyanov на пути к лучшему
По умолчанию Re: Atmega8+COM-порт

А какой у вас кварц стоит ?
Zemlyanov вне форума  
 
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Взаимозаменяемы ли ATmega8 и Attiny2313 rusentu Микроконтроллеры, АЦП, память и т.д 17 21.08.2010 18:41
ATMega8 VS USB SkyProc Микроконтроллеры, АЦП, память и т.д 28 28.04.2010 17:01
Передача данных с ATmega8 на COM порт ПК sergx1300 Микроконтроллеры, АЦП, память и т.д 32 20.04.2010 14:19
Порт С в ATmega8 VVKart Микроконтроллеры, АЦП, память и т.д 2 10.11.2009 14:08
Atmega 16 не работает кнопка через порт PC4 ? uriy-ch Микроконтроллеры, АЦП, память и т.д 16 14.01.2009 21:42


Часовой пояс GMT +4, время: 00:44.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.