《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > AVR單片機的智能信息記錄儀設計方案
AVR單片機的智能信息記錄儀設計方案
摘要: 隨著計算機技術的發展,對各種儀器的使用情況的監控也越來越智能化。針對目前市場上時間記錄儀成本高、可擴展性差、存儲容量小、編程復雜等缺點,本文通過以AVR單片機為核心控制器,以高亮度液晶為顯示器,以USB移動硬盤為存儲設備,設計了一種智能時間記錄儀。
關鍵詞: avr 智能信息記錄儀
Abstract:
Key words :

    隨著計算機技術的發展,對各種儀器的使用情況的監控也越來越智能化。針對目前市場上時間記錄儀成本高、可擴展性差、存儲容量小、編程復雜等缺點,本文通過以AVR單片機為核心控制器,以高亮度液晶為顯示器,以USB移動硬盤為存儲設備,設計了一種智能時間記錄儀。

1 系統硬件設計
1.1 系統總體組成
    智能信息記錄儀由單片機、電源、液晶顯示、鍵盤輸入和USB模塊幾部分組成,其系統組成結構框圖如圖1所示。系統中的電源包括外部
電源和鋰電池。開機后,系統主電源一邊給電路供電,一邊對鋰電池充電。關機后,則由鋰電池給USB供電完成數據的保存。液晶顯示部分的主要任務是完成開關機時間的查詢顯示,在空閑時顯示當前的系統時間。時鐘模塊使用的是DSl302芯片,它是DALLAS公司推出的涓流充電時鐘芯片,片內含有一個實時時鐘/日歷和31字節靜態RAM。它可通過簡單的串行接口與單片機進行通信,實時時鐘/日歷電路可提供秒、分、時、日、星期、月、年的信息,每月的天數和閏年的天數可自動調整。USB模塊采用的U盤讀寫芯片PB375A是一個比較簡單的U盤讀寫解決方案。使用它無需了解繁瑣的USB HOST底層協議和FAT文件系統(支持FATl2和FATl6及FAT32文件系統),而只需要將MCU與模塊通過SPI接口或者UART通信,通過執行幾個簡單命令,便可完成文件的新建、讀寫、刪除等功能,使用十分簡單方便。另外,對于單片機來說,基本不占用單片機系統的存儲空間,只需要幾個字節的RAM和幾百字節的代碼就可完成。它的串口支持9600、4800和2400bit/s三種波特率的選擇,由于其內置5 V轉3.3 V電路,故可大大簡化外圍電路的設計。


1.2 硬件電路設計
    該信息記錄儀器采用一款高性能低功耗的處理器ATmega64作為中央控制器,它的工作電壓為3.3 V,具有豐富的內部資源:包括53個可編程的I/O口、7個外部中斷、2個16位定時器、2個8位定時器、4 KB的片內SRAM和64 KB系統內可編程Flash存儲器,而且擦寫壽命長,可滿足系統要求。ATmega64及其外圍接口電路如圖2所示。

    該儀器的中斷接口電路包括開機時的上電中斷和關機時的掉電中斷,它們都由光電耦合芯片6N137和非門74LVT04組成,圖3所示是其中斷電路。電源VC經過7805后接到光耦的輸入端,輸出接單片機的INT0和非門的l腳,非門的2腳接INTl。因此,在開機時,光耦輸入端Vin+為高電平,輸出端Vo為低電平,故產生上電中斷(INT0);而關機時,光耦的輸入是低電平,而輸出為高電平。故在經過非門2腳后,輸出低電平以產生掉電中斷(INTl)。



    電源切換電路主要的功能是在系統關機時,轉由鋰電池給USB供電并完成數據的保存,其電源切換如圖4所示。圖中,當外部開機后,V為高電平使三極管Q2導通,同時把Q1的基極拉至低電平,使其導通。外部電源V經過二極管D1后(VC)給單片機電路和USB供電。由于程序在初始時把POWER置高,所以,此時Q2也是導通的。當系統關機后,V變成低電平,三極管Q2截止。但是,由于此時Q3是導通的,所以Q1仍導通,只是此時是由鋰電池供電來完成數據的保存,這時,單片機的定時器l開始工作,并在延時10 s后,使POWER的輸出為低電平,從而使Q3關斷,并最終使Q1的基極變高,整個記錄儀關閉。

 

2 系統軟件設計
    系統軟件的主要任務是USB的讀寫、液晶的顯示、時鐘和鍵盤的編程。PB375A和單片機之間使用串行通信。其中,單片機首先將命令碼和
參數信息發送給PB375A,由PB375A根據命令信息執行完相應操作,再以中斷方式返回操作狀態碼給單片機。通信格式包括起始碼(0x3A)、操作碼、數據長度和數據包。其主要的操作碼如下:
    Ox71:檢測U盤是否連接,連接時返回0;
    0x64:打開已有的文件,如果文件不存在,則返回Ox42:
    0x65:新建文件;
    Ox7A:確定讀寫字節的地址;
    0x7B:以字節為單位返回讀取的數據。
    圖5所示是本系統的程序流程框圖。


2.1 文件新建與數據寫入
    利用命令CMD_FileCreat可新建文件,文件名應為8+3格式,且必須為大寫字母或者數字。
    寫入數據可通過命令CMD_ByteWrite來實現。
    通過CMD_FileClose命令可關閉文件。關閉文件將自動更新文件長度。另外應特別注意只有關閉了文件;才默認生成文件,否則沒有文件生成,也就無法進行下面的操作(例如新建文件后沒有關閉文件就開始讀數據,則該操作無效)。
2.2 向已有文件追加數據
    向已有文件追加數據時的一般命令如下:
    CMD_FileOpen:打開文件;
    CMD_ByteLocate:移動文件指針到末尾(0xFFFFFFFF);
    CMD_ByteWrite:寫入數據;
    CMD_FileClose:關閉文件。
2.3 寫數據操作
    寫數據時,首先讀取實時時鐘DSl302的值,以判斷當前時間是不是每月的1號,如果是,就新建一個vv-mm.TXT文件,用來保存一個月中每天的開機次數,然后再新建yy—mm—dd.TXT文件來保存每次具體的開關機時間。假如現在是09年11月1日,則先新建09-11.TXT并寫入31個0,然后把它第一個數讀取出來,是0則新建09-11-01.TXT,寫入開機時間后,再把開機次數的標志位加1,然后再寫入文件09-11.TXT。第二次開機時,時間就直接追加到該文件里。
    在新建文件09-11-01.TXT時,要把此刻的日期時間保存起來。這樣,當關機時,就會把關機時間追加到該文件里。
2.4 日期時間的查詢與顯示
    顯示要查詢的日期時間時,首先打開輸入要求的日期文件,然后讀取數據并存入顯示緩存。為了能在電腦上清晰閱讀,寫入具體時間時,應使用空格、回車、換行等特殊字符,所以,必須對單片機讀到的數據做特殊處理后再送去顯示。

3 結束語
    本文所介紹的信息記錄系統方案設計合理,使用方便,具有友好的人機界面和較大的數據存儲能力,可以很好地實現時間信息的智能記錄。使用本方案設計的智能信息記錄儀能夠滿足多種工業場合的使用要求,具有很好的推廣價值。

此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 成全视频免费高清| 久久久久香蕉视频| 久久精品国产亚洲AV蜜臀色欲| 久久国产精品一国产精品| 中文字幕精品一区| kink系列视频在线播放| 4480新视觉yy理论片| 香蕉视频在线免费看| 蜜中蜜3在线观看视频| 精品日本一区二区三区在线观看| 麻豆狠色伊人亚洲综合网站| 91人人区免费区人人| 黄色片网站在线免费观看| 色哟哟网站在线观看| 男女抽搐一进一出无遮挡| 欧美片免费观看网址| 日韩精品无码专区免费播放| 无忧传媒在线观看| 国内精品久久久久影院一蜜桃 | 小泽玛利亚在线观看国产| 国内大片在线免费看| 国产剧情在线看| 人人妻人人爽人人澡欧美一区| 久久精品青青大伊人av| jizz免费观看| 高清无码一区二区在线观看吞精| 猛男狂搡美女免费| 日本欧美中文字幕| 国产精品第八页| 午夜福利视频合集1000| 亚洲偷自拍另类图片二区| 一级做α爱过程免费视频| 国产麻豆欧美亚洲综合久久| 男女啪啪永久免费观看网站 | 爱呦视频在线播放网址| 日韩中文在线视频| 在线www天堂资源网| 国产AV寂寞骚妇| 亚洲w码欧洲s码免费| japonensis19一20刚开始的| 韩国三级日本三级美三级|