打印
[AVR单片机]

AVR单片机串口接收数据问题

[复制链接]
777|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
AVR单片机发送数据,通过usb-232数据线连接电脑,用串口助手接收到的数据是乱码,求大神解答,代码如下:
void Part_Init()
{
        PORTD = 0xff;                //全设置高电平
        DDRD = 0x02;                //PD1为TXD设置为输出,PD0为RXD设置为输入
}


void Usart_Init()
{
        UCSRA=0x00;                                                                        //串口控制器A清零
        UCSRB=0x00;                                                                        //串口控制器B清零
        UCSRC|=(1<<URSEL)|(1<<UCSZ1)|(1<<UPM1)|(1<<UCSZ0);  //选择USCRC,异步操作,偶检验,1个停止位,八位数据
        //UCSRC|=BIT(URSEL)|BIT(UCSZ1)|BIT(UCSZ0);        //选择USCRC,异步操作,禁止检验危,1个停止位,八位数据
       
        UBRRH = 0x00;
        UBRRL = 0x2F;
        //UBRR=47;        //从手册中直接取得赋值,9600kbps
       
        UCSRB|=(1<<TXEN)|(1<<RXEN)|(1<<RXCIE);        //发送使能,接收使能,接收完毕中断使能
        SREG|=0x80;                //全局中断使能
}

void Usart_SendChar(unsigned char ucSendData)
{
        while (!(UCSRA & (1<<UDRE)));                //数据寄存器UDR是否为空?
        UDR = ucSendData;                                        //UDR赋值
        while(!(UCSRA&((1<<TXC))));                        //数据是否已经发送完毕?
        UCSRA|=(1<<TXC);                                        //清除发送完毕标志位
}


接线图.jpg (55.25 KB )

串口接线图

串口接线图

相关帖子

发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

4

帖子

0

粉丝