#include "HT46RU232.h"
#pragma vector Uart_ISR @0x10 //串口中断入口申明
void Uart_init();
void Uart_send(unsigned char data);
void Uart_ISR();
unsigned char data;
void Delay();
void main()
{
char i;
Uart_init();
i=0;
while(1)
{
for(i=0;i<=100;i++)
{
Uart_send(i);
}
Delay();
// Uart_send('/n');
}
}
void Delay()
{
long i,j;
for(i=0;i<=600;i++)
{
for(j=0;j<=60;j++)
{
_delay(100);
}
}
}
void Uart_init()
{
_ucr1=0x80; //设置BNO,PRT,PREN,STOP位
_ucr2=0xc4; //使能TXEN、RXEN
_brg=12; //设置波特率,高速,8M,9600
_euri=1; //开串口中断
_emi=1; //开总中断
}
void Uart_send(unsigned char data)
{
unsigned char usr;
usr=_usr;
_txr_rxr=data; //data此处为全局变量,为待发送数据
_txen=1;
while(!_txif){
}
}
void Uart_ISR()
{
unsigned char i;
_rxen=1;
i=_usr;
data=_txr_rxr;
// Uart_send(data);
if(_perr==1||_nf==1||_ferr==1||_oerr==1) //错误检测
{
i=_usr;
i=_txr_rxr;
}
}