标题: 请问大神,此单片机的晶振频率是22.1184,想设置波特率为4800,怎么设置串口初始... [打印本页]

作者: 忧伤的橙子    时间: 2016-5-2 17:20
标题: 请问大神,此单片机的晶振频率是22.1184,想设置波特率为4800,怎么设置串口初始...
请问大神,此单片机的晶振频率是22.1184,想设置波特率为4800,怎么设置串口初始程序????

作者: luoluoluo136    时间: 2016-5-3 08:53
什么单片机?如果是stc的单片机,可以用stc-isp自动生成。
作者: 忧伤的橙子    时间: 2016-5-4 21:09
luoluoluo136 发表于 2016-5-3 08:53
什么单片机?如果是stc的单片机,可以用stc-isp自动生成。

芯片是stc12c5a60s2,51单片机。
作者: luoluoluo136    时间: 2016-5-5 09:52
void UartInit(void)                //4800bps@22.1184MHz
{
        PCON &= 0x7F;                //波特率不倍速
        SCON = 0x50;                //8位数据,可变波特率
        AUXR |= 0x40;                //定时器1时钟为Fosc,即1T
        AUXR &= 0xFE;                //串口1选择定时器1为波特率发生器
        TMOD &= 0x0F;                //清除定时器1模式位
        TMOD |= 0x20;                //设定定时器1为8位自动重装方式
        TL1 = 0x70;                //设定定时初值
        TH1 = 0x70;                //设定定时器重装值
        ET1 = 0;                //禁止定时器1中断
        TR1 = 1;                //启动定时器1
}

作者: ysyzgt    时间: 2016-5-5 10:45
下载单片机小精灵,那个软件可好用了,什么也不用算
作者: 忧伤的橙子    时间: 2016-5-7 22:46
ysyzgt 发表于 2016-5-5 10:45
下载单片机小精灵,那个软件可好用了,什么也不用算

谢谢!
作者: 123789@@    时间: 2021-3-4 00:51
void UartInit(void)                //57600bps@22.1184MHz {         SCON = 0x50;                //8位数据,可变波特率         AUXR |= 0x40;                //定时器1时钟为Fosc,即1T         AUXR &= 0xFE;                //串口1选择定时器1为波特率发生器         TMOD &= 0x0F;                //设定定时器1为16位自动重装方式         TL1 = 0xA0;                //设定定时初值         TH1 = 0xFF;                //设定定时初值         ET1 = 0;                //禁止定时器1中断         TR1 = 1;                //启动定时器1 }




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1