弄出来了。波特率算错了。初值是ffdc。谢谢ningling_21的提示。- #include <stc89c5xRC.h>
- unsigned char dat[] = {"hello"};
- unsigned char i;
- void Init();
- void SendData(unsigned char i);
- void main()
- {
- //初始化
- //死循环
- Init();
- for(i=0; i<5; i++)
- {
- SendData(i);
- }
- }
- void Init()
- {
- //全部设定完再开启中断
- //定时器2设定
- RCAP2L=0xdc; //载入初值9600
- RCAP2H=0xff;
-
- T2CON=0x34; //定时器2设定
- PCON = 0x0;
- SCON=0x40;//SM01=01;REN=0
- RI=0x00;
- TI=0x00;
- IE=0x90;
- }
- void SendData(unsigned char i)
- {
- //ES=0;//关闭串口中断
- //TI = 0;
- SBUF=dat[i];
- while (!TI);
- TI = 0;
- //ES=1;//开启串口中断
|