999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于單片機(jī)壓力計(jì)的設(shè)計(jì)與實(shí)現(xiàn)

2023-09-25 00:57:02舒玉坤
關(guān)鍵詞:單片機(jī)功能檢測

舒玉坤

(湖北師范大學(xué) 物理與電子科學(xué)學(xué)院,湖北 黃石 435002)

0 引言

稱重技術(shù)作為一種計(jì)量手段,廣泛應(yīng)用于各種場合,有利于生產(chǎn)自動(dòng)化,有利于提高勞動(dòng)生產(chǎn)效率[1]。在眾多的微型控制器中,51單片機(jī)尤其是STC89C52單片機(jī)以其操作簡單、功能豐富、編程語言通俗易懂等優(yōu)勢(shì)得到廣泛的應(yīng)用,在物聯(lián)網(wǎng)、智能終端產(chǎn)品的開發(fā)中也有著舉足輕重的地位,而PC機(jī)發(fā)展快,功能強(qiáng)大,將二者借助WiFi互聯(lián),可實(shí)現(xiàn)遠(yuǎn)程終端控制,充分發(fā)揮各自的優(yōu)勢(shì)[2~3]。

1 系統(tǒng)技術(shù)方案

1.1 系統(tǒng)方案

本設(shè)計(jì)主要由STC89C52單片機(jī)、壓力檢測傳輸模塊、LCD1602液晶顯示模塊、按鍵模塊、無線傳輸模塊等組成。以單片機(jī)作為核心進(jìn)行邏輯控制,壓力檢測模塊對(duì)壓力進(jìn)行檢測,由于檢測出來的信號(hào)比較微小,所以將檢測后的信息經(jīng)過運(yùn)算放大電路處理后發(fā)送至數(shù)模轉(zhuǎn)換芯片,經(jīng)過整合處理和AD采集后送給單片機(jī),再將數(shù)據(jù)整理分析后傳輸?shù)揭壕э@示模塊并將所測得的數(shù)據(jù)顯示出來,同時(shí)用無線傳輸模塊傳輸?shù)诫娔X或手機(jī)上。系統(tǒng)設(shè)計(jì)如圖1.

圖1 系統(tǒng)設(shè)計(jì)

1.2 開發(fā)平臺(tái)

Altium Designer是原Protel軟件開發(fā)商Altium公司推出的電子電路開發(fā)系統(tǒng)。本設(shè)計(jì)是基于單片機(jī)壓力計(jì)的設(shè)計(jì)與實(shí)現(xiàn),其中最為核心的是微處理器STC89C52,它是一種帶8K字節(jié)FLASH存儲(chǔ)器的低電壓、高性能CMOS 8位微處理器,俗稱單片機(jī)。使用C語言進(jìn)行開發(fā),所采用的開發(fā)平臺(tái)Keil5,兼容了多種功能,包括項(xiàng)目的編輯、程序的調(diào)試、編譯、微處理器讀寫文件(hex文件)的生成等[4~5]。

2 系統(tǒng)的硬件設(shè)計(jì)

在硬件中使用到的核心是微處理器芯片STC89C52,本系統(tǒng)采用最小系統(tǒng)作為核心,再輔助其他檢測元件進(jìn)行數(shù)據(jù)的采集,借助顯示單元實(shí)現(xiàn)人機(jī)交互,借助其他的電路元件邏輯控制。根據(jù)壓力計(jì)所需要的功能進(jìn)行分析,最終確定硬件模塊的組成,包括LCD1602液晶顯示模塊、壓力檢測傳輸模塊、STC89C52單片機(jī)、無線傳輸模塊。壓力數(shù)據(jù)采集單元需要將采集的數(shù)據(jù)傳輸給單片機(jī)顯示,且通過模塊無線傳輸?shù)絇C機(jī),通過PC機(jī)的串口接收后,在PC機(jī)上顯示[6]。

2.1 傳感器選擇

常用的傳感器有兩種,一種是壓電傳感器,又稱自發(fā)電式傳感器,一種是電阻應(yīng)變式傳感器,它利用電阻應(yīng)變效應(yīng),將各種力學(xué)量轉(zhuǎn)換為電信號(hào)。通過對(duì)壓力傳感器與電阻應(yīng)變式傳感器比較分析,選擇電阻應(yīng)變式傳感器。稱重范圍0~5 kg,誤差不大于±0.005 kg,量程為5 kg,精度為0.01%.

壓力檢測模塊分為壓力傳感器部分和放大采樣傳輸部分,利用電阻應(yīng)變效應(yīng),將力學(xué)量轉(zhuǎn)換為電信號(hào)[7]。此傳感器滿量程時(shí),輸出的電壓信號(hào)5 mV,對(duì)單片機(jī)來說太微小了,所以需要先對(duì)其進(jìn)行放大,而HX711則具備此功能,它內(nèi)部的A輸入通道,可以將模擬輸入信號(hào)放大128倍,然后采樣輸出24 bit AD轉(zhuǎn)換值,單片機(jī)可以根據(jù)指定時(shí)序?qū)?4 bit數(shù)據(jù)讀出。HX711內(nèi)部的穩(wěn)壓電源,可以直接向外部傳感器和芯片內(nèi)的A/D 轉(zhuǎn)換器提供電源,芯片內(nèi)的時(shí)鐘振蕩器有上電自動(dòng)復(fù)位功能[8],24 bit HX711驅(qū)動(dòng)程序如下:

sbit ADDO = P1^3;

sbit ADSK = P0^1;

unsigned long ReadCount(void)

{ unsigned long Count;

unsigned char i;

ADSK=0; //使能AD(PD_SCK 置低)

Count=0;

while(ADDO); //AD轉(zhuǎn)換未結(jié)束等待,否則開始讀取

for (i=0;i<24;i++)

{

ADSK=1;

Count = Count<<1; //下降沿時(shí)Count左移一位

ADSK=0;

If (ADDO) Count++;

}

ASDK=1;

Count=Count^0x800000; //第25個(gè)脈沖下降沿轉(zhuǎn)換數(shù)據(jù)

ADSK=0;

return(Count);

}

HX711與傳感器、電阻、電容、接線原理如圖2.

圖2 HX711接線原理圖

2.2 超重報(bào)警電路設(shè)計(jì)

不同的傳感器有不同的稱重范圍,為了有效保護(hù)傳感器,提高系統(tǒng)的安全性,在系統(tǒng)中設(shè)計(jì)了報(bào)警指示電路。報(bào)警指示電路由三極管8550、蜂鳴器、電阻等實(shí)現(xiàn),通過單片機(jī)I/O口控制8550,當(dāng)單片機(jī)的I/O口輸出低電平時(shí),8550導(dǎo)通,蜂鳴器通電發(fā)出報(bào)警聲,當(dāng)單片機(jī)I/O口輸出高電平時(shí),8550截止,蜂鳴器停止報(bào)警。

2.3 按鍵電路設(shè)計(jì)

按鍵輸入電路用來在電子稱測量過程中輸入單價(jià)值,按鍵輸入電路采用4*4矩陣鍵盤,采用“行掃描法”實(shí)現(xiàn)。首先確定鍵盤是否有按鍵,將Y0-Y3置低電平,然后檢測列線的狀態(tài)。一個(gè)列的電平表示在鍵盤按下了一個(gè)鍵,而關(guān)閉的鍵位于四個(gè)按鈕中的一個(gè)按鈕上,在這個(gè)按鈕上,低電平線跨越了四行。如果所有的列線都是高電平,鍵盤就沒有按鍵了。系統(tǒng)開機(jī)檢測托盤重量,并將托盤重量清零,即每次開機(jī)后檢測托盤重量,程序自動(dòng)將托盤重量保存在一個(gè)變量中,稱量過程中每次都將獲得的重量減去托盤重量,而得到所要稱量物體的真正的重量。在正確輸入了單價(jià)之后,按下計(jì)算按鍵,將會(huì)計(jì)算出金額,并在液晶顯示器上顯示出重量、單價(jià)、總價(jià)。

2.4 無線傳輸模塊

在硬件設(shè)備的開發(fā)中,借助無線傳輸模塊實(shí)現(xiàn)單片機(jī)與PC計(jì)算機(jī)的數(shù)據(jù)通訊,而在使用的過程中需要借助處理芯片串口實(shí)現(xiàn)數(shù)據(jù)的收發(fā),該無線傳輸模塊內(nèi)嵌了IEEE802.11b.g.n協(xié)議棧和能夠進(jìn)行數(shù)據(jù)網(wǎng)絡(luò)傳輸?shù)膮f(xié)議,即TCP/IP協(xié)議棧。在設(shè)計(jì)中,采用無線模塊,實(shí)現(xiàn)數(shù)據(jù)的收發(fā)[9~11]。無線傳輸模塊的STATE是連接狀態(tài)引腳,未使用該引腳。RXD為串口輸入引腳,需與單片機(jī)模塊TXD引腳相連;TXD為串口輸出腳,需與單片機(jī)RXD引腳相連。GND和VCC分別為地引腳和電源引腳。EN為空引腳,不使用。

在Protues仿真軟件中,使用Virtual Terminal(虛擬終端),此模塊的協(xié)議與本文使用的協(xié)議一致,所以能在Virtual Terminal上顯示出所需要傳輸給計(jì)算機(jī)的數(shù)據(jù)[12]。

3 系統(tǒng)的軟件設(shè)計(jì)

該單片機(jī)壓力計(jì),以程序的布局、構(gòu)架和實(shí)現(xiàn)的方式進(jìn)行程序的編寫,進(jìn)而實(shí)現(xiàn)相關(guān)的功能。在程序語言的選擇上,可供選擇的語言有C語言和匯編語言,開發(fā)中選用了較為簡便的C語言進(jìn)行程序框架的設(shè)計(jì)和邏輯語言的編輯[13]。

3.1 單片機(jī)的軟件設(shè)計(jì)

分析元器件后繪制原理圖,再根據(jù)原理圖,分析需要用STC89C52的哪些寄存器,逐步完成寄存器的調(diào)用,完成傳感器程序的邏輯開發(fā),完成環(huán)境參數(shù)數(shù)據(jù)的采集,在main()主函數(shù)中執(zhí)行和調(diào)用,達(dá)到預(yù)期的功能。在控制硬件所需要的程序開發(fā)中,將所需要的功能一一實(shí)現(xiàn)后,再統(tǒng)一調(diào)試,避免程序中出現(xiàn)錯(cuò)誤現(xiàn)象。而實(shí)現(xiàn)數(shù)據(jù)的發(fā)送環(huán)節(jié),借助串口調(diào)試軟件,檢測數(shù)據(jù)是否通過串口發(fā)送出去。按照C51開發(fā)的邏輯將程序編譯后,轉(zhuǎn)換為單片機(jī)可執(zhí)行的hex文件,再通過串口進(jìn)行程序的燒錄,將所需要的驅(qū)動(dòng)安裝完成之后,借助仿真器(STC-ISP)將程序及時(shí)燒錄入芯片之中。

3.2 讀取壓力數(shù)據(jù)

系統(tǒng)采用HX711壓力傳感器測量壓力,該模塊能夠在較短的時(shí)間內(nèi)進(jìn)行壓力數(shù)據(jù)的讀取,當(dāng)模塊接收到壓力數(shù)據(jù)后,把數(shù)據(jù)放入內(nèi)置的數(shù)據(jù)存儲(chǔ)單元,然后根據(jù)具體需求進(jìn)行數(shù)據(jù)的讀取。在將24 bit數(shù)據(jù)通過串口傳輸給單片機(jī),單片機(jī)內(nèi)部讀取數(shù)據(jù)時(shí),需要了解HX711傳輸數(shù)據(jù)的協(xié)議才能準(zhǔn)確無誤的獲得傳感器的數(shù)據(jù)。為此,需要了解HX711芯片數(shù)據(jù)傳輸?shù)臅r(shí)序圖,才能正確讀取數(shù)據(jù),串口通訊線由管腳PD_SCK和DOUT組成,其中PD_SCK為斷電和串口時(shí)鐘輸入,DOUT為數(shù)據(jù)輸出。HX711從復(fù)位狀態(tài)進(jìn)入正常工作狀態(tài),通道A和增益128會(huì)被自動(dòng)選擇作為第一次 A/D 轉(zhuǎn)換的輸入通道和增益,為了保證串口通訊正常進(jìn)行,PD_SCK應(yīng)在25~27之間。當(dāng) A/D 轉(zhuǎn)換器的輸入通道或增益改變時(shí),DOUT 在4個(gè)數(shù)據(jù)輸出周期后,從高電平變低電平達(dá)到穩(wěn)定,輸出有效數(shù)據(jù)[7~8]。HX711數(shù)據(jù)輸出時(shí)序如圖3.

圖3 HX711數(shù)據(jù)輸出時(shí)序

3.3 數(shù)據(jù)處理流程

AD數(shù)據(jù)的轉(zhuǎn)換已經(jīng)由HX711來完成,所以輸入到單片機(jī)的信號(hào)是24 bit的數(shù)字信號(hào),可以直接進(jìn)行調(diào)用。開中斷獲取經(jīng)過HX711放大和AD轉(zhuǎn)換后的數(shù)據(jù),數(shù)據(jù)無誤后關(guān)中斷,按鍵掃描,若去皮按鍵按下,則保存此時(shí)重量,輸出重量需要用實(shí)際重量減去保存的重量,若未按下,則輸出重量直接等于實(shí)際重量,再將輸出重量進(jìn)行顯示。

3.4 計(jì)算機(jī)的軟件設(shè)計(jì)

Windows Sockets 是 Microsoft Windows的網(wǎng)絡(luò)程序接口。套接字(Socket)是應(yīng)用層與TCP/IP協(xié)議族通信的中間抽象層,它把復(fù)雜的 TCP/IP協(xié)議族隱藏在Socket接口的背后,通過Socket函數(shù)調(diào)用符合指定協(xié)議的數(shù)據(jù),一個(gè)套接字只能與同一區(qū)域內(nèi)的套接字交換數(shù)據(jù)。TCP/IP提供了流式套接字(SOCK_STREAM)、數(shù)據(jù)報(bào)套接字(SOCK _DGRAM)、原始套接字(SOCK _RAW),不論什么套接字,實(shí)際網(wǎng)絡(luò)編程一般采用C/S模型按各自的時(shí)序調(diào)用[14]。

服務(wù)器調(diào)用socket()建立數(shù)據(jù)報(bào)套接字(s),通過bind()將套接字(s)與本地地址相連,recvfrom()/sendto()通過套接字(s)讀寫數(shù)據(jù),直到數(shù)據(jù)交換完成、最后通過closesocket()關(guān)閉套接字(s),結(jié)束服務(wù)。計(jì)算機(jī)客戶端依次調(diào)用socket()、connect(),向單片機(jī)服務(wù)器發(fā)送一個(gè)連接請(qǐng)求;單片機(jī)服務(wù)器監(jiān)聽到這個(gè)請(qǐng)求之后,就會(huì)調(diào)用accept()函數(shù)接收請(qǐng)求,如果accpet成功,則返回由內(nèi)核自動(dòng)生成的一個(gè)全新的描述字,至此服務(wù)器與客戶建立好連接;接下來就可以調(diào)用網(wǎng)絡(luò)I/O進(jìn)行讀寫操作,從而實(shí)現(xiàn)計(jì)算機(jī)與單片機(jī)不同進(jìn)程之間的通信。

計(jì)算機(jī)通過clientSocket = new Socket(HOST, PORT)連接單片機(jī),其中,HOST為單片機(jī)地址,PORT為單片機(jī)的端口。然后由 mReceiveThread = new ReceiveThread(clientSocket)、mReceiveThread.start()開啟接收數(shù)據(jù)線程,由于采用多線程通訊方式實(shí)時(shí)接收數(shù)據(jù),有效提高了其性能。計(jì)算機(jī)接收單片機(jī)數(shù)據(jù)如圖4.

圖4 計(jì)算機(jī)接收單片機(jī)數(shù)據(jù)

4 功能測試及可靠性

完善電路布局,實(shí)現(xiàn)模塊與模塊之間電路的互聯(lián)互通,在程序上逐步完善所需要的功能,之后將功能進(jìn)行組合,全面檢測每一個(gè)環(huán)節(jié)、每一個(gè)功能的具體實(shí)現(xiàn),以測試的數(shù)據(jù)作為單片機(jī)壓力計(jì)的設(shè)計(jì)與實(shí)現(xiàn)成果分析的依據(jù)。所測試的數(shù)據(jù)也可作為后面需要完善的時(shí)候進(jìn)行參考的依據(jù),最終實(shí)現(xiàn)基于單片機(jī)壓力計(jì)的綜合功能。

4.1 功能測試

以單片機(jī)作為核心的壓力計(jì)要進(jìn)行功能測試,常用的測試方法包括模塊仿真法、數(shù)據(jù)分析法、觀察法,為確保參數(shù)的有效讀取和操作的簡便,此處的檢測采用直接觀察法進(jìn)行功能的測試。測試的內(nèi)容是將程序按照功能分別燒錄,在將檢測到的數(shù)據(jù)逐步記錄,分析其中的數(shù)值是否是正常的,還需借助溫度的變化檢測校準(zhǔn)、減少傳感器檢測的數(shù)據(jù)帶來的誤差,將誤差達(dá)到最小,以確保硬件、軟件的正確性。

4.2 可靠性檢測

為確保設(shè)計(jì)完成后能夠有效穩(wěn)定地運(yùn)行,將硬件檢測確認(rèn)無誤后,把完整功能的程序燒錄單片機(jī)中,讓所有的功能運(yùn)行起來。運(yùn)行一周左右檢測運(yùn)行的可靠性,并每間隔24小時(shí)檢測一次各個(gè)環(huán)節(jié)各個(gè)功能是否達(dá)到預(yù)先的數(shù)據(jù)指標(biāo)。查看需要采集的參數(shù)有無誤差、報(bào)警模塊有無正常工作,多進(jìn)行幾次測量物體的更換,對(duì)數(shù)據(jù)進(jìn)行誤差分析等等。

5 總結(jié)

壓電傳感器的不足之處主要表現(xiàn)在高內(nèi)阻、功率小,輸出的信號(hào)弱,電纜的分布電容及噪聲干擾也會(huì)影響輸出的特性。因此,對(duì)電路要求很高。本方案克服了這一弱點(diǎn),實(shí)現(xiàn)了一款具有多線程實(shí)時(shí)通訊功能的壓力計(jì),使傳統(tǒng)的電子測量儀器能在遠(yuǎn)程、功能、精度及自動(dòng)化水平等方面得以顯著提高,具有一定的實(shí)用性。

猜你喜歡
單片機(jī)功能檢測
也談詩的“功能”
中華詩詞(2022年6期)2022-12-31 06:41:24
“不等式”檢測題
“一元一次不等式”檢測題
“一元一次不等式組”檢測題
基于單片機(jī)的SPWM控制逆變器的設(shè)計(jì)與實(shí)現(xiàn)
電子制作(2019年13期)2020-01-14 03:15:28
基于單片機(jī)的層次漸變暖燈的研究
電子制作(2019年15期)2019-08-27 01:12:10
基于單片機(jī)的便捷式LCF測量儀
電子制作(2019年9期)2019-05-30 09:42:02
關(guān)于非首都功能疏解的幾點(diǎn)思考
小波變換在PCB缺陷檢測中的應(yīng)用
Microchip推出兩個(gè)全新PIC單片機(jī)系列
主站蜘蛛池模板: 国产成人精品免费av| 日韩一级二级三级| 无码AV动漫| 欧美在线视频a| 亚洲日本在线免费观看| 日本91视频| 国产久操视频| 无码久看视频| 亚洲国产精品日韩欧美一区| 国产精品蜜芽在线观看| 久久成人国产精品免费软件| 99在线视频免费观看| 久久久久久久蜜桃| 免费在线看黄网址| 91尤物国产尤物福利在线| 国产女人18水真多毛片18精品| 伊人久久大香线蕉aⅴ色| 国产欧美日韩精品第二区| 色综合网址| 国产欧美日韩精品第二区| 亚洲h视频在线| 亚洲综合专区| 欧美中日韩在线| 波多野结衣一二三| 欧美日韩第三页| 精品国产免费第一区二区三区日韩| 亚洲香蕉久久| 欧美成人精品在线| 国产av一码二码三码无码| 亚洲精品视频免费观看| 无码福利日韩神码福利片| 国产激情国语对白普通话| 国产在线一二三区| 国产在线视频福利资源站| 99精品视频九九精品| 人妻精品久久无码区| 久久精品无码一区二区国产区| 成人国产小视频| 国产精品亚洲天堂| 久久免费视频6| 奇米影视狠狠精品7777| 国产成人精品高清不卡在线| 91亚洲免费视频| 国产美女无遮挡免费视频| 亚洲最大福利视频网| 谁有在线观看日韩亚洲最新视频| 成人免费网站久久久| 国内精品九九久久久精品| 日a本亚洲中文在线观看| 免费Aⅴ片在线观看蜜芽Tⅴ| 亚洲精品动漫| 草逼视频国产| 伊人久久综在合线亚洲2019| 久久综合五月婷婷| 国产va免费精品观看| 亚洲男人天堂2020| 538精品在线观看| 思思热在线视频精品| 国产成人综合日韩精品无码首页 | 色婷婷国产精品视频| 亚洲91在线精品| 精品午夜国产福利观看| 亚洲国产中文在线二区三区免| 亚洲欧美日韩另类在线一| 免费在线观看av| 国产精品三级专区| 亚洲国产成人超福利久久精品| 午夜性爽视频男人的天堂| 精品少妇人妻一区二区| 国产乱人伦精品一区二区| 一级毛片免费不卡在线| 天堂在线www网亚洲| 免费在线播放毛片| 久久精品一品道久久精品| 波多野结衣视频网站| 91成人精品视频| 色老头综合网| 99久久国产综合精品2020| 精品视频一区二区观看| 欧美综合成人| 日韩视频免费| 亚洲国产高清精品线久久|