《電子技術應用》
您所在的位置:首頁 > 嵌入式技术 > 设计应用 > 基于ATmage8的打铃器设计
基于ATmage8的打铃器设计
电子技术
粟慧龙
摘要: 本文介绍了一种由ATmega8单片机和DS1302万年历时钟芯片构成的新型打铃器。对打铃器的硬件构成、工作原理和软件的编程进行了详细地阐述。系统以DS1302为基准时钟,该器件内含SPI总线接口,可以方便的与ATmega8进行连接。ATmega8片内有512字节的EEPROM存储器,可以存储多组打铃数据。4位LED数码显示,可显示时、分及切换显示的日历信息。打铃器的设置可以用机身按键操作,也可以通过串行通讯口由PC实现。此打铃器可方便高效地工作在各种需要定时控制的场所。
Abstract:
Key words :

0 引言
   
本設計根據學校常規教學和臨時教學活動(如考試等)對打鈴時間的要求,對打鈴器的設計進行了改進,使其可分別工作在夏制、冬制、臨時三種模式下。每種工作模式支持多達80個時間點的打鈴輸出,并且根日期的設置,打鈴器可以自動切換冬夏兩種工作模式,實現不同時制的打鈴。如需臨時改變打鈴時間,將系統切換至臨時工作模式,設置打鈴時間即可,極大地簡化了打鈴器的操作。通過電路設計的優化改進,提高了設備的可靠性和操作易用性,并在使用過程中表現出了較高穩定性和實用性。

1 系統硬件設計
   
打鈴器由ATmega8單片機最小系統、DS1302時鐘電路、LED數碼顯示電路、串行口通訊電路、按鍵電路和打鈴輸出控制電路構成,系統電路如圖1所示。


    ATmage8單片機是美國ATEMEL公司的一款高性能、低功耗的8位AVR微處理器,內含32個8位通用工作寄存器、RC時鐘振蕩電路、8K字節的系統內可編程Flash、512字節的EEPROM及1K的SRAM。ATmega8內含豐富的總線接口,并有專門的SPI接口,可方便實現與時鐘電路的連接。
    時鐘芯片采用的是DS1302。它是一種高性能、低功耗、帶RAM的實時時鐘電路,可以對年、月、日、周日、時、分、秒進行計時。在工作過程中,SCM對這些時鐘單元的數據循環讀取,將讀到的時間與打鈴時間比對,以確定是否打鈴。通過修改相應的時間單元,可實現系統時間的調整。
    時間顯示采用了4位共陽LED數碼管動態顯示方式,PC口與數碼管的段碼相連,PB0、PB1、PB6、PB7作為位選信號分別控制數碼管的共陽極;S1~S4分別與PD4、PD5、PD6、PD7相連,用于系統設置和時間調整;串行通訊接口電路分別與ATmega8的RXD和TXD引腳相連,通過與PC聯機,可快速完成打鈴器的系統設置、打鈴時間設定及系統時間的調整;SPI接口與DS1302的數據I/O相連,從DS1302中讀取實時時鐘。
    PD2與打鈴控制電路相連,電路如圖2所示,打鈴輸出時,該引腳被置為低電平,三極管Q1飽和導通,經光耦隔離并觸發Q2飽和導通,繼電器JD1得電閉合,并觸發雙向晶閘管AK極導通,AC220V電源經BT136的AK極,電鈴線圈得電響鈴。當響鈴時間結束后,PD2被置為高電平,Q1截止,后續電路均失電,響鈴停止。



2 軟件設計
   
打鈴器上電后,SCM將從片內的EEPROM中讀取設置參數進行系統的初始化,然后讀取DS1302時間單元,將時間通過定時中斷程序顯示出來。在工作過程中,每個打鈴時間點用兩個字節分別表示小時和分鐘的時間值,當秒單元為‘00’時,系統將調用一次打鈴時間比較子程序,以確定當前時間是否打鈴,系統的主程序流程如圖3所示。


    打鈴器可工作在冬制、夏制和臨時打鈴三種模式,每種工作模式最多可設置80個打鈴時間點,基本滿足任何工作場合要求。每個打鈴時間點用2個字節表示,3種工作模式共占480字節的存儲空間,根據工作模式的不同,打鈴時間分3個區存放在ATmage8的EEPROM存儲器中。系統上電后,SCM根據模式特征字自動判別工作模式,并將對應區間的打鈴數據復制到SCM片內的SRAM區。
2.1 打鈴時間比較子程序
   
在主程序中,SCM讀取DS1302的數據后,對秒數據進行判斷。當秒單元為“00”時,程序立即調用打鈴時間比較子程序,否則將不執行該子程序的調用。在打鈴時間比較子程序中,SCM首先從片內的EEPROM區取出當前工作模式的打鈴次數字,將其復制到Ring cnt計數變量中,然后將當前模式的第一組打鈴時間與系統時間進行比較,若打鈴時間與當前時間相等,置PD0引腳為低電平,打鈴控制電路接通并響鈴,同時置響鈴標志位為‘1’,程序返回。若不相等,Ring cnt變量減一,繼續比較下一組打鈴時間,直到時間相等或Ring cnt變量減為‘0’,則子程序返回。程序流程圖如圖4所示。響鈴標志位置‘1’后,系統將啟動15s定時,定時結束后,PD0置高電平當,電鈴停止工作,同時將響鈴標志位也置‘0’。
2.2 串口通訊子程序
   
打鈴器的時間設定、查詢和系統設置可通過鍵盤操作完成。為了準確快捷地完成打鈴器設置,系統還支持串口操作功能,通過串行口與PC機進行通訊,在上位機上可以完成打鈴器的相關設置。上位機軟件通過串行口向打鈴器發送命令,完成打鈴器參數的設置與查詢,命令格式為:命令字+數據+結束標識,其具體組成如表1所示。在通訊過程中,SCM在RAM區開辟一塊存儲空間接收上位機發送的數據。每接收到一個字節都判斷其是否為結束標識,若為結束標識,則停止接收,否則繼續接收。當數據接收完成后,程序便開始查詢命令字狀態,并根據表1中命令字含義進行數據的相關處理。若命令字為查詢命令字時,則SCM根據命令字含義返回相應的數據至PC,并通過上位機軟件顯示出來,上位機軟件如圖5所示。


3 結束語
   
本打鈴器電路簡潔,價格低廉,且簡單易用。通過在學校一年多的使用檢驗,打鈴器走時精準,性能穩定可靠,具有較高的推廣價值。

此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 欧美韩国日本精品一区二区三区| 欧美激情久久久久久| 久久久久福利视频| 国产精品精品久久久久久| 91国产高清在线| 久久成年人免费电影| 日本在线播放一区| 99在线视频首页| 国产精品视频xxxx| 久久免费视频在线观看| 99精彩视频在线观看免费| 狠狠精品干练久久久无码中文字幕| 日日夜夜精品网站| 97精品在线视频| 国产精品视频自在线| 久久超碰亚洲| 欧美激情一级精品国产| 日韩美女中文字幕| 亚洲图片在线观看| 91国内揄拍国内精品对白| 国产精品99久久久久久久| 国产精品综合网站| 国产伦精品免费视频| 国精产品99永久一区一区| 久久久久久九九| 欧美一级视频一区二区| 日韩一区二区高清视频| 亚洲精品免费在线看| 亚洲欧洲国产精品久久| 中文字幕99| 91精品视频免费看| av免费观看网| 国产精品久久久999| 国产精品久久精品视| 国产精品黄视频| www.日日操| 91久久精品视频| 亚洲五码在线观看视频| 色综合久久av| 日韩av一区二区三区在线| 日本免费一区二区三区视频观看|