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

正文內(nèi)容

基于單片機(jī)立式冷凍箱時間控制器設(shè)計(文件)

2025-07-15 21:08 上一頁面

下一頁面
 

【正文】 機(jī)掃描完鍵盤,得到鍵值,并根據(jù)鍵值轉(zhuǎn)入執(zhí)行對應(yīng)任務(wù),以實(shí)現(xiàn)按鍵功能。 圖412 鍵盤掃描流程圖 繼電器驅(qū)動的軟件設(shè)計 這里繼電器由相應(yīng)的三極管來驅(qū)動,其電路圖如圖311所示。 流程圖如圖413所示。硬件調(diào)試比較費(fèi)時,需要細(xì)心和耐心,也需要熟練掌握電路原理。筆者應(yīng)用的仿真軟件為Proteus。為了正確顯示時間,接下來還要確定顯示電路能否正常工作。系統(tǒng)設(shè)計實(shí)物如圖51,52所示。筆者在制作燒寫接口電路時使用的是排針,焊接時容易出現(xiàn)管腳之間短路。在連接過程中,需要特別注意以下幾點(diǎn):LED數(shù)碼管各引腳與74HC4094各引腳的對應(yīng)關(guān)系要十分清楚,所有LED數(shù)碼管與74HC4094的連接方式要統(tǒng)一。 3. 。將這三部分調(diào)試成功,那么整個設(shè)計的軟件部分也就基本完成了。6. 總結(jié)過去人們應(yīng)用時鐘僅僅是為了明確當(dāng)前時間。接著從時鐘顯示及控制的組成結(jié)構(gòu)及工作原理到時鐘顯示的控制器的使用,介紹了設(shè)計所必須的基礎(chǔ)知識。通過對PIC16F72單片機(jī)的認(rèn)真學(xué)習(xí),現(xiàn)已熟練掌握了PIC16F72單片機(jī)的使用,為下面的設(shè)計打下了很好的基礎(chǔ)。參考文獻(xiàn)[1]江和,:北京航空航天大學(xué)出版社,[2]譚浩強(qiáng),C程序設(shè)計(第三版)[M].北京:清華大學(xué)出版社,2005[3]張毅剛,:電子工業(yè)出版社,[4]閆廣明,張波,—:機(jī)械工業(yè)出版社,[5]肖鳳明,:機(jī)械工業(yè)出版社,[6]戴仙金,:清華大學(xué)出版社,[7]戴佳,戴衛(wèi)恒,51單片機(jī)C語言應(yīng)用程序?qū)嵗v,北京:電子工業(yè)出版社,[8]劉坤等,51單片機(jī)C語言應(yīng)用開發(fā)技術(shù)大全,北京:人民郵電出版社,[9]李響初,基于MCS51單片機(jī)的智能時鐘控制系統(tǒng)設(shè)計。define SCL RC3define SDA RC4define CLK RB0define SI RB1define STB RB2define ce RA0define sclk RA1define DIO RB7define wela1 RA2define wela2 RC7define wela3 RA3define wela4 RA5define funcsz RB3define funcds RB4define inc RB5define dec RB6const uchar table1[]={0xbF,0x86,0xdB,0xcF,0xe6,0xeD,0xfD,0x87,0xfF,0xeF}。 //中斷服務(wù)程序void main() //主程序{ TRISB0=0。 TRISB4=1。 TRISC1=0。 TRISC7=0。 //設(shè)定初始時間 init()。// T1CON=0b00010001。 wela1=0。 RC0=0。 q=read_add(13)。 TMR1L=(6553612000)%256。 } else { if(num!=0) { write_f(fen)。amp。 } if(aa==1) { jj++。(ff=2500))//2500*24ms=1min { RC2=1。 } } } if(T0IF==1) //判斷定時器0的中斷標(biāo)志位是否溢出 { T0IF=0。 for(c=1。b) for(a=7。 for(b=19。a)。 m=table[ge]。i8。 CLK=0。 if(num==1||num1==1) { if(flag==1||flag1==1) { wela4=0。 } else { wela4=1。 delay3ms()。j8。 else SI=0。 if(num==1||num1==1) { if(flag!=1||flag1!=1) { wela3=0。 } else { wela3=1。 delay3ms()。 ge=date%10。 n=table[shi1]。i++) { CLK=0。 m=1。 flag=0。 flag=2。 wela2=0。j++) { CLK=0。 n=1。 flag=0。 flag=2。 wela1=0。 } } else wela1=1。 delay100us()。 } STB=0。0x80) SI=1。 //74H4094數(shù)據(jù)掃描 for(j=0。 } } else wela2=1。 delay100us()。 } STB=0。0x80) SI=1。 //74HC4094數(shù)據(jù)掃描 for(i=0。 m=table1[ge]。 }/*時顯示函數(shù)*/extern void write_s(uchar date){ uchar shi1,ge,i,j,m,n。 flag1=1。 flag1=0。 CLK=1。 if(namp。 STB=1。 flag1=1。 flag1=0。 m=1。0x80) SI=1。 STB=1。 shi1=date/10。b) for(a=1。a)。c) for(b=176。 // fm++。 jj=0。 if((ff=0)amp。amp。 } else ds1302()。 if(num1!=0) { write_f(p)。 //鍵盤掃描 }}void interrupt ISR(){ if(TMR1IF==1) //判斷定時器1的中斷標(biāo)志位是否溢出 { TMR1IF=0。 RC2=0。 wela3=0。 TMR1H=(6553612000)/256。//GIE、PEIE置1才能進(jìn)入TMR1中斷 OPTION=0b00000000。 ADCON1=0B00000110。 TRISC2=0。 TRISB6=1。 TRISB2=0。 endif//////////////////////////////////////////////////////////////////主程序include include include include include __CONFIG(0xff32)。uchar fm。由于畢業(yè)設(shè)計工作的時間有限以及作者的水平限制,所以本設(shè)計不可避免存在一些漏洞和缺陷,這些都有待進(jìn)一步的改進(jìn)和完善。本設(shè)計是基于PIC16F72單片機(jī)的時鐘顯示及控制系統(tǒng)。所以多功能電子時鐘在今后的應(yīng)用也會越來越廣泛。 本章小結(jié)本章首先重點(diǎn)闡述了系統(tǒng)各個模塊的硬件調(diào)試、軟件調(diào)試。同時也要盡量使晶振靠近DS1302的XX2引腳焊接,這樣使單片機(jī)盡量減小干擾,提高單片機(jī)運(yùn)行的穩(wěn)定性! 軟件調(diào)試在硬件調(diào)試完畢的基礎(chǔ)上,需要進(jìn)一步完善程序,也就是進(jìn)入軟件調(diào)試階段。在與單片機(jī)連接的過程中需要注意以下幾點(diǎn): 1. DS1302與單片機(jī)連接的管腳。 LED顯示電路的調(diào)試 本設(shè)計的LED顯示電路使用了4位一體共陰8段數(shù)碼管和74HC4094。調(diào)試過程需要注意以下幾點(diǎn): 1. 檢查電源是否完好。硬件調(diào)試需要萬用表、示波器等,軟件調(diào)試一般需要諸如MPLAB IDE等仿真編輯器。 在調(diào)試過程中,首先必須明確調(diào)試順序。還有一種方式,即應(yīng)用仿真軟件搭建電路的軟件平臺,再導(dǎo)入程序進(jìn)行仿真調(diào)試。圖413 繼電器驅(qū)動流程圖 本章小結(jié)本章是對系統(tǒng)軟件部分的介紹,先給出了系統(tǒng)軟件設(shè)計的總體框圖,隨后結(jié)合軟件設(shè)計的流程圖對軟件設(shè)計的思路進(jìn)行了詳細(xì)的介紹,闡明了每個功能模塊的功能,并給出具體的實(shí)現(xiàn)方法。每個繼電器都有一個常開轉(zhuǎn)常閉的接點(diǎn),便于在其他電路中使用。流程圖如圖412所示。 由于本設(shè)計中PIC16F72單片機(jī)在系統(tǒng)中的主要任務(wù)是接受DS1302和24C02的數(shù)據(jù)并送出顯示,完成時鐘顯示控制。在執(zhí)行鍵盤按鍵規(guī)定的功能中不理睬鍵盤輸入。流程圖如圖411所示。同時,段線上輸出相應(yīng)位要顯示字符的字型碼。 LED顯示電路的軟件設(shè)計數(shù)碼管的動態(tài)顯示需要兩組信號來控制:一組是字段輸出口,它控制的是字形代碼,稱為段碼;另一組是位輸出口,它用來選擇第幾位數(shù)碼管亮,稱為位碼。位76543210從機(jī)地址R/圖410 尋址字節(jié)的位定義D7~D1位組成從機(jī)的地址。b、 主機(jī)在第一個字節(jié)后,立即從從機(jī)讀數(shù)據(jù)。 在總線的一次數(shù)據(jù)傳送過程中,可以有以下幾種組合方式:a、 主機(jī)向從機(jī)發(fā)送數(shù)據(jù),數(shù)據(jù)傳送方向在整個傳送過程中不變。(2)數(shù)據(jù)幀格式I2C總線上傳送的數(shù)據(jù)信號是廣義的,既包括地址信號,又包括真正的數(shù)據(jù)信號。如果從機(jī)對主機(jī)進(jìn)行了應(yīng)答,但在數(shù)據(jù)傳送一段時間后無法繼續(xù)接收更多的數(shù)據(jù)時,從機(jī)可以通過對無法接收的第一個數(shù)據(jù)字節(jié)的“非應(yīng)答”通知主機(jī),主機(jī)則應(yīng)發(fā)出終止信號以結(jié)束數(shù)據(jù)的繼續(xù)傳送。直到接收器件準(zhǔn)備好接收下一個字節(jié)時,再釋放SCL線使之為高電平,從而使數(shù)據(jù)傳送可以繼續(xù)進(jìn)行。如圖45所示。源程序見附錄三。DS1302每次上電時自動處于暫停狀態(tài),必須把秒寄存器的位7置位0,時鐘才開始計時。另外,還有慢速充電控制寄存器和RAM寄存器??刂萍拇嫫鳎?FH、8EH)的位7是寫保護(hù)位(WP),其它7位均置為0。在24小時制式下,位5是第二個10小時位(20~23時)。片內(nèi)各寄存器及各位的功能定義如表42。對于單字節(jié)操作,包括命令字節(jié)在內(nèi),每次為2個字節(jié),需要16個時鐘;對于時鐘/日歷多字節(jié)模式操作,每次為7個字節(jié),需要72個時鐘;而對于RAM多字節(jié)模式操作,每次則為32字節(jié),需要多達(dá)256個時鐘。為了啟動數(shù)據(jù)的傳輸,CE引腳信號應(yīng)由低變高,當(dāng)把CE驅(qū)動至邏輯1的狀態(tài)時,SCLK必須為邏輯0,數(shù)據(jù)在SCLK的上升沿串行輸入。每次僅寫入或讀出一個字節(jié)數(shù)據(jù)稱為單字節(jié)操作,每次對時鐘/日歷的8字節(jié)或31字節(jié)RAM進(jìn)行全體寫入或讀出的操作,稱其為多字節(jié)操作方式。 控制字總是從最低位開始輸出。當(dāng)A4~A0=31,為時鐘多字節(jié)方式選擇寄存器。當(dāng)BIT 6位=0時,定義時鐘和其他寄存器的地址。表41 DS1302控制字(即地址及命令字節(jié))BIT7BIT6BIT5BIT4BIT3BIT2BIT1BIT01RAM/A4A3A2A1A0RD/控制字的作用是設(shè)定DS1302的工作方式、傳送字節(jié)數(shù)等。DS1302是SPI總線驅(qū)動方式。4. 時鐘控制器的軟件設(shè)計在進(jìn)行時鐘顯示及控制系統(tǒng)設(shè)計時,除了系統(tǒng)硬件設(shè)計外,大量的工作就是如何根據(jù)每個對象模塊的實(shí)際需要設(shè)計應(yīng)用程序。當(dāng)輸入高電平時,晶體管Q1飽和導(dǎo)通,繼電器線圈通電,觸點(diǎn)吸合。集成電路驅(qū)動一般用于驅(qū)動多個繼電器,在本設(shè)計中沒必要,故選擇晶體管驅(qū)動。這樣吸合、釋放,從而達(dá)到了在電路中的導(dǎo)通、切斷的目的。故在電路中起著自動調(diào)節(jié)、安全保護(hù)、轉(zhuǎn)換電路等作用。每次按下后,會自動彈出。矩陣式鍵盤適合按鍵較多時使用。圖39 LED顯示電路圖根據(jù)功能需要,本時鐘需要設(shè)置以下功能鍵:調(diào)節(jié)時鐘顯示,調(diào)節(jié)定時時間,加1操作鍵,減1操作鍵。為了在顯示部分節(jié)省單片機(jī)I/O口,故采用動態(tài)顯示方式。動態(tài)顯示采用多路復(fù)用技術(shù)的動態(tài)掃描顯示方式,利用動態(tài)掃描顯示使我們看到一幅穩(wěn)定畫面的實(shí)質(zhì)是利用了人眼的暫留效應(yīng)和發(fā)光二極管發(fā)光時間的長短,發(fā)光的亮度。LED顯示分動態(tài)顯示和靜態(tài)顯示。對于一般的段式LCD,需要專門的驅(qū)動電路,而且LCD顯示的可視性較差;對于具有驅(qū)動電路和微處理器接口的液晶顯示模塊(字符或點(diǎn)陣),一般采用并行接口,對微處理器的接口要求較高,占用資源多。圖38 PIC16F72與24C02芯片的硬件電路 圖38中PIC16F72與24C02通過標(biāo)準(zhǔn)的I2C接口相連,R10和R12為I2C總線的上拉電阻。2. 24C02的引腳分配及功能24C02是一個2K位串行CMOS EEPROM,內(nèi)部含有256個8位字節(jié),CATALYST公司的先進(jìn)CMOS技術(shù)實(shí)質(zhì)上減少了器件的功耗,24C02有一個16字節(jié)頁寫緩沖器,該器件通過I2C總線接口進(jìn)行操作,有一個專門的寫保護(hù)功能。l 1,000,000編程/擦除周期。因此,設(shè)計I2C總線時,SCL和SDA的上拉電阻必須存在。I2C協(xié)議規(guī)定了SCL和SDA信號有占用或釋放兩種狀態(tài)。所有掛接在I2C總線上的器件和接口電路都應(yīng)具有I2C總線接口,且所有的SDA/SCL同名端相連。傳送速度可達(dá)400kbps,標(biāo)準(zhǔn)速率為100kbps。1. I2C總線特點(diǎn)及工作原理I2C總線(Inter Integrated Circuit Bus):是Philips公司推出的串行總線標(biāo)準(zhǔn)(為二線制)。圖35 系統(tǒng)時鐘電路 定時系統(tǒng)電路設(shè)計 I2C總線在現(xiàn)代電子系統(tǒng)中,有為數(shù)眾多的IC需要進(jìn)行相互之間以及與外界的通信。如圖35,PIC16F72單片機(jī)RA0直接接DS1302的RST端,上電后,PIC16F72的RA0腳自動輸出高電平。 SCLK:串行時鐘輸入,控制數(shù)據(jù)的輸入與輸出; I/O:三線接口時的雙向數(shù)據(jù)線; CE:輸入信號,在讀、寫數(shù)據(jù)期間,必須為高。DS1302的外部引腳分配如圖34所示。 DS13
點(diǎn)擊復(fù)制文檔內(nèi)容
法律信息相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1