成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

畢業(yè)設(shè)計(jì) - 題目:基于 stm32 的病房呼叫系統(tǒng)

luffyZh / 2764人閱讀

摘要:目前病房呼叫系統(tǒng)主要有兩種一種是有線式一種是無(wú)線式。而在我國(guó),大多數(shù)醫(yī)院都是采用的傳統(tǒng)的有線式病房呼叫系統(tǒng)。主程序設(shè)計(jì)病房呼叫系統(tǒng)程序設(shè)計(jì)使用的是本身的固件庫(kù)。


1 簡(jiǎn)介

Hi,大家好,這里是丹成學(xué)長(zhǎng),今天向大家介紹一個(gè)學(xué)長(zhǎng)做的單片機(jī)項(xiàng)目

基于 stm32 的病房呼叫系統(tǒng)

大家可用于 課程設(shè)計(jì) 或 畢業(yè)設(shè)計(jì)

技術(shù)解答、畢設(shè)幫助、開(kāi)題指導(dǎo)print("Q 746876041") 

2 緒論

2.1 課題背景

隨著全球老齡化進(jìn)程的加快,全球生存環(huán)境的惡化,以及人類對(duì)健康關(guān)注的增加,醫(yī)療行業(yè)正快速膨脹。人們對(duì)醫(yī)療水平的要求不斷提高,特別是突發(fā)情況下病人請(qǐng)求值班醫(yī)生或護(hù)士進(jìn)行及時(shí)診斷或護(hù)理這一環(huán)節(jié),對(duì)提高醫(yī)院的管理服務(wù)質(zhì)量顯得尤其重要。因此通過(guò)病房呼叫系統(tǒng)完成向醫(yī)生的求助是一種極為方便有效的手段,相關(guān)的應(yīng)用設(shè)計(jì)正逐步推出。目前病房呼叫系統(tǒng)主要有兩種,一種是有線式,一種是無(wú)線式。而在我國(guó),大多數(shù)醫(yī)院都是采用的傳統(tǒng)的有線式病房呼叫系統(tǒng)。這種設(shè)計(jì)很難做到隱蔽和美觀,而且安裝與維護(hù)都不方便,抗電氣干擾能力也不強(qiáng)。因此學(xué)長(zhǎng)采用無(wú)線wifi來(lái)設(shè)計(jì)病房呼叫系統(tǒng)。

病房呼叫系統(tǒng)是為了提高醫(yī)院的服務(wù)質(zhì)量而提出的, 它能使病人及時(shí)快捷的進(jìn)行呼叫, 以方便醫(yī)院能快速準(zhǔn)確的了解病人情況, 并能及時(shí)施以救助。 系統(tǒng)是基于無(wú)線網(wǎng)絡(luò)開(kāi)發(fā)的、 以單片機(jī)stm32為核心的醫(yī)院無(wú)線病房呼叫系統(tǒng), 利用無(wú)線網(wǎng)傳輸信號(hào)和語(yǔ)音信息, 遠(yuǎn)程控制部分接收無(wú)線網(wǎng)發(fā)送來(lái)的信號(hào), 由stm32對(duì)其進(jìn)行解碼, 解碼后由數(shù)碼管和燈屏顯示, 語(yǔ)音信息由話筒傳出。

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

3.1 系統(tǒng)架構(gòu)

病房呼叫系統(tǒng)的開(kāi)發(fā)方案是參照國(guó)內(nèi)外相關(guān)技術(shù)的發(fā)展?fàn)顩r,在前人的基礎(chǔ)上稍加修改,并借鑒現(xiàn)在一些科研機(jī)構(gòu)的最新研究成果,同時(shí)根據(jù)我國(guó)醫(yī)院病房監(jiān)護(hù)建設(shè)的實(shí)際情況,為滿足患者的要求,并充分考慮其經(jīng)濟(jì)性和可靠性,能真正實(shí)現(xiàn)智能化呼叫的要求來(lái)確定的。根據(jù)系統(tǒng)擬達(dá)到的總體功能,將其劃分為以下功能模塊:顯示電路(LED燈屏、數(shù)碼管)、語(yǔ)音錄放電路(手柄)、鍵盤(pán)電路、報(bào)警電路、呼叫分機(jī)、無(wú)線網(wǎng)卡等。系統(tǒng)組成框圖如圖2-1所示。本設(shè)計(jì)采用主機(jī)和從機(jī)相分離的模式。從機(jī)安裝于各個(gè)病房,主機(jī)安裝于護(hù)士站,多個(gè)從機(jī)處于等待外部呼叫信號(hào)的狀態(tài),主機(jī)則時(shí)刻處于等待接受從機(jī)呼叫信號(hào)的狀態(tài),并且從機(jī)和主機(jī)之間采用無(wú)線數(shù)據(jù)傳輸通信。

3.2 主程序設(shè)計(jì)

病房呼叫系統(tǒng)程序設(shè)計(jì)使用的是 STM32 本身的固件庫(kù)。 系統(tǒng)開(kāi)始運(yùn)行后, 首先檢測(cè)電源狀態(tài), 對(duì) STM32、 數(shù)碼管和 LED 燈屏等進(jìn)行初始化, 一切正常后等待中斷的發(fā)生, 主控制器開(kāi)始檢測(cè)是否有呼叫傳入, 當(dāng)呼叫出傳入后, 運(yùn)行子程序。

3.3 語(yǔ)音模塊程序設(shè)計(jì)

語(yǔ)音模塊采用的VS1053b,它是通過(guò)一個(gè)串行輸入總線來(lái)接收它的輸入比特流,數(shù)據(jù)流被解碼后會(huì)通過(guò)數(shù)字音量控制器送到一個(gè)高精度DAC,其中的解碼器是通過(guò)一個(gè)串行控制總線來(lái)控制的。它控制整個(gè)系統(tǒng)完成語(yǔ)音錄入,存儲(chǔ),發(fā)送,接受,播放等功能。

開(kāi)機(jī)的時(shí)候先檢測(cè)字庫(kù),然后初始化VS1053,進(jìn)行RAM測(cè)試和正弦測(cè)試,之后,檢測(cè)SD卡根目錄是否存在RECORDER文件夾,如果不存在則創(chuàng)建,如果創(chuàng)建失敗,則報(bào)錯(cuò)。在找到SD卡的RECORDER文件夾后,即設(shè)置VS1053進(jìn)入錄音模式,開(kāi)始錄音,如果有TPAD按下,則開(kāi)始播放錄音。

3.4 顯示模塊程序設(shè)計(jì)

數(shù)碼管動(dòng)態(tài)顯示程序包括數(shù)字的顯示、 小數(shù)點(diǎn)的顯示、 數(shù)碼管的閃爍和數(shù)碼管的消隱等。 顯示的字符跟數(shù)據(jù)對(duì)應(yīng)關(guān)系如下表所示: 根據(jù)人的視覺(jué)暫留現(xiàn)象,一個(gè)數(shù)碼管每秒必須點(diǎn)亮 50 次以上, 才能達(dá)到穩(wěn)定顯示數(shù)據(jù)的目的。

3.5 鍵盤(pán)模塊程序設(shè)計(jì)

鍵盤(pán)模塊的程序首先需要進(jìn)行初始化, 初始化延時(shí)函數(shù), 初始化 LED 端口,初始化與按鍵連接的硬件接口。 然后軟件對(duì)按鍵去抖, 寫(xiě)明每個(gè)按鍵的功能。

3.6 無(wú)線傳輸模塊程序設(shè)計(jì)

當(dāng)數(shù)據(jù)從 CPU 經(jīng)過(guò)串行端口發(fā)送出去時(shí), 字節(jié)數(shù)據(jù)轉(zhuǎn)換為串行的位, 在接收數(shù)據(jù)時(shí), 串行的位被轉(zhuǎn)換為字節(jié)數(shù)據(jù)。 無(wú)線網(wǎng)卡與 stm32 直接就是使用的串口通信。

3.7 部分實(shí)現(xiàn)代碼

#include "led. h"#include "delay. h"#include "key. h"#include "tpad. h"#include "sys. h"#include "lcd. h"#include "usart. h"#include "flash. h"#include "sram. h"#include "malloc. h"#include "string. h"#include "mmc_sd. h"#include "ff. h"#include "exfuns. h"#include "fontupd. h"#include "text. h"#include "piclib. h"#include "string. h"#include "usmart. h"#include "fattester. h"#include "piclib. h"#include "vs10xx. h"#include "mp3player. h"#include "audiosel. h"#include "recorder. h"int main(void){delay_init() ; //延時(shí)函數(shù)初始化NVIC_Configuration() ; //設(shè)置NVIC中斷分組2: 2位搶占優(yōu)先級(jí), 2位響應(yīng)優(yōu)先級(jí)uart_init(9600) ; //串口初始化為9600LED_Init() ; //LED端口初始化TPAD_Init() ; //初始化觸摸按鍵LCD_Init() ; //LCD初始化KEY_Init() ; //按鍵初始化Audiosel_Init() ; //初始化音源選擇usmart_dev. init(72) ; //usmart初始化mem_init(SRAMIN) ; //初始化內(nèi)部?jī)?nèi)存池VS_Init() ;錄音程序#include "recorder. h"#include "delay. h"#include "usart. h"#include "key. h"#include "led. h"#include "lcd. h"#include "vs10xx. h"#include "malloc. h"#include "ff. h"#include "exfuns. h"#include "text. h"#include "tpad. h"//VS1053的WAV錄音有bug, 這個(gè)plugin可以修正這個(gè)問(wèn)題const u16 wav_plugin[40] =/* Compressed plugin */{0x0007, 0x0001, 0x8010, 0x0006, 0x001c, 0x3e12, 0xb817, 0x3e14, /* 0 */0xf812, 0x3e01, 0xb811, 0x0007, 0x9717, 0x0020, 0xffd2, 0x0030, /* 8 */0x11d1, 0x3111, 0x8024, 0x3704, 0xc024, 0x3b81, 0x8024, 0x3101, /* 10 */0x8024, 0x3b81, 0x8024, 0x3f04, 0xc024, 0x2808, 0x4800, 0x36f1, /* 18 */0x9811, 0x0007, 0x0001, 0x8028, 0x0006, 0x0002, 0x2a00, 0x040e,} ;//激活PCM 錄音模式//agc:0, 自動(dòng)增益. 1024相當(dāng)于1倍, 512相當(dāng)于0. 5倍, 最大值65535=64倍void recoder_enter_rec_mode(u16 agc){//如果是IMA ADPCM, 采樣率計(jì)算公式如下://采樣率=CLKI/256*d; //假設(shè)d=0, 并2倍頻, 外部晶振為12. 288M. 那么Fc=(2*12288000) /256*6=16Khz//如果是線性PCM, 采樣率直接就寫(xiě)采樣值VS_WR_Cmd(SPI_BASS, 0x0000) ;VS_WR_Cmd(SPI_AICTRL0, 8000) ; //設(shè)置采樣率, 設(shè)置為8KhzVS_WR_Cmd(SPI_AICTRL1, agc) ; //設(shè)置增益, 0, 自動(dòng)增益. 1024相當(dāng)于1倍, 512相當(dāng)于0. 5, 最大值65535=64VS_WR_Cmd(SPI_AICTRL2, 0) ; //設(shè)置增益最大值, 0, 代表最大值65536=64XVS_WR_Cmd(SPI_AICTRL3, 6) ; //左通道(MIC單聲道輸入)VS_WR_Cmd(SPI_CLOCKF, 0X2000) ; //設(shè)置VS10XX的時(shí)鐘, MULT:2倍頻; ADD: 不允; CLK: 12. 288MhzVS_WR_Cmd(SPI_MODE, 0x1804) ; //MIC, 錄音激活delay_ms(5) ; //等待至少1. 35msVS_Load_Patch((u16*) wav_plugin, 40) ;//VS1053的WAV錄音需要patch}//初始化WAV頭.void recoder_wav_init(__WaveHeader* wavhead) //初始化WAV頭{wavhead->riff. ChunkID=0X46464952; //"RIFF"wavhead->riff. ChunkSize=0; //還未確定, 最后需要計(jì)算wavhead->riff. Format=0X45564157; //"WAVE"wavhead->fmt. ChunkID=0X20746D66; //"fmt"wavhead->fmt. ChunkSize=16; //大小為16個(gè)字節(jié)wavhead->fmt. AudioFormat=0X01; //0X01, 表示PCM; 0X01, 表示IMA ADPCMwavhead->fmt. NumOfChannels=1; //單聲道wavhead->fmt. SampleRate=8000; //8Khz采樣率 采樣速率wavhead->fmt. ByteRate=wavhead->fmt. SampleRate*2; //16位, 即2個(gè)字節(jié)wavhead->fmt. BlockAlign=2; //塊大小, 2個(gè)字節(jié)為一個(gè)塊wavhead->fmt. BitsPerSample=16; //16位PCMwavhead->data. ChunkID=0X61746164; //"data"wavhead->data. ChunkSize=0; //數(shù)據(jù)大小, 還需要計(jì)算}

作品展示,實(shí)現(xiàn)效果:

4 最后

技術(shù)解答、畢設(shè)幫助、開(kāi)題指導(dǎo)print("Q 746876041") 

單片機(jī)畢設(shè)項(xiàng)目大全:
https://blog.csdn.net/huawei123444/article/details/119822845

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/121788.html

相關(guān)文章

  • 畢業(yè)設(shè)計(jì) - 題目基于stm32車牌識(shí)別系統(tǒng)設(shè)計(jì)

    摘要:對(duì)于道路交通應(yīng)用到的技術(shù),車牌識(shí)別系統(tǒng)是交通管理的主要技術(shù)。所以車牌識(shí)別系統(tǒng)目前是一個(gè)交通管理必備的技術(shù),因此本文對(duì)車牌識(shí)別系統(tǒng)進(jìn)行了研究與實(shí)現(xiàn)。車流統(tǒng)計(jì)車牌驗(yàn)證和移動(dòng)車載系統(tǒng)車牌識(shí)別系統(tǒng)可以用于對(duì)車輛流量統(tǒng)計(jì)。 ...

    不知名網(wǎng)友 評(píng)論0 收藏0
  • STM32學(xué)習(xí)筆記 第一章 ARM處理器

    摘要:處理器擁有的寄存器組。主堆棧指針復(fù)位后缺省使用的堆棧指針,用于操作系統(tǒng)內(nèi)核以及異常處理例程包括中斷服務(wù)例程。進(jìn)程堆棧指針由用戶的應(yīng)用程序代碼使用。堆棧指針的最低兩位永遠(yuǎn)是,這意味著堆??偸亲止?jié)對(duì)齊的。 ...

    ruicbAndroid 評(píng)論0 收藏0
  • 基于單片機(jī)智能家居控制系統(tǒng)

    摘要:中控部分采用了單片機(jī),其主要作用是獲取輸入部分?jǐn)?shù)據(jù),經(jīng)過(guò)內(nèi)部處理,控制輸出部分。 設(shè)計(jì)簡(jiǎn)介: 本設(shè)計(jì)是基于單片機(jī)的智能家居控制系統(tǒng),主要實(shí)現(xiàn)以下功能: 可通過(guò)DS18B20實(shí)時(shí)測(cè)量環(huán)境溫度溫度具有上下限,自動(dòng)模式下溫度超出限值,GMS發(fā)送短信溫度上下限通過(guò)手機(jī)藍(lán)牙設(shè)置系統(tǒng)可通過(guò)手機(jī)藍(lán)牙、紅外...

    zacklee 評(píng)論0 收藏0
  • 基于STM32平臺(tái)數(shù)字溫度顯示器系統(tǒng)設(shè)計(jì)

    摘要:帶中文字庫(kù)的是一種具有位位并行線或線串行多種接口方式,內(nèi)部含有國(guó)標(biāo)一級(jí)二級(jí)簡(jiǎn)體中文字庫(kù)的點(diǎn)陣圖形液晶顯示模塊其顯示分辨率為。貼片按鍵模塊支持標(biāo)準(zhǔn)的協(xié)議,完整的協(xié)議棧。以最低成本提供最大實(shí)用性,為功能嵌入其他系統(tǒng)提供無(wú)限可能。 項(xiàng)目簡(jiǎn)介 開(kāi)發(fā)環(huán)境: Keil5.14,CubeMX6.0.1,主...

    villainhr 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<