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

 
 
> Atmega128 проблемы с USART
Nekromant
сообщение Nov 18 2008, 15:04
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 47
Регистрация: 21-03-07
Пользователь №: 26 369



Доброго времени суток!
help.gif Суть проблемы в том, что впервые пытаюсь запустить USART (ранее опыта работы не было). провел инициализацию и просто пытаюсь по прерыванию вывести на дисплей бессмысленную строчку. Дело в том, что на дисплее я эту строку ни разу так и не увидел(попытка помигать светодиодами приводи к тому же самому результату). help.gif
вот код инициализации и прерываний:
oid TDebugUSART::InitUSART(uint32_t baudrate)
{
/* Enable receiver, transmitter and interrupts */
UCSR1B = (1 << RXEN1) | (1 << TXEN1) | (1 << RXCIE1);

/* 8 bit data */


UCSR1C = (1 << UCSZ11) | (1 << UCSZ10);

/* high byte of UART speed */
UBRR1H = (F_CPU /(baudrate * 8L) - 1) >> 8;
/* low byte of UART speed */
UBRR1L = (uint8_t)(F_CPU / (baudrate * 8L)-1);

}
//-----------------------------
ISR(USART1_RX_vect)
{

Lcd.WriteInt(987654321);


}

ISR(USART1_UDRE_vect)
{
Lcd.WriteInt(123456789);


}
Сами функции Lcd.WriteInt точно рабочие, они взяты из библиотеки моих же предыдущих проектов и еще не подводили.
Заранее благодарен...
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Nekromant
сообщение Nov 21 2008, 01:31
Сообщение #2


Участник
*

Группа: Участник
Сообщений: 47
Регистрация: 21-03-07
Пользователь №: 26 369



добрый день, извиняюсь за долгий ответ.
1) строка maker1 длиннее строки InitLcd и объявлена она так же как InitLcd-написал так, потому что начал грешить на индивидуальную непереносимость именно константы InitLcd, пытался проверить пошлет ли мне он такое же количество правильных символов как определился размер(на случай если нужно послать невесь массив а его часть).результат был тот же.
2) строку maker1 никак не копирую в InitLcd это тестовый вариант и мне по сути надо просто получить вменяемую передачу массива с МК на ПК, для начала можно любоого массива, а затем уж этопойдет в нормальную програму.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Nekromant   Atmega128 проблемы с USART   Nov 18 2008, 15:04
- - Qwertty   А у Вас фьюз "М103С" случайно не установ...   Nov 18 2008, 16:51
- - Laptop   А putchar у Вас где? Фунции низкого уровня надо са...   Nov 18 2008, 17:03
- - Nekromant   1)фьюз м103 не установлен-я сним много шишек набил...   Nov 18 2008, 17:09
|- - Laptop   Цитата(Nekromant @ Nov 18 2008, 20:09) 1)...   Nov 18 2008, 17:45
- - AHTOXA   А Lcd.WriteInt(123456789); - там случайно не испол...   Nov 18 2008, 17:57
|- - Nekromant   Цитата(AHTOXA @ Nov 18 2008, 20:57) А Lcd...   Nov 19 2008, 02:15
- - smac   Цитата(Nekromant @ Nov 18 2008, 18:04) .....   Nov 18 2008, 18:21
- - Сергей Борщ   Цитата(Nekromant @ Nov 18 2008, 17:04) во...   Nov 19 2008, 09:11
|- - Nekromant   Цитата(Сергей Борщ @ Nov 19 2008, 12:11) ...   Nov 19 2008, 10:12
|- - aesok   Пожалуйста замените идеоматические выражения ...   Nov 19 2008, 10:50
|- - Nekromant   Цитата(aesok @ Nov 19 2008, 13:50) Пожалу...   Nov 19 2008, 14:28
|- - Сергей Борщ   Цитата(Nekromant @ Nov 19 2008, 16:28) 3)...   Nov 19 2008, 14:48
|- - aesok   Цитата(Nekromant @ Nov 19 2008, 17:28) 3)...   Nov 19 2008, 14:56
- - Qwertty   Цитата(Nekromant @ Nov 18 2008, 18:04) /*...   Nov 19 2008, 13:34
- - aesok   Цитата(Nekromant @ Nov 21 2008, 04:31) до...   Nov 21 2008, 08:03
- - Nekromant   Добрый день, проблема решена, теперь контроллер вы...   Nov 25 2008, 13:48


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

 


RSS Текстовая версия Сейчас: 24th July 2025 - 06:35
Рейтинг@Mail.ru


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