




版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、西安郵電大學畢業(yè)論文 基于單片機的簡易電子稱 作 者:梁忠濤 院 系:自動化學院 專 業(yè):測控技術與儀器 班 級:測控 1103 指導老師:周有 摘要摘要 此次設計主要是以單片機 at89s52 為核心設計的簡易電子秤。本設計主要分 為傳感器部分、單片機中央處理部分、lcd 顯示部分、鍵盤輸入部分。利用壓力傳感 器采集信號,ds1602 顯示單價和質(zhì)量。輸出信號輸入到中央處理部分 at89s52 的芯 片,通過信號放大和 ad 轉(zhuǎn)換,編程對信號進行處理傳送到 1602 液晶顯示屏顯示相關 數(shù)據(jù),按鍵電路通過按鍵對單價進行設置。本設計結構簡單,具有抗干擾能力強、成 本便宜、可擴展性強等特點。 關
2、鍵詞關鍵詞:單片機 壓力傳感器 液晶顯示 電子秤 topic: hardware design of electronic scale based on single chip microcomputer cai liming 2008926068, automation major abstract this hardware design of electronic scale is mainly based on the 51 series single- chip at89s52 as control core, realizes the basic control function
3、of electronic scale. in the design of the system, in order to make better use of the modular design method, the design of each unit step function module, the hardware of the system can be divided into the smallest system, data acquisition, man-machine interface and power supply system four parts. mi
4、nimum system consists of at89s52 and extension of the external data memory; data acquisition part consists of pressure sensor, signal pre-processing and a / d conversion parts, includes an operational amplifier adc0832; man-machine interface for keyboard input and liquid crystal display, the main us
5、e of matrix keyboard and lcd1602 display, can easily input data and intuitive display value. software design of single-chip c programming language, to achieve the design of the whole control function. the electronic scale can realize the basic function of weighing, weighing range for 0.5-10kg.the wh
6、ole system has the advantages of simple structure, convenient use, complete function, high precision, has the certain development value. keywords:microcontroller pressure sensor liquid crystal display electronic scale 目 錄 第 1 章 引言.1 1.1 選題的目的和意義.1 1.1.1 目的.1 1.1.2 意義.1 1.2 研究現(xiàn)狀綜述.2 第 2 章 系統(tǒng)總體設計 .4 2
7、.1 系統(tǒng)設計要求.4 2.2 系統(tǒng)設計思想.4 2.3 設計要完成的任務.5 第 3 章.系統(tǒng)硬件電路設計.6 3.1 數(shù)據(jù)采集模塊電路的設計 .11 3.2 控制模塊的選型與研究 .6 3.2.1 選擇單片機.6 3.2.2 at89s52 單片機芯片的學習.7 3.3 a/d 轉(zhuǎn)換器 adc0832 與 at89s52 單片機的接口電路.13 3.3.1 adc0832 的介紹.13 3.3.2 adc0832 與單片機接口電路設計.15 3.4 顯示模塊的設計 .16 3.4.1 顯示模塊的選擇與介紹.16 3.4.2 lcd1602 與 at89s52 單片機接口電路的設計.17 3
8、.5 鍵盤電路與 at89s52 單片機接口電路的設計.18 3.5.1 鍵盤與單片機的連接方式選擇.18 3.5.2 單片機對鍵盤的掃描.20 3.5.3 鍵盤接口和鍵輸入軟件中應解決的一個問題.21 第 4 章 系統(tǒng)軟件程序設計 .23 4.1 主程序流程圖: .23 4.2 ad 轉(zhuǎn)換流程圖.24 4.3 液晶顯示流程圖 .25 4.4 單片機對矩陣式鍵盤接口處理過程如下圖所示: .26 4.5 系統(tǒng)原理電路圖 .27 第 5 章 結 論.28 參考文獻.29 致 謝 .30 附錄:軟件程序設計.31 第第 1 章章 引引 言言 1.1 選題的目的和意義選題的目的和意義 如今,電子產(chǎn)品變
9、得越來越豐富,給人們帶來了很多很多的方便,其中電 子秤成了人們生活中不可缺少的一部分。大大小小的市場電子秤能夠完成許多 工作,為人們節(jié)省了時間,提高了工作效率。 電子秤不但能很精確的稱出商品的重量,還能去除皮重,累計所稱物品重 量,輸入物品單價可快速的計算出金額,可以說非常的智能化,而且非常的精 確。由此,顧客在購物的時候非常的放心,商家的效益也提高了,所以有了電 子秤,顧客買的放心,商家也賣的開心了。 而目前市場上電子秤產(chǎn)品的整體水平不高,部分小型企業(yè)產(chǎn)品質(zhì)量差且技 術力量薄弱,設備不全,缺乏產(chǎn)品的開發(fā)能力,產(chǎn)品質(zhì)量在低水平徘徊。因此, 本設計的目的在于有針對性地開發(fā)出一套有實用價值的電子秤
10、系統(tǒng),從技術上 克服上述諸多缺點,改善電子秤系統(tǒng)在應用中的不足之處。本設計的控制功能 包括基本的稱重功能,顯示功能,和計算功能。由于系統(tǒng)資源豐富,還可以方 便的拓展其他應用。 在本次設計中,涉及到傳感器技術,單片機技術,模擬電子技術,數(shù)字電 子技術等的多種學科知識的綜合運用。通過本設計,能提高本專業(yè)各個學科綜 合知識的實際運用能力,提高實際動手能力,提高自身的科學性、系統(tǒng)性、及 全面性的綜合設計素質(zhì)。并且,可以通過此次的畢業(yè)設計,較好的掌握硬件開 發(fā)的工作流程及步驟,學會使用匯編語言、c 語言編寫程序,我相信通過這次 對電子秤控制系統(tǒng)的設計,一定能夠?qū)W到豐富的知識并對電子產(chǎn)品有更深一層 的了解
11、,為將來參加實際工作做好充分的準備。 1.2 研究現(xiàn)狀綜述研究現(xiàn)狀綜述 1.2.1 國內(nèi)發(fā)展情況 50 年代中期電子技術的滲入推動了衡器制造業(yè)的發(fā)展。60 年代初期出現(xiàn) 機電結合式電子衡器以來,經(jīng)過 40 多年的不斷改進與完善,我國電子衡器從最 初的機電結合型發(fā)展到現(xiàn)在的全電子型和數(shù)字智能型。電子衡器制造技術及應 用得到了新發(fā)展。電子稱重技術從靜態(tài)稱重向動態(tài)稱重發(fā)展:計量方法從模擬 測量向數(shù)字測量發(fā)展;測量特點從單參數(shù)測量向多參數(shù)測量發(fā)展,特別是對快 速稱重和動態(tài)稱重的研究與應用。電子稱重技術基本達到國際上 20 世紀 90 年 代中期的水平,少數(shù)產(chǎn)品的技術已處于國際領先水平。國內(nèi)的電子秤市場
12、中, 1009 左右量程的電子秤精度一般為 0.019 即 10mg。在研究方法上,電子稱重系 統(tǒng)的工作原理一般是將作用在承載器上的質(zhì)量或力的大小,通過壓力傳感器轉(zhuǎn)換 為電信號,并通過控制電路來處理該電信號。但就總體而言,我國電子衡器產(chǎn)品 的數(shù)量和質(zhì)量與工業(yè)發(fā)達國家相比還有較大差距,其主要差距是技術與工藝不 夠先進、工藝裝備與測試儀表老化、開發(fā)能力不足、產(chǎn)品的品種規(guī)格較少、功 能不全、穩(wěn)定性和可靠性較差等。 1.2.2 發(fā)展趨勢 通過分析近年來電子衡器產(chǎn)品的發(fā)展情況及國內(nèi)外市場的需求,電子衡器 總的發(fā)展趨勢是小型化、模塊化、集成化、智能化;其技術性能趨向是速率高、 準確度高、穩(wěn)定性高、可靠性高
13、;其功能趨向是稱重計量的控制信息和非控制 信息并重的“智能化”功能;其應用性能趨向于綜合性和組合性。 1.3 論文主要研究內(nèi)容論文主要研究內(nèi)容 本文主要是設計的內(nèi)容是簡易電子秤,它用單片機作為處理核心,信號由壓力傳感器 感受后經(jīng)放大器放大和模數(shù)轉(zhuǎn)換后輸入到單片機處理,同時該電子秤具有 lcd 顯示和鍵盤 輸入。 該電子秤具體實現(xiàn)的功能是能夠測量一定質(zhì)量內(nèi)物體的質(zhì)量,能夠利用鍵盤輸入價格, 具有清零,可以計算總價,并能通過 lcd 直接顯示出來,超過所測重量時能夠報警。 第第 2 2 章章 系統(tǒng)總體設計系統(tǒng)總體設計 2.12.1 系統(tǒng)設計要求系統(tǒng)設計要求 設計系統(tǒng)實現(xiàn)的功能如下: 1) 要求電子
14、秤可稱體重范圍 0.5-10kg; 2) 具有鍵盤輸入; 3) 價格計算功能; 2.22.2 系統(tǒng)設計思想系統(tǒng)設計思想 本設計采用壓力傳感器作信號采集部分,at89s52 做中央處理器,液晶屏 顯示。設計滿足市場需求的實用數(shù)顯電子稱。利用單片機,對壓力傳感器傳來 的信號進行放大和 a/d 轉(zhuǎn)換,誤差修正處理并在液晶上形成質(zhì)量顯示。前端信 號處理時,選用放大、a/d 轉(zhuǎn)換等措施,尤其在顯示方面采用液晶顯示器。這 種方案不僅加強了人機交換的能力,而且滿足設計要求??梢燥@示所稱量的物 體信息相關內(nèi)容。目前單片機技術比較成熟,功能也比較強大,被測信號經(jīng)放 大整形后送入單片機,由單片機對測量信號進行處理
15、并根據(jù)相應的數(shù)據(jù)關系顯 示出被測物體的重量。由于系統(tǒng)需要的按鍵較多,因此要采用 4*4 矩陣鍵盤。 單片機控制適合于功能比較簡單的控制系統(tǒng),而且其具有成本低,功耗低,體積小 算術運算功能強,技術成熟等優(yōu)點。 放大電路 傳感器 a/d 轉(zhuǎn)換器報警電路 主控制器 lcd 顯示 鍵盤輸入 圖 1 系統(tǒng)原理框圖 2 2.3 設計要完成的任務 根據(jù)單片機最小系統(tǒng)、外圍電路的要求和整體設計思路,本設計要做的具 體的工作主要有一下幾個方面: 1)按照初步方案畫出硬件框圖、電路圖及制板。 2)根據(jù)系統(tǒng)設計要求及硬件框圖確定軟件流程圖并編寫相應軟件。 3)焊接電路以及功能電路的軟硬件調(diào)試。 4)系統(tǒng)軟硬件聯(lián)調(diào)。
16、 第第 3 3 章章. .系統(tǒng)硬件電路設計系統(tǒng)硬件電路設計 3.1 數(shù)據(jù)采集模塊電路的設計 數(shù)據(jù)采集模塊電路包括:(1)、壓力傳感器輸出信號的放大電路部分, 壓力傳感器將接收到的壓力信號轉(zhuǎn)變?yōu)殡娦盘栞敵?,放大電路的作用就是將?電信號進行放大處理。(2)、a/d轉(zhuǎn)換器模塊,因為單片機只能接收數(shù)字信號, 而前面輸出的是模擬信號,a/d轉(zhuǎn)換器的作用就是將模擬信號轉(zhuǎn)變?yōu)閿?shù)字信號, 送入單片機進行處理。此外還包括a/d轉(zhuǎn)換器與單片機的接口電路部分。 采用傳感器方案: 電阻應變式傳感器 電阻應變式稱重傳感器是利用電阻應變片變形時其電阻也隨之改變的原理工作的, 根據(jù)傳感器理論可知,設長為 l、截面積為 s
17、、電阻率為 的電阻絲,已知其阻值為: (2-1) l r s 當電阻絲兩端有機械應力 f 時,、l、s 都會發(fā)生變化,從而導致電阻發(fā)生變化。 這種應變片式傳感器是基于材料的電阻應變效應,電阻應變片即可單獨作為傳感器使 用,又能作為敏感元件結合彈性元件構成力學量傳感器。電阻應變片把機械應變信號轉(zhuǎn)換 為r/r 后,由于應變量及相應電阻變化一般都很微小,難以直接精確測量,且不便處理。 因此,要采用轉(zhuǎn)換電路把應變片的r/r 變化轉(zhuǎn)換成電壓或電流變化。其轉(zhuǎn)換電路常用測 量電橋4。如圖 2-2 所示為常見的直流供電的平衡差動測量電橋: r1-r1r2+r2 r4+r4 r3-r3 ein eout 圖 2
18、-2 直流供電的平衡差動測量電橋 圖中,為供橋電源電壓,當初始有時,則電橋輸出電壓或電流為 零,這時電橋處于平衡狀態(tài)。其測量原理:用應變片測量時,將其粘貼在彈性體上。當彈 性體受力變形時,應變片的敏感柵也隨同變形,其電阻值發(fā)生相應變化,通過轉(zhuǎn)換電路轉(zhuǎn) 換為電壓或電流的變化。由于內(nèi)部線路采用惠更斯電橋,當彈性體承受載荷產(chǎn)生變形時, 輸出信號電壓可由下式給出: 24r1r2r3r4 eein ( 24)r1r2r3r4 rr out rr (2-2) 本文的目的是設計一簡易電子秤,最大稱重約為 5 千克,考慮到與其相配置的各種電 路的設計的難易程度和設計性價比,最終選擇了 czaf-6058電阻應
19、變式稱重傳感器,其稱 重規(guī)模為 5kg。 本設計中選用最終方案我們選擇的是ns-th1系列壓力傳感器,額定載 荷10kg,該壓力傳感器均采用全橋式等臂電橋。本設計采用的惠斯登電橋具有 很多優(yōu)點,如可以抑制溫度變化的影響,可以抑制側向力干擾,可以比較方便 的解決稱重傳感器的補償問題等,又因為全橋式等臂電橋的靈敏度最高,各臂 參數(shù)一致,各種干擾的影響容易相互抵消。壓力傳感器實際上是一種將質(zhì)量信 號轉(zhuǎn)變?yōu)榭蓽y量的電信號輸出的裝置4。用傳壓感器首先要考慮傳感器所處的 實際工作環(huán)境,這點對本系統(tǒng)的正確使用傳感器至關重要,它關系到整個系統(tǒng) 能否正常工作以及它的安全和使用壽命,乃至整個衡器的可靠性和安全性。
20、而 傳感器檢測電路的功能是把電阻應變片的電阻變化轉(zhuǎn)變?yōu)殡妷狠敵觥?3.2.控制模塊的選型與研究 3.2.1 選擇單片機 選擇單片機型號的出發(fā)點有以下幾個方面: 1、市場貨源 系統(tǒng)設計者只能在市場上能夠提供的單片機中選擇,特別是作為產(chǎn)品大批量生 產(chǎn)的應用系統(tǒng),所選的單片機型號必須有穩(wěn)定、充足的貨源。 2、單片機性能 應根據(jù)系統(tǒng)的功能要求和各種單片機的性能,選擇最容易實現(xiàn)系統(tǒng)技術指標的 型號,而且能達到較高的性能價格比。單片機性能包括片內(nèi)硬件資源、運行速 度、可靠性、指令系統(tǒng)功能、體積和封裝形式等方面。影響性能價格比的因素 除單片機的性能價格外,還包括硬件和軟件設計的容易程度、相應的工作量大 小,
21、以及開發(fā)工具的性能價格比。 3、研制周期 在研制任務重、時間緊的情況下,還要考慮所選的單片機型號是否熟悉, 是否能馬上著手進行系統(tǒng)的設計。與研制周期有關的另一個重要因素是開發(fā)工 具,性能優(yōu)良的開發(fā)工具能加快系統(tǒng)地研制進程。 at89s 系列單片機是繼 at89c 系列之后推出的功能更強的新產(chǎn)品。at89s 系列與 at89c 系列相比,運算 速度有了較大的提高,它的靜態(tài)工作頻率為 033mhz,片內(nèi)集成有雙數(shù)據(jù)指針 dptr、定時監(jiān)視器(看門狗)、低功耗休閑狀態(tài)及關電方式、關電方式下的中斷 恢復等諸多功能,極大地滿足了各種不同的應用要求。at89s52 單片機是 at89s 系列中的增強型高檔
22、機產(chǎn)品,它片內(nèi)存儲器容量是 at89s51 的一倍,即片內(nèi) 8kb 的 flash 序存儲器和 256b 的 ram。另外,它還增加了一個功能極強的、具 有獨特應用的 16 位定時計數(shù)器等多種功能。在工程應用中 at89s52 有一顯著 的優(yōu)勢:不需要燒寫器,只借助 pc 機的并口輸出和極為簡單的下載電路,便 可將程序通過串行方式寫入單片機。并且下載電路可設計在系統(tǒng)中,可以隨時 修改單片機的軟件而不對硬件做任何改動。 由此,通過對目前主流型號的比較,我們最終選擇了 at89s52 通用的普通單片 機來實現(xiàn)系統(tǒng)設計。 3.2.2 at89s52 單片機芯片的學習 功能特征描述 at89s52 是
23、一種低功耗、高性能 cmos8 位微控制器,具有 8k 在系統(tǒng)可編程 flash 存儲器。使用 atmel 公司高密度非易失性存儲器技術制造,與工業(yè) 80c51 產(chǎn)品指令和引腳完全兼容。片上 flash 允許程序存儲器在系統(tǒng)可編程, 亦適于常規(guī)編程器。在單芯片上,擁有靈巧的 8 位 cpu 和在系統(tǒng)可編程 flash,使得 at89s52 為眾多嵌入式控制應用系統(tǒng)提供高靈活、超有效的解決方 案。at89s52 具有以下標準功能: 8k 字節(jié) flash,256 字節(jié) ram,32 位 i/o 口 線,看門狗定時器,2 個數(shù)據(jù)指針,三個 16 位定時器/計數(shù)器,一個 6 向量 2 級中斷結構,全
24、雙工串行口,片內(nèi)晶振及時鐘電路。另外,at89s52 可降至 0hz 靜態(tài)邏輯操作,支持 2 種軟件可選擇節(jié)電模式。空閑模式下,cpu 停止工 作,允許 ram、定時器/計數(shù)器、串口、中斷繼續(xù)工作。掉電保護方式下,ram 內(nèi)容被保存,振蕩器被凍結,單片機一切工作停止,直到下一個中斷或硬件復 位為止。 引腳功能 vccvcc:電源 gnd:gnd: 接地 p0p0 口口: p0 口是一個 8 位漏極開路的雙向 i/o 口。作為輸出口,每位能驅(qū) 動 8 個 ttl 邏輯電平。對 p0 端口寫“1”時,引腳用作高阻抗輸入。當訪問外 部程序和數(shù)據(jù)存儲器時,p0 口也被作為低 8 位地址/數(shù)據(jù)復用。在這
25、種模式下, p0 具有內(nèi)部上拉電阻。在 flash 編程時,p0 口也用來接收指令字節(jié);在程序校 驗時,輸出指令字節(jié)。程序校驗時,需要外部上拉電阻。 p1p1 口:口:p1 口是一個具有內(nèi)部上拉電阻的 8 位雙向 i/o 口,p1 輸出緩沖 器能驅(qū)動 4 個 ttl 邏輯電平。對 p1 端口寫“1”時,內(nèi)部上拉電阻把端口拉 高,此時可以作為輸入口使用。作為輸入使用時,被外部拉低的引腳由于內(nèi)部 電阻的原因,將輸出電流(iil)。此外,p1.0 和 p1.2 分別作定時器/計數(shù)器 2 的外部計數(shù)輸入(p1.0/t2)和時器/計數(shù)器 2 的觸發(fā)輸入(p1.1/t2ex),具 體如下表所示。在 fla
26、sh 編程和校驗時,p1 口接收低 8 位地址字節(jié)。 表 1: 引腳號引腳號第二功能第二功能 p1.0 t2(定時器/計數(shù)器t2的外部計數(shù)輸入),時鐘輸出 p1.1 t2ex(定時器/計數(shù)器t2的捕捉/重載觸發(fā)信號和方向控 制) p1.5 mosi(在系統(tǒng)編程用) p1.6 miso(在系統(tǒng)編程用) p1.7 sck(在系統(tǒng)編程用) p2p2口:口:p2 口是一個具有內(nèi)部上拉電阻的8 位雙向i/o 口,p2 輸出緩沖器 能驅(qū)動4 個ttl 邏輯電平。對p2 端口寫“1”時,內(nèi)部上拉電阻把端口拉高, 此時可以作為輸入口使用。作為輸入使用時,被外部拉低的引腳由于內(nèi)部電阻 的原因,將輸出電流(iil
27、)。在訪問外部程序存儲器或用16位地址讀取外部數(shù) 據(jù)存儲器(例如執(zhí)行movx dptr)時,p2 口送出高八位地址。在這種應用中, p2 口使用很強的內(nèi)部上拉發(fā)送1。在使用8位地址(如movx ri)訪問外部數(shù)據(jù) 存儲器時,p2口輸出p2鎖存器的內(nèi)容。在flash編程和校驗時,p2口也接收高8 位地址字節(jié)和一些控制信號。 p3p3口:口:p3 口是一個有內(nèi)部上拉電阻的8 位雙向i/o 口,p2 輸出緩沖器能 驅(qū)動4 個ttl 邏輯電平。對p3 端口寫“1”時,內(nèi)部上拉電阻把端口拉高,此 時可以作為輸入口使用。作為輸入使用時,被外部拉低的引腳由于內(nèi)部電阻的 原因,將輸出電流(iil)。p3口亦作
28、為at89s52特殊功能(第二功能)使用, 如下表所示。在flash編程和校驗時,p3口也接收一些控制信號。 表2: 引腳號引腳號第二功能第二功能 p3.0 rxd(串行輸入) p3.1 txd(串行輸出) p3.2 (外部中斷0)int0 p3.3 (外部中斷1)int1 p3.4 t0(定時器0外部輸入) p3.5 t1定時器1外部輸入) p3.6 (外部數(shù)據(jù)存儲器寫選通)wr p3.7 (外部數(shù)據(jù)存儲器寫選通)rd rstrst:復位輸入。晶振工作時,rst腳持續(xù)2 個機器周期高電平將使單片機 復位。看門狗計時完成后,rst 腳輸出96 個晶振周期的高電平。特殊寄存器 auxr(地址8e
29、h)上的disrto位可以使此功能無效。disrto默認狀態(tài)下,復位高電 平有效。 ale/ale/:地址鎖存控制信號(ale)是訪問外部程序存儲器時,鎖存低prog 8 位地址的輸出脈沖。在flash編程時,此引腳()也用作編程輸入脈沖。prog 在一般情況下,ale 以晶振六分之一的固定頻率輸出脈沖,可用來作為外部定 時器或時鐘使用。然而,特別強調(diào),在每次訪問外部數(shù)據(jù)存儲器時,ale脈沖將 會跳過。如果需要,通過將地址為8eh的sfr的第0位置 “1”,ale操作將無效。 這一位置 “1”,ale 僅在執(zhí)行movx 或movc指令時有效。否則,ale 將被微弱 拉高。這個ale 使能標志位
30、(地址為8eh的sfr的第0位)的設置對微控制器處于 外部執(zhí)行模式下無效。 :外部程序存儲器選通信號()是外部程序存儲器選通信號。psenpsen 當at89s52從外部程序存儲器執(zhí)行外部代碼時,在每個機器周期被激活兩psen 次,而在訪問外部數(shù)據(jù)存儲器時,將不被激活。psen /vpp/vpp:訪問外部程序存儲器控制信號。為使能從0000h 到ffffh的外部ea 程序存儲器讀取指令,必須接gnd。為了執(zhí)行內(nèi)部程序指令,應該接eaea vcc。在flash編程期間,也接收12伏vpp電壓。ea xtal1xtal1:振蕩器反相放大器和內(nèi)部時鐘發(fā)生電路的輸入端。 xtal2xtal2:振蕩器反
31、相放大器的輸出端。 at89s52的最小系統(tǒng)電路 at89s52的最小系統(tǒng)電路 at89s52單片機的最小系統(tǒng)由時鐘電路、復位電路 等與單片機構成。單片機的時鐘信號用來提供單片機片內(nèi)各種操作的時間基準, 復位操作則使單片機的片內(nèi)電路初始化,使單片機從一種確定的初態(tài)開始運行。 本次設計使用at89s52單片機的時鐘振蕩功能,因為時鐘電路為單片機提供 時鐘周期,如果沒有時鐘電路,單片機就沒有時鐘周期,就無法執(zhí)行程序代碼, 單片機就無法工作。at89s52中有一個用于構成內(nèi)部震蕩器的高增益反相放大器, 引腳xtal1和xtal2分別是該放大器的輸入和輸出端。這個放大器與作為反饋元 件的片外石英晶體或
32、者陶瓷諧振器一起構成自激振蕩器3。如圖2所示,外接 石英晶體或者陶瓷諧振器以及電容c1,c2接在放大器的反饋電路中構成并聯(lián)諧 振電路。諧振器本身對外接電容c1、c2雖然沒有十分嚴格的要求,但電容容量 的大小會輕微影響振蕩頻率的高低、振蕩器工作的穩(wěn)定性、起振的難易程度以 及溫度的穩(wěn)定性,所以本設計使用石英晶體,每個電容大小為30pf。晶振的振 蕩頻率是1.2mhz12mhz之間,本設計選擇12mhz,因為晶振的頻率越高,則系 統(tǒng)的時鐘頻率也就越高,單片機的運行速度也就越快。 圖2 時鐘振蕩電路 因為很多用戶設計完單片機系統(tǒng),并在調(diào)試的過程中,可能會出現(xiàn)“死機” 或“程序走飛”等現(xiàn)象,所以本設計需
33、要采用復位電路來使單片機復位,來防 止這一現(xiàn)象的發(fā)生,復位電路設計的好壞,將直接影響系統(tǒng)的可靠性。復位電 路通常采用上電自動復位和按鈕復位兩種方式,復位是單片機的初始化操作, 除進入系統(tǒng)的正常初始化之外,當由于程序運行出錯或操作錯誤使系統(tǒng)處于死 鎖狀態(tài)時,為擺脫困境,可以按復位鍵以重新啟動,也可以通過監(jiān)視定時器來 強迫復位。只需給單片機的復位引腳rst加上大于2個機器周期的高電平就可使 單片機復位3,本設計采用的是上電復位電路,其主要特點是簡單,適用于簡 單的電路,做起來還是比較方便的。 本設計采用的上電復位電路如圖3所示,上電復位電路是通過外部復位電路 的電容充電來實現(xiàn)的。當電源接通時只要v
34、cc的上升時間不超過1ms。就可以實 現(xiàn)自動上電復位。本設計采用時鐘頻率為6mhz,電容取22f,電阻取1k。 圖3 上電復位電路 在本設計中,當電源接通后,單片機自動復位,并且在單片機運行期間, 用開關操作也能使單片機復位。單片機的復位操作使單片機進入初始化狀態(tài)。 系統(tǒng)復位對于本系統(tǒng)是執(zhí)行的第一步,使整個控制芯片回到默認的硬件狀 態(tài)下。單片機的復位是由reset引腳來控制的,此引腳與高電平相接超過24個振 蕩周期后,51單片機即進入芯片內(nèi)部復位狀態(tài),而且一直在此狀態(tài)下等待,直 到reset引腳轉(zhuǎn)為低電平后,再檢查ea引腳是高電平或低電平,若為高電平則執(zhí) 行芯片內(nèi)部的程序代碼,若為低電平便會執(zhí)
35、行外部程序。 3.3 a/d 轉(zhuǎn)換器 adc0832 與 at89s52 單片機的接口電路 3.3.1 adc0832 的介紹 adc0832是美國國家半導體公司生產(chǎn)的一種8位分辨率、雙通道a/d轉(zhuǎn)換芯 片。由于它體積小,兼容性強,性價比高而深受單片機愛好者及企業(yè)歡迎,其 目前已經(jīng)有很高的普及率。 adc0832具有以下特點: 8位分辨率; 雙通道a/d轉(zhuǎn)換; 輸入輸出電平與ttl/cmos相兼容; 5v電源供電時輸入電壓在05v之間; 工作頻率為250khz,轉(zhuǎn)換時間為32s; 一般功耗僅為15mw; 8p、14pdip(雙列直插) 、picc多種封裝; 商用級芯片溫寬為0c to +70c
36、?,工業(yè)級芯片溫寬為40 to +85 下面介紹0832的引腳功能: cs 片選使能,低電平芯片使能 ch0 模擬輸入通道0,或作為in+/-使用 ch1 模擬輸入通道1,或作為in+/-使用 gnd 芯片參考0電位(接地) do 數(shù)據(jù)信號輸出,轉(zhuǎn)換數(shù)據(jù)輸出 di 數(shù)據(jù)信號輸入,選擇通道控制 clk 芯片時鐘輸入 vcc/ref 電源輸入及參考電壓輸入(復用) 圖5 adc0832芯片 adc0832 為 8 位分辨率 a/d 轉(zhuǎn)換芯片,其最高分辨可達 256 級,可以適應 一般的模擬量轉(zhuǎn)換要求。其內(nèi)部電源輸入與參考電壓的復用,使得芯片的模 擬電壓輸入在 05v 之間。芯片轉(zhuǎn)換時間僅為 32s
37、,據(jù)有雙數(shù)據(jù)輸出可作為 數(shù)據(jù)校驗,以減少數(shù)據(jù)誤差,轉(zhuǎn)換速度快且穩(wěn)定性能強。獨立的芯片使能輸 入,使多器件掛接和處理器控制變的更加方便。通過 di 數(shù)據(jù)輸入端,可以輕 易的實現(xiàn)通道功能的選擇。這是我選擇 adc0832 的主要原因。 3.3.2 adc0832 與單片機接口電路設計 adc0832 的 cs 作為選通信號,在時序圖中可以看到,以 cs 置為低電平開 始,一直到置為高電平結束。clk 提供時鐘信號,我們要注意看 clk 的信號的 箭頭指向,向上為上升沿有效,向下為下降沿有效。di、do 作為數(shù)據(jù)端口。 當 adc0832 未工作時其 cs 輸入端應為高電平,此時芯片禁用,clk 和
38、 do/di 的電平可任意。當要進行 a/d 轉(zhuǎn)換時,須先將 cs 使能端置于低電平并且保持 低電平直到轉(zhuǎn)換完全結束。此時芯片開始轉(zhuǎn)換工作,同時由處理器向芯片時 鐘輸入端 clk 輸入時鐘脈沖,do/di 端則使用 di 端輸入通道功能選擇的數(shù)據(jù) 信號。在第 1 個時鐘脈沖的下沉之前 di 端必須是高電平,表示啟始信號。在 第 2、3 個脈沖下沉之前 di 端應輸入 2 位數(shù)據(jù)(sgl、odd)用于選擇通道功 能,當此 2 位數(shù)據(jù)為“1”、“0”時,只對 ch0 進行單通道轉(zhuǎn)換。當 2 位數(shù) 據(jù)為“1”、“1”時,只對 ch1 進行單通道轉(zhuǎn)換。當 2 位數(shù)據(jù)為“0”、“0 ”時,將 ch0 作
39、為正輸入端 in+,ch1 作為負輸入端 in-進行輸入。當 2 位數(shù) 據(jù)為“0”、“1”時,將 ch0 作為負輸入端 in-,ch1 作為正輸入端 in+進行 輸入。 在完成輸入啟動位、通道選擇之后,就可以開始讀出數(shù)據(jù),轉(zhuǎn)換得到的 數(shù)據(jù)會被送出二次,一次高位在前傳送,一次低位在前傳送,連續(xù)送出。在 程序讀取二個數(shù)據(jù)后,我們可以加上檢驗來看看數(shù)據(jù)是否被正確讀取。adc08 32 與單片機的接口應為 4 條數(shù)據(jù)線,分別是 cs、clk、do、di。但由于 do 端 與 di 端在通信時并未同時有效并與單片機的接口是雙向的,所以電路設計時 可以將 do 和 di 并聯(lián)在一根數(shù)據(jù)線上使用。 圖6 a
40、dc0832與at89s52的接口電路 3.4 顯示模塊的設計 3.4.1 顯示模塊的選擇與介紹 本設計所設計的電子秤系統(tǒng)需要顯示一些數(shù)據(jù),例如商品的重量,單價及 其總價等等,所以本設計得采用顯示模塊達到其功能指標,數(shù)據(jù)顯示部分可以 有以下兩種方案供選擇。的組成有以下兩種方案可供選擇:一是 led 數(shù)碼管顯 示,二是采用可以設置顯示重量,單價,金額等的 lcd,它具有低功耗、可視面 大及抗干擾能力強等功能,其顯示技術已得到廣泛應用。所以本設計采用 lcd1602,lcd1602 的主要技術參數(shù):顯示容量:162 個字符,芯片工作電壓: 4.55.5v,電流:2.0ma(5.0v),模塊最佳工作
41、電壓:5.0v,字符尺寸: 2.954.35(wh)mm。其引腳圖如圖 6 所示。 圖 7 lcd1602 引腳圖 lcd 顯示器的工作原理:液晶顯示器的主要材料是液態(tài)晶體。它在特定的 溫度范圍內(nèi),既具有液體的流動性,又具有晶體的某些光學特性,其透明度和 顏色隨電場、磁場、光照度等外界條件變化而變化。因此,用液晶做成顯示器 件,就可以把上訴外界條件的變化反映出來從而形成現(xiàn)實的效果。液晶顯示模 塊具有體積小、功耗低、顯示內(nèi)容豐富等特點,現(xiàn)在字符型液晶顯示模塊已經(jīng) 是單片機應用設計中最常用的信息顯示器件。 3.4.2 lcd1602 與 at89s52 單片機接口電路的設計 本設計中的 lcd 液
42、晶顯示模塊采用 lcd1602 型號,具有很低的功耗,正常 工作時電流僅 2.0ma/5.0v。通過編程實現(xiàn)自動關閉屏幕能夠更有效的降低功 耗。lcd1602 分兩行顯示,每行可顯示多達 16 個字符。lcd1602 液晶模塊內(nèi)部 的字符發(fā)生存儲器(cgrom)已經(jīng)存儲了 160 個不同的點陣字符圖形,通過內(nèi) 部指令可實現(xiàn)對其顯示多樣的控制,并且還能利用空余的空間自定義字符。這 些都比較符合本系統(tǒng)的要求。本設計中 at89s52 的 p0.0 p0.7 口分別與 lcd1602 的 db0 db7 口相接作為數(shù)據(jù)線,每個口接上拉電阻后接+5v 電源,要 求從電源高電平引出的電阻接到輸出。上拉電
43、阻同時也起穩(wěn)定信號的作用,如 果太小那么功耗比較大,太大的話就起不到上拉的作用了,所以本設計選擇上 拉電阻阻值為 1k。系統(tǒng)中的 vss 和 e1 接地電源,vdd 和 e2 接+5v 電源,e 端 為使能端,當 e 端由高電平跳變成低電平時,液晶模塊執(zhí)行命令,rs 為寄存 器選擇,rw 為讀寫信號線,高電平時進行讀操作,低電平時進行寫操作。當 rs 和 rw 共同為低電平時可以寫入指令或者顯示地址,當 rs 為低電平 rw 為高 電平時可以讀忙信號,當 rs 為高電平 rw 為低電平時可以寫入數(shù)據(jù)。lcd1602 與 at89s52 的接線圖如圖 7 所示。 圖 8 lcd1602 與 at
44、89s52 的接線圖 3.5 鍵盤電路與 at89s52 單片機接口電路的設計 3.5.1 鍵盤與單片機的連接方式選擇 通常,鍵盤有編碼和非編碼兩種。編碼鍵盤通過硬件電路產(chǎn)生被按按鍵的 鍵碼和一個選通脈沖。選通脈沖可作為 cpu 的中斷請求信號。這種鍵盤使用方 便,所需程序簡單,但硬件電路復雜,常不被單片機采用。 非編碼鍵盤按組成結構又可分為獨立式鍵盤和矩陣式鍵盤。獨立式鍵盤的工作 過程與矩陣式鍵盤類似,無論是硬件結構還是軟件設計都比較簡單。 s4s4 s3s3 s2s2 p1.4p1.4 p1.5p1.5 p1.6p1.6 p1.7p1.7 89s5289s52 +5v+5v 圖9 獨立式鍵
45、盤接口 s1s1 獨立式鍵盤接口特點:每個按鍵占用一條 i/o 線,當按鍵數(shù)量較多時,i/o 口利用率不高,但程序編制簡單。適用于所需按鍵較少的場合。 本設計中需要預置單價,所以需要采用鍵盤電路模塊來預置單價,本設計 中鍵盤電路模塊采用鍵盤專用芯片 74c922 及 16 個按鍵矩陣組。在本設計的電 子秤系統(tǒng)中,帶有 16 個按鍵矩陣組設置,其中 09 數(shù)字鍵用于輸入單價,還 有確認,點,刪除和清零的功能,確認用于確認出入的單價,點是用來輸入小 數(shù)點,刪除用于刪除錯誤的輸入,當計算完一種物品的價格后清除所有的結果, 這是用到清零鍵,此外還設有 2 個備用鍵。本設計采用專用鍵盤管理芯片 74c9
46、22。74c922 為 cmos 工藝技術制造,工作電壓為 315v,“二鍵鎖定”功 能,編碼輸出為三芯輸出,可直接與微處理器數(shù)據(jù)線相連,內(nèi)部振蕩器完成 44 矩形鍵盤掃描。鍵盤電路模塊與 at89s52 單片機得接口電路如圖 9 所示。 圖 10 矩陣鍵盤電路模塊與 at89s52 單片機接口電路圖 矩陣鍵盤的特點:電路連接復雜,但提高了 i/o 口利用率,軟件編程較復 雜。適用于需使用大量按鍵的場合。 3.5.2 單片機對鍵盤的掃描 在單片機的運行過程中,何時進行鍵盤掃描和處理,可有下列三種情況: 1.查詢方式:單片機通過調(diào)用鍵盤掃描子程序,查詢有無鍵按下。 2.定時掃描方式:每隔一定時間
47、執(zhí)行一次鍵盤掃描子程序。 3.中斷方式:每當有鍵閉合時才向 cpu 發(fā)出中斷請求,中斷服務時進行鍵 盤掃描和處理。 單片機通過鍵盤掃描判斷有無鍵按下,當掃描到有鍵按下時再進行下一步 處理,否則退出鍵盤處理程序。獨立式鍵盤掃描只需讀取 io 口狀態(tài),而矩陣式 鍵盤描通常有兩種實現(xiàn)方法:逐行掃描法和線反轉(zhuǎn)法。 逐行掃描法。 依次從第一至最末行線上發(fā)出低電平信號, 如果該行線所連接的鍵沒有按 下的話, 則列線所接的端口得到的是全“1”信號, 如果有鍵按下的話, 則得到 非全“1”信號。 線反轉(zhuǎn)法。 線反轉(zhuǎn)法也是識別閉合鍵的一種常用方法, 該法比行掃描速度快, 但在硬 件上要求行線與列線外接上拉電阻。
48、先將行線作為輸出線, 列線作為輸入線, 行線輸出全“0”信號, 讀入列線的值, 那么在閉合鍵所在的列線上的值必為 0;然后從列線輸出全“0”信號,再讀取行線的輸入值,閉合鍵所在的行線值 必為 0。這樣,當一個鍵被按下時, 必定可讀到一對唯一的行列值。再由這一對 行列值可以求出閉合鍵所在的位置。 3.5.3 鍵盤接口和鍵輸入軟件中應解決的一個問題 鍵盤接口和鍵輸入軟件中應注意消抖。 由于按鍵按下時的機械動作,在按鍵被按下或松開的瞬間,其輸出電壓會 產(chǎn)生波動,稱為鍵的抖動。 鍵穩(wěn)定 鍵按下 后沿抖動前沿抖動 圖11 鍵合斷時的電壓抖動 為確保每按一次鍵單片機只進行一次處理,使鍵盤可靠地工作,必須消
49、除 按鍵抖動。消抖方法有硬件消抖和軟件延時兩種。 硬件消抖法:就是在鍵盤中附加去抖動電路,從根上消除抖動產(chǎn)生的可能 性。 右圖所示電路實際上是由 r-s 觸發(fā)器構成的單脈沖電路。當按 鈕開關按下時 q 端輸出低電平,當開關松開時 q 端恢復高電平,即輸出一 個負脈沖,以此消除抖動。 q q 圖12 硬件去抖動電路 +5v sbit s=acc7; sbit rs=p26; sbit e=p27;/時能端 sbit rw=p25;/1602 讀寫控制端 sbit di=p20;/p12;/ad0832 數(shù)據(jù) sbit adcclk=p21;/p11;/ad0832 時鐘 sbit adccs=p
50、22;/p10;/ad0832 片選 /*/ sbit p1=p16;/單價輸入 sbit p2=p17;/確定 /*變量定義*/ uint g=-1;/輸入單價時 用來確定輸入位數(shù) uint k2;/鍵盤返回值 uint biao;/輸入單價標志位 uchar dd;/從 ad 讀出的值 uint i; /*數(shù)組定義*/ /uchar code qw=1,0,0;/ad0832 模式選擇 uint array6=0 x00,0 x00,0 x00,0 x00,0 x00;/存儲數(shù)據(jù) /*時鐘初始化*/ uchar code tad=q: 00.0kg ; uchar code tad1=up
51、:00.0 tp:000.0; /*延時*/ void delay(uchar x) uint a,b; for(a=x;a0;a-) for(b=110;b0;b-); /*1602*/ void write_date(uchar date)/寫數(shù)據(jù) rs=1; p0=date; delay(5); e=1; delay(5); e=0; void write_com(uchar c)/寫指令 rs=0; p0=c; delay(5); e=1; delay(5); e=0; /*1602 初始化*/ void init1602() uint num; rw=0; e=0; /*cs=1;
52、clk=0; */ write_com(0 x38); write_com(0 x0c); write_com(0 x06); write_com(0 x01); write_com(0 x80); for(num=0;num16;num+) write_date(tadnum); delay(1); write_com(0 x80+0 x40); for(num=0;num16;num+) write_date(tad1num); delay(1); /*/ /* ad0832*/ /*/ uint du(uint ch) uint i,test,adval,dat; adval=0; te
53、st=0; adccs=0; /選通 adc0832 _nop_(); /延時 adcclk=1;/第一個脈沖的上升沿 _nop_(); /延時 di=1; /第一個脈沖下降沿之前 adc0832 轉(zhuǎn)換啟動信號 adcclk=0;/第一個脈沖的下降沿 _nop_(); /延時 adcclk=1;/第二個脈沖的上升沿 _nop_(); /延時 if(ch=0)/選通 ch0 通道 di=1;/第二個脈沖下降之前送人通道選擇第二位 adcclk=0;/第二個下降沿 _nop_(); adcclk=1;/第三個脈沖上升沿 _nop_(); di=0; /第三個脈沖下降沿之前送入通道選擇第 3 位 a
54、dcclk=0;/第三個脈沖的下降沿 _nop_(); adcclk=1;/開始第四個脈沖 _nop_(); else /選通 ch1 通道 di=1; /第二個脈沖下降沿之前送通道選擇的第一位 adcclk=0; /第二個下降沿 _nop_(); adcclk=1; /第三個脈沖的上升沿 _nop_(); di=1;/第三個脈沖的下降沿之前送通道通道選擇的第二位 adcclk=0;/第三個脈沖的下降沿 _nop_(); adcclk=1;/開始第四個脈沖 _nop_(); adcclk=0;/第四個脈沖的下降沿 di=1; for(i=0;i8;i+)/讀取前八位 _nop_(); adval=1; adcclk=1; _nop_(); adcclk=0; if(di) adval|=0 x01; else adval|=0 x00; for(i=0;i=1; if(di) test|=0 x80; else test|=0 x00; _nop_(); adcclk=1; _n
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 藥學專題討論題目試題及答案
- 藥師協(xié)同治療研究試題及答案
- 激光設備設計中的系統(tǒng)思維考題試題及答案
- 裝配鉗工試題庫及答案
- 西醫(yī)臨床就業(yè)市場分析試題及答案
- 藥物不良反應的評估試題及答案
- 母豬護理知識考核試題及答案
- 提升衛(wèi)生管理理論知識試題及答案
- 藥師日常工作重點試題及答案
- 激光應用中環(huán)保標準的研究試題及答案
- 部編版語文四年級下冊第四單元課外同步閱讀練習及答案(兩篇)
- 2024年4月自考00158資產(chǎn)評估試題及答案含評分標準
- 2024年陜西秦農(nóng)農(nóng)村商業(yè)銀行股份有限公司招聘筆試參考題庫含答案解析
- 工地圖文廣告清單及報價(2家)
- 冠狀動脈造影健康宣教
- 碳酸鹽巖的成巖作用課件
- 消防內(nèi)務條令全文文檔
- 全國優(yōu)質(zhì)課一等獎初中音樂《姹紫嫣紅》課件
- 科倫員工手冊
- 學校食堂飲食保障供餐應急預案
- 《傳統(tǒng)紋樣》課程標準
評論
0/150
提交評論