【正文】
當(dāng)中。,所輸入的頻率為1Hz,理論上數(shù)碼管應(yīng)顯示60,但數(shù)碼管上顯示的卻是65,我以為是定時(shí)計(jì)數(shù)的時(shí)候把定時(shí)器設(shè)定的時(shí)間算錯(cuò)了,結(jié)果導(dǎo)致顯示的不是實(shí)際的脈搏數(shù),但是經(jīng)過計(jì)算后發(fā)現(xiàn)所裝載的計(jì)數(shù)值并沒有出現(xiàn)錯(cuò)誤,然后又想到軟件仿真時(shí)晶振的選擇是不是與計(jì)算時(shí)所用晶振的頻率相一致,結(jié)果發(fā)現(xiàn),計(jì)算時(shí)用的晶振是12MHz,修改后得到了正確的數(shù)據(jù)顯示。經(jīng)過這次調(diào)試我發(fā)現(xiàn)大風(fēng)大浪的能過去但是真的有時(shí)候就被一顆小草絆倒了,遇到問題時(shí)候不能光從大的方面考慮,同時(shí)也要注意細(xì)節(jié),因?yàn)?,?xì)節(jié),決定著成敗。這個(gè)問題使我知道,不要盲目的相信所看到的書本上或其它地方的知識(shí),要親自去試驗(yàn)論證所看到知識(shí)的準(zhǔn)確性。因此,我們要敢于面對(duì)問題,認(rèn)真分析問題后,全力把問題解決掉。電子脈搏計(jì)在將來肯定會(huì)得到更為普遍的應(yīng)用以及更加強(qiáng)大齊全的功能。俗話說,人無遠(yuǎn)慮必有近憂,此次畢業(yè)設(shè)計(jì)使我對(duì)時(shí)間的態(tài)度有了更積極合理的安排,應(yīng)當(dāng)居安思危,盡全力完成或是超額完成給自己所定下的計(jì)劃。//共陰LED段碼表 0 1 2 3 4 5 6 7 8 9 滅 uchar code scan_con[3]={0xad,0xce,0xff}。k++) { discan=scan_con[k]。 //數(shù)據(jù)傳輸率:9600 fosc= TR1=1。 } void dingshi() { TMOD|=0x02。 // 所有的中斷請(qǐng)求被開放}main() //主函數(shù) { unsigned int i,j。 for(i=0。 ad_data=P0。關(guān)閉定時(shí)器 TimeDelay 100 If Then = False 39。判斷端口號(hào)碼是否落在15之間 If = 0 And = 5 Then = + 1 Else MsgBox 指定通信端口時(shí)發(fā)生錯(cuò)誤!, vbCritical + vbOKOnly, 系統(tǒng)信息 Exit Sub End If 39。將定時(shí)器激活或關(guān)閉,并顯示對(duì)應(yīng)的文字在按鈕上,以指示用戶操作Private Sub cmdStart_Click() = Not If Then = 停止檢測(cè) Else = 顯示波形 End IfEnd Sub39。將模擬讀值命令送出,再取得返回字符串并判斷。超過范圍則數(shù)值歸零End Sub外文資料Introduction of Programmable controllers , From a simple heritage, these remarkable systems have evolved to not only replace electromechanical devices, but to solve an everincreasing array of control probl。定時(shí)器的Timer事件引發(fā)后,就不斷地執(zhí)行其中的程序。 vbCritical + vbOKOnly 系統(tǒng)信息End Sub39。將MSComm控件的參數(shù)設(shè)置好,并打開39。若用戶改變通信端口時(shí),關(guān)閉通信端口Private Sub cmbCOM_Click() 39。i++) {。 scan()。 // 允許外部中斷0中斷 TR0=1。 n=0。 //SMOD=1,表示數(shù)據(jù)傳輸率加倍 TH1=0xfd。 for(k=0。sbit OE=P2^5。在此還要感謝為我提供脈搏傳感器以及傳感器相關(guān)知識(shí)的教授,對(duì)于我畢業(yè)設(shè)計(jì)中關(guān)鍵的一部分給予了很大的幫助。工作穩(wěn)定性高,通過LED數(shù)碼管顯示,顯示直觀,誤差很小,成本低廉且能節(jié)電。首先我用串口調(diào)試小助手代替上位機(jī)接收信號(hào),發(fā)現(xiàn)有信號(hào)送入,這次可以斷定是上位機(jī)程序有問題,經(jīng)過仔細(xì)檢查后發(fā)現(xiàn)上位機(jī)設(shè)置的是接收字符型數(shù)據(jù),而單片機(jī)所發(fā)送的是八位二進(jìn)制數(shù)據(jù),更改后便可以成功接收數(shù)據(jù)。下面便是調(diào)試過程中遇到的幾個(gè)問題:,由于不知道哪一個(gè)引腳對(duì)應(yīng)著哪一個(gè)數(shù)碼管管段,于是在百度上搜索了一張引腳圖片,按照上面的引腳連接好后輸入正弦波,顯示的是亂碼,于是調(diào)成方波繼續(xù)試驗(yàn),依然是亂碼,程序仿真以及單片機(jī)對(duì)應(yīng)的引腳都沒有錯(cuò)誤,半天沒調(diào)試出來,一著急把連接數(shù)碼管的杜邦線全拔了下來,再想連接的時(shí)候忘了引腳是如何對(duì)應(yīng)的,于是又重新查找了引腳圖,發(fā)現(xiàn)上一次連接的引腳接反了,重新連接后試驗(yàn),還是亂碼,不過有數(shù)字顯示,于是我便進(jìn)行逐一的對(duì)照試驗(yàn),將各個(gè)管腳對(duì)應(yīng)的段碼和位選自己測(cè)定了一下,發(fā)現(xiàn)百度上所給出的引腳圖不正確。在進(jìn)行了兩天的仔細(xì)研究與查看資料后,沒有任何進(jìn)展,當(dāng)時(shí)很是心煩意亂的,當(dāng)時(shí)正好趕上同學(xué)去南湖看風(fēng)景,于是和同學(xué)一塊兒出去玩了一天,晚上回來后打開電腦一看程序,恍然發(fā)現(xiàn)計(jì)數(shù)模塊后面有一個(gè)while循環(huán),之后才是模數(shù)轉(zhuǎn)換模塊,怪不得程序不往下執(zhí)行,原來是進(jìn)入死循環(huán)了。,發(fā)現(xiàn)數(shù)碼管沒有出現(xiàn)預(yù)期的結(jié)果,于是我首先對(duì)程序進(jìn)行了仔細(xì)的檢查,沒有發(fā)現(xiàn)問題的所在,之后又進(jìn)行了仿真圖各個(gè)元器件引腳的連接是否有問題,結(jié)果還是沒有發(fā)現(xiàn)問題的所在,正在百思不得其解的時(shí)候,同學(xué)提醒了一句,你數(shù)碼管選用的是共陰極的還是共陽(yáng)極的,這時(shí)我才發(fā)現(xiàn)仿真軟件里數(shù)碼管表面相同但型號(hào)不同,本來應(yīng)該用共陰極的數(shù)碼管結(jié)果誤選擇了共陽(yáng)極的數(shù)碼管。,突然發(fā)現(xiàn)仿真區(qū)域的地方不夠用了,沒有了下一個(gè)硬件所需要的空間,于是我就想把所用的器件縮小,結(jié)果經(jīng)過多方面不同的試驗(yàn)均沒有成功(后來才知道器件不可以縮小,繪圖區(qū)可以放大),我又想將繪圖的仿真區(qū)域擴(kuò)大,之后查資料沒有查出來,一個(gè)偶然的機(jī)會(huì)我點(diǎn)到菜單中的System下面子菜單中有個(gè)Set sheet size,眼前一亮,之后點(diǎn)開了便可選擇工作區(qū)域的大小。上位機(jī)界面的設(shè)計(jì)如圖42所示:圖42 上位機(jī)界面 擴(kuò)展血壓計(jì)功能根據(jù)傳感器所輸出的波形,用振蕩示波法可以測(cè)量人體的血壓,其原理是根據(jù)氣袖在減壓過程中,其壓力振蕩波的振幅變化包絡(luò)線來判定血壓的。CommEvent屬性:返回最近的通信事件或錯(cuò)誤 通過對(duì)它具體屬性值的查詢,就可以獲得通信事件和通信錯(cuò)誤的完整信息,當(dāng)其值是EvReceive 時(shí)表示接收到數(shù)據(jù)。Input:從輸入寄存器讀取數(shù)據(jù),返回值為從串口讀取的數(shù)據(jù)內(nèi)容,同時(shí)輸入寄存器將被清空。由于是串口通信,首先需要使用的便是對(duì)串口MSComm控件屬性和事件的設(shè)置。在發(fā)送時(shí)鐘的作用下,先通過TXD端送出一個(gè)低電平的起始位,然后是低位在前高位在后的8位數(shù)據(jù),之后是一個(gè)高電平停止位。 //SMOD=1,表示數(shù)據(jù)傳輸率加倍 TH1 = 0xfd 。串行口控制寄存器SCON控制著串行口四種工作方式的選擇、多機(jī)通信控制位、串行接受允許位、發(fā)送的第九位數(shù)據(jù)、接收的第九位數(shù)據(jù)、發(fā)送與接收的中斷標(biāo)志位,特殊功能寄存器PCON的D7位SMOD為波特率選擇位。 i++ ) //進(jìn)行AD轉(zhuǎn)換 { 。具體AD轉(zhuǎn)換子程序代碼如下所示:void ad () { unsigned int i , j 。 //字碼段數(shù)據(jù)位送P1口 delay_us ( 150 )。 t0 。 //分別對(duì)應(yīng)共陰極LED段碼表0、3 、滅。通過分時(shí)輪流控制各個(gè)數(shù)碼管的段碼,這樣就會(huì)使各個(gè)數(shù)碼管輪流受控顯示,這就是動(dòng)態(tài)驅(qū)動(dòng)。推薦使用1015mA電流,靜態(tài)驅(qū)動(dòng)是指每個(gè)LED數(shù)碼管的每一個(gè)段碼都由單片機(jī)的一個(gè)I/O端口進(jìn)行驅(qū)動(dòng),或者使用如BCD碼二進(jìn)制轉(zhuǎn)十進(jìn)制譯碼器譯碼進(jìn)行驅(qū)動(dòng)。 LED數(shù)碼管顯示模塊設(shè)計(jì) 顯示模塊的選取顯示脈搏數(shù)模塊有兩個(gè)方案:LCD液晶模塊顯示和LED數(shù)碼管顯示。 //裝載初值 TL0 = T0L。,由于需要精確定時(shí),應(yīng)設(shè)置定時(shí)器T0的中斷優(yōu)先級(jí)最高。經(jīng)過實(shí)際的編程調(diào)試后發(fā)現(xiàn)了問題,頻率顯示不穩(wěn)定、計(jì)數(shù)不精確并且需要測(cè)量的時(shí)間長(zhǎng)。在測(cè)量信號(hào)頻率的時(shí)候我首先采用的設(shè)計(jì)思路是:,單位時(shí)間設(shè)置為一秒,也就是信號(hào)的頻率,設(shè)其數(shù)據(jù)類型為無符號(hào)的整型,其測(cè)量頻率范圍為0到65535Hz。MB4型脈搏波傳感器為壓電式脈搏傳感器,適用于心臟功能監(jiān)測(cè)儀檢測(cè)體表動(dòng)脈搏動(dòng)波形。適用于心臟功能監(jiān)測(cè)儀檢測(cè)體表動(dòng)脈搏動(dòng)波形。主要應(yīng)用于無創(chuàng)心血管測(cè)試,中醫(yī)脈象診斷??傮w來說,除了測(cè)量脈搏范圍有一點(diǎn)兒不足外。MAX232芯片用+5V電源供電,另外需要外接幾個(gè)電容便可以完成從TTL電平到RS232電平的轉(zhuǎn)換,僅僅需要連接STC89C52單片機(jī)的RXD和TXD引腳便可以實(shí)現(xiàn)數(shù)據(jù)的傳輸 [12]。3.中斷方式用轉(zhuǎn)換完成的狀態(tài)信號(hào)(EOC)作為中斷請(qǐng)求信號(hào),以中斷方式進(jìn)行數(shù)據(jù)傳送。轉(zhuǎn)換數(shù)據(jù)的傳送 A/D轉(zhuǎn)換后得到的數(shù)據(jù)應(yīng)及時(shí)傳送給單片機(jī)進(jìn)行處理。Vcc:電源,單一+5V、GND:地 [13]。ADDA、ADDB、ADDC:3位地址輸入線,用于選通8路模擬輸入中的一路。 AD轉(zhuǎn)換電路模塊AD轉(zhuǎn)換即模數(shù)轉(zhuǎn)換,就是把模擬信號(hào)轉(zhuǎn)換成數(shù)字信號(hào),以便于計(jì)算機(jī)進(jìn)行處理。RST引腳是復(fù)位信號(hào)的輸入端。2.控制引腳:RST/VPP:復(fù)位引腳,引腳上出現(xiàn)2個(gè)機(jī)器周期的高電平將使單片機(jī)復(fù)位、ALE/PROG:地址鎖存允許信號(hào)、PSEN:外部存儲(chǔ)器讀選通信號(hào)、EA/VPP:程序存儲(chǔ)器的內(nèi)外部選通,接低電平從外部程序存儲(chǔ)器讀指令,如果接高電平則從內(nèi)部程序存儲(chǔ)器讀指令。STC89C52是一種帶8K字節(jié)閃爍可編程可擦除只讀存儲(chǔ)器(FPEROMFlash Programable and Erasable Read Only Memory)的低電壓,高性能CMOS8的微處理器,俗稱單片機(jī)。采用數(shù)碼管顯示,節(jié)約設(shè)計(jì)成本,而且可以實(shí)現(xiàn)實(shí)時(shí)顯示的功能。 在運(yùn)放的反饋電阻上并聯(lián)一個(gè)電容,達(dá)到濾波的效果。2 總體設(shè)計(jì)思路 方案設(shè)計(jì)與選取 總體流程圖設(shè)計(jì)的總體流程圖如圖21所示:信號(hào)采集放大整形單片機(jī)模數(shù)變換數(shù)碼管顯示上位機(jī)顯示圖21 總體流程圖 方案選擇方案1: 脈搏傳感器將脈搏跳動(dòng)的壓力信號(hào)轉(zhuǎn)換為與此相對(duì)應(yīng)的電信號(hào)。家中備有這樣的一款脈搏計(jì),就可以在日常生活中監(jiān)控自己和家人的心率變化,可以有效防止和控制多種疾病的發(fā)生和變化,達(dá)到日常保健的目的。如果采用電子測(cè)量計(jì),有利于精確測(cè)量,還可以借助PC機(jī)進(jìn)行高效、合理的判斷和分析。字典Keywords: STC89C52。畢業(yè)設(shè)計(jì)論文基于單片機(jī)的電子脈搏計(jì)的設(shè)計(jì)摘 要人們?cè)谌粘I罨蚴轻t(yī)學(xué)上常常是通過測(cè)量脈搏跳動(dòng)的力度和頻率來檢測(cè)身體的健康狀況,而普通的方法是用手按在人腕部的動(dòng)脈上,根據(jù)脈搏的跳動(dòng)進(jìn)行計(jì)數(shù),這樣不僅測(cè)量時(shí)間長(zhǎng)而且精度不高,為了節(jié)省測(cè)量時(shí)間,一般不采用長(zhǎng)時(shí)間測(cè)量,而是幾秒鐘之內(nèi)測(cè)出脈搏數(shù)。 average heart rate, pulse measurement can only reflect the speed though, but the record of convenience. This design of elec tronic pulse meter to measure these two parameters are recorded and displayed the time, instantaneous measurements in real time through the PC, shows that the average pulse measurements by seven segment LED digital display.朗讀顯示對(duì)應(yīng)的拉丁字符的拼音直接用手摸脈測(cè)量誤差較大,并且無法實(shí)時(shí)觀測(cè)。該電子脈搏計(jì)具有誤差小,體積小易于攜帶的特點(diǎn)。該基于單片機(jī)的電子脈搏計(jì)優(yōu)點(diǎn)是制作簡(jiǎn)單,使用元器件少,工作穩(wěn)定可靠,顯示直觀,誤差不大于1%,成本低廉且能節(jié)電。 用普通運(yùn)放進(jìn)行發(fā)大,為達(dá)到高輸入阻抗的要求,采用同相比例放大。波形整形部分,方案3中的由555定時(shí)器構(gòu)成的施密特觸發(fā)器,電路搭構(gòu)簡(jiǎn)單易行,與前兩個(gè)方案相比減少了電路器件的繁瑣度。3 硬件電路結(jié)構(gòu)模塊 單片機(jī)的選取考慮到單片機(jī)作為整體電路設(shè)計(jì)的核心工作單元,選取STC89C52型號(hào)的單片機(jī)作為總處理器。P3口:8位準(zhǔn)雙向I/O口線,~。除了進(jìn)入系統(tǒng)的正常初始化之外,當(dāng)由于程序運(yùn)行出錯(cuò)或操作錯(cuò)誤使系統(tǒng)處于死鎖狀態(tài)時(shí),為擺脫困境,也需按復(fù)位鍵重新啟動(dòng)。本系統(tǒng)的復(fù)位電路采用按鍵電平復(fù)位方式,由于程序運(yùn)行出錯(cuò)或操作錯(cuò)誤使系統(tǒng)處于死鎖狀態(tài)時(shí),此方式無需重新上電,直接按鍵復(fù)位即可,操作簡(jiǎn)單。D0~D8:8位數(shù)字量輸出端。REF+、REF:基準(zhǔn)電壓。當(dāng)OE輸入高電平時(shí),輸出三態(tài)門打開,轉(zhuǎn)換結(jié)果的數(shù)字量輸出到數(shù)據(jù)總線上。因此可以用查詢方式,查詢EOC的狀態(tài),即可判斷轉(zhuǎn)換是否完成,并接著進(jìn)行數(shù)據(jù)傳送。PC機(jī)串口輸出電壓可高達(dá)12V,若直接與單片機(jī)相連會(huì)燒壞芯片,所以要借助于MAX232芯片來進(jìn)行相應(yīng)的電平轉(zhuǎn)換。外形尺寸小巧輕便,價(jià)格在60元左右。HK2000B集成化脈搏傳感器性能指標(biāo)如下:電源電壓:5~6VDC壓力量程:50~+300mmHg靈敏度:2000uV/mmHg靈敏度溫度系數(shù):1104/℃精度:%重復(fù)性:%遲滯:%過載:100倍HK2000B集成化脈搏傳感器采用高度集成化工藝將力敏元件PVDF壓電膜、靈敏度溫度補(bǔ)償元件、感溫元件、信號(hào)調(diào)理電路電路集成在傳感器內(nèi)。本傳感器殼體內(nèi)已配置放大器和輸出阻抗變換器,可