基于單片機的電子脈搏血壓計的設(shè)計_第1頁
基于單片機的電子脈搏血壓計的設(shè)計_第2頁
基于單片機的電子脈搏血壓計的設(shè)計_第3頁
基于單片機的電子脈搏血壓計的設(shè)計_第4頁
基于單片機的電子脈搏血壓計的設(shè)計_第5頁
已閱讀5頁,還剩36頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

基于單片機的電子脈搏血壓計的設(shè)計 摘 要 人們在日常生活或是醫(yī)學(xué)上常常是通過測量脈搏跳動的力度和頻率來檢測 身體的健康狀況 而普通的方法是用手按在人腕部的動脈上 根據(jù)脈搏的跳動 進行計數(shù) 這樣不僅測量時間長而且精度不高 為了節(jié)省測量時間 一般不采 用長時間測量 而是幾秒鐘之內(nèi)測出脈搏數(shù) 本文介紹一種基于 STC89C52 單 片機的電子脈搏計 通過測量腕部動脈的壓力 把壓力轉(zhuǎn)變?yōu)殡娦盘?送入單 片機 可以在 3 秒鐘之內(nèi)精確測量出每分鐘脈搏數(shù) 測量結(jié)果用三位 LED 數(shù)碼 管顯示 并且脈搏波形通過串口送入 PC 機 實時顯示脈搏波形 脈搏計是最常用的醫(yī)療檢查設(shè)備之一 實時準確的脈搏測量在日常生活 患者監(jiān)控 臨床治療及體育運動等方面都有著廣泛的應(yīng)用 脈搏測量包括瞬時 脈搏測量和平均脈搏測量 瞬時脈搏可以反映心率的快慢 同時能反映心率是 否勻齊 平均脈搏測量雖然只能反映心率的快慢 但記錄方便 本文設(shè)計的電 子脈搏計可以把這兩個參數(shù)在測量時都記錄下來并且顯示 瞬時測量結(jié)果通過 PC 機實時顯示 平均脈搏測量結(jié)果通過 LED 七段數(shù)碼管顯示 關(guān)鍵詞關(guān)鍵詞 STC89C52 單片機 脈搏 串口 Based on SCM electronic pulse plan design Abstract People in daily life or medicine is often measured by the pulse frequency and strength to detect the health status of body by hand and ordinary people by the arteries in the wrist according to a pulse count thus not only beat measuring time long and accuracy is not high in order to save the measuring time generally does not use the long time measurement but a few seconds pulse count Measured This paper introduces a STC89C52 MCU based on the electronic pulse plan by measuring the pressure the wrist artery pressure into electrical signals into a single chip microcomputer can accurate measurement in three seconds per minute a pulse with measurement results number three LED digital display and pulse tube through a serial port into PCS real time display pulse waveform Pulse meter is one of the most commonly used in the medical examination device real time accurate measurement of the pulse of daily life patient monitoring clinical treatment and other aspects of sports have a wide range of applications Pulse measurements include transient pulse measurement and the average pulse measurement Instantaneous heart rate may reflect the speed of the pulse while heart rate can reflect whether the uniform homogeneous 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 Keywords STC89C52 microcontroller pulse the serial interface 目 錄 1 引言 1 2 總體設(shè)計思路 1 2 1 方案設(shè)計與選取 1 2 1 1 總體流程圖 1 2 1 2 方案選擇 1 2 2 總體電路圖 2 3 硬件電路結(jié)構(gòu)模塊 4 3 1 單片機的選取 4 3 1 1 STC89C52 引腳功能說明 4 3 1 2 振蕩電路 5 3 1 3 復(fù)位電路 5 3 2 AD 轉(zhuǎn)換電路模塊 6 3 2 1 ADC0809 引腳功能 6 3 2 2 ADC0809 主要特性 7 3 2 3 ADC0809 工作過程 7 3 2 4 ADC0809 與單片機接口電路 8 3 2 5 ADC0809 與 PC 機連接 9 3 3 傳感器的選取 10 4 軟件程序設(shè)計 13 4 1 脈搏計數(shù)模塊的設(shè)計 13 4 1 1 脈搏計數(shù)程序方案的選取 13 4 1 2 脈搏計數(shù)代碼設(shè)計 14 4 2 LED 數(shù)碼管顯示模塊設(shè)計 15 4 2 1 顯示模塊的選取 15 4 2 2 LED 數(shù)碼管與單片機的接口電路 16 4 2 3 LED 數(shù)碼管驅(qū)動程序的設(shè)計 17 4 3 AD 轉(zhuǎn)換模塊的設(shè)計 18 4 4 串口發(fā)送程序設(shè)計 19 4 5 上位機程序及界面設(shè)計 20 4 5 1 上位機程序的設(shè)計 20 4 5 2 上位機界面的設(shè)計 21 4 6 擴展血壓計功能 22 5 軟硬件調(diào)試 23 6 結(jié)論 27 謝辭 28 參考文獻 29 附錄 30 1 1 引言 隨著經(jīng)濟的飛速發(fā)展和人民生活水平的日益提高 有關(guān)心腦血管疾病的發(fā)病 率與死亡率正在呈逐年上升趨勢 這就需要一種方便的方法來測量心腦血管的健 康狀況 可以實時觀測和評估人體的健康狀況 從古到今中外醫(yī)學(xué)界都重視從脈搏波中提取人體的健康狀況 并作為臨床診 斷和治療的依據(jù) 世界上幾乎所有的民族都用過摸脈來作為診斷疾病的手段 因 為脈搏處跳動壓力比較明顯 脈搏波所顯示出的波形 壓力強度 頻率和節(jié)奏等 方面的綜合信息 在很大程度上可以反映出人體心腦血管系統(tǒng)中許多生理病理的 健康狀況 直接用手摸脈測量誤差較大 并且無法實時觀測 如果采用電子測量計 有 利于精確測量 還可以借助 PC 機進行高效 合理的判斷和分析 隨著集成電路技 術(shù)的發(fā)展 電子脈搏計必然向微型化 大眾化 智能化的方向發(fā)展 脈搏計是最常用的醫(yī)療檢查設(shè)備之一 實時準確的脈搏測量在日常生活 患 者監(jiān)控 臨床治療及體育運動等方面都有著廣泛的應(yīng)用 脈搏測量包括瞬時脈搏 測量和平均脈搏測量 瞬時脈搏可以反映心率的快慢 同時能反映心率是否勻齊 平均脈搏測量雖然只能反映心率的快慢 但記錄方便 本設(shè)計這兩個參數(shù)在測量 時都會被記錄并且顯示 瞬時測量結(jié)果通過 PC 機實時顯示 平均脈搏測量結(jié)果通 過 LED 七段數(shù)碼管顯示 為了適應(yīng)人們生活中的需要 本文設(shè)計一款基于壓電傳感器的電子脈搏計 實現(xiàn)瞬時脈搏測量和平均脈搏測量 并將測量結(jié)果用數(shù)字顯示 該電子脈搏計具 有誤差小 體積小易于攜帶的特點 家中備有這樣的一款脈搏計 就可以在日常 生活中監(jiān)控自己和家人的心率變化 可以有效防止和控制多種疾病的發(fā)生和變化 達到日常保健的目的 測量范圍廣 測量精度高 顯示采用三位十進制數(shù)顯示 其設(shè)計思路是用壓電傳感器把待檢測對象的脈搏跳動轉(zhuǎn)變成電信號 但是由于 信號比較微弱 需要經(jīng)過傳感器內(nèi)部放大整形濾波后才可以得到規(guī)則的脈沖波形 處理后的信號經(jīng)過單片機定時計數(shù)后通過譯碼電路就可以從數(shù)碼管直接讀出被測 對象的脈搏數(shù)了 同時記錄每一次脈搏跳動的間隔和力度 實時記錄繪制曲線 分析數(shù)據(jù) 定時由基準時間產(chǎn)生電路完成 STC89C52 單片機構(gòu)成的控制電路在 硬件的作用下控制脈搏信號放大 整形和倍頻后再通過軟件進入定時計數(shù)器的時 間 該基于單片機的電子脈搏計優(yōu)點是制作簡單 使用元器件少 工作穩(wěn)定可靠 顯示直觀 誤差不大于 1 成本低廉且能節(jié)電 2 2 總體設(shè)計思路 2 1 方案設(shè)計與選取 2 1 1 總體流程圖 設(shè)計的總體流程圖如圖2 1所示 圖 2 1 總體流程圖 2 1 2 方案選擇 方案1 1 信號采集 脈搏傳感器將脈搏跳動的壓力信號轉(zhuǎn)換為與此相對應(yīng)的電信號 2 放大電路 將傳感器所采集到的微弱電流電壓放大 可采用高輸入阻抗的非 門進行放大 3 低通濾波 空氣中存在的高頻信號對信號采集有影響 需要進行濾除 只讓 低頻脈沖信號通過 對脈搏信號進行采集的時候 空氣中交流工頻干擾最大 根 據(jù)有源濾波的原理 在接至非門的輸入與輸出之間作為直流偏置電阻上并聯(lián)一個 電容 4 整形電路 可用兩個非門組成的施密特觸發(fā)器對放大后的信號進行整形 5 計數(shù) 譯碼 顯示 用來讀出脈搏數(shù) 并以十進制數(shù)的形式由數(shù)碼管顯示 方案2 1 信號采集 脈搏傳感器將脈搏跳動的壓力信號轉(zhuǎn)換為與此相對應(yīng)的電信號 2 放大電路 用普通運放進行發(fā)大 為達到高輸入阻抗的要求 采用同相比例 放大 3 低通濾波 在運放的反饋電阻上并聯(lián)一個電容 達到濾波的效果 4 整形電路 通過集成運算放大電路運放組成的單限比較器進行脈沖整形 方案3 1 信號采集與放大 與方案 1 和方案 2 中不同的是信號的采集和放大用一個 MB 4 型傳感器實現(xiàn) 傳感器不僅能把壓力信號轉(zhuǎn)變?yōu)殡娦盘?而且還能通過傳感 器內(nèi)部電路把信號放大輸出 信號采集放大整形單片機 模數(shù)變換 數(shù)碼管顯示 上位機顯示 3 2 波形整形 由于單片機中斷不識別脈搏波 所以放大后的信號通過 555 芯片 構(gòu)建的施密特觸發(fā)器 將放大后的脈搏波轉(zhuǎn)變?yōu)閱纹瑱C實現(xiàn)的方波信號 3 模數(shù)變換 將信號送入模數(shù)變換后將模擬信號轉(zhuǎn)變?yōu)閿?shù)字信號送入單片機 為上位機波形顯示部分做準備 4 數(shù)碼管顯示 用來讀出脈搏數(shù) 并以十進制數(shù)的形式由數(shù)碼管顯示 通過以上方案對比觀察可以得出 方案 3 中傳感器的選取簡單易行 節(jié)約了 許多外圍電路的空間 縮小了整體電路的體積 更加便于攜帶 如果價格合適的 話 是最優(yōu)的方案選擇 波形整形部分 方案 3 中的由 555 定時器構(gòu)成的施密特 觸發(fā)器 電路搭構(gòu)簡單易行 與前兩個方案相比減少了電路器件的繁瑣度 采用 數(shù)碼管顯示 節(jié)約設(shè)計成本 而且可以實現(xiàn)實時顯示的功能 綜合考慮 設(shè)計選 擇方案 3 的整體設(shè)計思路進行設(shè)計 2 2 總體電路圖 總體電路圖如圖 2 2 所示 圖 2 2 總體電路圖 單片機的 P1 口八個引腳分別與 LED 數(shù)碼管的八段段碼顯示控制端相連接 構(gòu)成了片選控制端 單片機的 P3 3 P3 5 引腳分別接到 LED 數(shù)碼管位選控制端 當程序控制單片機發(fā)送相應(yīng)的字符時 數(shù)碼管便會相應(yīng)的點亮 從而實現(xiàn)每分鐘 4 脈搏數(shù)目的顯示 這就是顯示模塊的設(shè)計 ADDA ADDB ADDC3 位地址輸入線接地 即選用 IN0 通道 模擬信號 通過 IN0 通道輸入 時鐘控制信號通過 CLOCK 端口輸入 時鐘頻率選擇為 500kHz A D 轉(zhuǎn)換啟動脈沖輸入端 START 與單片機的 P2 4 引腳相連 數(shù)據(jù)輸 出允許信號輸入端 OE 與單片機的 P2 5 引腳相連 通過單片機的 P2 4 與 P2 5 引腳控制 ADC0809 芯片 當轉(zhuǎn)換完成后數(shù)據(jù)通過 ADC0809 的 OUT1 OUT8 引腳送入單片機的 P0 0 P0 7 引腳進行處理 總體電路框圖用信號發(fā)生器代替?zhèn)鞲衅髂M采集到的信號 一路送入單片機 經(jīng)過單片機的處理后送 LED 數(shù)碼管顯示每分鐘的脈搏數(shù) 一路送到 ADC0809 芯 片進行模數(shù)轉(zhuǎn)換 并將轉(zhuǎn)換后的信號送入單片機 信號經(jīng)過單片機的處理后送到 上位機實時顯示脈搏波波形 5 3 硬件電路結(jié)構(gòu)模塊 3 1 單片機的選取 考慮到單片機作為整體電路設(shè)計的核心工作單元 選取 STC89C52 型號的單 片機作為總處理器 STC89C52 是一種帶 8K 字節(jié)閃爍可編程可擦除只讀存儲器 FPEROM Flash Programable and Erasable Read Only Memory 的低電壓 高性能 CMOS8 的微處理器 俗稱單片機 該器件采用 ATMEL 高密度非易失存儲器制造 技術(shù)制造 與工業(yè)標準的 MCS 51 指令集和輸出管腳相兼容 其芯片引腳圖如下 圖 3 1 所示 圖 3 1 STC89C52 芯片引腳圖 STC89C52 主要功能 兼容 MCS51 指令系統(tǒng) 32 個雙向 I O 口 3 個 16 位可 編程定時 計數(shù)器中斷 2 個串行中斷 2 個外部中斷源 2 個讀寫中斷口線 低功 耗空閑和掉電模式 8K 可反復(fù)擦寫 Flash ROM 256x8bit 內(nèi)部 RAM 時鐘頻率 0 到 24MHz 可編程 UART 串行通道 共 6 個中斷源 3 級加密位 軟件設(shè)置睡眠 和喚醒功能 3 1 1 STC89C52 引腳功能說明 1 可編程輸入 輸出引腳 STC89C52 單片機有 4 組 8 位的可編程 I O 口 分 別位 P0 P1 P2 P3 口 每個口有 8 根引腳 共 32 根 6 P0 口 8 位雙向 I O 口線 名稱為 P0 0 P0 7 P1 口 8 位準雙向 I O 口線 名稱為 P1 0 P1 7 P2 口 8 位準雙向 I O 口線 名稱為 P2 0 P2 7 P3 口 8 位準雙向 I O 口線 名稱為 P3 0 P3 7 2 控制引腳 RST VPP 復(fù)位引腳 引腳上出現(xiàn) 2 個機器周期的高電平將使 單片機復(fù)位 ALE PROG 地址鎖存允許信號 PSEN 外部存儲器讀選通信號 EA VPP 程序存儲器的內(nèi)外部選通 接低電平從外部程序存儲器讀指令 如果接 高電平則從內(nèi)部程序存儲器讀指令 3 外接晶振引腳 XTAL1 片內(nèi)振蕩電路的輸入端 XTAL2 片內(nèi)振蕩電路 的輸出端 4 電源引腳 VCC 電源輸入 接 5V 電源 GND 接地線 11 3 1 2 振蕩電路 單片機的時鐘信號由內(nèi)部振蕩電路產(chǎn)生 振蕩電路如圖 3 2 所示 圖 3 2 振蕩電路 本系統(tǒng)選取的晶振頻率為 12MHz 電容選擇 30pF 經(jīng)計算得單片機工作機器 周期為 1 s 3 1 3 復(fù)位電路 復(fù)位是單片機的初始化操作 其主要功能是把 PC 初始化為 0000H 使單片機 從 0000H 單元開始執(zhí)行程序 除了進入系統(tǒng)的正常初始化之外 當由于程序運行 出錯或操作錯誤使系統(tǒng)處于死鎖狀態(tài)時 為擺脫困境 也需按復(fù)位鍵重新啟動 RST 引腳是復(fù)位信號的輸入端 復(fù)位信號是高電平有效 其有效時間應(yīng)持續(xù)二個 機器周期以上 若使用頻率為 12MHz 的晶振 則復(fù)位信號持續(xù)時間應(yīng)超過 2 s 才 能完成復(fù)位操作 1 7 復(fù)位操作有上電自動復(fù)位和按鍵手動復(fù)位兩種方式 上電自動復(fù)位是通過外 部復(fù)位電路的電容充電來實現(xiàn)的 按鍵手動復(fù)位有電平方式和脈沖方式兩種 其 中 按鍵電平復(fù)位是通過使復(fù)位端經(jīng)電阻與 Vcc 電源接通而實現(xiàn)的 而按鍵脈沖 復(fù)位則是利用 RC 微分電路產(chǎn)生的正脈沖來實現(xiàn)的 按鍵電平復(fù)位電路如圖 3 3 所 示 圖 3 3 按鍵電平復(fù)位電路 上述電路圖中的電容 電阻參數(shù)適用于 12MHz 晶振 能保證復(fù)位信號高電平 持續(xù)時間大于 2 個機器周期 本系統(tǒng)的復(fù)位電路采用按鍵電平復(fù)位方式 由于程序運行出錯或操作錯誤使 系統(tǒng)處于死鎖狀態(tài)時 此方式無需重新上電 直接按鍵復(fù)位即可 操作簡單 3 2 AD 轉(zhuǎn)換電路模塊 AD 轉(zhuǎn)換即模數(shù)轉(zhuǎn)換 就是把模擬信號轉(zhuǎn)換成數(shù)字信號 以便于計算機進行 處理 目前廣泛應(yīng)用在單片機系統(tǒng)中的主要有積分型 逐次比較型 并行比較型 串并行型 調(diào)制型 電容陣列逐次比較型 壓頻變換型 打算采用的具體芯片型號為逐次比較型 ADC0809 AD574A 與雙積分型 AD 轉(zhuǎn)換器 MC14433 考慮到轉(zhuǎn)換精度 速度和芯片價格 本設(shè)計采用 ADC0809 ADC0809 是美國國家半導(dǎo)體公司生產(chǎn)的 CMOS 工藝 8 通道 8 位逐 次逼近式 AD 轉(zhuǎn)換器 其內(nèi)部有一個 8 通道多路開關(guān) 它可以根據(jù)地址碼鎖存譯碼后的信號 只選 通 8 路模擬輸入信號中的一個進行 AD 轉(zhuǎn)換 ADC0809 是目前國內(nèi)應(yīng)用最廣泛 的 8 位通用 AD 芯片 ADC0809 芯片有 28 條引腳 采用雙列直插式封裝 3 2 1 ADC0809 引腳功能 下面說明各引腳功能 8 IN0 IN7 8 路模擬量輸入端 D0 D8 8 位數(shù)字量輸出端 ADDA ADDB ADDC 3 位地址輸入線 用于選通 8 路模擬輸入中的一 路 START A D 轉(zhuǎn)換啟動脈沖輸入端 輸入一個正脈沖使其啟動 脈沖 上升 沿使 ADC0809 復(fù)位 下降沿啟動 A D 轉(zhuǎn)換 EOC A D 轉(zhuǎn)換結(jié)束信號輸出端 當 A D 轉(zhuǎn)換結(jié)束時 此端輸出一個高電 平 轉(zhuǎn)換期間一直為低電平 OE 數(shù)據(jù)輸出允許信號輸入 端 高電平有效 當 A D 轉(zhuǎn)換結(jié)束時 此端輸 入一個高電平 才能打開輸出三態(tài)門 輸出數(shù)字量 CLK 時鐘脈沖輸入端 要求時鐘頻率不高于 640KHZ REF REF 基準電壓 Vcc 電源 單一 5V GND 地 13 3 2 2 ADC0809 主要特性 ADC0809 主要特性 8 路輸入通道 8 位 A D 轉(zhuǎn)換器 即分辨率為 8 位 具有轉(zhuǎn)換啟??刂贫?時鐘為 640kHz 時轉(zhuǎn)換時間為 100 s 時鐘為 500kHz 時 130 s 單個 5V 電源供電 模擬輸入電壓范圍 0 5V 不需零點和滿刻度校 準 工作溫度范圍為 40 85 攝氏度 低功耗 約 15mW 3 2 3 ADC0809 工作過程 首先輸入 3 位地址 并使 ALE 1 將地址存入地址鎖存器中 此地址經(jīng)譯 碼選通 8 路模擬輸入之一到比較器 START 上升沿將逐次逼近寄存器復(fù)位 下 降沿時啟動 A D 轉(zhuǎn)換 之后 EOC 輸出信號變低 指示轉(zhuǎn)換正在進行 直到 A D 轉(zhuǎn)換完成 EOC 變?yōu)楦唠娖?指示 A D 轉(zhuǎn)換結(jié)束 結(jié)果數(shù)據(jù)已存入鎖存器 這個信號可用作中斷申請 當 OE 輸入高電平時 輸出三態(tài)門打開 轉(zhuǎn)換結(jié)果 的數(shù)字量輸出到數(shù)據(jù)總線上 轉(zhuǎn)換數(shù)據(jù)的傳送 A D 轉(zhuǎn)換后得到的數(shù)據(jù)應(yīng)及時傳送給單片機進行處理 數(shù) 據(jù)傳送的關(guān)鍵問題是如何確認 A D 轉(zhuǎn)換的完成 因為只有確認完成后 才能進 行傳送 為此可采用下述三種方式 確認 AD 轉(zhuǎn)換是否完成 12 1 定時傳送方式 對于一種 A D 轉(zhuǎn)換其來說 轉(zhuǎn)換時間作為一項技術(shù)指標是已知的和固定的 例如 ADC0809 在時鐘頻率為 500kHz 時轉(zhuǎn)換時間為 128 s 相當于 12MHz 的 MCS 51 單片機共 128 個機器周期 可據(jù)此設(shè)計一個延時子程序 A D 轉(zhuǎn)換啟 動后即調(diào)用此子程序 當延遲時間到達時 轉(zhuǎn)換可以確定已經(jīng)完成了 接著就 9 可進行數(shù)據(jù)傳送 2 查詢方式 A D 轉(zhuǎn)換芯片可以利用表明轉(zhuǎn)換完成的狀態(tài)信號 例如 ADC0809 的 EOC 端 因此可以用查詢方式 查詢 EOC 的狀態(tài) 即可判斷轉(zhuǎn)換是否完成 并接著 進行數(shù)據(jù)傳送 3 中斷方式 用轉(zhuǎn)換完成的狀態(tài)信號 EOC 作為中斷請求信號 以中斷方式進行數(shù)據(jù) 傳送 本設(shè)計采用單獨通道 定時傳送方式 ADDA ADDB ADDC3 位地址輸入 線接地 即選用 IN0 通道輸入模擬信號 經(jīng) ADC0809 轉(zhuǎn)換完成后將數(shù)字信號采 用定時傳送方式傳入單片機進行數(shù)據(jù)處理 然后單片機把數(shù)據(jù)經(jīng)過MAX232 電 平轉(zhuǎn)換后送入 PC 機串口 PC 機根據(jù)所接收的數(shù)據(jù)經(jīng)過 VB 界面實時繪制波形 3 2 4 ADC0809 與單片機接口電路 由于 proteus 仿真軟件不支持 ADC0809 芯片仿真 所以采用 ADC0808 芯片代 替 ADC0809 其功能特性與 ADC0809 芯片相同 軟件仿真時采用 ADC0808 芯片 實際硬件電路中采用 ADC0809 芯片 無論是仿真還是實際硬件其與單片機接口電 路相同 ADC0808 與單片機接口電路如圖 3 4 所示 圖 3 4 ADC0808 與單片機接口電路 10 由圖 3 4 接口電路可以看出 ADDA ADDB ADDC3 位地址輸入線接地 即選用 IN0 通道 模擬信號通過 IN0 通道輸入 時鐘控制信號通過 CLOCK 端 口輸入 時鐘頻率選擇為 500kHz A D 轉(zhuǎn)換啟動脈沖輸入端 START 與單片機 的 P2 4 口相連 數(shù)據(jù)輸出允許信號輸入端 OE 與單片機的 P2 5 口相連 通過單 片機的 P2 4 與 P2 5 端口控制 ADC0809 芯片 當轉(zhuǎn)換完成后數(shù)據(jù)通過 ADC0809 的 OUT1 OUT8 端口送入單片機的 P0 0 P0 7 進行處理 3 2 5 ADC0809 與 PC 機連接 本設(shè)計需要單片機與 PC 機間實現(xiàn)實時通信 PC 機內(nèi)基本上都裝有一個 RS 232 異步通信適配板 它的主要工作器件是可編程的 UART 芯片 從而可以使 PC 機有能力與其他具有標準 RS 232 串行通信接口的其他設(shè)備進行通信 STC89C52 單片機本身具有一個全雙工的串行口 但其串行口為 TTL 電平 需要外接一個 TTL RS 232 電平轉(zhuǎn)換器這樣才能使單片機的串口與 PC 的 RS 232 串行口進行連接 這樣便可以組成一個簡單的串行通信接口 由于 PC 機的 RS 232 邏輯電平與單片機的 TTL 電平不兼容 為了實現(xiàn)單片機 與 PC 機的通信 必須進行電平轉(zhuǎn)換 因此本設(shè)計采用由美國 MAXIM 公司生產(chǎn)的 MAX232 芯片 它是目前應(yīng)用較為普遍的串行口電平轉(zhuǎn)換器 PC 機串口輸出電壓 可高達 12V 若直接與單片機相連會燒壞芯片 所以要借助于 MAX232 芯片來進 行相應(yīng)的電平轉(zhuǎn)換 MAX232 芯片用 5V 電源供電 另外需要外接幾個電容便可 以完成從 TTL 電平到 RS 232 電平的轉(zhuǎn)換 僅僅需要連接 STC89C52 單片機的 RXD 和 TXD 引腳便可以實現(xiàn)數(shù)據(jù)的傳輸 12 MAX232 芯片與單片機和串口的電 路連接圖如圖 3 5 所示 圖 3 5 MAX232 接口電路 11 在實際的焊接過程中一定要認真細心 在看好引腳序號和硬件引腳必須一致 否則當硬件焊接好后在調(diào)試過程中會遇到許多意想不到的問題 不僅需要花很長 時間去檢查究竟是哪個地方出錯了 如何修改 事倍功半 效果很不理想 在調(diào)試硬件時串口老是接收不到數(shù)據(jù) 在經(jīng)過多次修改程序與硬件電路檢查 后終于發(fā)現(xiàn)是 MAX232 與串口的引腳錯接到引腳 8 導(dǎo)致了以后許多不必要的工作 量 既浪費時間又浪費精力 所以說認真細心的態(tài)度是工作中所必需的 3 3 傳感器的選取 本設(shè)計中關(guān)鍵之處在于信號的采集 信號采集可以分為壓電式信號采集或光 電式信號采集 由于光電信號采集相對誤差較大 可控制度低且成本比較高 于 是本設(shè)計采用壓電式傳感器采取信號 考慮到的壓電式傳感器有壓電薄膜傳感器 壓電陶瓷片 HK 2000 系列的脈搏傳感器 MB 4 型脈搏波傳感器和 SC0073 微型 脈搏傳感器 SC0073 微型動態(tài)脈搏微壓傳感器的主要性能指標如下 壓力范圍 1Kpa 靈敏度 0 2mv pa 非線性度 1 F S 頻率響應(yīng) 1 1000HZ 標準工作電壓 3V DC 擴充工作電壓 1 5 6V DC 標準負載電阻 10K 擴充電阻 5K 20K 外形尺寸 SC0073 A F12 7 X 7 6 由以上性能指標可以看出 SC0073 微型動態(tài)脈搏微壓傳感器具有比較高的靈敏 度 非線性比較好 頻率響應(yīng)范圍很廣 但如果人體脈搏每分鐘心跳少于 60 下 則有可能檢測不到脈搏信號 擴充工作電壓可以與單片機的工作電壓相匹配 節(jié) 省了另外獨立的工作電源 外形尺寸小巧輕便 價格在 60 元左右 總體來說 除 了測量脈搏范圍有一點兒不足外 其他各方面的性能都值得考慮 HK 2000A 集成化脈搏傳感器性能指標如下 電源電壓 3 12VDC 壓力量程 50 300mmHg 過載 100 倍 輸出高電平 大于 VCC 1 5V 輸出低電平 小于 0 2V 12 HK 2000A 集成化脈搏傳感器采用高度集成化工藝將力敏元件 PVDF 壓電膜 靈敏度溫度補償元件 感溫元件 信號調(diào)理電路集成在傳感器內(nèi) 脈搏波動一次 輸出一正脈沖 該產(chǎn)品可用于脈率檢測 主要用于運動 健身器材中的心率測試 其靈敏度高 抗干擾性能強 過載能力大 一致性好 性能穩(wěn)定可靠 使用壽命 長 價格在 100 元左右 HK 2000B 集成化脈搏傳感器性能指標如下 電源電壓 5 6VDC 壓力量程 50 300mmHg 靈敏度 2000uV mmHg 靈敏度溫度系數(shù) 1 10 4 精度 0 5 重復(fù)性 0 5 遲滯 0 5 過載 100 倍 HK 2000B 集成化脈搏傳感器采用高度集成化工藝將力敏元件 PVDF 壓電膜 靈敏度溫度補償元件 感溫元件 信號調(diào)理電路電路集成在傳感器內(nèi) 主要應(yīng)用 于無創(chuàng)心血管測試 中醫(yī)脈象診斷 其靈敏度高 抗干擾性能強 過載能力大 一致性好 性能穩(wěn)定可靠 使用壽命長 價格在 240 元左右 HK 2000C 集成化數(shù)字脈搏傳感器在 HK 2000B 集成化脈搏傳感器基礎(chǔ)上增加 了程控放大電路 基線調(diào)整電路 A D 轉(zhuǎn)換電路 串行通信電路 使用戶使用更 方便 快捷 性能指標同 HK 2000B 集成化脈搏傳感器 價格在 480 元左右 MB 4 型脈搏波傳感器主要性能指標如下 1 頻率響應(yīng) 0 1 35Hz 2 靈敏度 2mv Pa 對于正常脈搏波信號 輸出幅度可達 3 4Vp p 3 絕緣阻抗 1000M 4 輸出阻抗 0 t LED 數(shù)碼管采用動態(tài)掃描方式顯示 相應(yīng)的就需要動態(tài)掃描函數(shù)來控制 首先定義一個局部變量 通過局部變量的變化來控制 LED 數(shù)碼管的位選控制端 19 和段碼顯示控制 當這些設(shè)定好后 要想使亮著的數(shù)碼管持續(xù)時間能夠滿足人的 視覺暫留效果 便需要調(diào)用延時子函數(shù)使其延時時間滿足需求 本設(shè)計選用的延 時時間為 1 5ms 具體程序如下所示 Scan LED 數(shù)碼管掃描子函數(shù) uchar k 定義局部變量 k for k 0 k 3 k 通過 k 控制哪個數(shù)碼管顯示 Discan scan con k 位選控制位送 P3 口 DiSdata dis 7 display k 字碼段數(shù)據(jù)位送 P1 口 delay us 150 設(shè)定延時時間為 1 5ms 4 3 AD 轉(zhuǎn)換模塊的設(shè)計 雖然 ADC0809 芯片是可以用來進行 8 路信號同時輸入循環(huán)檢測的 但本設(shè)計 只采用單獨通道進行信號轉(zhuǎn)換 因為這個芯片應(yīng)用普遍價格實惠 所以選用此芯 片 代碼設(shè)計中采用定時傳送方式 把 ADDA ADDB ADDC 三個地址輸入線 都接地 即選用 IN0 通道輸入模擬信號 經(jīng) ADC0809 轉(zhuǎn)換完成后將數(shù)字信號采 用定時傳送方式傳入單片機進行數(shù)據(jù)處理 因為對于一種方式的 A D 轉(zhuǎn)換其來說 轉(zhuǎn)換時間是已知的和固定的 例如 ADC0809 在時鐘頻率為 500kHz 時轉(zhuǎn)換時間為 128 s 相當于 12MHz 的 MCS 51 單片機共 128 個機器周期 可據(jù)此設(shè)計一個延時子程序 A D 轉(zhuǎn)換啟動后即 調(diào)用此子程序 當延遲時間到達時 轉(zhuǎn)換可以確定已經(jīng)完成了 接著就可進行數(shù) 據(jù)傳送 程序代碼設(shè)計中首先令 START 為 1 延時一段時間后將主次逼近寄存器復(fù) 位 然后再令 START 為 0 啟動 AD 轉(zhuǎn)換并延時 隨后 EOC 輸出信號變低 指示轉(zhuǎn)換正在進行 直到 AD 轉(zhuǎn)換完成 EOC 變?yōu)楦唠娖?指示 AD 轉(zhuǎn)換工作 結(jié)束 并將轉(zhuǎn)換結(jié)果存入鎖存器 接著設(shè)置 OE 為 1 打開輸出三態(tài)門 并將轉(zhuǎn) 化的數(shù)字量輸出到數(shù)據(jù)總線上傳到 P0 口 P0 口數(shù)據(jù)再送入單片機的數(shù)據(jù)緩存 單元等待處理 之后設(shè)置 OE 為 0 關(guān)閉輸出三態(tài)門 具體 AD 轉(zhuǎn)換子程序代碼 如下所示 void ad 20 unsigned int i j 聲明局部變量 i j START 1 使其逐次逼近寄存器復(fù)位 For i 0 i 5 i 延時等待復(fù)位完成 START 0 啟動 AD 轉(zhuǎn)換 并使 EOC 信號為低電平 For i 0 i 0 t 32 scan LED 掃描函數(shù) uchar k for k 0 k 3 k discan scan con k 控制位送 P3 口 DiSdata dis 7 display k 數(shù)據(jù)位送 P1 口 delay us 150 串行口初始化 void init serial void TMOD 0 x20 定時器 1 方式 2 8 位自動重裝 SCON 0 x40 串行工作方式 1 8 位異步通信方式 PCON 0 x00 SMOD 1 表示數(shù)據(jù)傳輸率加倍 TH1 0 xfd TL1 0 xfd 數(shù)據(jù)傳輸率 9600 fosc 11 0592MHz TR1 1 OE 1 啟動定時器 1 向串口發(fā)送一個字符 void send char unsigned char x SBUF x while TI 0 TI 0 Timer0 interrupt 1 定時 T0 中斷服務(wù)程序 mb n n 0 void ex int0 interrupt 0 外部中斷 0 中斷服務(wù)程序 33 n void dingshi TMOD 0 x02 工作方式 T0 選擇方式 2 計數(shù) TH0 T0H 裝載初值 TL0 T0L PX0 1 外部中斷 0 為為高優(yōu)先級中斷 ET0 1 允許 T0 溢出中斷 EX0 1 允許外部中斷 0 中斷 TR0 1 啟動定時計數(shù) T0 工作 EA 1 所有的中斷請求被開放 main 主函數(shù) unsigned int i j dingshi init serial while 1 display 2 mb 10 display 1 mb 10 10 display 0 mb 100 10 scan START 1 for i 0 i

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 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

提交評論