freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

電子秒表時鐘設(shè)計課程設(shè)計-在線瀏覽

2025-03-06 01:49本頁面
  

【正文】 再需要像89C51那樣外接看門狗計時器單元電路。 AT89S51具有電源關(guān)閉標識。 在兼容性方面,AT89S51向下完全兼容51全部字系列產(chǎn)品。也就是說不論教科書上采用的單片機是8051還是89C51還是MCS51等等。 AT89S51與AT89C51就如同INTEL的P3向P4升級一樣,雖然都可以跑Windows98,不過速度是不同的。所以AT89S51芯片成為了本系統(tǒng)的首選。AT89S51的引腳如圖31所示。(1) 工作電源電源是單片機工作的動力源泉,對應(yīng)的接線方法為。(2) 時鐘電路時鐘電路為單片機產(chǎn)生時序脈沖,單片機所有運算與控制過程都是在統(tǒng)一的時序脈沖的驅(qū)動下進行的,時鐘電路就好比人的心臟一樣重要。(3) 復(fù)位電路在復(fù)位引腳(9腳)持續(xù)出現(xiàn)24個振蕩器脈沖周期(即2個機器周期)的高電平信號將使單片機復(fù)位。復(fù)位后,單片機從0000H單元開始執(zhí)行程序,并初始化一些專用寄存器為復(fù)位狀態(tài)值。因此,時鐘頻率直接影響單片機的速度,時鐘電路的質(zhì)量也直接影響單片機系統(tǒng)的穩(wěn)定性。本文用的是內(nèi)部時鐘方式。圖43單片機時鐘AT89S51單片機內(nèi)部有一個用于構(gòu)成振蕩器的高增益反相放大器,該高增益反向放大器的輸入端為芯片引腳XTAL1,輸出端為引腳XTAL2。(2)電源電路電源電路包括變壓器、橋式整流器、電容和穩(wěn)壓器。(3)按鍵電路按鍵電路如圖44所示,按鍵的開關(guān)狀態(tài)通過一定的電路轉(zhuǎn)換為高、低電平狀態(tài)。閉合和釋放過程都要經(jīng)過一定的過程才能達到穩(wěn)定,這一過程是處于高、低電平之間的一種不穩(wěn)定狀態(tài),稱為抖動。為了避免CPU多次處理按鍵的一次閉合,應(yīng)采用措施消除抖動。:秒表計成績/時鐘調(diào)整加/倒計時調(diào)整加。:秒表時鐘查看/時鐘調(diào)整確認/倒計時確認。復(fù)位引腳RST通過一個斯密特觸發(fā)器與復(fù)位電路相連,斯密特觸發(fā)器用來抑制噪聲,在每個機器周期的S5P2,斯密特觸發(fā)器的輸出電平由復(fù)位電路采樣一次,然后才能得到內(nèi)部復(fù)位操作所需要的信號。單段數(shù)碼管段選接P3公共端接地(共陰)。(2)LED顯示子程序數(shù)碼管顯示的數(shù)據(jù)存放在內(nèi)存單元Disp_Tab []數(shù)組中中,位選存放在dispbit[]數(shù)組中。第五章 軟件設(shè)計及說明1 軟件設(shè)計本設(shè)計采用c語言進行軟件編寫包括主程序、定時器T0中斷子程序、時鐘顯示子程序、秒表顯示子程序、倒計時顯示子程序、時鐘調(diào)整子程序等。當Stop鍵按下則顯示第一次記錄的成績,并且此時按Relook鍵則依次調(diào)出所存儲的成績。 調(diào)整,在滿足M_S=2以及KM_S=1的入口條件下檢測 Start按鍵進行需要調(diào)整的時鐘、分鐘、秒鐘的選擇;Number、Stop鍵則實現(xiàn)時鐘、分鐘、秒鐘的加1減1;Relook鍵為確認鍵按下后跳進時鐘運行。主菜單,只要KM_S鍵按下則直接進入主菜單,在此處可任意選擇秒表、時鐘、時鐘調(diào)整、倒計時功能。本設(shè)計總共使用了一個定時器T0以及定時器T0中斷資源,十分節(jié)省單片機的硬件資源,為系統(tǒng)的升級提供了良好的空間。接好用下圖的仿真按鈕進行仿真。 總 結(jié) 實際上字做課程設(shè)計之前我已經(jīng)接觸到了許多超越51單片機的其他微機如,stm3AVR、msp430等等,軟件方面已經(jīng)編寫過SD卡驅(qū)動、16位真彩TFT彩屏驅(qū)動的編寫、fatfs文件系統(tǒng)的移植與調(diào)試以及UCGUI圖形函數(shù)庫的移植與使用,并且能夠熟練的使用SPI、I2C、UART、RTC、SYSTICK等等資源。不過,當我在做本設(shè)計的時候卻遇到了不少的麻煩,首先是節(jié)約單片機資源的問題。經(jīng)過反復(fù)的思考以及試驗決定采用全局變量M_S的值作為函數(shù)入口通過與KM_S這個按鍵的配合解決了主菜單優(yōu)先級的問題。不過有失必有得,做了這么多課題我了解了LCD1602的使用,PCF8591這款A(yù)DDA芯片的使用、知道了步進電機的操作時序、并且很好的運用了結(jié)構(gòu)化編程的思想。編程的門檻較低如果只會單片機的話并不能發(fā)揮我們專業(yè)的特點,因為據(jù)我所知不管是電類還是非電專業(yè)的學生都能在很短時間內(nèi)學會單片機。 在此還要感謝給予我?guī)椭睦蠋熗瑢W!參考文獻[1]王迎旭.《單片機原理與應(yīng)用》.[2]胡漢才.《單片機原理及系統(tǒng)設(shè)計》.[3]潘永雄.《新編單片機原理與應(yīng)用》.[4]張迎新.《單片微型計算機原理、應(yīng)用及接口技術(shù)》.國防工業(yè)出版社附 錄程序原理圖程序清單includetypedef unsigned char u8。typedef unsigned int u16;sbit Start = P2^0。 //秒表計數(shù)按鍵sbit Stop = P2^2。 //查看成績按鍵sbit KM_S = P2^4。 //時鐘秒表切換1u8 YIDONG。u32 led_m = 0。 //時鐘計數(shù)變量u32 led_w = 0。 //計時器長期變量u8 M_S。 //倒計標志//u8 JISHU = 0。u8 counter1=0,counter2=0。u8 code Disp_Tab[] = {0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x40}。 //段碼控制u8 code dispbit[8]={0xfe,0xfd,0xfb,0xf7,0xef,0xdF,0xbF,0x7F}。 //時鐘運行函數(shù)void Time0_Init(void)。 //定時器T0初始化函數(shù)void TI0_Init(void)。 //延時函數(shù)void shumaguan_show(u16 a)。 //秒表功能函數(shù)void choose(void)。 //成績查看函數(shù)void shumaguan_show1(u32 a,u8 W)。//設(shè)置定時器T0 TH0 = 0xD8。 TR0 = 1。 //清楚溢出標志位}/*****************定時器0中斷初始化********************/void TI_T0_Init(void){ ET0=1。//開總中斷}/****************定時器0中斷服務(wù)函數(shù)*****************/void Time_0(void) interrupt 1{ TH0 = 0xd8。 //定時器 T0裝進初值55536 = 0xd8f0 led_w++。 switch(M_S) { case 0: led_m++。 } if(led_m==600000) { led_m= 0。 } case 2: if(led_w == 24000000) { led_w=0。 case 3: if(D_S==1) { if((led_m%10000)==0) { led_m=led_m4000。 } break。}/********************延時函數(shù)**********************/void delay(unsigned int a) { unsigned int i=0,j=0。ia。j123。}/****************************數(shù)碼管顯示*******************************/void shumaguan_show(u32 a){ u16 d。 LED_N[0] = Disp_Tab[a/100000]。 //萬位數(shù) LED_N[2] = Disp_Tab[a/1000%10]。 //百位數(shù) LED_N[4] = Disp_Tab[a/10%10]。 //個位數(shù) for(d=0。d++) { P1 = dispbit[d]。 delay(2)。 u8 e。 LED_N[0] = Disp_Tab[a/100000]。 //萬位數(shù) LED_N[2] = Disp_Tab[a/1000%10]。 //百位數(shù) LED_N[4] = Disp_Tab[a/10%10]。 //個位數(shù) for(d=0。d++) { if(d==W) { d=W+2。 P0 = LED_N[d]。 } e++。 for(d=0。d++) { P1 = dispbit[d]。 delay(2)。 while(M_S==0) { while(KM_S==0) //消除菜單鍵的抖動 { shumaguan_show(0)。 do{ if(start1==0) { if(Start==0) { while(Start==0) { led_m = 0。 } start1=1。 shumaguan_show(led_m)。 case 1: if(Number==1) { shumaguan_show(led_m)。 } Counter[counter1]=led_m。 }
點擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1