#includesbit hc573_sg_le=P2^6; //对用于锁存段数据的 573 锁存 LE 端进行定义sbit hc573_bit_le=P2^7;//对用于锁存位选通数据的 573 锁存 LE 端进行定义sbit m1=P1^4;//直流电机的控制位sbit s3=P3^6;//按键 s3 的定义sbit s4=P3^7;//按键 s4 的定义unsigned int Nt1;//m1 为 0 时,所持续的时间 t1 在定时器中计数值unsigned char speed_num; //数码管所显示的速度等级unsigned char code display_table[16]={0x3f,0x06,0x5b,0x4f, 0x66,0x6d,0x7d,0x07, 0x7f,0x6f,0x77,0x7c, 0x39,0x5e,0x79,0x71}; //0-f 16 个数码管显示编码unsigned char code display_en[7]={0xff,0xfe,0xfd,0xfb,0xf7,0xef,0xdf}; //数码管位选通数据数组,可 //对 6 个数码管的位选通进行 //整体控制void display(unsigned char num,unsigned char i){P0=display_table[num]; //将数值的编码送入锁存器的输入端准备段数据的锁存hc573_sg_le=1; // 将段数据送给段数据线hc573_sg_le=0; //锁存段数据,让出 P0 口以供位选通锁存器使用 P0=display_en[i]; //准备点亮第 i 个数码管hc573_bit_le=1; //将位选通数据送到数码管,数码管亮hc573_bit_le=0; //锁存位选通数据,让出 P0 口以供段数据锁存器使用}void delay_