问题终于查清,稍后发帖说明,你也可以不用回复了,自然下沉吧... 详情请见:https://bbs.21ic.com/club/bbs/ShowAnnounce.asp?id=3260149 2009.3.10 20:02 ---------------------------------------------------------- 是AT89C51SND1的片子,这是工程文件,关于printf函数的 软件仿真总是死在监测TI那里,但实际运行却正常!
#include <stdio.h> #include "AT89C51SND1_REG.H"
void main(void) { unsigned char i; CKCON |= 0x01; ////CKCON.0=X2=1, 设置为6分频,清除则为12分频 BDRCON |= 0x10; // BRR:启动波特率发生器 BDRCON |= 0x08; // TBCK:发送,选择波特率发生器代替Time1 BDRCON |= 0x04; // RBCK:接受, BDRCON |= 0x02; // SPD:SPD置1 BRL = 191; //波特率重装寄存器 PCON |= 0x80; //PCON高两位是串口模式控制 TR1 = 1; //启动定时器,即操作TCON SCON &= 0x7f; SCON |= 0x43; //用printf时,即RI、TI也置1了 for(i=0;i<10;i++) { printf("%bx:hello...
",i); } printf("STOP......"); while(1) ; }
这是实际运行效果:
不顶了,谢谢二楼兄弟! |