基于單片機的超市電子秤設計_第1頁
基于單片機的超市電子秤設計_第2頁
基于單片機的超市電子秤設計_第3頁
基于單片機的超市電子秤設計_第4頁
基于單片機的超市電子秤設計_第5頁
已閱讀5頁,還剩88頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領

文檔簡介

1、XX大學學士學位論文緒 論 設計背景在科技迅速發(fā)展的21世紀,電子技術(shù)作為其中一個非常亮眼的部分在近年來發(fā)展迅速并廣泛應用于多個行業(yè)。隨著電子技術(shù)的快速發(fā)展,各種電子元器件的不斷更新?lián)Q代以及許多轉(zhuǎn)換電路的推出,電子技術(shù)在世界發(fā)展中越來越突出,人們的生活已經(jīng)離不開電子產(chǎn)品。電子產(chǎn)品具有廣闊的發(fā)展前景。從古至今,稱量技術(shù)的應用和精度都受到了人們的高度重視,稱量技術(shù)的發(fā)展在很大程度上影響到了農(nóng)業(yè),工業(yè)甚至是科學技術(shù)的發(fā)展。對于稱量工具,它不僅是一個簡單的提供重量數(shù)據(jù)的儀器,更是在科學研究領域、工業(yè)生產(chǎn)領域以及日常生活中的一個重要部分,它的發(fā)展對于自動化領域的發(fā)展有著不可忽視的作用。因為稱量儀器起到了

2、精確控制生產(chǎn),減少能源消耗,降低作業(yè)時間和作業(yè)難度的作用,提高了產(chǎn)品的質(zhì)量,改善了企業(yè)管理和效益。稱重裝置在國民生產(chǎn)的許多領域均有應用,獲得了明顯的經(jīng)濟和科技效益。電子秤作為稱量工具的一種,是一種新型的高端的儀器儀表,相比傳統(tǒng)的臺秤和桿秤,它的體積更小,精度更高,并且使用方便,正因為有這些優(yōu)點,它現(xiàn)在在我們的日常生活中已經(jīng)應用的非常普遍,它可以工作在各種環(huán)境下,可實現(xiàn)重量數(shù)字化顯示,并可遠程傳輸重量信號,在與計算機聯(lián)網(wǎng)后實現(xiàn)生產(chǎn)過程自動化,從而提高生產(chǎn)效率。電子秤整個系統(tǒng)的實現(xiàn)首先是通過壓力傳感器來檢測被測物體的壓力同時將其轉(zhuǎn)換為電壓信號,由于獲取的電信號的變化非常小,現(xiàn)在常見的處理方法是在稱

3、重的前端加上一個放大的裝置,而在本次系統(tǒng)設計中,采用24位A/D轉(zhuǎn)換芯片HX711,在收集到傳感器的信號后進行A/D轉(zhuǎn)換輸出數(shù)字信號給單片機,同時可以通過矩陣鍵盤手動輸入物品單價。將算法寫入單片機后進行數(shù)字處理得出結(jié)果后驅(qū)動顯示模塊顯示物品重量,單價和總價。按照系統(tǒng)設計的基本要求,整個系統(tǒng)有三部分組成,即數(shù)據(jù)采集傳輸轉(zhuǎn)換部分,控制處理部分,顯示驅(qū)動部分。在擴展功能方面,本次設計加入了超重報警部分,由于是小型超市電子秤設計,此次的電子秤額定稱重為5kg,在被測物體超重時,電子秤會有蜂鳴器發(fā)出報警以示超重。 國內(nèi)外研究現(xiàn)狀單片機的產(chǎn)生是在20世紀的70年代,通過不斷發(fā)展現(xiàn)在幾乎應用到了各個領域,可

4、以說現(xiàn)在它已經(jīng)成為了一種相當成熟的技術(shù)。隨著電子技術(shù)的發(fā)展以及各種電子元件的推陳出新,單片機技術(shù)的發(fā)展趨向于小型化、智能化、多元化,在線仿真和各種開發(fā)工具也推動了單片機的發(fā)展,伴隨著信息產(chǎn)業(yè)的逐漸發(fā)展,在嵌入式領域單片機的應用比較迎來越來越廣闊的發(fā)展空間。目前國內(nèi)以Intel公司推出的8位單片機8048/8051應用較多,此外還有Motorola公司和Philipes等也有諸多應用,高性能的機型成為時代的主流。在未來,隨著技術(shù)的進步和人們的需求,單片機將會重點提高性能,采取更先進的工藝,實現(xiàn)穩(wěn)定控制,高速運行,穩(wěn)定工作。稱量自古以來就飽受國家和人民的重視,在過去,杠桿秤、盤秤等作為主要稱量工具

5、,存在著諸如精度不夠準確、誤差大、效率低等一系列問題和弊端。隨著電子衡器的發(fā)展,稱量手段也越來越多樣化,電子秤作為一種高精度,使用方便的稱量工具在日常生活中的使用已經(jīng)十分普遍。目前國內(nèi)的電子秤大概類型有:機電一體化臺秤、基于單片機的電子秤、基于DSP的電子秤、以及國外有基于CCD(Charge Coupled Device,電荷耦合器件)的電子秤等。從國內(nèi)引入單片機開始,以單片機作為核心控制器的電子秤逐漸發(fā)展起來,這種電子秤精度高、操作簡單、使用方便、快捷,頗受人們的喜愛。目前,基于單片機的電子秤在市場上的使用逐漸成為主流,并且在不斷進步和發(fā)展。本系統(tǒng)的設計在綜合考慮實用性和發(fā)展情況后決定使用

6、單片機作為核心控制器來設計電子秤。 系統(tǒng)需求分析與總體設計本次任務為小型超市電子秤設計,應實現(xiàn)的功能包括:重量顯示、單價顯示、總價顯示,擴展功能為超重報警。在實現(xiàn)這些功能的同時應兼顧準確性、快速性、小型化、操作簡單、方便實用等優(yōu)點。以至于在實際生活中能多次使用,長期使用,并且能夠準確報警防止設備損壞。單片機的優(yōu)點眾多,比較突出的有體積小、結(jié)構(gòu)簡單、使用方便等等,在使用中可以實現(xiàn)模塊化,利用其處理速度快和控制能力強以及可靠性高的特點可以實現(xiàn)多種多樣的控制,因此單片機在人們生活中的應用以及越來越普遍。采用單片機可以實現(xiàn)諸多功能而且簡便實用,被測物體可以采用壓力傳感器獲取電信號后再轉(zhuǎn)換為數(shù)字信號,單

7、價可通過矩陣鍵盤人工輸入,搭配驅(qū)動顯示模塊可組成人機交互部分。整個系統(tǒng)在理論上可以實現(xiàn)所要求的基本和拓展功能,并且操作簡單,實用性高。根據(jù)需求分析,選取單片機作為硬件電路的核心控制器,用壓力傳感器采集被測物體的電壓力信號,再經(jīng)過A/D轉(zhuǎn)換部分將數(shù)字量輸入到單片機,同時配備矩陣鍵盤,用戶可手動輸入價格。單片機作為系統(tǒng)的樞紐,在處理完兩部分信息后驅(qū)動顯示模塊,顯示物品的單機、重量以及總價。同時本次設計電子秤量程為5KG,在超重后單片機會驅(qū)動報警電路,使蜂鳴器報警。根據(jù)以上思路設計系統(tǒng)的結(jié)構(gòu)圖如圖1.1所示。報警電路LCD顯示矩陣鍵盤A/D轉(zhuǎn)換 壓力傳感器 報警電路LCD顯示矩陣鍵盤A/D轉(zhuǎn)換 壓力

8、傳感器 單片機最小系統(tǒng)單片機最小系統(tǒng)圖1.1系統(tǒng)總體結(jié)構(gòu)圖如圖所示本系統(tǒng)包括:壓力檢測與數(shù)模轉(zhuǎn)換部分、單片機最小系統(tǒng)、矩陣鍵盤模塊電路、顯示驅(qū)動模塊電路、報警模塊電路。其中數(shù)據(jù)采集與轉(zhuǎn)換部分用到壓力傳感器和HX711A/D轉(zhuǎn)換芯片,單片機最小系統(tǒng)包括:89C52單片機、晶振電路、上電復位電路,顯示電路模塊用的是LCD1602液晶顯示屏,報警電路采用蜂鳴器來實現(xiàn)有聲報警。電子秤稱重的實現(xiàn)首先是壓力傳感器將采集到的模擬信號輸入到A/D轉(zhuǎn)換芯片,經(jīng)過轉(zhuǎn)換后將數(shù)字信號輸送到控制電路單片機中,單片機對得到的數(shù)字信號進行分析判斷,如果超過了量程則直接驅(qū)動報警電路產(chǎn)生蜂鳴器報警。如果沒有超過量程則單片機會驅(qū)

9、動顯示電路顯示出物品的重量。由于壓力傳感器采集到的電信號變化非常微小,一般采用串聯(lián)放大裝置,本系統(tǒng)采用24位A/D轉(zhuǎn)換芯片,減小了硬件設計的難度,節(jié)約了成本。本系統(tǒng)具有人機交互顯示模塊,可通過手動輸入單價并自動得出總價,此部分對軟件編程的要求比較高,大部分功能需通過算法來實現(xiàn)。由于是小型超市電子秤,本系統(tǒng)設計量程為0-5KG,在超重后會產(chǎn)生蜂鳴器報警現(xiàn)象,使電子秤更加人性化和智能化。系統(tǒng)元器件選型本章內(nèi)容主要介紹單片機、壓力傳感器、A/D轉(zhuǎn)換芯片、顯示器的選型以及所選器件的主要特點。2.1單片機選型為了保證系統(tǒng)可以穩(wěn)定工作,首要考慮的因素就是單片機的選型,因為如果選擇得不合適,就會嚴重影響單片

10、機控制系統(tǒng)的正常運行,甚至無法達到預先設計的功能。目前市場上常用到的單片機有以下幾類:1:51系列單片機,其中包括:Atmel公司生產(chǎn)的AT89CXX系列、AT89SXX系列以及AT89C20系列等,還有STC公司生產(chǎn)的51系列單片機。2:AVR系列的單片機。3:PIC系列的單片機包括8位、16位和32位。4:NEC單片機。在單片機選型上應重點注意以下問題:1、技術(shù)性,所選單片機應該能滿足在所要求的技術(shù)指標下穩(wěn)定運行。2、實用性,單片機的運行不是一時的,應該能滿足長期穩(wěn)定的運行。3、可開發(fā)性,選用的單片機應滿足開發(fā)手段,例如程序開發(fā),軟件仿真等。同時還能反復開發(fā)使用。在滿足以上這些基本要求的同

11、時還要兼顧考慮到體積小、結(jié)構(gòu)簡單、經(jīng)濟實用等優(yōu)點。在以上的單片機型號中AT89C52系列的單片機具有以下特點:寬電壓:5.5-3.8v;低功耗設計:空閑模式,掉電模式;033MHz的時鐘頻率;可以反復擦洗的8KB內(nèi)存的程序存儲器;硬件看門狗(WDT);高速SPI通信端口;全雙工異步串行口,兼容普通8051的串口;32個可編程輸入/輸出引腳;6個終端源,2級優(yōu)先級;2個數(shù)據(jù)指針 參考以上功能,在理論上采用AT89C52單片機可以滿足系統(tǒng)需求,且能穩(wěn)定可靠運行。AT89C52單片機有40個引腳,其中兩個作為電源引腳,兩個作為時鐘引腳連接到外部的晶振電路,32個輸入輸出引腳,此外還有控制引腳和電源復

12、用引腳。AT89C52單片機的引腳圖如圖2.1所示。圖2.1 單片機引腳圖壓力傳感器選型壓力傳感器是有源傳感器中的一種,它的工作原理是選取的電阻材料在受到壓力的時候其阻值會發(fā)生相應變化,從而在特定的表面會產(chǎn)生電荷,在輸出端會產(chǎn)生微弱的電壓變化,即在接受到外部壓力后會產(chǎn)生適當形變,然后產(chǎn)生微弱的電信號。電阻應變片式壓力傳感器在近些年來被普遍采用,它是利用某些材料在機械力的作用下會發(fā)生一定的形變從而其阻值也會產(chǎn)生相應的變化。利用這個原理可以檢測到有電壓的變化,然后通過轉(zhuǎn)換可以得出被測物體的壓力大小,但其電壓變化非常微小,常常難以精確的檢測出來。本系統(tǒng)采用四片電阻應變片組成一個電橋電路,對檢測微弱電

13、壓信號的能力有了很大的提升,系統(tǒng)的壓力傳感器輸出在0-20MV之間,通過電橋電路實施等效放大,從而提高了系統(tǒng)的稱重可實現(xiàn)性和稱重精度。根據(jù)以上介紹可以總結(jié)出應變片式傳感器有如下特點:寬大的測量范圍,適用于多種傳感器;靈敏度高,分辨力好,精度高;使用方便,可以遠距離傳輸;結(jié)構(gòu)小,對環(huán)境適應性強,頻率響應好。現(xiàn)在市場的主流應變片式壓力傳感器的型號為:PE型、BSH型、MTB型、Z6FD型、HL型等。其中HL型壓力傳感器具有體積小、反應靈敏、精度高的優(yōu)點,再結(jié)合本次設計的電子秤量程為0-5KG,滿量程誤差不超過0.005KG,所以選擇壓力傳感器的型號為HL-8,其量程為5KG,精度為0.1% ,可以

14、滿足本次系統(tǒng)設計的精度要求。2.3 顯示器選型現(xiàn)在市場上使用較多的顯示屏幕為數(shù)碼管顯示和LCD液晶顯示,對于這兩種顯示方式,系統(tǒng)在選擇前進行了分析比較。數(shù)碼管是利用發(fā)光二極管組成的半導體發(fā)光器件,按能顯示數(shù)字“8”的個數(shù)可以將其分為1位、2位、4位等數(shù)碼管。數(shù)碼管所顯示的信息非常優(yōu)秀而且顏色比較單一,若要顯示多段信息則使用多段數(shù)碼管進行級聯(lián),那樣會使硬件電路連接變得復雜并且增加成本,并且有可能導致顯示不清和閃爍的現(xiàn)象。對比數(shù)碼管顯示,液晶顯示器的優(yōu)點非常明顯,首先液晶顯示器工作穩(wěn)定,亮度可通過電阻調(diào)節(jié)。其采用的材料是平面玻璃,在較小的面積上可以實現(xiàn)高分辨率,字符顯示可以變得非常細膩。作為信息時

15、代的產(chǎn)物,隨著工藝的不斷提高,液晶顯示器在電子技術(shù)的領域已經(jīng)越來越廣泛?,F(xiàn)在市場上使用較多的液晶顯示器為LCD1602液晶顯示器,LCD1602液晶顯示器的顯示原理是采用點陣字符型顯示,可以顯示的內(nèi)容包括:阿拉伯數(shù)字,大小寫字母等,顯示功能強大,顯示亮度具有調(diào)節(jié)功能。各個字符可以通過8位二進制的數(shù)字來控制,通過改變高4位和低4位的數(shù)值來控制顯示的地址和內(nèi)容。LCD1602液晶顯示器有16個引腳,具體的引腳功能如下介紹:P1口和P2口為顯示器的電源引腳;VO口為模擬電源,RS口為寄存器選擇引腳,RW為讀寫選擇口,E腳為使能端;P7P14腳為8個雙向輸入通道;15腳和16腳為背光電源叫。根據(jù)以上特

16、點,使用液晶顯示屏LCD1602功能更全,顯示效果更好。當然,整個系統(tǒng)的成本也會略高。LCD1602液晶顯示器引腳圖如圖2.2所示。圖2.2 LCD16022.4 A/D轉(zhuǎn)換芯片選型在工程上,在選擇A/D轉(zhuǎn)換芯片的時候往往會考慮以下要素:精度、速度、數(shù)字接口方式,模擬信號類型等。目前,市場上主要用到的A/D轉(zhuǎn)換芯片的類型有TLV0831芯片、ADS820芯片、ADC0809芯片、HX711芯片等。本系統(tǒng)在稱重時要求實時顯示物品重量,轉(zhuǎn)換頻率高,同時此次設計對稱重的精度要求非常高,而傳統(tǒng)的積分型和逐次比較型A/D轉(zhuǎn)換芯片不能達到這些要求。HX711A/D轉(zhuǎn)換模塊集成度高,整個模塊內(nèi)不僅含有HX7

17、11芯片還包括穩(wěn)壓電源,時鐘電路等,在硬件電路焊接時非常方便。整個模塊有4個輸出,分別為電源線和地線,以及數(shù)字信號輸出和時鐘信號輸出。HX711芯片16個引腳的定義為:P1口為穩(wěn)壓電路電源,P2口為穩(wěn)壓電路控制輸出,P3口為模擬電源,P4口為穩(wěn)壓電路控制輸入,P5口為模擬地,P6口為參考電源輸出端,P7口為通道A負輸入端,P8口為通道A正輸入端,P9口為通道B負輸入端,P10為通道B正輸入端,P11口斷電與串口時鐘輸入端,P12口為串口數(shù)據(jù)輸出端,P13口為晶振輸入端,P14為外部時鐘或晶振輸入端,P15口為輸出數(shù)據(jù)速率控制輸入端,P16口為數(shù)字電源端。HX711芯片引腳圖如圖2.3所示。圖2

18、.3 HX711引腳系統(tǒng)硬件電路設計本章內(nèi)容主要介紹系統(tǒng)主電路以及各部分子電路的設計,主要包括:系統(tǒng)電源電路模塊、單片機控制電路模塊、顯示電路模塊、鍵盤電路模塊以及報警電路模塊。3.1 系統(tǒng)電源電路此次設計中,AT89C52單片機和HX711芯片以及液晶顯示屏均需要5V電壓,所以系統(tǒng)只有采用5V的電源供電,才能保證整個系統(tǒng)穩(wěn)定可靠的工作。為了方便調(diào)試,系統(tǒng)采用兩種電源接口供電方式,既有USB接口供電方式又有外置電源供電方式。直接向整個系統(tǒng)供給5V的直流穩(wěn)壓電源。同時,為方便使用,串聯(lián)自鎖開關(guān)后再給整個系統(tǒng)供電。系統(tǒng)電源電路設計如圖3.1所示。圖3.1 電源電路圖在上圖中,由電源開關(guān)引出的VCC

19、端接各個芯片的電源端給整個系統(tǒng)供電,開關(guān)的輸入端直接接外部5V直流穩(wěn)壓電源。3.2 單片機控制電路設計單片機控制電路所起到的作用為:系統(tǒng)上電開機后,整個系統(tǒng)復位,在復位按鍵按下之后系統(tǒng)會有2微秒的復位過程。單片機復位功能的實現(xiàn)是單片機的9腳RST腳得到一個高電平,系統(tǒng)進入復位狀態(tài)。單片機的工作電壓是5V,在單片機中,如果電壓高于1.5V則單片機認定其為高電平;如果電壓低于1.5V,則單片機自動認定其為低電平。本系統(tǒng)采用一個20UF的電容,當電容完全充電時,其兩端電壓是單片機工作電壓的0.7倍即3.5V。此時串聯(lián)的10K電阻起到分壓作用,當上電開始時電容逐漸充電電壓逐漸從0V升到3.5V此時單片

20、機的9腳RST腳電壓從5V衰減到1.5V,整個系統(tǒng)完成復位。在晶振電路方面,選取的晶體振蕩器為12M是為了方便計時,在單片機中時鐘周期是機器周期的12倍,選用12M的晶體振蕩器則計時器每計一次時的時間為1us。單片機控制電路的具體連接如圖3.2所示。圖3.2 單片機控制電路3.3 系統(tǒng)顯示電路設計系統(tǒng)顯示模塊所用到的主要器件為LCD1602液晶顯示器。單片機與顯示屏之間的連接電路如圖3.3所示。在圖3.3中,1腳和2腳為液晶顯示屏1602的接地和電源引腳,3腳為背光調(diào)節(jié)引腳,通過10K的電阻接地,背光可通過改變電阻值來調(diào)節(jié)亮度;4腳、5腳、6腳為液晶片選控制引腳,分別連接到單片機的P1.0、P

21、1.1、P1,2端口,7腳至14腳為數(shù)據(jù)接口,與單片機的P0口相連來實現(xiàn)數(shù)據(jù)的傳輸,第15引腳和16引腳為液晶顯示器的背光控制腳,分別接到電源和地。圖3.3 系統(tǒng)顯示電路圖3.4 鍵盤電路的設計小型超市電子秤在實際應用中需要提供矩陣鍵盤來實現(xiàn)手動輸入物品單價來實現(xiàn)人機交互。本次設計采用4*4矩陣鍵盤,電子秤在開機時自動檢測托盤的重量并存于程序中,在稱量過程中,將獲取到的重量自動減去托盤的重量,所以顯示的重量即為物體的實際重量,在沒有物體時,顯示重量為零。在電子秤獲取重量后,手動輸入單價會自動顯示物品的總價,可以實時顯示物品重量和總價。矩陣鍵盤與單片機連接電路如圖3.4所示,其中設置了十個數(shù)字鍵

22、,兩個功能鍵,其余四個鍵留作擴展。3.5 系統(tǒng)報警電路設計本次電子秤量程為5KG,為了防止器件損壞延長使用壽命,系統(tǒng)的擴展功能為超重報警,選擇的報警器為蜂鳴器。報警電路的設計是利用三極管的關(guān)斷功能來實現(xiàn)報警,在圖3.5中采用PNP型三極管,利用單片機控制三極管的基極,當單片機輸出低電平時,三極管導通,蜂鳴器的正極與電源接通,蜂鳴器通電發(fā)出報警聲,當單片機高電平時,三極管截止,蜂鳴器斷電停止報警,所選用的三極管的信號為9012。報警指示電路如圖3.5所示。圖3.4 鍵盤電路圖圖3.5 報警電路3.6 系統(tǒng)原理圖的繪制Protel99SE繪圖軟件是在90年代Protel Technology公司設

23、計研發(fā)的,在當時是被當做一種印制板自動的布線工具來使用,早期是運行在DOS環(huán)境下,發(fā)展至今已經(jīng)可以應用于多種操作系統(tǒng),成為一個完整的全方位的電子設計系統(tǒng)。軟件中包含了系統(tǒng)原理圖的繪制、電路混合信號仿真、印制電路板的設計等功能。在原理圖繪制方面,不僅包含了大量的元器件可供選擇還可以實現(xiàn)多器件整體操作,總線的布置走動也十分方便,同時它具有很強的數(shù)據(jù)交換能力和模擬功能,可以展現(xiàn)出很好的信號仿真效果。 采用Protel99SE軟件繪制原理圖的主要步驟如下所述: 建立系統(tǒng)所需元件庫; 加載所建元件庫到工程項目中; 在原理圖頁面放置所需元器件; 按電氣性能和原理連接各元件; 建立元件封裝庫并加載到工程文件

24、中;根據(jù)以上步驟,選取系統(tǒng)包含的元件并按照電氣原理和最初設計連接成系統(tǒng)原理圖,其中包括單片機控制模塊、顯示模塊、系統(tǒng)電源電路、鍵盤電路以及報警電路。具體原理圖如圖3.6所示。圖3.6 系統(tǒng)原理圖4 系統(tǒng)軟件設計本章內(nèi)容主要介紹系統(tǒng)軟件部分的設計,其中包括:主程序、A/D轉(zhuǎn)換程序、顯示程序、按鍵程序以及報警程序。各部分程序的源代碼如附錄D所示。4.1 編程軟件介紹在單片機開發(fā)應用中,除了要進行硬件電路的設計外,軟件編程也是必不可少的環(huán)節(jié)。與匯編語言相比,C語言是對匯編語言進行了抽象,并在一定程度上更加符合人類的思維習慣,開發(fā)效率更高,更加模塊化,可移植性更好,程序可讀性和可維護性更強,并且提供了

25、數(shù)學函數(shù)并支持浮點運算。綜合這些優(yōu)點,本系統(tǒng)采用C語言編程,編譯環(huán)境為keil UV3。keil C51是美國keil software公司出品的51系列兼容單片機的C語言軟件開發(fā)系統(tǒng)。Keil C51軟件提供了豐富的庫函數(shù)和功能強大的集成開發(fā)調(diào)試工具,軟件呈全Windows界面,另外在代碼編譯生成后,可以看到keil c51生成目標代碼的效率非常之高,語句生成的匯編代碼很緊湊,容易理解,在開發(fā)大型軟件時更能體現(xiàn)高級語言的優(yōu)勢。Keil c51可以完成編輯、編譯、連接、調(diào)試、仿真等整個開發(fā)流程。開發(fā)人員可用IDE本身或其它編輯器編輯C語言或匯編源文件,然后分別有C51及A51編輯器編譯連接生成

26、單片機可執(zhí)行的二進制文件(.HEX),然后通過單片機的燒寫軟件將HEX 文件燒入單片機內(nèi)。軟件主要有三個方面:一是初始化整個系統(tǒng);二是按鍵掃描檢測;三是數(shù)據(jù)采集和數(shù)據(jù)處理并進行顯示。這三部分程序的源代碼體現(xiàn)在主程序中,整體程序結(jié)構(gòu)好,模塊化強,同時易于修改和調(diào)試。4.2 主程序的設計 系統(tǒng)程序設計采用模塊化的方法,由主程序調(diào)用各子程序,包括:初始化模塊、顯示模塊,矩陣鍵盤模塊、A/D轉(zhuǎn)換模塊、數(shù)據(jù)處理模塊。主要實現(xiàn)三個方面的功能:一是初始化系統(tǒng);二是按鍵檢測;三是壓力數(shù)據(jù)采集、A/D轉(zhuǎn)換后處理并進行顯示。這些操作在主程序中分別進行。對于整個系統(tǒng),主程序是信息處理的關(guān)鍵,主程序的作用在于完成編程

27、芯片的初始化以及調(diào)用各個子程序。在上電啟動使系統(tǒng)初始化后,單片機讀取A/D轉(zhuǎn)換芯片發(fā)來的數(shù)據(jù),首先檢測物體是否超重,然后調(diào)用掃描鍵盤子程序,同時驅(qū)動顯示模塊顯示重量,最后再調(diào)用價格子程序顯示物品的總價。程序設計的步驟可大致分為三步:1.分析系統(tǒng)要實現(xiàn)的功能,找出合理的算法和數(shù)據(jù)結(jié)構(gòu);2.建立程序流程圖,將問題分步解決;3.根據(jù)流程圖選用適當?shù)某绦蛑噶罹帉懗绦颉8鶕?jù)以上步驟,在分析系統(tǒng)要實現(xiàn)的功能后可以按步驟設計系統(tǒng)的主程序流程圖,具體的流程圖如圖4.1所示。開始蜂鳴器報警總價計算物品重量顯示按鍵判斷重量是否超過上限A/D轉(zhuǎn)換鍵盤掃描LCD清屏LCD初始化開始蜂鳴器報警總價計算物品重量顯示按鍵判

28、斷重量是否超過上限A/D轉(zhuǎn)換鍵盤掃描LCD清屏LCD初始化YNNY圖4.1 系統(tǒng)程序流程圖系統(tǒng)上電后首先進行LCD初始化,然后掃描矩陣鍵盤,在傳感器檢測到被測物體的壓力后,將其轉(zhuǎn)變?yōu)殡娦盘栐貯/D轉(zhuǎn)換裝置將數(shù)字信號送給單片機。單片機對數(shù)字信息進行判斷,檢測物體如果超出稱重量程則直接驅(qū)動蜂鳴器報警。在沒有超重的前提下,單片機驅(qū)動顯示模塊顯示被測物體的重量、單價以及總價。4.3 子程序的設計系統(tǒng)子程序主要包括:初始化程序、顯示程序、鍵盤模塊、A/D轉(zhuǎn)換模塊、數(shù)據(jù)信息處理模塊。4.3.1 A/D轉(zhuǎn)換子程序 A/D轉(zhuǎn)換程序主要實現(xiàn)的功能是當傳感器將被測物體的壓力信號轉(zhuǎn)換為模擬信號送給HX711芯片后將

29、模擬信號轉(zhuǎn)換為數(shù)字信號并送到單片機,這部分程序設計的流程圖如圖4.2所示。開始開始A/D轉(zhuǎn)換完成A/D轉(zhuǎn)換啟動HX711初始化A/D轉(zhuǎn)換完成A/D轉(zhuǎn)換啟動HX711初始化N數(shù)據(jù)顯示數(shù)據(jù)存儲 Y數(shù)據(jù)顯示數(shù)據(jù)存儲圖4.2 A/D轉(zhuǎn)換程序流程圖傳感器將壓力信號轉(zhuǎn)換為電信號,然后將模擬信號送入A/D轉(zhuǎn)換模塊,開始執(zhí)行算法指令。先將HX711芯片初始化,啟動A/D轉(zhuǎn)換,自動檢測轉(zhuǎn)換是否完成,在完成后將數(shù)據(jù)存儲并顯示,如果轉(zhuǎn)換沒有完成則返回繼續(xù)執(zhí)行轉(zhuǎn)換。4.3.2 顯示子程序系統(tǒng)的顯示子程序主要是來判斷數(shù)據(jù)是否需要顯示,以及如何去顯示,是十分重要的程序之一。本次系統(tǒng)設計是采用LCD1602作為系統(tǒng)的顯示器

30、,在系統(tǒng)上電開機時要先對顯示器進行初始化,然后檢測矩陣鍵盤有無輸入,從而確定是否顯示物品單價。顯示程序是實現(xiàn)人機交互的重要程序,在設計是應多次檢測調(diào)試,確保能正常運行。系統(tǒng)顯示程序的流程圖如圖4.3所示。開始開始顯示器初始化顯示器初始化有無按鍵有無按鍵NY顯示按鍵信息顯示按鍵信息檢測物體檢測物體N Y顯示總價顯示總價返回返回圖4.3 顯示程序流程圖單片機在處理完數(shù)字信息后會驅(qū)動顯示模塊將要顯示的數(shù)據(jù)顯示出來,首先將LCD初始化,然后檢測是否有按鍵產(chǎn)生,如果有則顯示按鍵信息。同時如果檢測到單片機發(fā)來的被測物體重量信息則會顯示物品重量,單片機計算出總價后也會驅(qū)動顯示器顯示物品的總價。4.3.3 按

31、鍵程序設計 本次設計系統(tǒng)采用4*4矩陣鍵盤,具體實現(xiàn)數(shù)字按鍵,刪除,單價清零的功能。在程序中先判斷按鍵的編碼,然后根據(jù)編碼讀取到按鍵代表的數(shù)值并將其送入單片機相應的存儲單元中,由單片機進行數(shù)據(jù)處理、功能選擇,按鍵程序流程圖如圖4.4所示。開始開始LCD初始化LCD初始化顯示界面字符顯示界面字符按鍵按下按鍵按下N YLCDLCD顯示圖4.4按鍵程序流程圖在檢測按鍵信息之前先將顯示器初始化,顯示初始界面,然后開始自動檢測有無按鍵按下,如果有則顯示按鍵信息,若沒有則繼續(xù)顯示為初始界面。4.3.4 報警程序設計本次設計的電子秤量程為0-5KG,超重報警為擴展功能,利用PNP三極管9012的開關(guān)功能來驅(qū)

32、動蜂鳴器實現(xiàn)有聲報警。報警程序的流程圖如圖4.5所示。A/D轉(zhuǎn)換模塊將模擬信號轉(zhuǎn)換為數(shù)字信號后送到單片機,單片機將信號轉(zhuǎn)換為單位為千克的物品重量,在與設定初值5千克進行比較。如果物品重量大于5千克,單片機會驅(qū)動蜂鳴器報警,如果物品沒有超重,則控制蜂鳴器的三極管處于關(guān)斷狀態(tài)。開始開始設置臨界報警值設置臨界報警值檢測物品的重量檢測物品的重量判斷物體是否超重判斷物體是否超重N Y驅(qū)動蜂鳴器報警驅(qū)動蜂鳴器報警圖4.5 報警程序流程圖5 系統(tǒng)調(diào)試5.1 硬件電路焊接與檢測根據(jù)系統(tǒng)的原理圖確定電路元件清單,并確定各元件在電路板上的位置,組織好線路后進行焊接。在焊接過程中要注意檢查,檢查的目的是防止電路故障

33、或元件損壞而導致系統(tǒng)原件燒毀,采用的方法為用萬用表檢查單片機、電源、芯片以及各元件的引腳連線是否正確,焊接是否正常,同時也要重點避免電路的短路。在檢查無誤,排除電路故障之后才能將系統(tǒng)上電開機。 稱重傳感器作為整個電子秤的衡量標準,同時也是數(shù)據(jù)來源,在系統(tǒng)上電前必須要檢測是否正常。檢測的內(nèi)容包括: 1、外觀檢查。傳感器的外觀應保存完好,不能出現(xiàn)裂痕。 2、線路檢查。傳感器的電源線、信號線線應用萬用表檢測,不能出現(xiàn)短路、斷路、絕緣的現(xiàn)象。3、空載檢測。將傳感器接入測量電路,在沒有被測物體時,傳感器的實數(shù)應為零并保持穩(wěn)定。5.2電子秤稱重調(diào)試 在電路檢測無誤后,系統(tǒng)可進行稱重調(diào)試,系統(tǒng)實物圖如圖5.

34、1所示。系統(tǒng)調(diào)試需測量電子秤稱重精度和準度,單價輸入是否正確,總價計算是否正確。具體測試可分以下四個部分進行。1.將10g砝碼放在秤盤上,顯示器顯示重量為0.01kg;換上1000g砝碼顯示器顯示1kg。經(jīng)過測試,系統(tǒng)稱重準確且精度符合要求。系統(tǒng)實物圖如圖5.2所示。2.在實物矩陣鍵盤一次按下1、0、0三個按鍵后,顯示器單價區(qū)域顯示物品的單價為1元/kg,經(jīng)過測試表明矩陣鍵盤工作正常,按鍵輸入準確。系統(tǒng)實物圖如圖5.3所示。 3.在第二步的基礎上,在托盤上放上100g的砝碼,同時輸入單價6.66元/kg后系統(tǒng)顯示總價為0.66元。測試證明系統(tǒng)可以正確計算并顯示物品的總價。系統(tǒng)實物圖如圖5.4所

35、示。4用力按壓托盤,使得電子秤所測重量超過5kg時,蜂鳴器發(fā)出警報聲以示報警,測試表明系統(tǒng)報警功能可以正常運行。經(jīng)過上述測試,系統(tǒng)預期的功能,包括:稱重、單價輸入、總價計算以及報警功能都能實現(xiàn)。其中稱重精度滿足要求,矩陣鍵盤靈敏度高,單價輸入準確,總價計算迅速、正確,報警功能反應靈敏。圖5.1 系統(tǒng)實物圖圖5.2 稱重測試圖圖5.3 單價測試圖圖5.4 總價測試圖結(jié) 論本系統(tǒng)設計基于單片機的小型超市電子秤, 由數(shù)據(jù)采集模塊、矩陣鍵盤模塊、單片機控制模塊、顯示模塊、報警模塊五部分構(gòu)成。軟件程序部分主要包括主程序、顯示程序、A/D轉(zhuǎn)換程序、按鍵程序、報警程序。本次設計出的電子秤使用方便,精度高,可

36、在市場上直接使用,在設計的系統(tǒng)中包括了數(shù)字電子技術(shù),自動控制技術(shù)、顯示技術(shù)以及報警技術(shù)等,具有非常高的實用性和推廣價值。在硬件電路上,各部分元件選型標準嚴格,綜合考慮元件各方面性能,使用AT89C52單片機作為核心控制器,將其高速高效的信息處理能力和充足的片內(nèi)外設充分利用,使系統(tǒng)整體更加小型化和智能化??傮w而言,本次設計的電子秤具有操作簡單、體積小、工作穩(wěn)定、成本低等優(yōu)點。軟件編程部分采用C語言編程,程序呈現(xiàn)模塊化,可讀性高,同時具備很強的數(shù)據(jù)處理能力,在一定程度上保證了系統(tǒng)的穩(wěn)定運行。本次設計的電子秤實現(xiàn)的功能主要有以下幾個方面:1.上電開機后,系統(tǒng)可以自動復位初始化,在檢測被測物體重量時,

37、誤差在允許范圍內(nèi),測重精度高。2.系統(tǒng)顯示屏亮度適中、清晰度高,矩陣鍵盤輸入靈敏,總價計算迅速、準確無誤,人機交互簡單快捷。3.使用超量程的被測物體,系統(tǒng)自動報警。系統(tǒng)經(jīng)多次檢測運行正常,主要目標均能實現(xiàn),但因時間和技術(shù)水平上的欠缺,有些功能還需改進,例如不能實現(xiàn)語音播報,希望能日后學習改進,把系統(tǒng)做的更加完善。致 謝畢業(yè)設計是對我大學四年所學知識的一次檢驗,同時也是給了我一個查缺補漏的機會,本次設計不僅鍛煉了我動手焊接元器件的能力,也讓我重新認識到C語言運用的重要性,更鍛煉了我綜合運用硬件電路設計和軟件編程等各方面知識的能力。在這里我要感謝我的導師,在我做畢業(yè)設計的每個階段,張老師都給我解答

38、了許多困惑,我也從張老師那里學到了很多東西。同時,也感謝在我遇到困難能與我一起討論,共同進步的同學們,從老師和同學們身上學到的東西必將積極影響我今后的學習和工作。最后還有感謝大學四年來我所有的授業(yè)恩師,正是你們的辛勤付出才使我打下了專業(yè)知識的基礎。感謝我的大學給我提供了良好的學習環(huán)境,并對我提出了更高的要求,使我取得進步,精益求精。參考文獻1 李群芳,張士軍.單片微型計算機.電子工業(yè)出版社,2008年:P20P26.2 周向紅,劉國凡.51系列單片機應用于實踐程序.北京航空航天大學出版社,2008年:P1P60.3 趙家偉,張家棟.單片機原理與接口技術(shù).清華大學出版社,2010年:P34P65

39、.4 張齊,杜群貴.單片機應用系統(tǒng)設計技術(shù).電子工業(yè)出版社,2007年:P1P36.5 張洪,潤張江語.電子線路與電子技術(shù).清華大學出版社,2005年:P32P110.6 及力,Protel99SE原理圖與PCB設計教程.電子工業(yè)出版社,2004年:P56P123.7 唐穎,單片機原理與應用及C51程序設計.北京大學出版社,2008年:P35P80.8 林立,張俊亮.單片機原理及應用基于protues和keilc.電子工業(yè)出版社,2013年:P17P123.9 李光飛,單片機課程設計實例指導.北京航空航天大學出版社,2004年:P23P33.10 邊春元,李文濤,江杰,杜平。C51單片機典型模

40、塊設計與應用.機械工業(yè)出版社,2008年:P7189.11 郭建國.圖解單片機功能與應用.中國電力出版社,2008年:P109P136.12 Victor Nelson . Digital Logical Circuits Analysis & Design. Prentice Hall,2003年:P28P89.附錄A 英文原文Development of single chip microcomputerSCM is also known as micro-controller (Microcontroller Unit), commonly used letters of the acr

41、onym MCU that it was first used in industrial control.Only a single chip by the CPU chip developed from a dedicated processor. The first design is by a large number of peripherals and CPU on a chip in the computer system, smaller, more easily integrated into a complex and demanding on the volume con

42、trol device which. INTELsZ80 is the first designed in accordance with this idea processor, then on the development of microcontroller and dedicated processors have parted ways.Are 8-bit microcontroller early or4 bits. One of the most successful is the INTEL 8031, for a simple, reliable and good perf

43、ormance was a lot of praise. Then developed in 8031 out of MCS51 MCUSystems. SCMsystems based on this system until nowis still widely used. With the increased requirements of industrial control field, began a 16-bit microcontroller, because the cost is not satisfactory but have not been very widely

44、used. After 90 years with the great development of consumer electronics, microcontroller technology has been a huge increase. With INTEL i960 series, especially the later series of widely used ARM, 32-bit microcontroller quickly replace high-end 16-bit MCU status and enter the mainstream market. The

45、 traditional 8-bit microcontroller performance have been the rapid increase capacity increase compared to 80 the number of times. Currently, high-end 32-bit microcontroller clocked over 300MHz, the performance catching the mid-90s dedicated processor, while the average model prices fall to one U.S.

46、dollars, the most high-end 1 model only 10 dollars.Modern SCM systems are no longer only in the development and use of bare metal environment, a large number of proprietary embedded operating system is widely used in the full range of SCM. The handheld computers and cell phones as the core processin

47、g of high-end microcontroller can even use a dedicated Windows and Linux operating systems.SCM is more suitable than the specific processor used in embedded systems, so it was up to the application. In fact the number of SCM is the worlds largest computer. Modern human life used in almost every piec

48、e of electronic and mechanical products will be integrated single chip.Phone, telephone, calculator, home appliances, electronic toys, handheld computers and computer accessories such as a mouse with a 1-2 in both the Department of SCM. Personal computer will have a large number of SCM in the work.

49、General car with more than 40 SCM, complex industrial control systems may even have hundreds of SCM in the same time work! SCM is not only far exceeds the number of PC and other computing the sum, or even more than the number of human beings.Single chip, also known as single-chip microcontroller, it

50、 is not complete a certain logic chips, but to a computer system integrated into a chip.Equivalent to a micro-computer, and computer than just the lack of a microcontroller I / O devices. General talk: a chip becomes a computer. Its small size, light weight, cheap, for the study, application and dev

51、elopment of facilities provided. At the same time, learning to use the MCU is to understand the principle and structure of the computer the best choice.SCM and the computer functions internally with similar modules, such as CPU, memory, parallel bus, the same effect as well, and hard disk memory dev

52、ices, and different is its performance of these components were relatively weak many of our home computer, but the price is low , usually not more than 10 yuan you can do with it , some control for a class is not very complicated electrical work is enough of. We are using automatic drum washing mach

53、ine, smoke hood, VCD and so on appliances which could see its shadow! It is primarily as a control section of the core components.It is an online real-time control computer, control-line is that the scene is needed is a stronger anti-jamming ability, low cost, and this is, and off-line computer (suc

54、h as home PC), the main difference.MCU is through running, and can be modified. Through different procedures to achieve different functions, in particular special unique features, this is another device much effort needs to be done, some great efforts are very difficult to do. A not very complex fun

55、ctions if the 50s with the United States developed 74 series, or the 60s CD4000 series of these pure hardware buttoned, then the circuit must be a large PCB board! But if the United States if the 70s with a series of successful SCM market, the result will be a drastic change! Just because you are pr

56、epared by microcomputer programs can achieve high intelligence, high efficiency and high reliability!As the microcontroller on the cost-sensitive, so now the dominant software or the lowest level assembly language, which is the lowest level in addition to more than binary machine code language, and

57、as so low why is the use? Many high-level language has reached the level of visual programming Why is not it? The reason is simply that there is no home computer as a single chip CPU, not as hard as a mass storage device.A visualization of small high-level language program which even if only one but

58、ton, will reach tens of K of size! For the home PCs hard drive in terms of nothing, but in terms of the MCU is not acceptable. SCM in the utilization of hardware resources to be very high for the job so although the original is still in the compilation of a lot of use. The same token, if the giant c

59、omputer operating system and applications run up to get home PC, home PC, also can not afford to.Can be said that the twentieth century across the three power era, that is, the age of electricity, the electronic age and has entered into the computer age. However, this computer, usually refers to the

60、 personal computer, referred to as PC. It consists of the host, keyboard, monitor and other components. Another type of computer, most people do not know how. This computer is to give all kinds of intelligent machines single chip (also known as micro-controller). As the name suggests, this computer

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論