Страница 1 из 1

Проблема с UART на ATtiny2313

Добавлено: Вс май 09, 2010 12:39:56
iosfixed
Доброго времени суток.
Проблема в следующем. Пытаюсь отправить байт по UART на МК и для индикации использую светодиоды подключённые к порту B.
Отправка проходит, а индикация - сходит с ума.
Отправляю еденицу - загораются PB0, PB1 и PB2 светодиоды. Отправляю двойку - все тухнут.
Но главное - при одном и том-же байте могут загораться разные светодиоды. Отправляю 255 - все молчат. Отправил ещё два раза 255 и загоряться PB1 и PB3. Ещё раз - опять все потухнут.
Для отправки использовал гипер терминал и Terminal v 1.9 скачанный отсюда.
Код обработчика прерываний.

Код: Выделить всё

USART_RX:
		IN 	Input,UDR
		OUT PortB,Input
		LDI R16, (0<<RXC)
		OUT UCSRA, R16
		RETI
Код инициализации (Может тут чего напутал)

Код: Выделить всё

	LDI 	R16, 51	   // Скорость - 9600 б/с Кварц - 8Мгц
	OUT 	UBRRL,R16
	LDI 	R16, 0			
	OUT 	UBRRH,R16

	LDI 	R16,0
	OUT 	UCSRA, R16
	LDI 	R16, (1<<RXEN)|(0<<TXEN)|(1<<RXCIE)|(0<<TXCIE)  // Разрешил приём и прерывание по приёму
	OUT		UCSRB, R16
	LDI		R16, (0<<UCSZ2)|(1<<UCSZ1)|(1<<UCSZ2)|(0<<UMSEL)  // Настроил на восемь бит
	OUT		UCSRC, R16
// Прошу прощения, поторопился, и не в тот раздел написал.

Re: Проблема с UART на ATtiny2313

Добавлено: Пн май 10, 2010 18:30:20
Aheir
Код обычно оформляют вложением.
Тем по 2313 и UART масса в "Микроконтроллерах". Изучите этот раздел, потом спрашивайте в СУЩЕСТВУЮЩИХ там темах. Ваш вопрос пока не заслуживает открытитя отдельной темы.