更新时间: 试题数量: 购买人数: 提供作者:

有效期: 个月

章节介绍: 共有个章节

收藏
搜索
题库预览
原理图如图所示,程序利用定时器每次定时 50ms,每20次切换一次数码管显示的数字,运行 结果为共阳极数码管循环显示数字 2,0,2,5。显示时间和间隔时间都为 1s。请将程序补充完整。 #includ XTAL2 18 XTAL1 19 AL(  )PSEN 29 RST 9 P0.0/AD0 39 P0.1/AD1 38 P0.2/AD2 37 P0.3/AD3 36 P0.4/AD4 35 P0.5/AD5 34 P0.6/AD6 33 P0.7/AD7 32 P1.0/T2 1 P1.1/T2EX 2 P1.2 3 P1.3 4 P1.4 5 P1.5 6 P1.6 7 P1.7 8 P3.0/RX P3.1/TX P3.2/INT0 12 P3.3/INT1 13 P3.4/T0 14 P3.7/R P3.6/WR 16 P3.5/T1 15 P2.7/A15 28 P2.0/A8 21 P2.1/A9 22 P2.2/A10 23 P2.3/A11 24 P2.4/A12 25 P2.5/A13 26 P2.6/A14 27 U1 AT8 9C52 NET=D10 Q1 PNP VC BUZZER VNOM=5V D1 R1 100 R2 100 unsigne 0x6d,0x7d,0x07,0x7f,0x6f}; //共阴极数码管数字 0~9的段码 unsigne voi { unsigne TMOD=0x01; //定时器T0,定时模式,方式 1,内部启动 TH0=(65536-50000)/256; TL0=(65536-50000)%256; //定时50ms初值 TR0=1; //开启定时器 while(1) { while(TF0==0); //等待中断标志置 1 { TF0=0; // 中断标志清 0 TH0=(65536-50000)/256; //重装初值 TL0=(65536-50000)%256; n++; //定时次数变量 n加1 if(n==20) // 判断1s定时是否完成 { n=0; 定时次数变量 n清零 P0=~shuzi[huancun[i]]; //将段码数据送 I/O口显示 i++; //变量i加1,准备显示下一个数字。 if(i==4) // 判断最后一个数字是否显示完成 i=0; //显示完最后一个数字后,变量 i清零。 } } } } P00 P01 P02 P03 P04 P05 P06 P00 P01 P02 P03 P04 P05 P06 P00 P01 P02 P03 P04 P05 P06 XTAL2 18 XTAL1 19 AL(  )PSEN 29 RST 9 P0.0/AD0 39 P0.1/AD1 38 P0.2/AD2 37 P0.3/AD3 36 P0.4/AD4 35 P0.5/AD5 34 P0.6/AD6 33 P0.7/AD7 32 P1.0/T2 1 P1.1/T2EX 2 P1.2 3 P1.3 4 P1.4 5 P1.5 6 P1.6 7 P1.7 8 P3.0/RX P3.1/TX P3.2/INT0 12 P3.3/INT1 13 P3.4/T0 14 P3.7/R P3.6/W R 16 P3.5/T1 15 P2.7/A15 28 P2.0/A8 21 P2.1/A9 22 P2.2/A10 23 P2.3/A11 24 P2.4/A12 25 P2.5/A13 26 P2.6/A14 27 U1 AT89C52 CLOCK=12MHz 23456781 RP1 RESPACK-7 VC 六、设计题