【正文】
在設(shè)計的過程中遇到問題,可以說得是困難重重,這畢竟第一次做的,難免會遇到過各種各樣的問題,同時在設(shè)計的過程中發(fā)現(xiàn)了自己的不足之處,對以前所學(xué)過的知識理解得不夠深刻,掌握得不夠牢固,比如說三極管 PNP管腳不懂怎么放置,不懂分得二極管的正負(fù)極,對單片機匯編語言掌握得不好 …… 通過這次課程設(shè)計之后,一定把以前所學(xué) 過的知識重新溫故。 } } } 第三章 實訓(xùn)心得 實訓(xùn) 是培養(yǎng)學(xué)生綜合運用所學(xué)知識 ,發(fā)現(xiàn) ,提出 ,分析和解決實際問題 ,鍛煉實踐能力的重要環(huán)節(jié) ,是對學(xué)生實際工作能力的具體訓(xùn)練和考察過程 .隨著科學(xué)技術(shù)發(fā)展的日新日異,單片機已經(jīng)成為當(dāng)今計算機應(yīng)用中空前活躍的領(lǐng)域, 在生活中可以說得是無處不在。 TH1=0X00。led_code[0]。 } else if(ti==80) { dis_buf[0]=led_code[KON%10]。 dis_buf[1]=led_code[Tz/10%10]。 dis_buf[2]=led_code[Th/100%10]。 while(1) { if(!ti) {del()。 TH0=0X00。 count0=0。 TH0=0X3c。 Tl=count0*65536+TH0*256+TL0。 while(IN1==1)。 while(IN1==0)。 while(IN0==0)。 TL1=0X00。 } else { TH0=0X3c。 led_clk=1。 0x01 ) { led_data=1。i++) { input_code=dis_buf[i]。 void led_display ( ) { unsigned char t,i。 sbit led_clk= P1^6 。 unsigned long Tl。 TRIG2OUT3RST4CVOLT5THR6DISC7VCC8GND1U?NE555DVCCGND1K123456781011121314151617VSS2021222324252627283233343536373839VCC40VCCGNDGND 圖 占空比可調(diào)振蕩電路與單片機接口電路圖 f9g10e1d2K3c4DP5b6a7K8f9g10e1d2K3c4DP5b6a7K8f9g10e1d2K3c4DP5b6a7K8f9g10e1d2K3c4DP5b6a7K8300R23300R24300R25300R26CLR9CLK8A1B2QA3QB4QC5QD6QE10QF11QG12QH13VCC14GND7SN74164NCLR9CLK8A1B2QA3QB4QC5QD6QE10QF11QG12QH13VCC14GND7SN74164NCLR9CLK8A1B2QA3QB4QC5QD6QE10QF11QG12QH13VCC14GND7SN74164NCLR9CLK8A1B2QA3QB4QC5QD6QE10QF11QG12QH13VCC14GND7SN74164NDATACLK123456781011121314151617VSS2021222324252627283233343536373839VCC40VCCGNDVCCVCC 圖 靜態(tài)顯示電路圖 1 2 3 4ABCD4321DCBA T i t l eN u m b e r R e v i s i o nS i z eA4D a t e : 8 F e b 2 0 1 3 S h e e t o f F i l e : F : \ 單片機教材編寫 \ 上篇 \ 編書原理圖 . D d b D r a w n B y :T R0 置1T R1 置1T 1開始 T 1停止 T 0開始 T 0停止 圖 波形脈沖寬度測試原理 程序代碼 include unsigned char code led_code[]={0x03,0x9f,0x25,0x0d,0x99,0x49,0x41,0x1f,0x01,0x09 ,0xff,0xfe}。震蕩器電路完成后,利用定時 /計數(shù)器測定該震蕩器波形的周期和占空比,并用 4 位 LED數(shù)碼管顯示 (如圖 2) 脈寬 高電平 時間、周期時間、占空比,顯示時間間隔 2 秒。 dis_buf[3]=TT[0]。 } if(read_flag==1) { read_flag=0。 } } if(flag) { for(j=i。flag=1。 if(key2==0) { i=4。 while(1) { if(key1==0) { delay_ms(10)。 dis_buf[1]=led_code[16]。 EA=1。 SCON=0x50。 i) for(j=110。 read_flag=1 } } } void delay_ms(unsigned int x) { unsigned int i。 TT[num]=SBUF。 } } } void Send(unsigned char dat) { SBUF=dat。 } else { led_data=0。 for (t=0。 unsigned char input_code。 unsigned char flag=0。 sbit key2=P2^1。 unsigned char dis_buf[4]。 delay_ms(300)。 dis_buf[0]=cc%10。 } } else {num=16。 } } else if(key3==0) { delay_ms(10)。 if(key1==0) { delay_ms(10)。 input_code=1。t++) { if( input_code amp。i4。 } } } } else cc=16。 case 0x70:cc=lie+12。 case 0xd0:cc=lie+4。0xf0)!=0xf0) { bb=P3amp。lie4。 } } void key_scan(void) { P3=0Xf0。i0。 sbit led_clk= P1^6 。 sbit key1=P2^0。 f9g10e1d2K3c4DP5b6a7K8f9g10e1d2K3c4DP5b6a7K8f9g10e1d2K3c4DP5b6a7K8f9g10e1d2K3c4DP5b6a7K8300R23300R24300R25300R26CLR9CLK8A1B2QA3QB4QC5QD6QE10QF11QG12QH13VCC14GND7SN74164NCLR9CLK8A1B2QA3QB4QC