吉林工程技术师范学院单片机__报告(编辑修改稿)内容摘要:

nt0=0。 } void inti() { TMOD=0X19。 TH1=0X00。 TL1=0X00。 TH0=0X00。 TL0=0X00。 IE=0X8A。 } void main(void) { inti()。 while(1) { if(ti==0) {del()。 } else if(ti==1) { dis_buf[0]=led_code[Th%10]。 dis_buf[1]=led_code[11]amp。 led_code[Th/10%10]。 dis_buf[2]=led_code[Th/100%10]。 dis_buf[3]=led_code[Th/1000]。 led_display ()。 ti++。 } else if(ti==41) { dis_buf[0]=led_code[Tz%10]。 dis_buf[1]=led_code[Tz/10%10]。 dis_buf[2]=led_code[Tz/100%10]。 dis_buf[3]=led_code[Tz/1000]。 led_display ()。 ti++。 } else if(ti==82) { dis_buf[0]=led_code[KON%10]。 dis_buf[1]=led_code[KON/10%10]。 dis_buf[2]=led_code[KON/100]。 dis_buf[3]=led_code[11]amp。 led_code[0]。 led_display ()。 ti++。 } else if(ti=123) { ti=0。 TR0=0。 TMOD=0X19。 TH1=0X00。 TL1=0X00。 TH0=0X00。 TL0=0X00。 } } } 键盘与数码管静态显示 根据电路图图 1 和图 2编写按键程序,左侧第一位数码管显示独立式按键编号“ 1”、“ 2”、“ 3”、“ 4”,哪一个按下,对应的编号显示在左侧第一位数码管(左侧第二个数码管为全灭状态),右侧二位数码管显示“ 0015”的十进制键值, 无键按下时数码管为全灭状态。 f9g10e1d2K3c4DP5b6a7K8f9g10e1d2K3c4DP5b6a7K8f9g10e1d2K3c4DP5b6a7K8f9g10e1d2K3c4DP5b6a7K8300R23300R24300R25300R26CLR9CLK8A1B2QA3QB4QC5QD6QE10QF11QG12QH13VCC14GND7SN74164NCLR9CLK8A1B2QA3QB4QC5QD6QE10QF11QG12QH13VCC14GND7SN74164NCLR9CLK8A1B2QA3QB4QC5QD6QE10QF11QG12QH13VCC14GND7SN74164NCLR9CLK8A1B2QA3QB4QC5QD6QE10QF11QG12QH13VCC14GND7SN74164NDATACLK123456781011121314151617VSS2021222324252627283233343536373839VCC40VCCGNDVCCVCC 图 动态显示电路图 123456781011121314151617VSS2021222324252627283233343536373839VCC40VCCGNDSW1SW2SW3SW4SW5SW6SW7SW8SW9SW10SW11SW12SW13SW14SW15SW1610K10K10K10KVCCVCCSW_L1SW_L2SW_L3SW_L410K10K10K10KGND 图 键盘接口电路图 程序代码 include unsigned char code led_code[]={0x03,0x9f,0x25,0x0d,0x99,0x49,0x41,0x1f,0x01,0x09 , 0x11,0xc1,0x63,0x85,0x61,0x71,0xff}。 unsigned char dis_buf[4]。 unsigned char i。 unsigned char aa,bb,cc,lie。 sbit key1=P2^0。 sbit key2=P2^1。 sbit key3=P2^2。 sbit key4=P2^3。 sbit led_clk= P1^6。 sbit led_data = P1^7。 void delay_ms(unsigned int i) { unsigned char j。 for(i。 i0。 i) { for(j=110。 j0。 j )。 } } void key_scan(void) { P3=0Xf0。 if((P3amp。 0xf0)!=0xf0) { aa=0xfe。 for(lie=0。 lie4。 lie++) { P3=aa。 aa=(aa1)|0x01。 if((P3amp。 0xf0)!=0xf0) { bb=P3amp。 0Xf0。 switch(bb) { case 0xe0:cc=lie。 break。 case 0xd0:cc=lie+4。 break。 case 0xb0:cc=lie+8。 break。 case 0x70:cc=lie+12。 break。 default :cc=16。 break。 } } } } else cc=16。 } void led_display ( ) { unsigned char t,i。 unsigned char input_code。 for(i=0。 i4。 i++) { input_code=led_code[dis_buf[i]]。 for (t=0。 t8。 t++) { if( input_code amp。 0x01 ) { led_data=1。 } else { led_data=0。 } led_clk=0。 input_code=1。 led_clk=1。 } } } void main () { unsigned char num。 while(1) { key_scan()。 if(key1==0) { delay_ms(10)。 if(key1==0) { num=1。 } } else if(key2==0) { delay_ms(10)。 if(key2==0) { num=2。 } } else if(key3==0) { delay_ms(10)。 if(key3==0) { num=3。 } } else if(key4==0) { delay_ms(10)。 if(key4==0) { num=4。 } } else {num=16。 } dis_buf[2]=16。 dis。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。