基于单片机的脉搏测量仪设计毕业论文.doc

上传人:哈尼dd 文档编号:3922921 上传时间:2019-10-10 格式:DOC 页数:43 大小:534.09KB
返回 下载 相关 举报
基于单片机的脉搏测量仪设计毕业论文.doc_第1页
第1页 / 共43页
基于单片机的脉搏测量仪设计毕业论文.doc_第2页
第2页 / 共43页
基于单片机的脉搏测量仪设计毕业论文.doc_第3页
第3页 / 共43页
基于单片机的脉搏测量仪设计毕业论文.doc_第4页
第4页 / 共43页
基于单片机的脉搏测量仪设计毕业论文.doc_第5页
第5页 / 共43页
点击查看更多>>
资源描述

《基于单片机的脉搏测量仪设计毕业论文.doc》由会员分享,可在线阅读,更多相关《基于单片机的脉搏测量仪设计毕业论文.doc(43页珍藏版)》请在三一文库上搜索。

1、基于单片机的脉搏测量仪设计 目目 录录 摘要.I Abstract.II 引言1 第一章 概述2 1.1 选题的背景和意义 2 1.2 脉搏测量仪的发展与应用 3 第二章 总体方案的论证与设计5 2.1 主控模块的选型和论证 5 2.2 显示模块的选型和论证 5 2.3 传感器的选型和论证 5 2.4 系统整体设计概述 6 第三章 系统硬件电路设计8 3.1 主控模块 8 3.1.1 STC89C52 单片机主要特性 8 3.1.2 STC89C52 单片机的中断系统 12 3.1.3 单片机最小系统设计 .12 3.2 LCD 液晶显示器简介 .12 3.2.1 液晶原理介绍 .13 3.2

2、.2 液晶模块简介 .13 3.2.3 液晶显示部分与 STC89C52 的接口 .14 3.3 信号采集电路设计 16 3.3.1 传感器简介 .16 3.3.2 滤波电路 .17 3.3.3 放大整形电路 .17 第四章 系统软件设计.17 4.1 系统软件总体设计 17 4.2 程序设计原理 19 第五章 系统调试21 5.1 软件调试 21 5.2 硬件调试 21 5.3 调试结果 22 5.4 误差分析 22 结论24 致谢25 参考文献26 附录27 基于单片机的脉搏测量仪设计基于单片机的脉搏测量仪设计 摘要摘要: 脉搏测量仪在我们的日常生活中已经得到了非常广泛的应用,通过观测 脉

3、搏信号,可以对人体的健康进行检查,通常被用于保健中心和医院。为了提 高脉搏测量仪的简便性和精确度,本课题设计了一种基于 51 单片机的脉搏测量 仪。系统以 STC89C52 单片机为核心,以光电传感器利用单片机系统内部定时 器来计算时间,由光电传感器感应产生信号,单片机通过对信号累加得到脉搏 跳动次数,时间由定时器定时而得。系统运行中可以通过观察指示灯闪烁,若 均匀闪烁说明测量值准确。系统停止运行时,能够显示总的脉搏次数和时间。 经测试,系统工作正常,达到设计要求。 本设计利用红外光电传感器产生脉冲信号,经过放大整形后,输入单片机 内进行相应的控制,从而测量出一分钟内的脉搏跳动次数,快捷方便。

4、系统可 以供用户测量当时的脉搏次数,同时还可以设定上限次数和下限次数,当测量 的范围超过设定的范围则驱动蜂鸣器报警提醒,除此外用户还可以设定每天闹 钟提醒测量,时间可以自行设定,结果最终可以把采集到的脉搏信号显示在 LCD1602 上。 关键词:关键词:STC89C52;脉搏测量仪;LCD 显示器;光电传感器 I Design of pulse measuring instrument based on single chip Abstract:Pulse measurement apparatus has been widely used in our daily life. In orde

5、r to improve the measurement apparatus is simple and accuracy, this paper designs a pulse measuring instrument based on 51 single chip microcomputer. System to STC89C52 microcontroller as the core, with photoelectric sensor, and calculates the internal timer SCM system, the signal from the photoelec

6、tric sensor, microcontroller based on the accumulated pulse beat frequency signal, by the time the timer. In the running of the system can be observed through the indicator lights out, if even flicker that accurate measuring value. The system stops running, can display the total pulse number and tim

7、e. After testing, the system works normally, meet the design requirements. The design of the infrared photoelectric sensor generates a pulse signal, after plastic surgery to enlarge, the input of SCM within the corresponding control, which measured within a minute of the pulse beat frequency, fast a

8、nd convenient. Through observing the pulse signal, can check the health of the body, usually used for health centres and hospitals. The system can be used for measuring the pulse number of users, but also can set the upper limit of the number of times and, when the range of the measurement range ove

9、r the set of drive buzzer alarm, but users can also set the alarm clock to remind the daily measurement, time can be set, the results were finally able to pulse signal acquisition to display on the LCD1602.occurring. Keywords:STC89C52; photosensor; LCD display; Pulse measuring instrument 0 引引 言言 脉搏测

10、量在有脉搏时遮挡光线,无脉搏时透光强,所采用的传感器是红外 接收二极管和红外发射二极管。通过观测脉搏信号,可以对人体的健康进行检 查,通常被用于保健中心和医院。系统可以供用户测量当时的脉搏次数,同时 还可以设定上限次数和下限次数,当测量的范围超过设定的范围则驱动蜂鸣器 报警提醒,除此外用户还可以设定每天闹钟提醒测量,时间可以自行设定1。 从脉搏波中提取人体的生理病理信息作为临床诊断和治疗的依据,历来都 受到中外医学界的重视。系统以 STC89C52 单片机为核心,以光电传感器利用 单片机系统内部定时器来计算时间,由光电传感器感应产生信号,单片机通过 对信号累加得到脉搏跳动次数,时间由定时器定时

11、而得。系统运行中可以通过 观察指示灯闪烁,若均匀闪烁说明测量值准确。几乎世界上所有的民族都用过 “摸脉”作为诊断疾病的手段。脉搏波所呈现出的形态(波形)、强度(波幅)、速率 (波速)和节律(周期)等方面的综合信息,在很大程度上反映出人体心血管系统中 许多生理病理的血流特征,但人体的生物信号多属于强噪声背景下的低频的弱信 号, 脉搏波信号更是低频微弱的非电生理信号, 必需经过放大和后级滤波以满足 采集的要求。 1 2 第一章第一章 概述概述 1.1 选题的背景和意义 脉搏携带有丰富的人体健康状况的信息,自公元三世纪我国最早的脉学专 著脉经问世以来,脉学理论得到不断的发展和提高。在中医四诊(望、闻

12、、 问、切)中,脉诊占有非常重要的位置。脉诊是我国传统医学中最具特色的一 项诊断方法,其历史悠久,内容丰富,是中医“整体观念”、 “辨证论证”的基本精 神的体现与应用。脉诊作为“绿色无创”诊断的手段和方法,得到了中外人士的 关注。但由于中医是靠手指获取脉搏信息,虽然脉诊具有简便、无创、无痛的 特点易为患者接受,然而在长期的医疗实践中也暴露出一些缺陷。首先,切脉 单凭医生手指感觉辨别脉象的特征,受到感觉、经验和表述的限制,并且难免 存在许多主观臆断因素,影响了对脉象判断的规范化;其次,这种用手指切脉 的技巧很难掌握;再则,感知的脉象无法记录和保存影响了对脉象机理的研究。 脉诊的这种定性化和主观性

13、,大大影响了其精度与可行性,成为中医脉诊应用、 发展和交流中的制约因素。为了将传统的中医药学发扬光大,促进脉诊的应用 和发展,必须与现代科技相结合,实现更科学、客观的诊断1。 医院的护士每天都要给住院的病人把脉记录病人每分钟脉搏数,方法是用 手按在病人腕部的动脉上,根据脉搏的跳动进行计数。为了节省时间,一般不 会作 1 分钟的测量,通常是测量 10 秒钟时间内心跳的数,再把结果乘以 6 即 得到每分钟的心跳数,即使这样做还是比较费时,而且精度也不高。为了提高 脉搏测量的精确与速度,多种脉搏测量仪被运用到医学上来,从而开辟了一条 全新的医学诊断方法。 早在1860年Vierordt 创建了第一台

14、杠杆式脉搏描记仪,国内20世纪50年代 初朱颜将脉搏仪引用到中医脉诊的客观化研究方面。此后随着机械及电子技术 的发展,国内外在研制中医脉象仪方面进展很快,尤其是70年代中期,国内天 津、上海、江西等地相继成立了跨学科的脉象研究协作组,多学科共同合作促 使中医脉象研究工作进入了一个新的境界。脉象探头式样很多,有单部、三部、 单点、多点、刚性接触式、软性接触式、气压式、硅杯式、液态汞、液态水、 子母式等组成,脉象探头的主要原件有应变片、压电晶体、单晶硅、光敏元件、 3 PVDF压电薄膜等,其中以单部单点应变片式为最广泛,不过近年来正在向三部 多点式方向设计2。 目前脉搏测量仪在多个领域被广泛应用,

15、除了应用于医学领域,如无创心 血管功能检测、妊高症检测、中医脉象、脉率检测等等,商业应用也不断拓展, 如运动、健身器材中的心率测试都用到了技术先进的脉搏测量仪。 1.2 脉搏测量仪的发展与应用 随着科学技术的发展,脉搏测量技术也越来越先进,对脉搏的测量精度也 越来越高,国内外先后研制了不同类型的脉搏测量仪,而其中关键是对脉搏传 感器的研究。起初用于体育测量的脉搏测试集中在对接触式传感器的研究,利 用此类传感器所研制的指脉、耳脉等测量仪各有其优缺点。指脉测量比较方便、 简单,但因为手指上的汗腺较多,指夹常年使用,污染可能会使测量灵敏度下 降:耳脉测量比较干净,传感器使用环境污染少,容易维护。但因

16、耳脉较弱, 尤其是当季节变化时,所测信号受环境温度影响明显,造成测量结果不准确。 过去在医院临床监护和日常中老年保健中出现的日常监护仪器,如便携式电子 血压计,可以完成脉搏的测量,但是这种便携式电子血压计利用微型气泵加压橡 胶气囊,每次测量都需要一个加压和减压的过程,存在体积庞大、加减压过程 会有不适、脉搏检测的精确度低等缺点。 近年来国内外致力于开发无创非接触式的传感器,这类传感器的重要特征 是测量的探测部分不侵入机体,不造成机体创伤,能够自动消除仪表自身系统 的误差,测量精度高,通常在体外,尤其是在体表间接测量人体的生理和生化 参数。 其中光电式脉搏传感器是根据光电容积法制成的脉搏传感器,

17、通过对手指 末端透光度的监测,间接检测出脉搏信号。具有结构简单、无损伤、精度高、 可重复使用等优点。通过光电式脉搏传感器所研制的脉搏测量仪已经应用到临 床医学等各个方面并收到了理想效果。 人体心室周期性的收缩和舒张导致主动脉的收缩和舒张,是血流压力以波 的形式从主动脉根部开始沿着整个动脉系统传播,这种波成为脉搏波。从脉搏 波中提取人体的心理病理信息作为临床诊断和治疗的依据,历来都受到中外医 学界的重视。脉搏波所呈现出的形态(波形)、强度(波幅)、速率(波速)和节律(周 4 期)等方面的综合信息,在很大程度上反映出人体心血管系统中许多生理病理的 血流特征,因此对脉搏波采集和处理具有很高的医学价值

18、和应用前景。但人体的 生物信号多属于强噪声背景下的低频的弱信号, 脉搏波信号更是低频微弱的非 电生理信号,因此必需经过放大和后级滤波以满足采集的要求。 5 第二章第二章 总体方案的论证与设计总体方案的论证与设计 2.1 主控模块的选型和论证 方案一: 采用 MSP430 系列单片机,该单片机是 TI 公司 1996 年开始推向市场的一 种 16 位超低功耗的混合信号处理器。其内部集成了很多模拟电路、数字电路和 微处理器,提供强大的功能。不过该芯片昂贵不适合一般的设计开发3。 方案二 采用 51 系列的单片机,该单片机是一个高可靠性,超低价,无法解密,高 性能的 8 位单片机,32 个 IO 口

19、,且 STC 系列的单片机可以在线编程、调试, 方便地实现程序的下载与整机的调试。 因此选用方案二中的 51 系列单片机作为主控芯片。 2.2 显示模块的选型和论证 方案一: 采用点阵式数码管显示,点阵式数码管是由八行八列的发光二极管组成, 对于显示文字比较合适,如采用在显示数字显得太浪费,且价格也相对较高, 所以不用此种作为显示。 方案二: 采用 LED 数码管动态扫描,LED 数码管价格虽适中,对于显示数字也最 合适,而且采用动态扫描法与单片机连接时,占用单片机口线少。但是由于数 码管动态扫描需要借助 74LS164 移位寄存器进行移位,该芯片在电路调试时往 往有很多障碍,所以不采用 LE

20、D 数码管作为显示。 方案三: 采用 LCD 液晶显示屏,液晶显示屏的显示功能强大,可显示大量文字,图 形,显示多样,清晰可见,对于本设计而言一个 LCD1602 的液晶屏即可,价格 也还能接受,需要的借口线较多,但会给调试带来诸多方便。 所以本设计中方案三中的 LCD1602 液显示屏作为显示模块。 2.3 传感器的选型和论证 6 方案一: 采用压电传感器用来提取人的脉搏信号,压电传感器是利用某些电介质受 力后产生的压电效应制成的传感器。所谓压电效应是指某些电介质在受到某一 方向的外力作用而发生形变(包括弯曲和伸缩形变)时,由于内部电荷的极化 现象,会在其表面产生电荷的现象。通过此现象可以提

21、取出人的脉搏信号。 方案二: 采用光电传感器提取人体脉搏信号,授予手指组织可以分成皮肤、肌肉、 骨骼等非血液组织和血液组织,其中非血液组织的光吸收量是恒定的,而在血 液中,静脉血的搏动相对动脉血是十分微弱的,可以忽略,因此可以认为光透 过手指后的变化仅由动脉血的充盈而引起,那么在恒定波长的光源的照射下, 通过检测透过手指的光强将可以间接测量到人体的脉搏信号4。 由于光电传感器较压电传感器容易在一般的地方可以买得到,因此这里选 用光电传感器来提取人体脉搏信号。 2.5 系统整体设计概述 系统总体设计由 STC89C52、按键、LCD1602、光电传感器、时钟模块、 运放等构成,如图 2.1 所示

22、,系统设有四个按键,可以设置上下限脉搏数,当 超过范围的时候单片机会驱动蜂鸣器发响,脉搏测量的时候需要人把手轻轻的 按在光电传感器上面,由于人脉搏跳动的时候,血液的透光性不一样会导致接 收器那边接收的信号强弱不一样,间接的把人脉搏信号传回,通过运放对其进 行放大、整形后连接到单片机的 IO 口,单片机利用外部中断对其进行计数,最 终换算成人一分钟脉搏的跳动次数,最终显示在液晶屏上。 7 第三章第三章 系统硬件电路设计系统硬件电路设计 3.1 主控模块 主控模块模块在整个系统中起着统筹的作用,需要检测键盘等各种参数, 同时驱动液晶显示相关参数,在这里我们选用了 51 系列单片机中的 STC89C

23、52 单片机作为系统的主控芯片。 51 系列单片机最初是由 Intel 公司开发设计的,但后来 Intel 公司把 51 核 的设计方案卖给了几家大的电子设计生产商,譬如 SST、Philip、Atmel 等大 公司。因此市面上出现了各式各样的均以 51 为内核的单片机6。这些各大电子 生产商推出的单片机都兼容 51 指令、并在 51 的基础上扩展一些功能而内部结 构是与 51 一致的。 STC89C52 有 40 个引脚,4 个 8 位并行 I/O 口,1 个全双工异步串行口,同时 内含 5 个中断源,2 个优先级,2 个 16 位定时/计数器。STC89C52 的存储器系 统由 4K 的程

24、序存储器(掩膜 ROM),和 128B 的数据存储器(RAM)组成。 STC89C52 单片机的基本组成框图见图 3.1 所示。 时钟电路 ROM/EPROM/Flash 4KB RAM128B SFR 21个 定时个/计数器2 CPU 总线控制 中断系统 5个中断源 2个优先级 串行口 全双工1个 4个并行口 XTAL2XTAL1 RST EA ALE PSEN P0P1P2P3 Vss Vcc 图 3.1 STC89C52 单片机结构图 3.1.1 STC89C52 单片机主要特性 1. 一个 8 位的微处理器(CPU)。 2. 片内数据存储器 RAM(128B),用以存放可以读写的数据,

25、如运算的中 间结果、最终结果以及欲显示的数据等,SST89 系列单片机最多提供 1K 的 RAM。 8 3. 片内程序存储器 ROM(4KB),用以存放程序、一些原始数据和表格。但也 有一些单片机内部不带 ROM/EPROM,如 8031,8032,80C31 等。目前单片 机的发展趋势是将 RAM 和 ROM 都集成在单片机里面,这样既方便了用户进 行设计又提高了系统的抗干扰性。SST 公司推出的 89 系列单片机分别集成了 16K、32K、64K Flash 存储器,可供用户根据需要选用。 4. 四个 8 位并行 IO 接口 P0P3,每个口既可以用作输入,也可以用作输 出。 5. 两个定

26、时器计数器,每个定时器计数器都可以设置成计数方式,用以 对外部事件进行计数,也可以设置成定时方式,并可以根据计数或定时的结果 实现计算机控制。为方便设计串行通信,目前的 52 系列单片机都会提供 3 个 16 位定时器/计数器。 6. 五个中断源的中断控制系统。现在新推出的单片机都不只 5 个中断源,例 如 SST89E58RD 就有 9 个中断源。 7. 一个全双工 UART(通用异步接收发送器)的串行 IO 口,用于实现单片 机之间或单机与微机之间的串行通信。 8. 片内振荡器和时钟产生电路,但石英晶体和微调电容需要外接。最高允许 振荡频率为 12MHz。SST89V58RD 最高允许振荡

27、频率达 40MHz,因而大大的 提高了指令的执行速度。 P1.0 1 P1.1 2 P1.2 3 P1.3 4 P1.4 5 P1.5/MOSI 6 P1.6/MISO 7 P1.7/SCK 8 RESET 9 P3.0 10 P3.1 11 P3.2 12 P3.3 13 P3.4 14 P3.5 15 P3.6 16 P3.7 17 XTAL2 18 XTAL1 19 VSS 20 P2.0 21 P2.1 22 P2.2 23 P2.3 24 P2.4 25 P2.5 26 P2.6 27 P2.7 28 PSEN 29 ALE 30 EA 31 P0.7 32 P0.6 33 P0.5

28、 34 P0.4 35 P0.3 36 P0.2 37 P0.1 38 P0.0 39 VCC 40 U5 单单单 图 3.2 STC89C52 单片机管脚图 9 STC89C52 单片机管脚如图 3.2 所示,部分引脚说明: 1时钟电路引脚 XTAL1 和 XTAL2: XTAL2(18 脚):接外部晶体和微调电容的一端;片内它是振荡电路反相放大 器的输出端,振荡电路的频率就是晶体固有频率。若需采用外部时钟电路时, 该引脚输入外部时钟脉冲。 要检查振荡电路是否正常工作,可用示波器查看 XTAL2 端是否有脉冲信号 输出。 XTAL1(19 脚):接外部晶体和微调电容的另一端;在片内它是振荡电

29、路反相 放大器的输入端。在采用外部时钟时,该引脚必须接地7。 2控制信号引脚 RST,ALE,PSEN 和 EA: RST/VPD(9 脚):RST 是复位信号输入端,高电平有效。当此输入端保持备 用电源的输入端。当主电源 Vcc 发生故障,降低到低电平规定值时,将5V 电源自动两个机器周期(24 个时钟振荡周期)的高电平时,就可以完成复位操作。 RST 引脚的第二功能是 VPD,即接入 RST 端,为 RAM 提供备用电源,以保证 存储在 RAM 中的信息不丢失,从而合复位后能继续正常运行。 ALE/PROG(30 脚):地址锁存允许信号端。当 8051 上电正常工作后,ALE 引脚不断向外

30、输出正脉冲信号,此频率为振荡器频率 fOSC 的 1/6。CPU 访问 片外存储器时,ALE 输出信号作为锁存低 8 位地址的控制信号。 平时不访问片外存储器时,ALE 端也以振荡频率的 1/6 固定输出正脉冲,因 而 ALE 信号可以用作对外输出时钟或定时信号。如果想确定 8051/8031 芯片 的好坏,可用示波器查看 ALE 端是否有脉冲信号输出。如有脉冲信号输出,则 8051/8031 基本上是好的。 ALE 端的负载驱动能力为 8 个 LS 型 TTL(低功耗甚高速 TTL)负载。 此引脚的第二功能 PROG 在对片内带有 4KB EPROM 的 8751 编程写入(固 化程序)时,

31、作为编程脉冲输入端。 PSEN(29 脚):程序存储允许输出信号端。在访问片外程序存储器时,此端 定时输出负脉冲作为读片外存储器的选通信号。此引肢接 EPROM 的 OE 端 (见后面几章任何一个小系统硬件图)。PSEN 端有效,即允许读出 EPROMROM 中的指令码。PSEN 端同样可驱动 8 个 LS 型 TTL 负载。要 检查一个 8051/8031 小系统上电后 CPU 能否正常到 EPROMROM 中读取指 10 令码,也可用示波器看 PSEN 端有无脉冲输出。如有则说明基本上工作正常。 EA/Vpp(31 脚):外部程序存储器地址允许输入端/固化编程电压输入端。当 EA 引脚接高

32、电平时,CPU 只访问片内 EPROM/ROM 并执行内部程序存储器中 的指令,但当 PC(程序计数器)的值超过 0FFFH(对 8751/8051 为 4K)时,将自动 转去执行片外程序存储器内的程序。当输入信号 EA 引脚接低电平(接地)时, CPU 只访问外部 EPROM/ROM 并执行外部程序存储器中的指令,而不管是否 有片内程序存储器。对于无片内 ROM 的 8031 或 8032,需外扩 EPROM,此时 必须将 EA 引脚接地。此引脚的第二功能是 Vpp 是对 8751 片内 EPROM 固化 编程时,作为施加较高编程电压(一般 12V21V)的输入端8。 3输入/输出端口 P0

33、/P1/P2/P3: P0 口(P0.0P0.7,3932 脚):P0 口是一个漏极开路的 8 位准双向 I/O 口。 作为漏极开路的输出端口,每位能驱动 8 个 LS 型 TTL 负载。当 P0 口作为输 入口使用时,应先向口锁存器(地址 80H)写入全 1,此时 P0 口的全部引脚浮空, 可作为高阻抗输入。作输入口使用时要先写 1,这就是准双向口的含义。在 CPU 访问片外存储器时,P0 口分时提供低 8 位地址和 8 位数据的复用总线。在此 期间,P0 口内部上拉电阻有效。 P1 口(P1.0P1.7,18 脚):P1 口是一个带内部上拉电阻的 8 位准双向 I/O 口。P1 口每位能驱

34、动 4 个 LS 型 TTL 负载。在 P1 口作为输入口使用时,应 先向 P1 口锁存地址(90H)写入全 1,此时 P1 口引脚由内部上拉电阻拉成高电平。 P2 口(P2.0P2.7,2128 脚):P2 口是一个带内部上拉电阻的 8 位准双向 I/O 口。P 口每位能驱动 4 个 LS 型 TTL 负载。在访问片外 EPROM/RAM 时, 它输出高 8 位地址。 P3 口(P3.0P3.7,1017 脚):P3 口是一个带内部上拉电阻的 8 位准双向 I/O 口。P3 口每位能驱动 4 个 LS 型 TTL 负载。P3 口与其它 I/O 端口有很大的 区别,它的每个引脚都有第二功能,如

35、下: P3.0:(RXD)串行数据接收。 P3.1:(RXD)串行数据发送。 P3.2:(INT0#)外部中断 0 输入。 P3.3:(INT1#)外部中断 1 输入。 P3.4:(T0)定时/计数器 0 的外部计数输入。 11 P3.5:(T1)定时/计数器 1 的外部计数输入。 P3.6:(WR#)外部数据存储器写选通。 P3.7:(RD#)外部数据存储器读选通。 3.1.2 STC89C52 单片机的中断系统 STC89C52 系列单片机的中断系统有 5 个中断源,2 个优先级,可以实现二级 中断服务嵌套。由片内特殊功能寄存器中的中断允许寄存器 IE 控制 CPU 是否 响应中断请求;由

36、中断优先级寄存器 IP 安排各中断源的优先级;同一优先级内 各中断同时提出中断请求时,由内部的查询逻辑确定其响应次序。 在单片机应用系统中,常常会有定时控制需求,如定时输出、定时检测、定 时扫描等;也经常要对外部事件进行计数。STC89C52 单片机内集成有两个可 编程的定时/计数器:T0 和 T1,它们既可以工作于定时模式,也可以工作于外 部事件计数模式,此外,T1 还可以作为串行口的波特率发生器9。 3.1.3 单片机最小系统设计 图 3.3 单片机最小系统电路图 图 3.3 为单片机最小系统电路图,单片机最小系统有单片机、时钟电路、 复位电路组成,时钟电路选用了 12MHZ 的晶振提供时

37、钟,作用为给单片机提 供一个时间基准,其中执行一条基本指令需要的时间为一个机器周期,单片机 12 的复位电路,按下复位按键之后可以使单片机进入刚上电的起始状态。图中 10K 排阻为 P0 口的上拉电阻,由于 P0 口跟其他 IO 结构不一样为漏极开路的 结构,因此要加上拉电阻才能正常使用。 3.2 LCD 液晶显示器简介 由于本设计中要求显示界面显示一些参数,因此这里选用了 LCD1602 作为 界面显示,可以把一些相关的参数进行显示。 3.2.1 液晶原理介绍 液晶显示器(LCD)英文全称为 Liquid Crystal Display,它一种是采用了液晶 控制透光度技术来实现色彩的显示器。

38、和 CRT 显示器相比,LCD 的优点是很 明显的。由于通过控制是否透光来控制亮和暗,当色彩不变时,液晶也保持不 变,这样就无须考虑刷新率的问题。 显示接口用来显示系统的状态,命令或采集的电压数据。本系统显示部分 用的是 LCD 液晶模块,采用一个 162 的字符型液晶显示模块。 点阵图形式液晶由 M 行N 列个显示单元组成,假设 LCD 显示屏有 64 行,每行有 128 列,每 8 列对应 1 个字节的 8 个位,即每行由 16 字节,共 168=128 个点组成,屏上 6416 个显示单元和显示 RAM 区 1024 个字节相 对应,每一字节的内容和屏上相应位置的亮暗对应。一个字符由 6

39、8 或 88 点阵组成,即要找到和屏上某几个位置对应的显示 RAM 区的 8 个字节,并且 要使每个字节的不同的位为1,其它的为0,为1的点亮,为0的点暗,这 样一来就组成某个字符。但对于内带字符发生器的控制器来说,显示字符就比 较简单了,可让控制器工作在文本方式,根据在 LCD 上开始显示的行列号及 每行的列数找出显示 RAM 对应的地址,设立光标,在此送上该字符对应的代 码即可。 3.2.2 液晶模块简介 LCD1602 液晶模块采用 HD44780 控制器,hd44780 具有简单而功能较强的 指令集,可以实现字符移动,闪烁等功能,LM016L 与单片机 MCU 通讯可采 用 8 位或

40、4 位并行传输两种方式,hd44780 控制器由两个 8 位寄存器,指令寄 存器(IR)和数据寄存器(DR)忙标志(BF),显示数 RAM(DDRAM), 字符发生器 ROMA(CGOROM)字符发生器 RAM(CGRAM),地址计数器 13 RAM(AC)。IR 用于寄存指令码,只能写入不能读出,DR 用于寄存数据,数据 由内部操作自动写入 DDRAM 和 CGRAM,或者暂存从 DDRAM 和 CGRAM 读 出的数据,BF 为 1 时,液晶模块处于内部模式,不响应外部操作指令和接受数 据,DDTAM 用来存储显示的字符,能存储 80 个字符码,CGROM 由 8 位字符 码生成 5*7

41、点阵字符 160 中和 5*10 点阵字符 32 种.8 位字符编码和字符的对应 关系, CGRAM 是为用户编写特殊字符留用的,它的容量仅 64 字节,可以自 定义 8 个 5*7 点阵字符或者 4 个 5*10 点阵字符,AC 可以存储 DDRAM 和 CGRAM 的地址,如果地址码随指令写入 IR,则 IR 自动把地址码装入 AC,同时 选择 DDRAM 或 CGRAM,LCD1602 液晶模块的引脚图如图 3.4 所示。 图 3.4 LCD1602 引脚图 液晶寄存器选择控制如表 3.1。 表 3.1 寄存器选择控制 RSR/W操作说明 00写入指令寄存器(清除屏等) 01读 busy

42、 flag(DB7),以及读取位址计数器(DB0DB6)值 10写入数据寄存器(显示各字型等) 11从数据寄存器读取数据 3.2.3 液晶显示部分与 STC89C52 的接口 如图 3.5 所示。用 STC89C52 的 P0 口作为数据线,用 P1.2、P1.1、P1.0 分 别作为 LCD 的 EN、R/W、RS。其中 EN 是下降沿触发的片选信号,R/W 是读 写信号,RS 是寄存器选择信号本模块设计要点如下:显示模块初始化:首先清 屏,再设置接口数据位为 8 位,显示行数为 1 行,字型为 57 点阵,然后设置 为整体显示,取消光标和字体闪烁,最后设置为正向增量方式且不移位10。向 1

43、4 LCD 的显示缓冲区中送字符,程序中采用 2 个字符数组,一个显示字符,另一 个显示电压数据,要显示的字符或数据被送到相应的数组中,完成后再统一显 示.首先取一个要显示的字符或数据送到 LCD 的显示缓冲区,程序延时 2.5ms, 判断是否够显示的个数,不够则地址加一取下一个要显示的字符或数据。 图 3.5 LCD1602 与 STC89C52 的引脚连接图 3.3 信号采集电路设计 此部分电路的功能是由传感器将脉搏信号转换为电信号,一般为几十毫伏, 必须加以放大,以达到整形电路所需的电压,一般为几伏。放大后的信号波形 是不规则的脉冲信号,因此必须加以滤波整形,整形电路的输出电压应满足计

44、数器的要求。选择电路:所选放大整形电路框图如图 3.8 所示。 光电传感器放大电路有源滤波电路整形电路 图 3.8 放大整形电路框图 3.4.1 传感器简介 传感器采用了红外光电转换器,作用是通过红外光照射人的手指的血脉流 动情况,把脉搏跳动转换为电信号,其原理电路如图 3.9 所示。 15 图 3.9 传感器信号调节原理电路 如图 3.9 中,红外管 VD 采用 ST188。用+5V 电源供电,R1 取 150,R2 取 33k,当人把手指放在发光二极管和光电二极管之间的时候,光电二极管接 收到的信号会随人脉搏强度的变化而变化11。 3.4.2滤波电路 图 3.10 放大滤波电路 图 3.1

45、0 为脉搏计的放大滤波信号,由于脉搏信号输出的信号十分微弱,一 般在 uV 级别,除此外输出的信号一般会伴随很大的噪声干扰,因此在这里用 LM358 搭建起一个放大和滤波电路。 3.4.3 放大整形电路 经过放大滤波后的脉搏信号仍是不规则的脉冲信号,且有低频干扰,仍不 满足计数器的要求,必须采用整形电路,这里选用了滞回电压比较器,如图 3.11 所示,其目的是为了提高抗干扰能力。集成运放采用了 LM358,除此外 16 LM358 还接上了一个 LED 用作指示脉搏跳动的状态。 图 3.11 波形整形电路 第四章第四章 系统软件设计系统软件设计 4.1 系统软件总体设计 开始 液晶初始化 按下

46、按键? 键盘扫描 菜单 N Y 15s到? 计算脉搏值 显示脉搏值 返回 Y N 按键1按下?按键2按下? 上限设定 下限设定 返回 对应值增加 按键3按下? Y N Y 对应值减小 按键4按下? 开中断,测脉搏 17 图 4.1 系统流程图 主程序流程图如图 4.1 所示,单片机上电后先进行初始化,清楚一些参数 的初值,然后等待用户按下对应的按键并进入对应的功能,当用户按下测量按 键的时候流程如图 4.1(c)所示,单片机通过定时 15s 测量人体的脉搏次数流程如 图 4.1(b)所示,然后再换算出对应的真实的脉搏次数再在液晶屏幕上显示流程 如图 4.1(a)所示,当用户按下设置脉搏范围设定

47、按键后,单片机根据用户按下 的按键进行增加或减少范围。 首先先调用液晶自定义的字库,设置好 DDRAM 地址后在第一行显示,根 据程序中的数据设置显示数据的首地址并设置循环量,在循环过程中不断的取 字符代码直到终止,第二行的显示过程同一行的显示过程一样,两行显示完毕 后便结束子程序,如图 4.2 所示15。 调用自定义 字库 设置DDRAM地 址,在第一 行显示 设置显示数 据首地址 循环量设置 取字符代码 循环完? 设置DDRAM地 址,在第一 行显示 设置显示数 据首地址 循环量设置 取字符代码 循环完? 结束 图 4.2 LCD1602 初始化子函数流程图 4.2 程序设计原理 软件任务

48、分析和硬件电路设计结合进行,哪些功能由硬件完成,哪些任务 由软件完成,在硬件电路设计基本定型后,也就基本上决定下来了。 18 软件任务分析环节是为软件设计做一个总体规划。从软件的功能来看可分 为两大类:一类是执行软件,它能完成各种实质性的功能,如测量,计算,显 示,打印,输出控制和通信等,另一类是监控软件,它是专门用来协调各执行 模块和操作者的关系,在系统软件中充当组织调度角色的软件。这两类软件的 设计方法各有特色,执行软件的设计偏重算法效率,与硬件关系密切,千变万 化。 软件任务分析时,应将各执行模块一一列出,并为每一个执行模块进行功 能定义和接口定义(输入输出定义) 。在各执行模块进行定义

49、时,将要牵扯到的 数据结构和数据类型问题也一并规划好。 各执行模块规划好后,就可以监控程序了。首先根据系统功能和键盘设置 选择一种最适合的监控程序结构。相对来讲,执行模块任务明确单纯,比较容 易编程,而监控程序较易出问题。这如同当一名操作工人比较容易,而当一个 厂长就比较难了。 软件任务分析的另一个内容是如何安排监控软件和各执行模块。整个系统 软件可分为后台程序(背景程序)和前台程序。后台程序指主程序及其调用的 子程序,这类程序对实时性要求不是太高,延误几十 ms 甚至几百 ms 也没关系, 故通常将监控程序(键盘解释程序) ,显示程序和打印程序等与操作者打交道的 程序放在后台程序中执行;而前台程序安排一些实时性要求较高的内容,如定 时系统和外部中断(如掉电中断) 。也可以将全部程序均安排在前台,后台程序 为“使系统进入睡眠状态”,以利于系统节电和抗干扰。 19 第五章第五章 系统调试系统调试 5.1 软件调试 基于单片机的脉搏计系统是多功能的数字型设计, ,所以对于它的程序也较 为复杂,所以在编写程序和调试时出现了相对较多的问题。最后经过多次的模块 子程序的修改,一步一步的完成,最终解决了软件。在软件的调试过程中主要 遇到的问题如下: 问题 1:

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1