//#include "iom16v.h"
#include <avr/io.h>
#define uchar unsigned char
#define uint unsigned int
/*串口初始化函数*/
void Uart_Init(void)
{
// 初始化串口UART
DDRE=(0<<PINE0); // RXD端为输入
DDRE=(1<<PORTE1); // TXD端为输CHU
UCSR0A = 0x00; /*倍速*/
UBRR0L = 51; // 计数初值等于 Fosc/(16*9600)-1=8MHZ/(16*9600)=51 按实际情况调整到54
//UBRR0L = 3; // 计数初值等于 Fosc/(16*115200)-1=8MHZ/(16*115200)=3 按实际情况调整到54
UBRR0H = 0; //设置波特率
UCSR0B = 0X18; //使能接收发送 使能接收中断
UCSR0C = 0X06; //8位数据 1个停止位 USBS0 0:1位停止位 1:2位停止位 UCSZ02-UCSZ00 数据长度选择5--9位
//UCSROC 第六位为0 异步 1 同步
}
/*发送一个字符数据,查询方式*/
void Uart_Transmit(uchar i)
{
while (!(UCSR0A & (1<<UDRE0))); /* 等待发送缓冲器为空*/
UDR0 = i; /* 发送数据*/
}
/*主函数*/
void main(void)
{
uchar key=0,old_key=0;
Uart_Init();
while (1)
{
Uart_Transmit(0xAA) ;
// Uart_Transmit(0x80) ;
Uart_Transmit(0x55) ;
// Uart_Transmit(0x0d);
}
}
|