stm32電子鐘設(shè)計(jì) 課程設(shè)計(jì)報(bào)告;_第1頁
stm32電子鐘設(shè)計(jì) 課程設(shè)計(jì)報(bào)告;_第2頁
stm32電子鐘設(shè)計(jì) 課程設(shè)計(jì)報(bào)告;_第3頁
stm32電子鐘設(shè)計(jì) 課程設(shè)計(jì)報(bào)告;_第4頁
stm32電子鐘設(shè)計(jì) 課程設(shè)計(jì)報(bào)告;_第5頁
已閱讀5頁,還剩25頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、 成績課程論文 題 目: 基于stm32的多功能電子時鐘 學(xué)生姓名: 梁健 學(xué)生學(xué)號: 1008050120 系 別: 電氣信息工程系 專 業(yè): 電子信息科學(xué)與技術(shù) 年 級: 2010級 任課教師: 鄭曉東 電氣信息工程學(xué)院制 2013年3月28 淮南師范學(xué)院電氣信息工程學(xué)院電子信息與技術(shù)專業(yè)課程論文 基于stm32的多功能電子時鐘 學(xué)生:梁健指導(dǎo)教師:鄭曉東電氣信息工程學(xué)院電子信息科學(xué)與技術(shù)專業(yè)一、設(shè)計(jì)任務(wù)與要求51、設(shè)計(jì)任務(wù)52、設(shè)計(jì)要求5二、方案設(shè)計(jì)與論證51、單片機(jī)芯片選擇方案72、顯示選擇方案7三、硬件單元電路設(shè)計(jì)與參數(shù)計(jì)算81、電源電路82、按鍵電路83、rtc時鐘94、12864

2、顯示電路95、溫度傳感器模塊10四、 軟件設(shè)計(jì)與流程圖101、主程序流程圖102、顯示子程序流程圖123、按鍵子程序流程圖14五、總原電路及元器件清單161總原理圖16六、元器件清單26七、主程序26八、 參考文獻(xiàn)30摘要:本論文基于單片機(jī)原理技術(shù)介紹了一款于stm32芯片作為核心控制器的單片機(jī)數(shù)字電子鐘的設(shè)計(jì)與制作,包括硬件電路原理的實(shí)現(xiàn)方案設(shè)計(jì)、軟件程序編輯的實(shí)現(xiàn)、數(shù)字電子鐘正常工作的流程、原理圖仿真實(shí)現(xiàn)、硬件實(shí)物的安裝制作與硬件實(shí)物的調(diào)試過程。該單片機(jī)數(shù)字電子鐘采用stm32自帶的rtc,用llcd12864能夠準(zhǔn)確顯示時間(顯示格式為:年月日時分秒),可隨時進(jìn)行時間調(diào)整,時間可采用12

3、 小時制顯示或24 小時制顯示,用12864做成菜單形式,鬧鈴提醒,可按自己的要求設(shè)置擴(kuò)展的小鍵盤個數(shù),并增加溫度顯示。關(guān)鍵詞:單片機(jī)、數(shù)字電子鐘、lcd12864、stm32、rtc,溫度傳感器一、設(shè)計(jì)任務(wù)與要求1、設(shè)計(jì)任務(wù) 用stm32設(shè)計(jì)一個數(shù)字電子鐘,采用lcd12864來顯示并修改,時間或鬧鈴。2、設(shè)計(jì)要求 (1)顯示格式為:xxxxxx xxxxxx 即:年月日 時分秒。 (2)具有鬧鈴功能。(3)按鍵改變時間。(4)按鍵改變鬧鈴。(5)溫度的顯示。二、方案設(shè)計(jì)與論證整個系統(tǒng)用stm32單片機(jī)作為中央控制器,由單片機(jī)執(zhí)行采集內(nèi)部rtc值,時鐘信號通過單片機(jī)i/o口傳給lcd1286

4、4,單片機(jī)模塊控制驅(qū)動模塊驅(qū)動顯示模塊,通過顯示模塊來實(shí)現(xiàn)信號的輸出、lcd12864的顯示及相關(guān)的控制功能。系統(tǒng)設(shè)有按鍵模塊用于對時間進(jìn)行調(diào)整及擴(kuò)展多個小鍵盤,系統(tǒng)整體框圖如圖1所示。設(shè)置?是顯示時間,溫度跳出?開始 選擇更改時間,鬧鈴正常顯示圖1 系統(tǒng)整體框圖1、單片機(jī)芯片選擇方案方案一:stm32是一個低功耗,高性能32位單片機(jī),片內(nèi)含4k bytes isp(in-system programmable)的可反復(fù)擦寫1000次的flash只讀程序存儲器。主要性能有:與mcs-51單片機(jī)產(chǎn)品兼容、全靜態(tài)操作:0hz33hz、 三級加密程序存儲器、32個可編程i/o口線、三個16位定時器/

5、計(jì)數(shù)器、八個中斷源、全雙工uart串行通道、掉電后中斷可喚醒、看門狗定時器、雙數(shù)據(jù)指針、掉電標(biāo)識符、易編程。方案二:at89c52是一個低電壓,高性能cmos 8位單片機(jī),片內(nèi)含8k bytes的可反復(fù)擦寫的flash只讀程序存儲器和256 bytes的隨機(jī)存取數(shù)據(jù)存儲器(ram)。主要性能有:兼容mcs51指令系統(tǒng)、32個雙向i/o口、256x8bit內(nèi)部ram、3個16位可編程定時/計(jì)數(shù)器中斷、時鐘頻率0-24mhz、2個串行中斷、可編程uart串行通道、2個外部中斷源、6個中斷源、2個讀寫中斷口線、3級加密位、低功耗空閑和掉電模式、軟件設(shè)置睡眠和喚醒功能。從單片機(jī)芯片主要性能角度出發(fā),本

6、數(shù)字電子鐘單片機(jī)芯片選擇設(shè)計(jì)采用方案一既stm32。2、顯示選擇方案方案一:lcd1286。顯示質(zhì)量高,沒有電磁輻射,可視面積大,應(yīng)用范圍廣,畫面效果好,數(shù)字式接口,”身材”勻稱小巧,功耗小。 方案二:數(shù)碼管動態(tài)顯示。動態(tài)顯示,即各位數(shù)碼管輪流點(diǎn)亮,對于顯示器各位數(shù)碼管,每隔一段延時時間循環(huán)點(diǎn)亮一次。利用人的視覺暫留功能可以看到整個顯示,但須保證掃描速度足夠快,人的視覺暫留功能才可察覺不到字符閃爍。顯示器的亮度與導(dǎo)通電流、點(diǎn)亮?xí)r間及間隔時間的比例有關(guān)。調(diào)整參數(shù)可以實(shí)現(xiàn)較高穩(wěn)定度的顯示。動態(tài)顯示節(jié)省了i/o口,降低了能耗。從節(jié)省單片機(jī)芯片i/o口和降低能耗角度出發(fā),本數(shù)字電子鐘數(shù)碼管顯示選擇設(shè)計(jì)

7、采用方案一,既lcd12864顯示。三、硬件單元電路設(shè)計(jì)與參數(shù)計(jì)算1、電源電路本數(shù)字電子鐘設(shè)計(jì)所需電源電壓為直流、電壓值大小5v的電壓源 。從硬件實(shí)物設(shè)計(jì)簡易程度與經(jīng)費(fèi)方面考慮,用兩節(jié)電壓值大小2.5v干電池與電路電壓源引腳相連接即可達(dá)到硬件設(shè)計(jì)要求。即本數(shù)字電子鐘設(shè)計(jì)用兩節(jié)電壓值大小2.5v干電池做硬件電路電壓源。2、按鍵電路 本數(shù)字電子鐘設(shè)計(jì)所需按鍵用于進(jìn)行顯示時間的調(diào)整與設(shè)置擴(kuò)展的小鍵盤。單片機(jī)芯片4個i/o口可與按鍵直接相連,通過編程,單片機(jī)芯片即可控制按鍵接口電平的高低,即按鍵的開與關(guān),以達(dá)到用按鍵進(jìn)行顯示時間的調(diào)整與設(shè)置擴(kuò)展的小鍵盤的設(shè)計(jì)要求。3、rtc時鐘 stm32自帶rtc模

8、塊 , 實(shí)時時鐘是一個獨(dú)立的定時器。rtc模塊擁有一組連續(xù)計(jì)數(shù)的計(jì)數(shù)器,在相應(yīng)軟件配置下,可提供時鐘日歷的功能。修改計(jì)數(shù)器的值可以重新設(shè)置系統(tǒng)當(dāng)前的時間和日期rtc模塊和時鐘配置系統(tǒng)(rcc_bdcr寄存器)處于后備區(qū)域,即在系統(tǒng)復(fù)位或從待機(jī)模式喚醒后,rtc的設(shè)置和時間維持不變。系統(tǒng)復(fù)位后,對后備寄存器和rtc的訪問被禁止,這是為了防止對后備區(qū)域(bkp)的意外寫操作。在rtc預(yù)分頻器余數(shù)寄存器(rtc_divh / rtc_divl)賦值可改變時間,在rtc鬧鐘寄存器(rtc_alrh/rtc_alrl)中改變鬧鈴時間。 4、12864顯示電路 數(shù)字電子鐘設(shè)計(jì)的顯示模塊用8個一位數(shù)碼管實(shí)現(xiàn)

9、,也可用兩個四位一體數(shù)碼管實(shí)現(xiàn)。兩種實(shí)現(xiàn)方式實(shí)現(xiàn)效果一樣。從實(shí)物制作的難易程度出,本數(shù)字電子鐘設(shè)計(jì)采用兩個四位一體數(shù)碼管實(shí)現(xiàn)。即數(shù)碼管引腳與單片機(jī)芯片和74ls245對應(yīng)引腳相連接。5、溫度傳感器模塊 ds18b20數(shù)字溫度傳感器接線方便,封裝成后可應(yīng)用于多種場合,如管道式,螺紋式,磁鐵吸附式,不銹鋼封裝式,型號多種多樣,有l(wèi)tm8877,ltm8874等等。主要根據(jù)應(yīng)用場合的不同而改變其外觀。封裝后的ds18b20可用于電纜溝測溫,高爐水循環(huán)測溫,鍋爐測溫,機(jī)房測溫,農(nóng)業(yè)大棚測溫,潔凈室測溫,彈藥庫測溫等各種非極限溫度場合。耐磨耐碰,體積小,使用方便,封裝形式多樣,適用于各種狹小空間設(shè)備數(shù)字

10、測溫和控制領(lǐng)域。1: 技術(shù)性能描述、 獨(dú)特的單線接口方式,ds18b20在與微處理器連接時僅需要一條口線即可實(shí)現(xiàn)微處理器與ds18b20的雙向通訊。 、測溫范圍 55+125,固有測溫誤差(注意,不是分辨率,這里之前是錯誤的)0.5。、支持多點(diǎn)組網(wǎng)功能,多個ds18b20可以并聯(lián)在唯一的三線上,最多只能并聯(lián)8個,實(shí)現(xiàn)多點(diǎn)測溫,如果數(shù)量過多,會使供電電源電壓過低,從而造成信號傳輸?shù)牟环€(wěn)定。、工作電源: 35v/dc (可以數(shù)據(jù)線寄生電源) 、在使用中不需要任何外圍元件。4、 軟件設(shè)計(jì)與流程圖1、主程序流程圖主程序流程圖如下圖圖2所示否是更改數(shù)值顯示溫度sec變了?開啟rtc,初始化溫度進(jìn)入循環(huán)圖

11、22、顯示子程序流程圖 顯示程序流程圖如下圖圖3所示。y是否滿24h?顯示緩沖單元清0返回ny是否滿60m?小時加1分值加1nrtc計(jì)數(shù)開始循環(huán)次數(shù)加1是否滿1s?是否滿60s?秒值加1n開始圖33、按鍵子程序流程圖 顯示子程序流程圖如下圖圖4所示。display秒數(shù)加1秒值按鍵按下?分值按鍵按下?小時按鍵按下?切換鍵是否按下?yn小時=12?ny標(biāo)志位顯示b標(biāo)志位顯示a分離秒值個位、十位顯示分十位、個位分離小時個位、十位顯示秒十位、個位分離分值個位、十位顯示小時十位、個位分?jǐn)?shù)加1時數(shù)加1正常顯示?顯示hyyyy開始圖4五、總原電路及元器件清單 1總原理圖 最小系統(tǒng)控制原理圖如下圖圖5所示,

12、12864原理圖如下圖圖6所示。圖5(1):stm32f103引腳圖圖5(2):指示燈與復(fù)位電路圖5(3):穩(wěn)壓電路,變壓電路,晶震圖6 2實(shí)物圖圖7 按鍵模塊圖8 stm32最小系統(tǒng)模塊圖9 歡迎界面圖10 選擇界面圖11 正常顯示界面圖12 選擇時界面圖13 調(diào)整時間界面圖14 調(diào)整鬧鈴界面圖15 鬧鈴開始界面圖16 12864實(shí)物圖17 調(diào)溫度傳感器實(shí)物六、元器件清單stm32f103vet6一個杜邦線一束lcd12864一個定位器(10k)一個ds18b20一個插排一排電源一個銅柱兩個七、主程序/#include #include sys.h#include usart.h#inclu

13、de delay.h#include led.h #include key.h#include exti.h#include wdg.h#include timer.h #include rtc.h #include lcd12864.h#include ds18b20.h #include adc.h#include timer.h const u8 *compiled_date=_date_;/獲得編譯日期const u8 *compiled_time=_time_;/獲得編譯時間extern u8 tim5ch1_capture_sta;/輸入捕獲狀態(tài) extern u16tim5ch1

14、_capture_val;/輸入捕獲值short temp;int main(void)/u16 adcx;u8 t=1; stm32_clock_init(9);/系統(tǒng)時鐘設(shè)置delay_init(72);/延時初始化uart_init(72,9600); /串口1初始化 key_init(); lcd12864_initial(); /初始化12864液晶lcd_clearh(); /12864液晶初始化 led_init(); /初始化與led連接的硬件接口adc_init(); /ad轉(zhuǎn)換初始化extix_init(); /外部中斷初始化rtc_init(); /時鐘初始化 xuanz

15、he(); /選擇你需要的操作while(ds18b20_init()/初始化ds18b20,兼檢測18b20lcd(3,0,失敗);delay_ms(500); led0=!led0;/ds0閃爍 while(1)temp=ds18b20_get_temp();if(temp0)temp=-temp;lcd(3,4,_); show_dig(2,5,temp/10);/顯示溫度值 lcd12864_sendbyte(0,0x33); lcd12864_sendbyte(1,46); show_digl(temp%10); lcd(2,7,); if(t!=timer.sec) t=timer

16、.sec; show_dig(1,0,timer.w_year);lcd12864_sendbyte(1,47);if(timer.w_month=9) show_digl(0); show_digl(timer.w_month); else show_digl(timer.w_month);lcd12864_sendbyte(1,47);if(timer.w_date=9) show_digl(0); show_digl(timer.w_date); elseshow_digl(timer.w_date); switch(timer.week)case 0:lcd(1,5,星期天);brea

17、k;case 1:lcd(1,5,星期一);break;case 2:lcd(1,5,星期二);break;case 3:lcd(1,5,星期三);break;case 4:lcd(1,5,星期四);break;case 5:lcd(1,5,星期五);break;case 6:lcd(1,5,星期六);break; show_digshuzhi(2,0,timer.hour); lcd12864_sendbyte(1,58);lcd12864_sendbyte(0,0x33);if(timer.min=9) show_digl(0); show_digl(timer.min); else sh

18、ow_digl(timer.min);lcd12864_sendbyte(0,0x33);lcd12864_sendbyte(1,58);if(timer.sec=9) show_digl(0);show_digl(timer.sec);else show_digl(timer.sec); lcd12864_sendbyte(0,0x02); show_dig(2,5,temp/10);/顯示溫度值 lcd12864_sendbyte(0,0x33); lcd12864_sendbyte(1,46); show_digxiaoshu(temp%10); lcd(2,7,); delay_ms(50); lcd12864_sendbyte(0,0x02); 8、 參考文獻(xiàn)1 康華光.電子技術(shù)基礎(chǔ)模擬部分第四版m.北京:高等教育出版社,1999.6.2 閻石.數(shù)字電子技術(shù)基礎(chǔ)第四版m.北京:高等教育出版社,1999.6.3王福瑞等單片微機(jī)測控系統(tǒng)設(shè)計(jì)大全m北京航空航天大學(xué)出版社,1998(331337)4寧改娣,楊拴科dsp控制器原理及應(yīng)用m科學(xué)出版社,20025 周立功等.arm嵌入式系統(tǒng)基礎(chǔ)教程m.北京:北京航空航天大學(xué)出版社,2005.1.6 周立功等.arm嵌入式系統(tǒng)實(shí)驗(yàn)教程m.北京:北京航空航天大學(xué)出版社,

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論