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

正文內(nèi)容

多功能電子時(shí)鐘設(shè)計(jì)-文庫吧資料

2025-07-05 23:14本頁面
  

【正文】 控制工程實(shí)踐技術(shù)[M],北京:化學(xué)工業(yè)出版社,.[M],上海:華東理工大學(xué)出版社,.16. 何書森等. 用電子線路設(shè)計(jì)速成[M],福州:福建科學(xué)技術(shù)出版社,.17. 李曉靜等. 液晶顯示控制器與單片機(jī)的接口及編程[J],電子技術(shù),2004年第6期18. 張迎新. 單片微型計(jì)算機(jī)原理、應(yīng)用及接口技術(shù)(第二版)[M],北京:國防工業(yè)出版社,19. 潘新民,王艷芳. 微型計(jì)算機(jī)控制技術(shù)[M],北京:電子工業(yè)出版社, 2004.20. 沈紅衛(wèi). 基于單片機(jī)的智能系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[M],北京:電子工業(yè)出版社,.附錄一 程序 主程序//主程序的功能是對子程序進(jìn)行調(diào)用,并設(shè)定顯示延時(shí)時(shí)間include //頭文件;include include include include include sbit DAT=P1^0。本文采用51單片機(jī)C語言進(jìn)行編程,當(dāng)然也可以應(yīng)用匯編語言編程。并且市場上的實(shí)時(shí)時(shí)鐘日歷芯片品類繁多,IC化的傳感器各種各樣,顯示方式也愈趨于人性化。所以多功能電子時(shí)鐘在今后的應(yīng)用也會(huì)越來越廣泛。窗體底端結(jié) 論過去人們應(yīng)用時(shí)鐘僅僅是為了明確當(dāng)前時(shí)間。}在調(diào)用鬧鈴子程序時(shí),鬧鈴標(biāo)志位為“1”,則開啟鬧鈴,否則關(guān)閉鬧鈴。為了便于顯示子程序和鬧鈴子程序的調(diào)用,除了KK2鍵以外,其余按鍵都定義功能標(biāo)志位。在硬件調(diào)試部分,已經(jīng)將實(shí)時(shí)時(shí)鐘日歷子程序調(diào)試完畢了,只需在主程序中調(diào)用按鍵子程序即可,源程序見附錄A,這里不再贅述。在本設(shè)計(jì)中,軟件調(diào)試主要分三大部分:實(shí)時(shí)時(shí)鐘日歷子程序調(diào)試、環(huán)境溫度采集子程序調(diào)試、按鍵子程序調(diào)試。當(dāng)K7彈出后,數(shù)碼管1~6位有顯示日期轉(zhuǎn)為顯示實(shí)時(shí)時(shí)間[20]。如果確保按鍵焊接正確,只需在DS1302的調(diào)試程序上加上一段日歷顯示子程序,并在主程序中寫入:If(P_7==0){dis_calendar。觀察32分鐘之后,數(shù)碼管顯示“150000”,證明DS1302電路正確。筆者編寫了一段時(shí)鐘/日歷顯示程序,設(shè)置初始時(shí)間為14:28:00,初始日期為2008年5月12日。燒錄進(jìn)單片機(jī),檢查電路電源正負(fù)極連接是否正確。同時(shí)也要盡量使晶振離DS1302的XX2引腳近距離焊接。3. 。本設(shè)計(jì)定義為:,I/。 }} DS1302電路調(diào)試該電路包含DS1302芯片、主電源、備用電源、晶振等部分。 }}}void main() //主程序{ while(1) { dis()。CLK=1。 else DAT=0。0x1。jj8。gsb++) { led=disp_buffer[gsb]。for(gsb=0。 disp_buffer[5]=tab[5]。 disp_buffer[3]=tab[3]。 disp_buffer[1]=tab[1]。} } void dis() //顯示子程序,0~6 { unsigned char gsb,led,led1,jj。j0。t0。 void delay_50ms(unsigned int t) //延時(shí)子程序 { unsigned int j。uchar disp_buffer[7]。sbit DAT=P1^0。include define uint unsigned intdefine uchar unsigned charvoid dis()。檢查無誤后上電,檢查顯示電路是否正確。4. 74LS164的CLR腳接高電平。3. 明確單片機(jī)管腳功能。在連接過程中,需要注意以下幾點(diǎn):1. LED數(shù)碼管各管腳與74LS164各管腳的對應(yīng)關(guān)系要十分清楚,所有LED數(shù)碼管與74LS164的連接方式要統(tǒng)一。 }}} 顯示電路調(diào)試本設(shè)計(jì)的顯示電路使用了共陰LED和74LS164。n++) {P1=ledp[n]。 //初始化P1口 for(n=0。 unsigned char code ledp[8]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f}。i)。j)for(k=i)for(j=50。 //延時(shí)時(shí)間根據(jù)變量i,j,k不同而改變 for(i=50。5. 編輯一個(gè)使一組發(fā)光二極管循環(huán)點(diǎn)亮的程序并燒錄到單片機(jī)內(nèi),上電運(yùn)行,檢查單片機(jī)是否正常工作,復(fù)位電路是否正確。4. 使用萬用表排查電路中是否存在斷路或者短路情況。AT89C51的31號引腳是外部程序存儲(chǔ)器選擇信號端,當(dāng)該引腳為高電平時(shí),單片機(jī)會(huì)一直從片內(nèi)程序存儲(chǔ)器內(nèi)取指令。調(diào)試過程需要注意以下幾點(diǎn):1. 檢查電源是否完好。硬件調(diào)試需要萬用表、示波器等,軟件調(diào)試一般需要諸如Keil等仿真編輯器。硬件調(diào)試的過程,也是軟件調(diào)試的過程。例如:本設(shè)計(jì)是在單片機(jī)系統(tǒng)基礎(chǔ)上建立起來的,所以必須先確定單片機(jī)基礎(chǔ)電路能否正常工作??傊?,調(diào)試過程是一個(gè)軟硬件相結(jié)合調(diào)試的過程,硬件電路是基礎(chǔ),軟件是檢測硬件電路和實(shí)現(xiàn)其功能的關(guān)鍵[13]。如果電路出錯(cuò),可以在計(jì)算機(jī)上方便的修改電路,程序出錯(cuò)可以重新編輯程序,這種方法節(jié)時(shí)、省力,經(jīng)濟(jì)、方便。而有時(shí)往往在Keil中編譯、運(yùn)行無錯(cuò),但燒錄到單片機(jī)中運(yùn)行起來就會(huì)出錯(cuò),很可能是編程時(shí)管腳或時(shí)序編輯得不對。但應(yīng)用此方法,仍需要十分了解所使用元器件的工作方式和管腳連接方式。該軟件提供了一個(gè)集成開發(fā)環(huán)境uVision,它包括C編輯器、宏編輯器、連接器、庫管理和一個(gè)功能強(qiáng)大的仿真調(diào)試器。硬件調(diào)試比較費(fèi)時(shí),需要細(xì)心和耐心,也需要熟練掌握電路原理。源程序見附錄一。源程序見附錄一。單片機(jī)掃描完鍵盤,得到鍵值,并根據(jù)鍵值轉(zhuǎn)入執(zhí)行對應(yīng)任務(wù),以實(shí)現(xiàn)按鍵功能。由于本設(shè)計(jì)中AT89C51單片機(jī)在系統(tǒng)中的主要任務(wù)是接受DS1302和DS18B20的數(shù)據(jù)并送出顯示,完成時(shí)鐘/日歷校對和日期/溫度顯示控制。前兩種掃描方式均會(huì)占用CPU大量時(shí)間。在執(zhí)行鍵盤按鍵規(guī)定的功能中不理睬鍵盤輸入。 鍵盤掃描子程序單片機(jī)對鍵盤掃描的方法有隨機(jī)掃描方式、定時(shí)掃描方式和中斷掃描方式。為了方便實(shí)現(xiàn)按鍵顯示,程序中調(diào)用的都是各個(gè)標(biāo)志位,通過判斷標(biāo)志位的“真”、“假”來決定顯示的內(nèi)容。只要將需要顯示的數(shù)字編輯成對應(yīng)的BCD碼,逐位送入74LS164的A、B串行輸入端,數(shù)碼管將正常顯示。源程序見附錄一。在進(jìn)行寫操作時(shí),需要先解除寫保護(hù)寄存器的“禁止”狀態(tài)。 實(shí)時(shí)時(shí)鐘日歷子程序流程圖DS1302每次上電時(shí)自動(dòng)處于暫停狀態(tài),必須把秒寄存器的位7置位0,時(shí)鐘才開始計(jì)時(shí)。 多功能電子鐘主程序流程圖 子程序設(shè)計(jì) 實(shí)時(shí)時(shí)鐘日歷子程序設(shè)計(jì)該程序主要實(shí)現(xiàn)對DS1302寫保護(hù)、充電,對年、月、日、時(shí)、分、秒等寄存器的讀寫操作。單片機(jī)依次開始調(diào)用鍵盤掃描子程序、DS1302子程序、DS18B20子程序、鬧鈴子程序,經(jīng)過延時(shí),返回程序開頭循環(huán)運(yùn)行。 主程序設(shè)計(jì)第一次上電,系統(tǒng)先進(jìn)行初始化, LED顯示初始時(shí)間“14:28:00”,并開始走時(shí)。C語言程序可讀性高,更便于理解。 單片機(jī)寄存器的復(fù)位狀態(tài)表寄存器復(fù)位狀態(tài)寄存器復(fù)位狀態(tài)PC0000HTCON00HACC00HTH000HPSW00HTL000HSP07HTH100HDPTR0000HTL100HPP3FFHSCON00HIP000000BSBUF不定IE000000BPCON0B(NMOS)TMOD00H00000B(CHMOS) 上電復(fù)位和按鍵復(fù)位電路第四章 電子時(shí)鐘軟件設(shè)計(jì)C51單片機(jī)可以應(yīng)用匯編語言和C語言進(jìn)行編程。出于應(yīng)用方便,本設(shè)計(jì)采用按鍵電平復(fù)位電路。按鍵手動(dòng)復(fù)位有電平方式和脈沖方式兩種。上電自動(dòng)復(fù)位是利用電容儲(chǔ)電來實(shí)現(xiàn)的,(a)所示。其有效時(shí)間持續(xù)24個(gè)時(shí)鐘周期(2個(gè)機(jī)器周期)以上。單片機(jī)復(fù)位后不影響內(nèi)部RAM的狀態(tài)[17]。復(fù)位后,PC內(nèi)容初始化為0000H,使單片機(jī)從0000H單元開始執(zhí)行程序。 鬧鈴電路 復(fù)位電路設(shè)計(jì)復(fù)位是單片機(jī)的初始化操作,以便使CPU和系統(tǒng)中其他部件都處于一個(gè)確定的初始狀態(tài),并從這個(gè)狀態(tài)開始工作。S9012的發(fā)射極和集電極導(dǎo)通,使蜂鳴器發(fā)聲。此類集成電路體積較小,使用方便,不足的是音樂簡單、單一。且1420芯片可以分段錄音,還具有語音報(bào)時(shí)功能。還有一種方法是采用錄音放音芯片1420做鬧鈴,先對錄放音設(shè)備錄入一段音樂,當(dāng)?shù)皆O(shè)定時(shí)間時(shí),單片機(jī)控制錄放音設(shè)備放音。也可以在編程的時(shí)候編寫一段音樂程序,待鬧鈴時(shí)間到時(shí),調(diào)用該音樂程序給揚(yáng)聲器,便響起音樂。 鬧鈴電路設(shè)計(jì)鬧鈴音樂可以直接采用蜂鳴器鬧鈴,如當(dāng)前時(shí)刻與鬧鈴時(shí)間相同,單片機(jī)向蜂鳴器送出高電平,蜂鳴器發(fā)聲。K6鍵:該鍵為自動(dòng)復(fù)位鍵,在校對狀態(tài)下,按下該鍵,從校對狀態(tài)返回時(shí)間顯示狀態(tài);在響鈴狀態(tài)下,按下該鍵,鬧鈴進(jìn)入貪睡狀態(tài)。調(diào)分、秒、年、月、日與皆之相同,只是各位最高值不同。K4鍵:該鍵為自動(dòng)復(fù)位鍵,在校對狀態(tài)下,每次按動(dòng)該鍵,都會(huì)使相應(yīng)校對位進(jìn)行加1操作。 按鍵功能表按鍵鍵名功能屬性K1Calendar顯示日歷自鎖K3FUN功能選擇自動(dòng)復(fù)位K4UP數(shù)值加一操作自動(dòng)復(fù)位K5DOWN數(shù)值減一操作自動(dòng)復(fù)位K6Enter/Snooze確認(rèn)鍵/貪睡自動(dòng)復(fù)位K7Alarm鬧鈴開關(guān)自鎖按鍵操作說明如下:K1鍵:該鍵為帶自鎖按鍵,在正常顯示時(shí)間狀態(tài)下,每次將按鍵按下, LED數(shù)碼管將顯示日期;再次按下,按鍵彈出,重新顯示時(shí)間。每次按下后,會(huì)自動(dòng)彈出。只有再次按下,按鍵彈出,與之連接的單片機(jī)管腳才會(huì)重新被拉回高電平。對于內(nèi)置了上拉電阻的I/O引腳來說,外接上拉電阻沒有意義[15][16]。矩陣式鍵盤適合按鍵較多時(shí)使用。獨(dú)立式鍵盤是各個(gè)按鍵相互獨(dú)立,每個(gè)按鍵占用一個(gè)I/O口線,每根I/O口線上的按鍵不會(huì)影響其他I/O口上按鍵工作狀態(tài)。 顯示面板LED分布圖 按鍵電路設(shè)計(jì)根據(jù)功能需要,本時(shí)鐘需要設(shè)置以下功能鍵:校對選擇鍵,加1操作鍵,減1操作鍵,顯示日期鍵,鬧鈴開關(guān)鍵。74LS164是8位移位寄存器,應(yīng)用該芯片驅(qū)動(dòng)LED做顯示部分,其優(yōu)點(diǎn)在于連線簡單,節(jié)省單片機(jī)I/O口,軟件編程容易。靜態(tài)顯示驅(qū)動(dòng)程序簡單,且CPU占用率低,但每個(gè)LED數(shù)碼管需要一個(gè)鎖存器來鎖存每一個(gè)顯示位的筆段代碼,硬件開銷大,僅適合顯示位數(shù)較少的場合。動(dòng)態(tài)顯示采用多路復(fù)用技術(shù)的動(dòng)態(tài)掃描顯示方式,復(fù)用的程度不是無限增加的, 因?yàn)槔脛?dòng)態(tài)掃描顯示使我們看到一幅穩(wěn)定畫面的實(shí)質(zhì)是利用了人眼的暫留效應(yīng)和發(fā)光二極管發(fā)光時(shí)間的長短,發(fā)光的亮度等因素。但設(shè)計(jì)上如果處理不當(dāng),易造成亮度低,閃爍問題。故本設(shè)計(jì)中應(yīng)用7位8段共陰LED實(shí)現(xiàn)顯示部分。另外,AT89C51本身沒有專門的液晶驅(qū)動(dòng)接口。 系統(tǒng)時(shí)鐘電路 顯示電路就時(shí)鐘而言,通常可采用LCD顯示或LED顯示。DS1302采用雙電源供電,平時(shí)由+5V電源供電,當(dāng)+5V掉電之后,由圖中BT1(+3V備用電池)供電。該硬件電路設(shè)計(jì)簡單,抗干擾能力強(qiáng)。具體電路圖請參見附錄C。當(dāng)+5V電源被切斷后,DS1302啟用+3V電源,可以保持DS1302繼續(xù)工作。整個(gè)電路使用了兩種電源,+5V電源將為整個(gè)電路供電。 多功能電子時(shí)鐘硬件系統(tǒng)框圖鍵盤是為了完成時(shí)鐘/日歷的校對和日歷/溫度的顯示功能。該系統(tǒng)使用AT89C51單片機(jī)作為核心,通過讀取時(shí)鐘日歷芯片DS1302和溫度傳感器DS18B20的數(shù)據(jù),完成此電子時(shí)鐘的主要功能——時(shí)鐘/日歷和環(huán)境溫度采集。 電子時(shí)鐘硬件電路設(shè)計(jì)電子鬧鐘至少要包括秒信號發(fā)生器、時(shí)間顯示電路、按鍵電路、供電電源、鬧鈴指示電路等幾部分。其操作方法與前述相同[9][10][11]。寄存器和RAM的操作通過命令字節(jié)的BIT6加以區(qū)別。: I充電=(V0VDVE)/R ()式中:V0——;VD——二極管壓降,;R——慢速充電控制寄存器0和1位編碼決定的電阻值;VE——VCC1腳所接入的電池電壓。其中編碼RS=01為2 KΩ,RS=10為4 KΩ,RS=11為8 KΩ,而RS=00將不允許進(jìn)行充電。如果編碼DS是01,選擇一個(gè)二極管;如果編碼是10,選擇兩個(gè)二極管;其他編碼將不允許充電。寄存器的BIT4~BIT7(TCS)決定是否具備充電性能:僅在編碼為1010的條件下才具備充電性能,其他編碼組合不允許充電。另外,還有慢速充電控制寄存器和RAM寄存器。當(dāng)WP位為1時(shí),寫保護(hù)位防止對任一寄存器的寫操作??刂萍拇嫫鳎?FH、8EH)的位7是寫保護(hù)位(WP),其它7位均置為0。當(dāng)該位置為1時(shí),時(shí)鐘振蕩器停止,DS1302處于低功耗狀態(tài);當(dāng)該位置為0時(shí),時(shí)鐘開始運(yùn)行。 當(dāng)為12小時(shí)制式時(shí),位5為“0”表示AM;為“1”表示PM。DS1302有關(guān)日歷、時(shí)間的寄存器共有10個(gè),時(shí)鐘/日歷包含在其中的7個(gè)寫/讀寄存器內(nèi),這7個(gè)寄存器分別是秒、分、小時(shí)、日、月、星期和年。多字節(jié)操作方式與其類似,只是后面跟的字節(jié)數(shù)不止一個(gè)。對于單字節(jié)操作,包括命令字節(jié)在內(nèi),每次為2個(gè)字節(jié),需要16個(gè)時(shí)鐘;對于時(shí)鐘/日歷多字節(jié)模式操作,每次為7個(gè)字節(jié),需要72個(gè)時(shí)鐘;而對于RAM多字節(jié)模式操作,每次則為32字節(jié),需要多達(dá)256個(gè)時(shí)鐘。在開
點(diǎn)擊復(fù)制文檔內(nèi)容
醫(yī)療健康相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1