Спаял платку с Atmega8, подключил к нему LCD-дисплей, а UART через кабель со встроенной микросхемой AD232
подключил к COM-порту компьютера. Код сгенерил с помощью CodeVisionAVR, прошиваю и запускаю HyperTerminal - а на
экране ничего, совсем. Частота кварца - 12 МГц, скорость обмена 9600. Кабель 100% рабочий, замыкаю Rx на Tx, все
возвращается обратно. Но вот передача не работает, в чем может быть загвоздка? Ведь даже если со скоростями я
ошибся, должны появляться хотя бы какие либо кракозябры в HyperTerminal, а там полная пустота.
Rx и Tx как я понял подключегы крест накрест уже в кабеле.
Вот код:
Код: Выделить всё
#include <mega8.h>
#include <stdio.h>
void init_UART()
{
UCSRA=0x00;
UCSRB=0x08;
UCSRC=0x86;
UBRRH=0x00;
UBRRL=0x4D;
}
void UART_Transmit(unsigned char data)
{
while ( !( UCSRA & (1<<UDRE)) );
sprintf(lcd_buffer, "UART_Send");
send_lcd(set_second_line, lcd_buffer);
UDR = data;
}
void main(void) {
DDRB=0xFF;
DDRD=0xFF;
DDRC=0x60; //0x60
LCD_Init();
init_UART();
while(1) {
UART_Transmit(0x52);
delay();
}
}


