宋連偉, 孔祥洪, 錢衛國, 郭陽雪, 周 華, 王偉杰, 陳 功
(1.上海海洋大學工程學院,上海201306;2.上海海洋大學物理實驗中心,上海201306;3.國家遠洋漁業工程技術研究中心,上海201306)
電子設計自動化(Electronic Design Automation,EDA)[1]技術是現代電子技術和信息技術發展的杰出成果,它的發展與應用正引領著一場工業設計和制作領域的革命。EDA技術為電子工程師提供了理想的設計工具。EDA的工具軟件很多,應用的設計領域也不同,Proteus是一個用于電路設計和仿真的EDA工具軟件,它是最流行的電子仿真軟件之一,被稱為虛擬電子實驗室。Proteus電子電路仿真軟件提供了從分立元件到集成元件,從無源器件到有源器件,從模擬器件到數字器件甚至高頻類元器件及機電類元器件等龐大的元器件庫,并且提供了功能強大、設備齊全的虛擬儀器和能滿足各種分析需求的分析方法[2-4]。利用這些儀器和分析方法,不僅可以清楚地了解電路的工作狀態,還可以測量電路的穩定性和靈敏度。Proteus不僅可以作為專業軟件真實地仿真分析電路的工作,將設計錯誤盡可能地消滅在制作樣機之前,而且還可以在“電路基礎”、“模擬電子技術”、“數字電子技術”等電子實驗課中充當模擬實驗平臺[5],將電子實驗搬到計算機屏幕上來做。
魷魚釣機是魷釣漁業中最基本的生產工具[6-7],而其中電機控制部分是關鍵所在。如果要在速度控制模式下實現釣繩的位置監測,則需要一個準確的計時器。本文以時鐘程序的設計為例,使用 Proteus[8-9]中的AT89S51芯片[10]、LCD1602 芯片、DS1302 芯片、電壓表以及示波器等虛擬電子元件和虛擬儀器,完成魷魚釣機計時器的程序和硬件電路設計與仿真。不僅大大提高可操作性,而且降低成本、縮短產品開發周期。
(1)時鐘可以正確顯示時間。
(2)時鐘時間可以修改調整。
如圖1所示為所設計時鐘的系統功能框圖,本系統由AT89S51模塊、DS1302模塊、LCD1602模塊、鍵盤模塊和供電模塊共五大模塊組成。

圖1 功能框圖
①AT89S51模塊。根據用戶通過鍵盤輸入的控制命令完成DS1302時鐘芯片的讀寫操作,并將時間數據送往LCD1602模塊進行實時顯示。②DS1302模塊。進行時間計數,為AT89S51模塊提供時間源數據。③LCD1602模塊。人機交互,完成時間數據的顯示。④鍵盤模塊。人機交互,完成用戶命令的輸入。⑤供電模塊。為整套系統各個模塊進行供電。
1.3.1 最小系統電路設計
圖2為基于AT89S51的最小系統電路設計。

圖2 系統電路
1.3.2 晶振模塊電路設計
圖3為晶振模塊電路,該模塊電路為AT89S51模塊提供系統時鐘源。

圖3 晶體模塊電路
1.3.3 復位模塊電路設計
圖4為復位模塊電路[11-13],該模塊電路為AT89S51模塊提供復位信號,使系統復位。

圖4 復位模塊電路
1.3.4 DS1302時鐘芯片模塊電路設計
圖5為DS1302時鐘芯片模塊電路[14],該模塊電路完成時間計數,為AT89S51模塊提供時間源數據。

圖5 時鐘芯片模塊電路
1.3.5 LCD1602 模塊電路設計
圖6為LCD1602模塊電路[15],該模塊電路完成時間數據的顯示。

圖6 時間顯示模塊電路
1.3.6 鍵盤模塊電路設計
圖7為鍵盤模塊電路設計,該模塊電路由MENU和UP 2個按鍵組成,完成人機交互,實現用戶命令的輸入。

圖7 鍵盤模塊電路
1.3.7 系統電路的設計
圖8為系統電路DS1302模塊的RST、SCLK、IO 3個引腳分別與 AT89S51 模塊的 P2.5、P2.6、P2.7 連接;LCD1602模塊的數據/命令端口與AT89S51模塊的P0端口連接,其控制端E和R/W分別于AT89S51模塊的P2.0和P2.1相連接;鍵盤模塊的MENU按鍵與AT89S51模塊的P3.2(即外部中斷0)連接,UP按鍵與AT89S51模塊的P3.3(即外部中斷1)連接;系統各個模塊電路共地。

圖8 系統模塊電路
圖9 為系統軟件流程圖。系統一上電,程序便運行各外設的初始化程序對硬件設備進行初始化。然后,時鐘進入正常顯示狀態并開始等待用戶從鍵盤輸入的命令。當時鐘系統接收到用戶輸入的命令,如果時鐘處于年調整狀態,則通過點擊UP按鍵使年數據加加;如果時鐘處于月調整狀態,則通過點擊UP按鍵使月數據加加;如果時鐘處于日調整狀態,則通過點擊UP按鍵使日數據加加;如果時鐘處于時調整狀態,則通過點擊UP按鍵使時數據加加;如果時鐘處于分調整狀態,則通過點擊UP按鍵使分數據加加;如果時鐘處于秒調整狀態,則通過點擊UP按鍵使秒數據加加,如此循環,實現時間數據的調整與正確顯示。

圖9 系統軟件系統圖
DS1302之BCD碼到十進制時間數值的轉換公式,定義時間數值的一位為 X,從DS1302讀取的1 Byte 數據為 Val,則:

圖10為系統仿真圖,所設計時鐘程序要求能夠滿足:①時間數據的讀取并正確顯示;② 時間數據可以修改調整。經測試,該程序設計滿足要求。

圖10 系統仿真圖
本文設計的魷魚釣機計時器程序和電路,將基本的AT89S51、DS1302、LCD1602和鍵盤模塊電路有機的結合起來。將計算機仿真軟件Proteus引入到電路設計與程序設計中,給魷魚釣機計時裝置的程序及電路設計、調試、仿真帶來了極大的方便。以本文設計的魷魚釣機計時器程序和電路為例,設計仿真過程中使用到了 Proteus中的 AT89S51芯片、LCD1602芯片、DS1302芯片、電壓表以及示波器等虛擬電子元件和虛擬儀器。Proteus虛擬電子元件和儀器的使用可以突破實驗室元器件短缺和實驗經費有限的限制,讓學生學會從不同角度思考同一問題,提出不同的解決方案,從而提高解決實際問題的能力。與此同時,仿真軟件Proteus的利用使電子系統的設計變得輕而易舉,增強了可操作性,縮短了開發周期,利于推廣和利用。
[1] 王建新,姜 萍.電子線路實踐教程[M].北京:科學出版社,2005:11-12.
[2] 張靖武.單片機系統的PROTUES設計與仿真[M].北京:電子工業出版社,2007:21-26.
[3] 郭天祥.51單片機C語言教程:入門、提高、開發、拓展全攻略[M].北京:電子工業出版社,2009.1:323-331.
[4] 寇 戈,蔣立平.模擬電路與數字電路[M].北京:電子工業出版社.2008.7:36-45.
[5] 張俊濤.電路仿真軟件在電子技術教學實踐中的應用[J].實驗技術與管理,2007(6):117-118.
[6] 奈須敬二,奧谷喬司,小倉通男.イカその生物から消費で[M].東京:成山堂書店,1991:67-69.
[7] 小倉通男.ィカ釣漁業と火光[J].日本水產學會誌,1992,38(8):881-889.
[8] 林 立,張俊亮,曹旭東,等.單片機原理及應用——基于Proteus和 Keil C[M].北京:電子工業出版社,2009:9-16.
[9] 彭偉.單片機 C語言程序設計實訓100例——基于8051+Proteus仿真[M].北京:電子工業出版社,2009:13-21.
[10] 李 華,孫曉民,李紅青,等.MCS-51系列單片機實用接口技術[M].北京:北京航空航天大學出版社,1993:2-30.
[11] 孔祥洪,孟 健,王令群.凌陽16位單片機原理與應用[M].北京:北京航空航天大學出版社,2009:2-17.
[12] 顧 濱,孔祥洪,董昌春,等.凌陽16位單片機實訓教程[M].北京:北京航空航天大學出版社,2009:34-36.
[13] 孔祥洪,顧 濱,董昌春,等.基于SPMC75F2413A的感應電機開環V/F控制[J].實驗室研究與探索,2008(4):31-35.
[14] 孔祥洪,郭陽雪.微機原理與匯編語言的可視化教學[J].計算機教育,2011(12):76-78.
[15] 鄭 峰,王巧芝,陳繪兵,等.51單片機應用系統典型模塊開發大全[M].北京:中國鐵道出版社,2010:273-293.