李芝浩 朱爾隆
摘 要
本系統(tǒng)是在protues上進行仿真實現(xiàn)的自動售貨機系統(tǒng),選用當前的主流芯片AT89C51作為核心,用LCD屏進行顯示,能夠準確及時的顯示投幣數(shù)、貨物數(shù)、購買數(shù)量等等。系統(tǒng)用中文顯示,具有較好的人機交互功能,還能顯示當前的日期時間。
【關鍵詞】自動售貨機AT89C51LCD人機交互中文顯示
自動售貨機是勞動密集型的產業(yè)構造向技術密集型社會轉變的產物。在快節(jié)奏生活的今天,自動售貨機以其靈活、方便、快捷的特點迅猛發(fā)展,走入我們的生活,并將逐漸成為我們生活不可或缺的一部分。那么一個擁有一個良好人機交互功能的自動售貨機不僅能給顧客帶來更好的消費體驗,還能夠大大增加公司的收入。
本文設計了一款基于AT89C51單片機的智能型自動售貨機,能夠較好地實現(xiàn)一個購物的過程,用中文顯示購物菜單供顧客選擇,并能夠在出現(xiàn)投幣不足,貨物不足時給出提示。
1 總體方案
自動售貨機是一個獨立的機構,它需要在顧客投幣和按購物鍵選擇時實現(xiàn)自動售貨及退找零錢,所以要從盡可能全自動的角度去考慮設計方案。它的基本工作過程如圖1所示。
本文介紹的自動售貨機原理是這樣的:首先用三個按鍵來仿真錢幣的入口,通過按鍵次數(shù)來模擬投入錢的數(shù)目。在程序中以外部中斷的方式實現(xiàn)計數(shù),并在中斷子程序中將錢的數(shù)量送回主程序中顯示。此時,LCD屏幕上就會開始顯示菜單,并把價格等相關信息顯示出來。在設計中,另外采用了兩個開關讓顧客進行操作,一個向下選擇,一個進行確認。當顧客按動按鈕進行選擇時,選中的商品會閃爍,顧客第一次按下確認鍵,系統(tǒng)選中該商品然后顯示具體信息如剩余的商品數(shù)目等,顧客可以通過向下選擇按鍵來改變商品數(shù)目。等顧客第二次完成確認,系統(tǒng)會根據(jù)具體情況做出反應,若是一切正常,機器就會送出選定的商品,當然這里的設計只是用閃爍的LED等來表示貨物及余幣的輸出。輸出貨物之后,系統(tǒng)不會退出,重新進入菜單界面進行選擇,若顧客選擇退出則送出余幣然后退出。
當然根據(jù)實際,當出現(xiàn)貨物不足,或者投幣不足的情況時,系統(tǒng)會報警然后在LCD顯示相關信息,然后重新進入選擇界面。另外選擇界面上設計了一個倒計時系統(tǒng),若在10s沒有相關的操作,倒計時完成后就會退出余幣然后結束購物??紤]到實用性,在沒有顧客時,LCD屏上會顯示歡迎光臨,并顯示當前的時間。關于貨物狀態(tài)的顯示,是由對應的LED燈來顯示,若貨物充足燈燈亮。
2 系統(tǒng)硬件設計
硬件仿真電路按功能主要分為6大模塊,按鍵輸入模塊、LED顯示模塊、LCD顯示模塊、時鐘DS1302模塊、手動復位模塊、中央控制模塊。
三個作為錢幣入口的按鍵,接到外部中斷入口int0用中斷方式實現(xiàn)。用戶只用操作兩個按鍵。一個是加一鍵,一個是確認鍵實現(xiàn)購物操作。另外接在P1的八個LED燈用來顯示當前貨物的狀態(tài)和自動售貨機的工作狀態(tài)。
采用漢字顯示的PG12864F來實現(xiàn)顯示功能,無漢字庫所以通過漢字取模軟件取出字模,建立字庫。
DS1302用來實時顯示時間,它可以對年、月、日、周、日、時、分、秒進行計時,采用三線接口與CPU進行同步通信。
中央控制模塊選用的是AT89C51,是一種帶4K字節(jié)FLASH存儲器的低電壓、高性能CMOS 8位微處理器。
本設計中并沒有用到很多的外部設備,所以沒有把P2口作為地址總線使用,而是作為按鍵的輸入口。多余的幾個管腳用來補充P3口作為控制總線。P1口用來控制系統(tǒng)的LED燈來顯示狀態(tài)。P3口用作控制總線來控制各芯片。另外還用到了復位引腳,通過按鍵手動保持RST腳兩個機器周期的高電平時間復位,和一個外部中斷入口來響應外部中斷。
3 系統(tǒng)軟件設計
從軟件編程上來看,系統(tǒng)采用c語言進行分塊編寫, 方便調試和擴展。首先主程序完成的是各部分的初始化工作,之后進入執(zhí)行各部分功能的大循環(huán)。當無投幣時,進入一個等待界面,顯示歡迎光臨,并讀取時間值顯示,這里會循環(huán)檢查是否投幣,然后判斷系統(tǒng)中貨物的數(shù)目,并顯示狀態(tài)。
之后進行的是一個菜單的顯示和無操作延時等待,因為我們系統(tǒng)這個延時的實時性要求不是特別高,所以采用軟件延時即可滿足要求。每隔50ms進行一次按鍵掃描,然后進行倒計時。
若有投幣則進入購物子程序,顯示菜單進行選擇。先選擇商品,再選擇數(shù)量,之后進行判斷,若無誤則購買完成,購買值、時間復位,然后返回到菜單選擇界面。
若是在之前選擇退出,然后倒計時時間到了,就會自動進入退出程序,然后返回主程序。
若是購買過程中出現(xiàn)投幣不足或者貨物不足就會出現(xiàn)提示顯示提示界面,對應LED燈閃爍。
若貨物不足,對應燈熄滅,可通過按鍵重新裝載。
4 結束語
本文通過PROTEUS試驗仿真,驗證了一種自動售貨機系統(tǒng)的可行性。模擬了日常生活中一個自動購物的過程,只需要顧客投幣和按購物鍵選擇即可自動售貨及退找零錢,如果能應用到實際生活中相信能給人們的生活提供很大的便利。
參考文獻
[1]高玉芹.單片機原理與應用及 C51編程技術[M].北京:機械工業(yè)出版社,2011(06).
[2]郭天祥.新概念51單片機C語言教程—入門、提高、開發(fā)、拓展全攻略[M].北京:電子工業(yè)出版社,2009(11).
[3]彭偉.單片機C語言程序設計實訓100例—基于8051+PROTEUS仿真[M].北京:電子工業(yè)出版社2009(06).
作者簡介
李芝浩(1993-),男,浙江省江山市人?,F(xiàn)為中南大學信息科學與工程學院學生。研究方向為電子設計、自動化。
朱爾?。?993-),男,浙江省溫州市人,現(xiàn)為大連理工大學電子信息與電氣工程學院學生。研究方向為電氣、自動化。
作者單位
1.中南大學信息科學與工程學院 湖南省長沙市 410012
2.大連理工大學電子信息與電氣工程學院 遼寧省大連市 116024endprint
摘 要
本系統(tǒng)是在protues上進行仿真實現(xiàn)的自動售貨機系統(tǒng),選用當前的主流芯片AT89C51作為核心,用LCD屏進行顯示,能夠準確及時的顯示投幣數(shù)、貨物數(shù)、購買數(shù)量等等。系統(tǒng)用中文顯示,具有較好的人機交互功能,還能顯示當前的日期時間。
【關鍵詞】自動售貨機AT89C51LCD人機交互中文顯示
自動售貨機是勞動密集型的產業(yè)構造向技術密集型社會轉變的產物。在快節(jié)奏生活的今天,自動售貨機以其靈活、方便、快捷的特點迅猛發(fā)展,走入我們的生活,并將逐漸成為我們生活不可或缺的一部分。那么一個擁有一個良好人機交互功能的自動售貨機不僅能給顧客帶來更好的消費體驗,還能夠大大增加公司的收入。
本文設計了一款基于AT89C51單片機的智能型自動售貨機,能夠較好地實現(xiàn)一個購物的過程,用中文顯示購物菜單供顧客選擇,并能夠在出現(xiàn)投幣不足,貨物不足時給出提示。
1 總體方案
自動售貨機是一個獨立的機構,它需要在顧客投幣和按購物鍵選擇時實現(xiàn)自動售貨及退找零錢,所以要從盡可能全自動的角度去考慮設計方案。它的基本工作過程如圖1所示。
本文介紹的自動售貨機原理是這樣的:首先用三個按鍵來仿真錢幣的入口,通過按鍵次數(shù)來模擬投入錢的數(shù)目。在程序中以外部中斷的方式實現(xiàn)計數(shù),并在中斷子程序中將錢的數(shù)量送回主程序中顯示。此時,LCD屏幕上就會開始顯示菜單,并把價格等相關信息顯示出來。在設計中,另外采用了兩個開關讓顧客進行操作,一個向下選擇,一個進行確認。當顧客按動按鈕進行選擇時,選中的商品會閃爍,顧客第一次按下確認鍵,系統(tǒng)選中該商品然后顯示具體信息如剩余的商品數(shù)目等,顧客可以通過向下選擇按鍵來改變商品數(shù)目。等顧客第二次完成確認,系統(tǒng)會根據(jù)具體情況做出反應,若是一切正常,機器就會送出選定的商品,當然這里的設計只是用閃爍的LED等來表示貨物及余幣的輸出。輸出貨物之后,系統(tǒng)不會退出,重新進入菜單界面進行選擇,若顧客選擇退出則送出余幣然后退出。
當然根據(jù)實際,當出現(xiàn)貨物不足,或者投幣不足的情況時,系統(tǒng)會報警然后在LCD顯示相關信息,然后重新進入選擇界面。另外選擇界面上設計了一個倒計時系統(tǒng),若在10s沒有相關的操作,倒計時完成后就會退出余幣然后結束購物??紤]到實用性,在沒有顧客時,LCD屏上會顯示歡迎光臨,并顯示當前的時間。關于貨物狀態(tài)的顯示,是由對應的LED燈來顯示,若貨物充足燈燈亮。
2 系統(tǒng)硬件設計
硬件仿真電路按功能主要分為6大模塊,按鍵輸入模塊、LED顯示模塊、LCD顯示模塊、時鐘DS1302模塊、手動復位模塊、中央控制模塊。
三個作為錢幣入口的按鍵,接到外部中斷入口int0用中斷方式實現(xiàn)。用戶只用操作兩個按鍵。一個是加一鍵,一個是確認鍵實現(xiàn)購物操作。另外接在P1的八個LED燈用來顯示當前貨物的狀態(tài)和自動售貨機的工作狀態(tài)。
采用漢字顯示的PG12864F來實現(xiàn)顯示功能,無漢字庫所以通過漢字取模軟件取出字模,建立字庫。
DS1302用來實時顯示時間,它可以對年、月、日、周、日、時、分、秒進行計時,采用三線接口與CPU進行同步通信。
中央控制模塊選用的是AT89C51,是一種帶4K字節(jié)FLASH存儲器的低電壓、高性能CMOS 8位微處理器。
本設計中并沒有用到很多的外部設備,所以沒有把P2口作為地址總線使用,而是作為按鍵的輸入口。多余的幾個管腳用來補充P3口作為控制總線。P1口用來控制系統(tǒng)的LED燈來顯示狀態(tài)。P3口用作控制總線來控制各芯片。另外還用到了復位引腳,通過按鍵手動保持RST腳兩個機器周期的高電平時間復位,和一個外部中斷入口來響應外部中斷。
3 系統(tǒng)軟件設計
從軟件編程上來看,系統(tǒng)采用c語言進行分塊編寫, 方便調試和擴展。首先主程序完成的是各部分的初始化工作,之后進入執(zhí)行各部分功能的大循環(huán)。當無投幣時,進入一個等待界面,顯示歡迎光臨,并讀取時間值顯示,這里會循環(huán)檢查是否投幣,然后判斷系統(tǒng)中貨物的數(shù)目,并顯示狀態(tài)。
之后進行的是一個菜單的顯示和無操作延時等待,因為我們系統(tǒng)這個延時的實時性要求不是特別高,所以采用軟件延時即可滿足要求。每隔50ms進行一次按鍵掃描,然后進行倒計時。
若有投幣則進入購物子程序,顯示菜單進行選擇。先選擇商品,再選擇數(shù)量,之后進行判斷,若無誤則購買完成,購買值、時間復位,然后返回到菜單選擇界面。
若是在之前選擇退出,然后倒計時時間到了,就會自動進入退出程序,然后返回主程序。
若是購買過程中出現(xiàn)投幣不足或者貨物不足就會出現(xiàn)提示顯示提示界面,對應LED燈閃爍。
若貨物不足,對應燈熄滅,可通過按鍵重新裝載。
4 結束語
本文通過PROTEUS試驗仿真,驗證了一種自動售貨機系統(tǒng)的可行性。模擬了日常生活中一個自動購物的過程,只需要顧客投幣和按購物鍵選擇即可自動售貨及退找零錢,如果能應用到實際生活中相信能給人們的生活提供很大的便利。
參考文獻
[1]高玉芹.單片機原理與應用及 C51編程技術[M].北京:機械工業(yè)出版社,2011(06).
[2]郭天祥.新概念51單片機C語言教程—入門、提高、開發(fā)、拓展全攻略[M].北京:電子工業(yè)出版社,2009(11).
[3]彭偉.單片機C語言程序設計實訓100例—基于8051+PROTEUS仿真[M].北京:電子工業(yè)出版社2009(06).
作者簡介
李芝浩(1993-),男,浙江省江山市人?,F(xiàn)為中南大學信息科學與工程學院學生。研究方向為電子設計、自動化。
朱爾?。?993-),男,浙江省溫州市人,現(xiàn)為大連理工大學電子信息與電氣工程學院學生。研究方向為電氣、自動化。
作者單位
1.中南大學信息科學與工程學院 湖南省長沙市 410012
2.大連理工大學電子信息與電氣工程學院 遼寧省大連市 116024endprint
摘 要
本系統(tǒng)是在protues上進行仿真實現(xiàn)的自動售貨機系統(tǒng),選用當前的主流芯片AT89C51作為核心,用LCD屏進行顯示,能夠準確及時的顯示投幣數(shù)、貨物數(shù)、購買數(shù)量等等。系統(tǒng)用中文顯示,具有較好的人機交互功能,還能顯示當前的日期時間。
【關鍵詞】自動售貨機AT89C51LCD人機交互中文顯示
自動售貨機是勞動密集型的產業(yè)構造向技術密集型社會轉變的產物。在快節(jié)奏生活的今天,自動售貨機以其靈活、方便、快捷的特點迅猛發(fā)展,走入我們的生活,并將逐漸成為我們生活不可或缺的一部分。那么一個擁有一個良好人機交互功能的自動售貨機不僅能給顧客帶來更好的消費體驗,還能夠大大增加公司的收入。
本文設計了一款基于AT89C51單片機的智能型自動售貨機,能夠較好地實現(xiàn)一個購物的過程,用中文顯示購物菜單供顧客選擇,并能夠在出現(xiàn)投幣不足,貨物不足時給出提示。
1 總體方案
自動售貨機是一個獨立的機構,它需要在顧客投幣和按購物鍵選擇時實現(xiàn)自動售貨及退找零錢,所以要從盡可能全自動的角度去考慮設計方案。它的基本工作過程如圖1所示。
本文介紹的自動售貨機原理是這樣的:首先用三個按鍵來仿真錢幣的入口,通過按鍵次數(shù)來模擬投入錢的數(shù)目。在程序中以外部中斷的方式實現(xiàn)計數(shù),并在中斷子程序中將錢的數(shù)量送回主程序中顯示。此時,LCD屏幕上就會開始顯示菜單,并把價格等相關信息顯示出來。在設計中,另外采用了兩個開關讓顧客進行操作,一個向下選擇,一個進行確認。當顧客按動按鈕進行選擇時,選中的商品會閃爍,顧客第一次按下確認鍵,系統(tǒng)選中該商品然后顯示具體信息如剩余的商品數(shù)目等,顧客可以通過向下選擇按鍵來改變商品數(shù)目。等顧客第二次完成確認,系統(tǒng)會根據(jù)具體情況做出反應,若是一切正常,機器就會送出選定的商品,當然這里的設計只是用閃爍的LED等來表示貨物及余幣的輸出。輸出貨物之后,系統(tǒng)不會退出,重新進入菜單界面進行選擇,若顧客選擇退出則送出余幣然后退出。
當然根據(jù)實際,當出現(xiàn)貨物不足,或者投幣不足的情況時,系統(tǒng)會報警然后在LCD顯示相關信息,然后重新進入選擇界面。另外選擇界面上設計了一個倒計時系統(tǒng),若在10s沒有相關的操作,倒計時完成后就會退出余幣然后結束購物。考慮到實用性,在沒有顧客時,LCD屏上會顯示歡迎光臨,并顯示當前的時間。關于貨物狀態(tài)的顯示,是由對應的LED燈來顯示,若貨物充足燈燈亮。
2 系統(tǒng)硬件設計
硬件仿真電路按功能主要分為6大模塊,按鍵輸入模塊、LED顯示模塊、LCD顯示模塊、時鐘DS1302模塊、手動復位模塊、中央控制模塊。
三個作為錢幣入口的按鍵,接到外部中斷入口int0用中斷方式實現(xiàn)。用戶只用操作兩個按鍵。一個是加一鍵,一個是確認鍵實現(xiàn)購物操作。另外接在P1的八個LED燈用來顯示當前貨物的狀態(tài)和自動售貨機的工作狀態(tài)。
采用漢字顯示的PG12864F來實現(xiàn)顯示功能,無漢字庫所以通過漢字取模軟件取出字模,建立字庫。
DS1302用來實時顯示時間,它可以對年、月、日、周、日、時、分、秒進行計時,采用三線接口與CPU進行同步通信。
中央控制模塊選用的是AT89C51,是一種帶4K字節(jié)FLASH存儲器的低電壓、高性能CMOS 8位微處理器。
本設計中并沒有用到很多的外部設備,所以沒有把P2口作為地址總線使用,而是作為按鍵的輸入口。多余的幾個管腳用來補充P3口作為控制總線。P1口用來控制系統(tǒng)的LED燈來顯示狀態(tài)。P3口用作控制總線來控制各芯片。另外還用到了復位引腳,通過按鍵手動保持RST腳兩個機器周期的高電平時間復位,和一個外部中斷入口來響應外部中斷。
3 系統(tǒng)軟件設計
從軟件編程上來看,系統(tǒng)采用c語言進行分塊編寫, 方便調試和擴展。首先主程序完成的是各部分的初始化工作,之后進入執(zhí)行各部分功能的大循環(huán)。當無投幣時,進入一個等待界面,顯示歡迎光臨,并讀取時間值顯示,這里會循環(huán)檢查是否投幣,然后判斷系統(tǒng)中貨物的數(shù)目,并顯示狀態(tài)。
之后進行的是一個菜單的顯示和無操作延時等待,因為我們系統(tǒng)這個延時的實時性要求不是特別高,所以采用軟件延時即可滿足要求。每隔50ms進行一次按鍵掃描,然后進行倒計時。
若有投幣則進入購物子程序,顯示菜單進行選擇。先選擇商品,再選擇數(shù)量,之后進行判斷,若無誤則購買完成,購買值、時間復位,然后返回到菜單選擇界面。
若是在之前選擇退出,然后倒計時時間到了,就會自動進入退出程序,然后返回主程序。
若是購買過程中出現(xiàn)投幣不足或者貨物不足就會出現(xiàn)提示顯示提示界面,對應LED燈閃爍。
若貨物不足,對應燈熄滅,可通過按鍵重新裝載。
4 結束語
本文通過PROTEUS試驗仿真,驗證了一種自動售貨機系統(tǒng)的可行性。模擬了日常生活中一個自動購物的過程,只需要顧客投幣和按購物鍵選擇即可自動售貨及退找零錢,如果能應用到實際生活中相信能給人們的生活提供很大的便利。
參考文獻
[1]高玉芹.單片機原理與應用及 C51編程技術[M].北京:機械工業(yè)出版社,2011(06).
[2]郭天祥.新概念51單片機C語言教程—入門、提高、開發(fā)、拓展全攻略[M].北京:電子工業(yè)出版社,2009(11).
[3]彭偉.單片機C語言程序設計實訓100例—基于8051+PROTEUS仿真[M].北京:電子工業(yè)出版社2009(06).
作者簡介
李芝浩(1993-),男,浙江省江山市人?,F(xiàn)為中南大學信息科學與工程學院學生。研究方向為電子設計、自動化。
朱爾隆(1993-),男,浙江省溫州市人,現(xiàn)為大連理工大學電子信息與電氣工程學院學生。研究方向為電氣、自動化。
作者單位
1.中南大學信息科學與工程學院 湖南省長沙市 410012
2.大連理工大學電子信息與電氣工程學院 遼寧省大連市 116024endprint