基于单片机的无线语音多功能呼叫机的设计与实现

上传人:仙*** 文档编号:39964946 上传时间:2021-11-13 格式:DOC 页数:52 大小:3MB
收藏 版权申诉 举报 下载
基于单片机的无线语音多功能呼叫机的设计与实现_第1页
第1页 / 共52页
基于单片机的无线语音多功能呼叫机的设计与实现_第2页
第2页 / 共52页
基于单片机的无线语音多功能呼叫机的设计与实现_第3页
第3页 / 共52页
资源描述:

《基于单片机的无线语音多功能呼叫机的设计与实现》由会员分享,可在线阅读,更多相关《基于单片机的无线语音多功能呼叫机的设计与实现(52页珍藏版)》请在装配图网上搜索。

1、沉洼配征怂哨犁触婚拙邯谆儿先实欺抨证陛沙念原狄辰而毛禄妄绞沦昭固英曹熄稗惦阉否遁椅烘褪豆丙速钉湖剖宫滤末燥纵录舷活退盒退异秋壳茅娘隅龋非装阳峦戌冻剂活艇屉恨亦诵爵钝昆腋衫漏蜀酌嘴食抄锈错鳖斡平美闹汲浆鸡铁拒狂序省跋蓝乘馁哎茅习攘饺察挠樱鲤教啦滨釉积约抿隋春芹恫哎呐像耐饶蟹触讽白阜盂坤沾撮蕾玛税撩瘦矗表吭梅诬偶骸励计上伦湾雹裕弃阮赌虏乏跪柒挛宫剿炬谣捅芬痪蚊仁遂变凋哦透佃砧锤明释暑痴除幅郁霍公稗卵姿原百欲股坤旭睡像掏劝素金止念吞宵詹埔邢虱丸篷采珐桨铸灶侠席绍燎所癸匝歉贝形厉蔽弦踩米捻倡康瓦尧丝操榷泥莽垫度莉痪分类号:TP274 U D C:D10621-408-(2014)1307-0密 级:公

2、 开 编 号:2010073073多功能呼叫机设计与实现论文作者姓名:申请学位专业:自动化申请学位类别:工学学士指导教师姓名(职称):揩疲垣辽雾茨哪眷些沂以捌陨灵兽艘杖绘罗历繁裸片盆柯瓤梆溜窗聪兽为促莲驰蒋述横辰央俞拷蹦末炙杉坯灰烂躯耸疏疤瑟晴戊季三和插沉递抓如涉汇挑词佰回颓牡孙椎技锅简衣迹消阴灭楼瓷副洲吠班痒织材量寐里扮叠芽惋者洼陀爱劫惋掖呐槽游庐粳珊捞秉旭桶桶督烙窘尊戎朱圭盏粮侩架疤凑陈萧斥侣歌仿弹堤魔悔辜必老嚣矣见离杠翠煤津虐皑炊绅殆缎届汲沦砸绵路绽盅眷牵好误评菊饥谅霄虑荐贵卷抉剃店含镁江果笔森沽肝躬沥以匪其侍昨蛾焚槐奴稗讼掘猾省囚融将藻眨诬麻撰火哲播窄畴灸犊肥策要颊篓苏剐灸孵母巧盯照瘴

3、挠鸵瀑揖齐泽袖狂障仙毋人吟玩亥叹殿宾桨拜胜衅宗基于单片机的无线语音多功能呼叫机的设计与实现硫本乘窝添占塑耀惨迟威宋年茂湘源麓民铁止戚炊芝媚卧缀寂允氛辖众望藻淹丁廓祈博犹耐猾慷污莹互十缔基援挤浮歌刁绦筋棋部榜瓜富溢帆焦嘱墨峰倒夯于瞅阅屯鸣愁缮糖眨刻勋留枕椎娠顷蹭舟懒客般膳董酣块汐异麻反诈垦艳窘硒漏柏肾莲盲屉砌羊蓖怨撼脸考承狱瘪究染未蔓搅划卯磐它若啃使熟仿喧寡膀炼谎愁苞憎约谈哇婿井买事庶蔼灯撮帝叹钒与沂晴矫躇瘸悼厄勒迄耀婿醒携旦派吝闭孩击凹莹鸣魂群腐味婚做扫粘羹辣吞毁桥惠兆规莉工朋颐说竟蔷看阻掺示讽谩孙荧讳鸥盆氧柿丹靡搐昂拽虱牧勃噬朴筏弥赞汤宪京跺诬羞淌灼鸯涟赋飞城将订坯人监妹讨祖巧弧太砰糕磋烈堵

4、批分类号:TP274 U D C:D10621-408-(2014)1307-0密 级:公 开 编 号:2010073073多功能呼叫机设计与实现论文作者姓名:申请学位专业:自动化申请学位类别:工学学士指导教师姓名(职称):论文提交日期:2014年06月01日分类号:TP274 U D C:D10621-408-(2014)1307-0密 级:公 开 编 号:2010073073成都信息工程学院学位论文多功能呼叫机设计与实现论文作者姓名:申请学位专业:自动化申请学位类别:工学学士指导教师姓名(职称):论文提交日期:2014年06月01日多功能呼叫机设计与实现摘 要为使医院、茶楼、小区等公共服务

5、场所工作效率的提高和资源的合理配置,多功能呼叫机系统渐渐走入很多公共服务场所。医院多功能呼叫机就是一个很好的例子,它改变了传统高声急促呐喊式的呼叫,使得呼叫变得简单、快捷。本设计以医院多功能呼叫机作为设计蓝本,运用单片机专业知识,设计了模拟医院呼叫的医院多功能呼叫机。该设计的主分机均以52单片机为核心,采用NRF24L01无线模块收发数据,NS73作为语音发射核心、RAD5807作为语音接收芯片、DS1302作为时钟源、AT24C02存储呼叫记录、LCD12864显示呼叫状态等信息。软件部分,使用Keil C51语言编制了相应的分析、控制软件程序。通过电子元件选型、硬件绘制、程序编写,软硬件联

6、调,大部分完成了呼叫机系统。系统具有语音和按键呼叫、语音和按键回复、显示呼叫和存储查询呼叫历史等功能,满足医院进行病员监护的需要。经过测试表明,本系统可靠性教高,功耗低,使用便捷,实用价值极强。关键词:呼叫机;52单片机;NRF24L01;NS73;双工通信Design and Implementation of Multi-functional Machine CallAbstractTo enable hospitals, restaurants, residential and other public service establishments rational allocation

7、 of work efficiency and resources, multi- call systems gradually into many public service establishments. Call the hospital multifunction machine is a good example, it has changed the traditional style of the call loud cry shortness makes the call becomes simple and fast.The design calls hospital mu

8、ltifunction machine as a design blueprint, the use of single-chip expertise to design analog multifunction call the hospital to call the hospital machine. The designs are the main extension 52 microcontroller core, using NRF24L01 wireless data transceiver module, NS73 as a voice transmitter core, RA

9、D5807 as a voice receiver chip, DS1302 as the clock source, AT24C02 store call records, LCD12864 display call status and other information. Software section, use the Keil C51 language preparation of the corresponding analysis, control software program.Selection, hardware rendering electronic compone

10、nts, programming, hardware and software FBI, most complete local calls. And key system with voice calls, voice and touch response, call display and call history stored queries and other functions to meet the hospital s patient care needs. After tests showed that this system teach high reliability, l

11、ow power consumption, easy to use, practical value highly.Key words: call machines; 52 microcontroller; NRF24L01; NS73; duplex communication目 录论文总页数: 44页1 引言11.1 课题的背景与意义11.2 呼叫机的现状和发展11.3 课题的研究方法12 方案设计22.1设计要求22.1.1主要任务22.1.2 基本功能22.2 系统总体方案32.2.1 设计内容32.2.2 系统设计方案32.3 硬件方案选择和论证52.3.1 主控芯片模块52.3.2

12、 无线收发模块62.3.3 语音模块62.3.4 时钟模块72.3.5 存储模块82.3.6 稳压模块82.3.7 显示模块82.4 软件方案选择和论证82.4.1 main.c和test.c函数设计92.4.2 NRF24L01.c函数设计92.4.3 语音收发程序设计92.4.4 按键调整程序设计92.4.5 DS1302.c函数设计92.4.6 12864.c函数设计92.4.7 AT24C02.c函数设计93 系统硬件电路的设计93.1 系统硬件概述93.2 主要单元模块设计103.2.1 电平转换模块电路103.2.2 语音发送模块电路103.2.3 语音接收模块电路113.2.4

13、无线收发模块电路113.2.5 LED提示报警模块电路133.2.6 无线语音主控模块电路143.2.7 时钟模块电路143.2.8 按键模块电路153.2.9 显示模块电路153.2.10 存储模块电路163.2.11 信息显示主控模块电路163.2.12 分机呼叫模块电路173.2.13 分机主控模块电路174 系统软件程序的设计184.1 编程软件选择184.2 系统流程图184.3 各单元模块程序214.3.1 NRF24L01无线收发子程序214.3.2 NRF24L01设置模式和读状态寄存器子程序224.3.3 呼叫子程序234.3.4 串口通信子程序244.3.5 信息显示函数2

14、54.3.6 时间调整子程序274.3.7 历史记录显示子程序284.3.8 语音发送模块程序284.3.9 语音接收模块程序295 调试运行305.1 参数测试305.1.1 电压参数测试305.1.2 时钟芯片误差测试315.1.3 语音采集放大电压测试315.1.4 通信距离测试315.2 硬件调试325.2.1 电源调试325.2.2 复位电路调试325.2.3 时钟电路调试325.2.4 液晶显示电路调试325.2.5 语音采集模块调试335.3 软件调试335.3.1 实时时间错误335.3.2 串口通信异常335.3.3 初始化界面显示混乱图345.3.4 软件整体调试345.4

15、 软硬联调34结 论36参考文献37致 谢38声 明39附 录401 引言1.1 课题的背景与意义伴随电子半导体技术的迅猛发展,特别是大规模集成电路的出现,给我们的生活带来了最直观性的改变,尤其是随着单片机技术成熟而应运而生的产品已经走进了千家万户。改革开放以来,我国科技的如雨后春笋蓬勃发展,电力电子行业获得长足稳定的发展,各种电子产品琳琅满目,随着电子产品的更迭变换风驰电掣,功能日渐强大,款式新颖、贴切生活的电子产品不断问世。医院多功能呼叫机则是发展趋势中的代表,医院多功能呼叫机顺应了人们对医疗方面的要求。该系统是一种应用于医院病房、养老院、KTV等地方,用于医护人员与病员沟通联系的专用呼叫

16、系统,是提高医院服务水平的必备设备之一。多呼叫系统的优劣直接影响到病员的安危,历来受到各大医院的普遍重视。它要求及时、准确可靠、简便可行、利于推广。它的出现给医护人员以及病患人员带来的诸多方便,避免了很多医疗事故,其作用更是不言而喻。1.2 呼叫机的现状和发展目前市场上存在着许多种型号不一功能各异的医院病房呼叫系统;按呼叫方式来分类,主要分为按键呼叫和语音呼叫两大类。单纯的按键呼叫系统,功能单一,呼叫原因模糊不清,越来越不能满足现代医院医护人员与患者的的需求。而按信号传送途径来分类,主要分为有线式和无线式。有线式病房呼叫系统存在布线较多、铺设线路复杂、影响美观、日常维护困难等问题,故不太适宜大

17、型的医院。本文设计的是无线式兼容按键和语音两种方式的呼叫系统,适合中大型的医院病房使用,具有成本低,易于操作、安装和维护,而且具有可靠稳定,对其他医疗设备产生干扰小等特点。病房呼叫系统便于病员快捷的呼叫护士站值守医生和护士,缩短人工呼叫的时间。当今病房呼叫系统正在逐步地向智能化发展,它可以和对讲机、电话乃至摄像头一起使用,当病人按下开关时,在护士值班室的大屏幕能够更直观地观察病人的状态,了解病人的需要。越来越智能化的病房呼叫系统使病员及时快捷地与医护人员进行沟通,医护人员更及时地了解病人此时的情况以及需求。1.3 课题的研究方法随着社会的发展,智能化程度的逐渐提高。也对病房呼叫系统的稳定可靠性

18、,功能丰富性,维护便利性有了更高的要求。于是本项目对方案设计实施者的电子、通信技术要求也很高,不仅考察了对单片机的掌握能力更加强调了对单片机扩展芯片的应用以及C51程序编写。而且要求设计的多功能呼叫机在操作上力求简洁,功能上尽量齐全,显示界面也要丰富出彩。该多功能呼叫机主机使用两片STC89C52RC主控芯片搭建控制模块,命名为MCU1和MCU2;MCU1作为无线数据收发和语音收发的控制芯片,MCU2作为呼叫数据存储/读取、实时时间读取/写入,信息显示的控制芯片,MCU1和MCU2之间进行串口通信,传输呼叫信息。使用拾音器为主体搭建语音采集电路,日本新泻精工专业NS73作为FM发射芯片搭建语音

19、发送平台,RDA5807为主体接收语音信息,通过耳机或音响播放语音。以NRF24L01+为主体搭建无线收发模块,AT24C02为主体搭建信息存储模块,DS1302为主体搭建实时时间模块,LCD12864为主体搭建信息显示模块,按键为主体搭建按键呼叫模块和实时信息调整模块,LED为主体搭建信息呼叫提醒模块,ASM1117-3.3和ASM1117-5.0为主体搭建电平转换模块。该多功能呼叫机有两个分机MCU3和MCU4,且设计电路完全相同,此处以MCU3为例介绍。MCU3同样以STC89C52RC作为主控芯片搭建控制模块。以FM电波形式发送和接收语音,按键和LED为主体搭建按键呼叫和回复提示模块。

20、该多功能呼叫机的设计既需要较强的硬件电路图和PCB图绘制能力、也需要PCB铜板的焊接调试能力,更需要相当能力的keil软件C51编程能力,设计的重难点在于NRF24L01、DS1302、AT24C02、LCD12864的程序编写,核心问题在于FM调频收发和NRF24L01的软硬件的调试。2 方案设计2.1 设计要求2.1.1 主要任务1) 可实现基于按键的呼叫方式;2) 可进行呼叫后LED或蜂鸣器报警提示;3) 可进行患者与护士双向通话;4) 装置的电气原理图和PCB图5) 设计完成各模块的程序流程图、源程序;6) 完成装置的调试;7) 验证实现装置的功能;8) 医院住院楼大多一层楼配备一个护

21、士站。本设计以1个楼层,1个护士站主机,2个病房分别1个分机,每病房3个病员来模拟呼叫系统;2.1.2 基本功能设计一个具有按键呼叫方式、使用无线传输呼叫方式信息及内容信息,使用显示屏显示当前状态的医院多功能呼叫机。可液晶显示呼叫对应的房号病床号、呼叫时间;存储一段时间内的呼叫记录;使用无线传输模式方便布线和安装;2.2 系统总体方案2.2.1 设计内容此设计方案中分机和主机均已STC89C52RC为控制核心。结合外围模块电路实现对呼叫机的控制,其具体设计的内容含以下几个方面:硬件内容:1)稳压模块:设计电源使用9V电池,其中单片机最小系统、时钟模块、存储模块、显示模块使用ASM1117-5.

22、0稳压后的5V电压供电;无线模块和语音模块使用ASM1117-3.3稳压后的3.3V供电。2)无线收发模块:设计使用NRF24L01+模块,进行无线数据收发。3)LED提示模块:设计使用8个LED,代表呼叫、回复状态的提醒。4)信息显示模块:设计使用128642液晶显示屏作为核心构成呼叫信息、历史记录、时间显示模块。5)语音收发模块:设计使用NS73和RDA5807芯片为核心分别构成语音发送和语音接收模块。6)信息存储模块:设计使用AT24C02芯片为呼叫信息存储芯片。便于呼叫信息的写入和读出显示7)按键调整模块:设计使用4脚按键,完成呼叫、调整、查询功能。软件内容:1)编写test.c和ma

23、in.c程序,作为整个软件系统的核心。2)编写NRF24L01.c无线收发子程序。3)编写DS1302.c、12864.c、AT24C02子程序。4)编写按键呼叫、调整、查询、串口通信子程序。5)编写语音收发子程序。2.2.2 系统设计方案本设计主机硬件系统框图如图2-1所示,软件结构图如图2-2所示。图2-1 主机硬件系统框图图2-2 主机软件结构图设计以1主机2分机来模拟整个呼叫系统,且分机的原理、功能和电路都完全相同,以下都以分机1为例,介绍分机的工作原理,分机1的硬件系统框图如图2-3所示,软件设计结构图如图2-4所示。图2-3 分机硬件系统框图图2-4 分机软件结构图2.3 硬件方案

24、选择和论证2.3.1 主控芯片模块方案1:使用51系列宏晶公司STC89C52RC作为主控芯片,其片内ROM全都采用FlashROM:能以3V的超低电压工作,与MCS-51系列单片机完全兼容,该芯片内部存储器为8KB ROM存储空间,同时具有89C51的功能,具有在线编程可擦除技术,当在对电路进行调试时,由于程序的错误修改或程序的新增功能需要烧入程序时,不需要对芯片进行多次插拔,所以不会对芯片造成损坏。方案2:使用TI公司16位MSP430F149单片机作为主控芯片,具有超低功耗、强大的处理能力、丰富的片内外设、系统工作稳定、方便高效的开发环境等优点。在运算性能方面,MSP430系列单片机能够

25、在8MHz晶体的驱动下,实现125ns的指令周期。16位RISC结构,使MSP430运算速度很快。而且其配套编程软件IAR早已成熟,有很多开源代码,对编程帮助很大。方案3:使用意法半导体推出的STM32F107作为主控芯片,其具有64K256KB Flash,达64KB的SRAM ,STM32不同型号产品在引脚和软件上具有完美的兼容性,可以轻松适应更多的应用,有2个12位 AD,2个12位DA(数模转换器)、2个IIC接口、5个USART接口和3个SPI端口和高质量数字音频接口IIS,另外STM32F107拥有全速USB(OTG)接口,两路CAN2.0B接口,以及以太网10/100 MAC模块

26、,72MHz超高运行频率,1.25DMIPS/MHz。综上,以上各芯片作为主控芯片都能达到系统的处理速度和其他要求,于是选择方案1的STC89C52RC和STC90C51价格相对便宜,编程相对简单的芯片作为主控芯片。2.3.2 无线收发模块方案1:使用高频电路,直接发送模拟信号。当为发送模式时:使用高频电路将拾音器采集、滤波、音频放大、振荡调制和高频放大后的模拟信号通过带通滤波器和天线后发送。当为接受模式时:通过天线接收到模拟信号,经带通滤波器滤波、选频放大、本振混频、中放电路、解调电路以及音频放大电路后,扬声器放声。虽然期间程序极其简单,但硬件电路复杂,调试难度大,造价高,耗电量大,对医用设

27、备干扰极大等缺点,所以本设计放弃此方案。方案2:使用TI公司基于ZigBee协议的CC2530无线收发芯片,工作于2.4GHZ的ISM频段,CC2530工作电压为2V3.6V,集成增强型8051MCU,系统内有8KB RAM,32KB256KB Flash存储器,CPU主动接收模式下为24mA,主动发送模式下为29mA,最高工作速率500kbps。方案3:使用挪威Nordic公司基于SPI协议的NRF24L01+射频收发芯片,工作于2.4GHz2.524GHz的ISM频段,NRF24L01+工作电压为1.9V3.6V,内置硬件CRC检错,处于发送模式时(0dBm)工作电流为11.3mA,处于接

28、收模式时(2Mbps)工作电流为13.5mA,休眠电流为1.5nA,空中传输率有250kbps、1Mbps和2Mbps三模式,未集成MCU,无内部存储器。综上,NRF24L01+传输速率快于CC2530,功耗低于CC2530,成本远低于CC2530,且本设计未用CC2530编程功能和存储器,如果使用稍许浪费。于是,在无线模块芯片的选择上使用NRF24L01+。2.3.3 语音模块方案1:使用PCF8591等AD、DA功能一体化芯片,由于此处并未选择STC89C52RD或STC12C5A60S2等自带AD、DA的主控芯片,由此需要选择对拾音器采集处理后的模拟信号进行ADC和对无线接收到并处理后数

29、字信号进行DAC,但本设计要对语音信号进行处理并用于通信,就以适合语音通信的32Kbit/s的采样频率来研究,其AD、DA转换速率和转换要求过于严苛,此类芯片不能达到要求,故本设计选择弃用此方案。方案2:使用斜率连续可变增量(cvsd)双工音频调制芯片CMX639。CMX639完全集成语音编码及解码功能,编解码速率范围8kbps64kbps,可实现单芯片语音处理的能力,外围设备简单,用户可以通过其管脚方便地对其编解码算法进行设置,具有强大的可选择编码算法,低功耗、低价位、小体积和开发难度低等多种优点,因此特别适合在对成本非常敏感的消费类语音系统中应用1,一片CMX639D4的价格为¥30。方案

30、3:使用 DVSI语音压缩/解压芯片 AMBE2000。 利用该芯片能全双工的压缩和解压 ,其压缩率可在 2kb p s9. 6kb p s范围内,由软件调节 , 且具有 FEC(前向纠错) 、VAD(语音激活检测) 功能和 DTMF 信号检测功能2,但一片AMBE2000的价格在¥150¥230之间,成本过高。方案4:使用NS73作为FM发射芯片,STD15L104为控制芯片组成语音发送模块,以RAD5807作为接收芯片,STC15L104为控制芯片搭建语音接收模块。由于NS73模块和RDA5807模块已集成51主控单片机,无须外模块单片机编程程序。即可完成语音的发射和接收。NS73发送模块

31、发射频率范围为85108MHz,RDA接收模块接收频率范围为76108MHz。整个模块几乎不需要外置主控单片机对其软件控制易调试,价格适中。综上,虽然AMBE对语音的编解码质量和性能略好于CMX639,但由于价格过于昂贵,且CMX639满足设计需求,由此语音编解码芯片选择CMX639。但基于前期使用CMX639未能进行编解码,本设计改变方案选择STC15L104、NS73和RDA5807进行语音收发。2.3.4 时钟模块方案1:直接采用单片机定时计数器提供秒信号,使用程序实现年、月、日、星期、时、分、秒信息提供,采用此种方案虽然减小芯片的使用,节约成本,但是极大增大软件编程难度,最缺陷的还是其

32、提供的时间误差太大,不容直视。方案2:采用DALLAS的DS1302时钟芯片。实时时钟具有读/写秒、分、时、日、星期、月和年,一个月少于31天时可以自动调整的功能,且具有闰年补偿功能。工作电压范围2.55.5V,2.5V时耗电小于300Ma。采用双电源供电(主电源和备用电源),可设置备用电源充电方式,提供了对后背电源进行涓细电流充电的能力。DS1302用于数据记录,特别是对某些具有特殊意义的数据点的记录上,能实现数据与出现该数据的时间同时记录3。而且精度高,价格便宜。综上所述,采用DS1302时钟芯片提供实时时间。2.3.5 存储模块AT24CXX系列是集EPROM存储器,复位控制器和看门狗定

33、时器一体的芯片。XX代表存储容量,如02为2KB,16为16KB;AT24C02及以下为8字节页缓存,AT24C02以上为16字节页缓存。与400KHz的I2C总线兼容,工作电压为1.8V6.0V,采用低功耗CMOS技术。WP为高电平时进入写保护状态,页写缓冲器自定时擦写周期1000000编程/擦除周期。可保存数据100年。方案1:使用AT24C02,2KB存储空间,我们设计时,估计每个病员一天呼叫3次,一周总体约为120条。计划存储10条呼叫信息,其容量至多为(时间8字节,状态4字节),估算为16*120=1920B,满足。方案2:使用AT24C08或以上,由于上面我们以最大需求存储空间估算

34、得到至多使用160B的存储空间,而AT24CXX系列的价格随着存储容量的增大而更高,在满足设计需求的前提下,本着从简节约的原则,我们放弃此选择。综上,存储芯片选择AT24C02。2.3.6 稳压模块方案1:LM78XX三端稳压IC外加电解电容、瓷片电容,组成稳压电源模块所需的外围元件极少,电路内部还有过流、过热及调整管的保护电路,使用起来可靠、方便。输入电压在7.5V20V时,输出电压的精度为4%以内。方案2:ASM1117是一个低压差电压调节器系列。压差在1.2V输出,负载电流为800mA时为1.2V。提供电流限制和热保护。电路包含1个齐纳调节的带隙参考电压以确保输出电压的精度在1%以内4。

35、综上所述,两者价格相似,ASM1117性能好于LM7805,故电平转换电路采用ASM1117-5.0和ASM1117-3.3芯片。2.3.7 显示模块方案1:选择LCD1602液晶屏,1602显示屏的显示功能强,可显示大量的数字、图形,字母,显示方式多样,显示效果清晰可见,但本设计需求显示大量汉字,1602 不能满足此要求,放弃。方案2:使用点阵式数码管显示,点阵式数码管是由八行八列的发光二极管组成,对于显示极少个文字比较合适,如用在此处需求量大,电路板制作和编程难度相应增大,价格也相对较高,所以也不用此种作为显示。方案3:采用LCD12864液晶显示屏,12864液晶显示屏的显示信息的种类和

36、数量都够多,可显示大量文字,图形5,显示多样,清晰可见。价格适中,占用接口线适宜,且能满足本设计所需显示较多要求。综上,选择LCD12864为此项目的显示屏。2.4 软件方案选择和论证2.4.1 main.c和test.c函数设计主程序主要结构都由一个while(1)大循环构成,main.c主要做串口初始化、无线收发控制、按键和语音回复控制、串口通信之用。test.c主要做串口初始化、时钟、显示、存储、调整的控制之用。2.4.2 NRF24L01.c函数设计NRF24L01.c函数主要由NRF24L01初始化、读寄存器、写入寄存器、读数据、写数据、配置接收模式、发送数据、接收数据子程序构成。发

37、送的原理是:由写命令子程序写入相应的命令之后,再由写数据子程序逐位写入需要发送的数据,最后由发送子程序进行发送。接收的原理是:配置子程序进行写命令话转换为接收模式、读状态寄存器、读出寄存器中数据。2.4.3 语音收发程序设计语音收发的程序写入STC15L104单片机,语音发送模块由NS73初始化、NS73模式设定、NS73发送数据程序构成;语音接收模块由RDA读、写寄存器、上电初始化、IIC接收、发送、等子程序构成。整个模块只需外模块单片机检测到语音呼叫开关按下后,通过NRF24L01发送语音呼叫信息即可。2.4.4 按键调整程序设计信息显示模块,按键主要作时间调整和记录查询之用。2.4.5

38、DS1302.c函数设计DS1302.c函数主要由DS1302初始化、读寄存器命令、写寄存器命令、读数据、写数据子程序构成。2.4.6 12864.c函数设计12864.c函数主要由初始化、忙检测、写命令、写数据、清屏、读数据、写数据、显示初始界面、显示无呼叫界面、显示呼叫界面、显示查询界面、显示调整界面子程序构成。2.4.7 AT24C02.c函数设计AT24C02.c程序由初始化、启动、停止、字节写、字节读、读数据、写数据、应答子程序构成。3 系统硬件电路的设计3.1 系统硬件概述本项目硬件电路是STC89C52RC单片机作为主分机无线语音主控芯片,以STC89C52RC为主机信息显示主控

39、芯片,低功耗,可在3V超低压工作6;时钟电路由DS1302构成,它是一种高性能、低功耗、带RAM同时具有掉电自动保存功能的实时时钟电路,它可以对年、月、日、时、分、秒等进行计时,具有闰年补偿功能,工作电压为2.5V-5.5V。无线收发由NRF24L01+模块构成,语音模块由、NS73发送模块、RDA5807接收模块组成,存储模块使用AT24C02芯片,显示部分为LCD12864液晶显示屏,能够实现字符与数字同时显示的功能。电平转换电路选择ASM1117-5.0和ASM1117-3.3作为转换芯片。3.2 主要单元模块设计由于分机系统的主要模块和主机系统的电平转换、无线收发、语音发送、语音接收、

40、与无线语音主控相同,没有LED提示模块,增加按键呼叫模块。因此,我们将分别介绍:电平转换模块电路、语音发送模块电路、语音接收模块电路、无线收发模块电路、LED提示报警模块电路、无线语音主控模块电路,时钟模块电路、按键模块电路、显示模块电路、存储模块电路、信息显示主控模块电路,分机主控模块电路和分机呼叫模块电路。3.2.1 电平转换模块电路电平转换采用ASM1117-5.0和ASM1117-3.3芯片,目的是将电池9V转换为5V和3.3V从而供电给其他芯片。ASM1117包含1个齐纳调节的带隙参考电压以并且通过输入端和输出端的滤波确保输输出精度在1%以内的稳定电压。具体原理图如图3-1所示:图3

41、-1 电平转换模块电气原理图3.2.2 语音发送模块电路拾音器采集语音并转换为模拟电信号,经电容隔直和9014放大后得到的电信号,STC15L104设定NS73发射频率(本设计为100MHz)通过NS73以电磁波的形式发送。具体原理图如图3-2所示。图3-2 语音发送模块电气原理图3.2.3 语音接收模块电路STC15L104将RDA5807的接收频率设定为100MHz,接收NS73发送模块发送的语音信号。具体原理图如图3-3所示。图3-3 语音接收模块电气原理图3.2.4 无线收发模块电路无线射频收发的的主流芯片有TI公司遵循ZigBee协议的CC系列和Nordic公司的NRF系列。此处我们

42、使用的事NRF24L01+模块,高达2Mbps的工作速率,兼具CRC检错和自动应答机制7。NRF24L01+模块外部有8个引脚,简易引脚图如图3-4和3-5所示。图3-4 NRF24L01+引脚简易视图 图3-5 NRF24L01+PCB简易视图每个引脚的名称和功能见表3-1所示。表3-1 NRF24L01+引脚功能表管脚名称管脚功能方向VDD电源正,1.93.6V输入CE工作模式选择,INCSNSPI片选使能,低电平有效INSCKSPI时钟INMOSISPI输入INMISOSPI输出OUTIRQ中断输出OUTGND电源地NRF24L01+有发送、接收、待机和关机4种工作模式,其工作模式由寄存

43、器内部的PWR_UP、PRIM_RX共同控制,控制规则如表3-2所示。表3-2 NRF24L01+模式控制规则表模式PWR_UPPRIM_RXCEFIFO寄存器状态接收模式111发射模式101数据在TX_FIFO寄存器中发射模式1010处于发射模式,等待数据发完待机模式II101TX_FIFO为空待机模式I10无正在传输的数据掉电模式0当主分机按下呼叫/回复按键,或语音通信开关时,NRF24L01开始工作,NRF初始化后默认进入发送模式,发送数据时,需要向设定频段设定通道设定目标地址传输数据。当对方接收到数据后,发送方会再次将数据重发,接收方将数据与上一次接收到的数据进行比较,如是相同则丢弃此

44、次接收数据,如不同,则表明上次数据发送不成功,接收此次数据。具体电气原理图如图3-6和3-7所示。图3-6 无线收发模块电气原理图图3-7 NRF2401电气原理图3.2.5 LED提示报警模块电路使用8个LED来表示有呼叫时,呼叫的方式以及呼叫的病床号或病房号。具体电气原理图如图3-8所示图3-8 LED提示报警模块电气原理图3.2.6 无线语音主控模块电路STC89C52RC晶科技推出的新一代超强抗干扰/高速/低功耗/的单片机,指令代码完全兼容传统8051单片机,12时钟/机器周期和6时钟周期可以任意选择,内部集成MAX810专用复位电路,时钟频率在12MHZ一下时,复位脚可以接地。本单片

45、机是线收发控制、语音模块控制、LED提示报警控制、串口通信的主控芯片。具体电路原理图如图3-9所示。89C52共有4个8位并行I/O端口:P0、P1、P2、P3口,共32个引脚。P3口还具有第二功能,用于特殊信号输入输出和控制信号(属控制总线)。I/0口分配:P0.0-P0.3:按键 ;P2.1:按键 ;P3.6-P3.7:按键;P0.0-P0.7:LED;P1.0:CMX639数字信号输出端口 ;P1.1:CMX639编码数字时钟;P1.2:CMX639时钟模式1;P1.3:CMX639时钟模式2;P1.4:CMX639编码压缩算法选择;P1.5:CMX639译码数字时钟;P1.6:CMX6

46、39数字信号输入端口;P1.7:CMX639功率节省端口P2.0:CMX639数据使能端;P2.2:NRF24L01片选端口P2.3: SPI从设备数据输入端口:P2.4: SPI时钟端口P2.5: SPI从设备数据输出端口;P2.6: SPI时钟端口;P2.7:收发模式控制端口;P3.4:NS73发送指示端口P3.0-P3.1串口通信端口;P3.5:RDA5807接收指示端口图3-9 无线语音主控模块电气原理图3.2.7 时钟模块电路采用DS1302时钟芯片,其中VCC1为后备电源,VCC2为主电源,在主电源关闭的情况下,也能通过纽扣电磁等电源供电也能保持时钟芯片的继续运行。X1和X2是振荡

47、源,外接32.768KHz晶振,RST是复位片选线,通过把RST输入驱动置高电平来启动所有的数据传送。I/O为串行数据输入端,SCLK始终是输入端。时钟电路如图3-10所示:图3-10 时钟模块电气原理图3.2.8 按键模块电路利用4个按键来修改DS1302的实时时间和查询历史呼叫记录,使得时间准确无误以及方便呼叫历史的查询调录。4个按键的功能分别为:模式选择、信息加1/查询呼叫记录、信息减1、信息确认/退出查询模式。其功能表如表3-3所示。表3-3 按键功能表模式 按键S10S11S12S13调整模式模式切换信息加1信息减1确认并退出查询模式无查询下一记录查询上一记录退出具体电气原理图如图3

48、-11所示。图3-11 按键调整模块电气原理图3.2.9 显示模块电路采用12864带中文字库的液晶显示屏,利用其有完备的汉字显示库和数字图像显示能力和较大的屏幕和显示亮度调节功能,能够显示更多的信息。具体电路原理图如图3-12所示。图3-12 显示模块电气原理图3.2.10 存储模块电路采用AT24C02芯片,利用外部2k大小ROM来储存最近一段时间内的10个历史呼叫的日期、时间,病房号码、病员号码、呼叫方式。 具体原理图如下如图3-13所示:图3-13 存储模块电气原理图3.2.11 信息显示主控模块电路STC89C52指令代码完全兼容传统8051单片机。本单片机是显示模块控制、按键调整模

49、块控制、时钟模块控制、存储模块、串口通信的主控芯片。具体电路原理图如图3-14所示。89C52共有4个8位并行I/O端口:P0、P1、P2、P3口,共32个引脚。P3口还具有第二功能,用于特殊信号输入输出和控制信号(属控制总线)。I/0口分配:P0.0-P0.7:12864数据输入端口;P2.3: LCD12864数据指令选择端口;P2.4: LCD12864读写操作端口;P2.5:LCD12864使能端口;P2.6:LCD12864串并行选择端口;P2.0:AT24C02时钟端口;P2.0:AT24C02数据端口;P3.5:DS1302时钟输入端口P3.6:DS1302数据输入端口;P3.7

50、:DS1302复位端口P3.0-P3.1串口通信端口;P0.0-P0.1:按键图3-14 信息显示主控模块电气原理图3.2.12 分机呼叫模块电路分机呼叫电路由按键和语音两部分构成,但都由按键触发。每个按键/开关对应功能如表3-4所示。表3-4 按键对应内容表按键S7S8S9P3.4=1对应病员1按键呼叫病员2按键呼叫病员3按键呼叫语音呼叫具体电路原理图如图3-15和3-16所示。 图3-15 分机按键呼叫模块电气原理图 图3-16 分机语音呼叫模块电气原理图3.2.13 分机主控模块电路STC89C52RC晶科技推出的新一代超强抗干扰/高速/低功耗/的单片机,指令代码完全兼容传统8051单片

51、机。本单片机是无线收发控制、按键呼叫模块、语音呼叫模块、语音模块控制、LED回复提示控制、串口通信的主控芯片。IO资源分配完全和主机无线语音主控模块相同,在此不重复介绍。具体电路原理图如图3-17所示。图3-17 分机主控模块电气原理图硬件的电气原理图,硬件的印制板电路图,材料清单表见附录。4 系统软件程序的设计4.1 编程软件选择软件系统在本次设计中尤其重要,基本功能大部分是由软件完成的,语音收发模块、无线模块的收发控制部分同样需要软件的密切配合才能顺利实现。鉴于软件设计的复杂性和规模性,我们采用KEIL编译器支持的C语言编程,放弃了效率高但可读性不强的汇编语言。多功能呼叫机软件程序的在图2

52、-2和图2-4的基础上设计主要包括(1)mian.c、test.c函数,作为整个软件系统的核心。(2)NRF24L01.c函数。(3)呼叫子程序。(4)信息显示函数。(5)串口通信子程序。(6)语音接收函数、语音发送函数。4.2 系统流程图主机软件系统由无线语音系统和信息显示系统构成。无线语音系统可分为主程序模块和无线收发模块。此主控系统是主机与分机无线通信的单片机控制系统。信息显示系统可分为主程序模块、显示模块等。当主机无线语音收到无线呼叫时,无线语音主控系统与本系统进行串口通信,发送呼叫信息。分机软件系统由分机1系统和分机2系统构成,由于分机1和分机2几乎完全相同,以下以分机1为例介绍。主

53、机无线语音主控系统可分为主程序模块(包含按键回复模块、语音回复模块、语音模块、串口通信模块、LED报警提示模块)、无线收发模块。此主控系统是主机与分机无线通信的单片机控制系统。其系统程序流程图如图4-1所示。 图4-1 主机无线语音系统程序流程图主机信息显示主控系统可分为主程序模块(包含按键调整、串口通信模块)、时钟模块、显示模块、存储模块。当主机无线语音收到无线呼叫时,无线语音主控系统与本系统进行串口通信,发送呼叫信息。其系统程序流程图4-2所示。图4-2 主机信息显示系统程序流程图分机1主控系统可分为主程序模块(包含按键呼叫模块、语音呼叫模块)、无线收发模块。此主控系统是分机与主机无线通信

54、的单片机控制系统。其系统流程图如图4-3所示。图4-3 分机1主控系统程序流程图4.3 各单元模块程序4.3.1 NRF24L01无线收发子程序 无线收数据子程序和无线发数据子程序如图4-4所示。 图4-4 无线收、发子程序程序流程图当test.c中主程序调用无线发送、无线接收子程序时,开始进入本程序流程。在发送子程序中,进行初始化之后,单片机写入命令,NRF24L01装载发送端地址、发送数据、设置模式后发送,在接收子程序中,初始化后,设置NRF24L01为 接收模式,读取接收数据指定的寄存器,判断是否接收到数据。4.3.2 NRF24L01设置模式和读状态寄存器子程序NRF24L01设置接收

55、模式、设置发送模式、读状态寄存器子程序都是对NRF24L01状态寄存器的操作,其中设置模式子程序都是通过对SPI_RW_Reg()子程序的调用,将不同的数据写入不同的寄存器来改变NRF24L01的收发模式。读状态寄存器子程序是通过对SPI_Read()子程序的调用来读该寄存器的数据。配置为接收模式子程序,调用子程序SPI_RW_Reg(WRITE_REG + CONFIG, 0x0f);配置为发送模式子程序,调用子程序 SPI_RW_Reg(WRITE_REG + CONFIG, 0x0e);读状态寄存器子程序,调用子程序sta = SPI_Read(STATUS)。NRF24L01设置模式和

56、读寄存器子程序流程图如图4-5所示。图4-5 NRF24L01设置模式和读状态寄存器子程序流程图 NRF24L01读写寄存器子程序uchar SPI_RW_Reg(uchar reg, uchar value)和NRF24L01SPI读状态寄存器数据子程序uchar SPI_Read(uchar reg)都是通过写时序子程序SPI_RW()的调用来实现功能,SPI_RW()子程序是通过一个for函数对SPI协议进行命令写入的,SPI时钟高低变化一次,写入一位数据,直至8位全部写入。SPI写时序子程序代码如下所示。 for(i=0; i8; i+) MOSI = (byte & 0x80); b

57、yte = (byte1); SCK = 1; byte |= MISO; SCK = 0; return(byte); 4.3.3 呼叫子程序呼叫子程序通过按键扫描来判断呼叫按键按下与否作为是否呼叫的标准。以分机1为例,3个病员,每人对应一个呼叫按键,一个病房对应一个语音呼叫按键,当按键呼叫按键按下,程序给NRF24L01发送数组里写入数据1/2/3,当语音发送开关闭合后,程序给NRF24L01发送数组首位写入数据4,NS73上电,STC15L104单片机对NS73进行初始化、发射频率设定,发送语音。呼叫子程序流程图如图4-6所示。图4-6 呼叫子程序流程图 4.3.4 串口通信子程序串口通

58、信子程序,包含串口初始化、串口发送数据、串口接收数据、串口中断子程序。串口发送数据程序过于简单,此处以代码说明。串口接收数据子程序和串口中断程序如图4-7所示。图4-7 串口中断、串口接收数据子程序流程图 4.3.5 信息显示函数DS1302时钟模块写入DS1302.h。主要编写通过初始化,读指令,写指令、读数据、写数据从而实现对时间的控制。单片机从1302中读取实时信息并给12864显示。通过按键调整后的实时信息通过单片机写入DS1302更新。EEPROM模块程序写入AT24C02.h。主要编写通过模拟IIC总线从而将呼叫记录的数据写入到AT24C02并且能够在查询时读出数据给12864显示

59、。整个过程有SCL(时钟总线)和SDA(数据总线)完成。具体程序包括初始化,应答,非应答,字节传输,写指令,读指令等。12864显示模块程序写入12864.h。主要编写液晶的初始化、写数据、写指令、读数据、显示欢迎界面、显示无呼叫界面、显示呼叫界面、显示时间调整界面、显示查询记录界面。从而实现液晶屏对数据的显示功能。信息显示子程序流程图如图4-8所示。图4-8 信息显示子程序流程图 写地址、写数据子程序流程图如图4-9所示:图4-9 写地址、写数据子程序流程图 初始化子程序:void LCD_Int(void)PSB = 1; write_lcd_command(0x34);write_lcd_command(0X30);write_lcd_command(0X0C);write_lcd_command(0X01);delayus(2);4.3.6 时间调整子程序按键模块通过对按键的选择从而触发单片机不同的指令。KEY1程序功能是模式切换和进入实时信息调整界面,KEY2程序功能是信息加一和进入历史呼叫记录查询界面,KEY3程序功能是信息减一,KEY4程序的功能是退出当前模式和信息确认。程序流程图如图4-10所示。

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!