参考
void initClock(void) (USE 1 OR 2 OR 3 OR 4)
{
TR0 = 0;
// TF0 =0;
// TMOD |= 0x01;
// TCON = 0x00;
TH0 = 0x10;
TL0 = 0x10;
TR0 = 1;
}
void initComm(void)//9600波特率,1位停止位,8位数据
{
// TMOD |= 0x20;
// SCON = 0xC0; //串口工作方式为3 //因为数据位为9位
SCON = 0x20; //串口工作方式为1
PCON = 0x00; //设置串口波特率9600,1位停止位,8位数据(11.0592M晶振)
TH1 = 0xFD; //设置T1初始值
TL1 = 0xFD; //设置T1初始值
}
void main(void)
{
TMOD = 0x21;
// EA = 1; //开中断
// ET0 = 1; //打开定时器中断允许
initComm();
initClock();
EA = 1; //开中断
ET0 = 1; //打开定时器中断允许
for(;;);
}
void clock_int(void) interrupt 1 (USE 1 OR 2 OR 3 OR 4)
{
// initClock(); 如果要调用initClock(); 则使用(USE 1 OR 2 OR 3 OR
4)
TH0 = 0x01;
TL0 = 0x01;
.......... //建议对硬件某引脚端口进行高低电平切换,做测试。
}
发表时间:2003年2月22日10:00:00