89c669uart.c
来自「简单实用的keilc p89c669uart 传口通讯程序.已通过工程使用」· C语言 代码 · 共 38 行
C
38 行
#include
#include
#define FOSCCLK 11059200 //单片机外部时钟
#define BAUD 9600 //波特率设置
unsigned int BRATE;
void Uart1Init( void ) //UART1 初始化函数
{
S1STAT = 0x20 ; // 区分接收和发送中断
S1CON = 0x00 ; //串口控制寄存器清零
REN_1 = 1 ; //允许接收中断 { //进入8 位UART 模式设置 SM0_1 = 0 ; SM1_1 = 1 ; //设定串口通讯方式为模式1 }
BRGCON = 0X00 ; //关闭波特率发生器,从而设置波特率
BRGR1 = BRATE >> 8 ;
BRGR0 = BRATE & 0x0ff ;
BRGCON = 0X01 ; //开启波特率发生器
ES1R = 1 ; // 开放UART1 接收中断
EA = 1 ; // 使能所有中断
}
void Uart1SendCrt( unsigned char crt ) //UART1 发送数据函数
{
S1BUF = crt ;
while( TI_1 == 0 ) ;
TI_1 = 0 ;
}
main()
{
unsigned int count ;
BRATE=FOSCCLK/BAUD-16;
Uart1Init( ) ; //初始化串口参数
count = 0x0ff ;
while( count--) ; //延时
while(1) {
Uart1SendCrt( 'A') ; //发送字符A
count = 0x0ff ;
while( count--) ; //延时
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?