1、数理与信息工程学院单片机原理及应用 期末课程设计电子睡眠仪器的制作1数理与信息工程学院单片机原理及应用期末课程设计题 目: 电子睡眠仪的制作 专 业: 计算机科学与技术(专升本)班 级: 计算机 081 班 姓 名: 边强 学 号: 08191118 指导老师: 余 水 宝 成 绩: 目 录第一章 绪 论 51.1 引言 51.2 国内外睡眠仪研究现状 6数理与信息工程学院单片机原理及应用 期末课程设计电子睡眠仪器的制作21.3 本课题主要工作 7第二章 电子睡眠仪的硬件设计 82.1 系统总体设计 82.1.1 系统技术指标 92.2 单片机模块介绍 102.2.1 CCP模块PWM功能 1
2、02.2.2 A/D转换模块 102.2.3 USART串行通讯模块 112.3 低频脉冲信号输出电路设计 112.3.1 低频电子脉冲频率选择 112.3.2 低频脉冲输出部分总体设计 112.3.3 器件选用及电路连接 122.4 脉搏信号采集硬件设计 122.4.1 脉搏采集部分总体设计 12 2.4.2 脉搏测量电路 122.4.3 检测脉搏传感器的选择 132.5 体温信号采集硬件设计 132.5.1 体温信号采集电路设计 1132.5.2 温度传感器的选择 142.5.3 恒流源选择 142.6 按键、液晶显示器的设计 152.6.1按键部分设计 16数理与信息工程学院单片机原理及
3、应用 期末课程设计电子睡眠仪器的制作32.6.2液晶显示模块设计 172.7 通讯电路设计 18第三章 电子睡眠仪的软件设计 193.1 软件总体框图 203.2 低频脉冲输出程序设计 213.2.1 治疗模式 223.3 脉搏信号采集程序 223.4 体温信号采集及A/D转换程序 243.5 按键及显示程序 253.5.1 按键功能实现 253.5.2 液晶显示程序 25第四章 系统调试及实验结果. 264.1 系统调试. 274.1.1 ICCAVR编译器简介 274.1.2 ICCAVR的设置 284.1.3 低频电子脉冲输出调试 284.2 实验结果及分析 284.2.1 改善睡眠的效
4、果 284.2.2 脉搏检测结果与实际值比对 284.2.3 体温检测值与实际值比对 284.3 误差来源分析 29数理与信息工程学院单片机原理及应用 期末课程设计电子睡眠仪器的制作44.3.1 脉搏次数误差分析 294.3.2 体温值误差分析 29第五章 课程设计总结 29参考文献 30第一章 绪 论1.1引言近些年来随着人们生活节奏的加快,工作压力的增加,运动量的缺乏或其他原因引起的烦躁、身心不安,导致失眠患者越来越多。北京大学第三医院在北京公布了针对中国六城市普通人群失眠现状的调研报告,对北京、上海、广州、南京、成都、杭州6个城市的调查结果表明,成年人在过去12个月中睡眠障碍发病率为57
5、%,其中上海地区的发病率(62%)高于其他地区。每周都会出现失眠症状的患者占26%,数理与信息工程学院单片机原理及应用 期末课程设计电子睡眠仪器的制作5失眠症状持续一年或一年以上的患者占53%。随着社会的发展,噪音污染的与日俱增,失眠症的发生率还会呈上升的趋势,已严重影响到人们的身心健康,使工作效率与生活质量下降。因此,治疗失眠便成为一项刻不容缓的任务。治疗失眠的方法有很多种,药物疗法、心理疗法、饮食疗法和自我调节疗法等,但“是药三分毒” ,药品在治病的同时也会给人体带来系列副作用,长期服用易导致肝、肾功能不良,精神混乱等,并对药物产生依赖性。心理疗法等也只能起到辅助治疗的作用。近些年来,随着
6、电子技术的快速发展,中国传统医学与电子技术相结合,市面上出现了许多治疗失眠的电子仪器2。电子睡眠仪,是以我国传统医学治疗失眠症的耳针疗法为基础,结合现代医学对睡眠脑电波的研究成果,应用低频电子脉冲形式,通过特制的皮肤电极,刺激距大脑很近的敏感耳穴,模拟中医针刺手法,作用于神经中枢,达到调节神经促进睡眠的目的。仪器提供了一种非药物治疗的现代化手段,是通往正常睡眠的绿色通道。并且本仪器增加了实时采集人体体温和脉搏信号的功能,可以方的便得到人体的脉搏值和体温值,辅助提示人体的健康状况。1.2 国内外睡眠仪研究现状失眠症的治疗首先应建立在对患者全面的评估和准确诊断基础之上。目用的治疗手段有药物治疗、物
7、理治疗、心理治疗以及中医药治疗等。大多数催眠药物都存在耐受性和依赖性,不能长期使用,而且药物的“宿醉”现象会影响患者第二天的工作表现,并可能增加第二天的日间睡眠,从而干扰夜间睡眠,使治疗进一步复杂化。失眠症治疗仪器能调节脑电波到恰当的频率分布,从而达到睡眠状态。当然每一种仪器的具体实现手段是不一样的。目前国内外失眠治疗仪器主要有以下几种:(1)声光大脑调节仪本世纪 40 年代,科学家格雷沃尔特等阐示并证明了光刺激对脑电波活动的影响,其中一个最重要的发现就是“频率跟随反应”或共鸣,即脑电波会对光刺激作出相应反应。手工焊接和 ICCAVR 编译器的应用。这样,通过选择合适频率的声音信号,能调节脑电
8、波进入预期的频率,如双耳节拍缓和的节奏可使脑电波进入缓慢的 和 波状态。这是声光大脑调节仪能让使用者进入睡眠状态的依据。常见的声疗法有超声波疗法:超声声头紧贴放于皮肤上并作上下移动,同时配合进行高压低频电流治疗。电音乐疗法:选用适中的乐曲,将音乐信号放大处理,转化成低中频混合电流作用于人体。光疗法:依据是视网膜丘脑束将光信息传至交叉上核,从而使人数理与信息工程学院单片机原理及应用 期末课程设计电子睡眠仪器的制作6体内的“昼夜节律起搏器”达到与明暗周期同步化。如用一定光强度和适当的时间治疗就能改变病人的睡眠觉醒周期,对治疗睡眠节律性障碍有很好的疗效。(2)大脑刺激仪人类大脑的所有活动都是生物电活
9、动,我们所有的思维、感觉和身体运动均是基于贯穿脑部的微电流引发,神经系统加以弱电流脉冲能改变人的生理和心理状态。自 1940 年前苏联科学家发现对大脑的微弱电流刺激能改变人的生理和心理状态开始,国外就开展了用电刺激来调节大脑状态的研究并取得了突破性的进展。(3)低频磁场诱导仪利用外界物理因素来影响机体的脑电活动一直是世界医学领域引人注目的研究课题。近年来,国外学者就磁刺激对神经系统和脑电活动的影响进行了大量的研究工作,初步形成了一项新的经皮磁刺激技术。一种基于该种思想的仪器将特殊设计的模拟脑电信号规律的外界低频脉冲磁场经线圈耦合入脑,在脑内形成感性电流,作用于脑的不同部位,特别是 Hess 区
10、。从而触发主动睡眠中枢,并使其与该脉冲磁场同步谐振,吸收能量,引起神经冲动和组织细胞的增值反应,主动向网状系统传递信息。(4)脑电生物反馈同步仪生物反馈技术是 60 年代由实验心理学内发展起来的一项新的医疗技术。它借助于医学电子工程技术,将使用者身体器官发出的微弱生物电加以放大,转换成视觉(光点、指针的移动) 、听觉 (声音的强弱或有无) 信号反馈给使用者,使其能随时了解自身的机体变化状态,这样可以通过强化手段让使用者学会自主地控制自身机体的反应变化,使之逐步趋向某一预定目标。(5)高压电位疗法高压电位疗法是一种风靡欧美和日本新型的物理疗法,它的原理是把全身置于高压电场中,使人体内带电粒子、离
11、子产生的生物电流趋于正常的流动达到促进健康的目的。高压电位的作用:增强人体生物电流,激活细胞,促进新陈代谢,调解酸碱平衡,达到改善植物神经及中枢神经功能,调节内分泌机能,改善全身血液循环。1.2 本课题主要工作本文主要介绍电子睡眠仪的基本原理,前向通道,后向通道和人机接口的硬件电路设计,软件程序设计,系统调试,误差来源分析和实验结果。以下是本课题主要内容简介:第 1 章简要介绍课题背景,电子睡眠仪的国内外研究现状和耳针疗法数理与信息工程学院单片机原理及应用 期末课程设计电子睡眠仪器的制作7研究概况。第 2 章详细介绍仪器的硬件设计过程,包括将发送低频电子脉冲信号至人体硬件电路,采集人体的体温信
12、号硬件电路,采集人体脉搏跳动次数硬件电路,液晶模块显示和按键部分,与上位机的通讯电路。第 3 章介绍仪器的软件设计过程。软件程序主要是单片机 MPASM 汇编程序,包括发送固定频率和不规则频率的低频电子脉冲信号;采集人体的体温信号,经 A/D 转换发送液晶显示模块;采集人体脉搏跳动次数;液晶模块显示所选择的模式,强度,体温和脉搏等值,按键实现功能转换和强度改变。第 4 章对系统的各项功能进行了调试,做了一定量的实验,本仪器的实验结果和参考值进行比对,分析产生误差的各种因素,这将有助于今后对仪器的改进,以更好地实现仪器的各项功能。第二章 电子睡眠仪的硬件设计2.1 系统总体设计电子睡眠仪的硬件系
13、统是以 Microchip 公司的 PIC16F877A 单片机为核心的控制系统。总体设计包括其前向通道脉搏和体温信号的采集,后向通道发送低频电子脉冲信号和人机接口按键和液晶显示的设计。硬件总体框图如图 2-1 所示: 数理与信息工程学院单片机原理及应用 期末课程设计电子睡眠仪器的制作82.1.1 系统技术指标(1)通过两个耳极发送强度可调的低频电子脉冲信号,有催眠和治疗两种模式可供选择:催眠模式,脉冲频率0.5Hz,误差不大于5%治疗模式,脉冲频率范围215Hz,波形为不规则方波脉冲宽度,最大宽度100毫秒输出幅度调节连续均匀,最大输出幅度不大于5V(2)检测人体体温值所需时间不超过30秒,
14、误差不大于0.2;(3)检测人体脉搏次数需时30秒,误差不超过3%;(4)具有液晶显示功能,可以显示所选用的模式、脉搏次数、体温值、强度等,5秒无操作显示屏自动变暗;(5)定时设定:定时30分钟,到设定时间自动停止输出,自动停机。2.2单片机模块介绍本 课 题 选 用 的 微 控 制 器 为 Microchip公 司 推 出 的 8bit的 PIC16F877A单片 机 。 我 们 选 用 这 款 单 片 机 主 要 是 因 为 它 外 围 模 块 片 内 化 , 其 将 多 路 开 关 、数理与信息工程学院单片机原理及应用 期末课程设计电子睡眠仪器的制作9采 样 保 持 器 和 A/D转 换
15、 器 集 成 在 一 起 , 并 且 内 置 的 CCP模 块 集 捕 捉 、 比 较 、脉 宽 调 制 三 项 于 一 身 , 这 样 就 减 少 了 分 离 元 件 的 数 目 , 缩 小 了 电 路 板 的 大 小和 增 加 系 统 可 靠 性 , 此 外 它 比 较 同 类 型 产 品 , 具 有 低 价 实 用 、 高 速 度 、 低 功耗 、 实 时 执 行 、 功 能 强 大 的 I/O功 能 、 中 断 特 性 和 开发容易等特点。PIC16F877A的工作频率范围为DC20MHz ,内置POR(Power-on Reset)和BOR(Brown-out Reset)两种复位功
16、能、上电延时定时器(PWRT) 振荡器起振定时(OST),除了1个看门狗定时器之外,另外还有3个定时器及2个CCP模块,串行通信模式方面则支持MSSP和USART 。存储器分为三部分:Flash程序存储器(8K14),数据存储器以及EEPROM 的数据存储器,还有 13个中断源, A、B、C、D 、E三个输入输出端口以及8个10位A/D通道21。下面介绍设计过程中所应用到模块的基本功能。2.2.1 CCP模块PWM功能PIC16F877A提供的两个CCP模块可以提供外部信号捕捉、内部比较输出以PWM脉宽调制信号输出这三种功能,不过在设置一个CCP 模块时,只能选择其中的一种功能使用。我们利用这
17、个模块实现了给人体发送低频电子脉冲信号。PWM是输出脉冲宽度可调的信号,PWM功能所使用的时基为 Timer2,Timer2是一个8位的定时器,其中包括一个预分频器和一个后分频器。这里我们用到其预分频器,分频比选择为1:16。Timer2的另一个特点就是带有一个 PR2寄存器,称之为周期寄存器,这个寄存器可以由我们填入适当的值。当Timer2寄存器的值增量到与PR2 寄存器的值相等时便会产生的中断。使用PR2寄存器和吻合中断的特点就可以让使用者有选择计时范围的弹性,我们就可以根据方波的周期来设定PR2寄存器的值,用CCPRxL寄存器来储存工作周期,即高电平的宽度。PWM信号的周期和 PWM信号
18、的工作循环周期必须根据需要设定明确。PWM信号的示意图如图 2-2所示。数理与信息工程学院单片机原理及应用 期末课程设计电子睡眠仪器的制作102.2.2 A/D转换模块PIC16F877A内置了一个模数转换器模块(ADC),支持多通道的模拟信号输入,提供了8个A/D输入通道。A/D转换模块有10位分辨率,由两个8位的寄存器来存储转换结我们将测得的模拟信号由PORTA端口RA0口RA0口输入,使用10位的A/D转换,完成一次10位A/D转换的时间为12t,ADCON1寄存器,ADFM选择A/D转换结果格式位;PCFG3:PCFG0是A/D端口结构控制位;ADCON1寄存器中的PCFG3:PCFG
19、0位用来设置所有的A/D转换引脚的工作方式以及A/D转换基准电压的来源。一种情况:使用单片机内部的基准源,另一种情况是:使用外部的基准源。我们使用单片机内部的基准源+5V。ADFM位设为1时,放入的值会右对齐,因此ADRESH寄存器中的值只有bit0和bit1是有意义的;如果ADFM位设为0时,那就是左对齐,此时ADRESL寄存器中的值只有bit7和bit6有意义。我们选择第二种左对齐方式。2.2.3 USART串行通讯模块PIC16F877A提供了两个串行通讯模块,分别是同步串行口(MSSP)和通用同步异步接受发送器(USART),我们使用的是USART模块。USART模块又可分为异步方式与
20、同步方式。单片机和PC机串口通讯采用的是USART的异步发送模式,在异步发送方式下,数数理与信息工程学院单片机原理及应用 期末课程设计电子睡眠仪器的制作11据的发送和接受是可以同时进行的,因为发送和接收电路各自处理数据。USART的串行数据发送电路主要包括一个发送移位寄存器(TSR)和一个数据发送寄存器(TXREG)。将要发送的字节的值加载到TXREG寄存器之后,TXREG寄存器就会在下一个指令周期中,被放到TSR中。我们选择USART的低速异步模式,采用32.768K晶振,使用波特率9600bps。2.3低频脉冲信号输出电路设计2.3.1低频电子脉冲频率选择脑电信号是一种重要的生理电信号,它
21、以频率为其重要特征,是振幅、相位、频率连续变化的非周期性输出信号,其频率变化范围大约在0.530Hz范围内,为了便于分析,通常将此频率变化大致分为4个波段为波:频率为0.393.91Hz,正常成人只有在深睡才可记录到这种波;波:频率为3.917.81Hz,成人在困倦时常可记录到此波,和波统称慢波,清醒的正常人身上一般记录不到和波;波:频率为7.8112.89Hz(1约为7.819.8Hz,2约9.812.89Hz)正弦形节律,它是正常成人脑电波的基本节律,在清醒并眼时出现;波:频率为12.8930.08Hz(1约为12.8920.0Hz,2约20.030.08Hz),安静闭目时只在额区出现,睁
22、眼或进行思考时出现的范较广,波的出现一般表示大脑皮层处于兴奋状态24,25。2.3.2低频脉冲输出部分总设计使用PIC16F877A单片机的CCP模块PWM功能,发送两路我们要求的波形,首先使用跟随器提高输出的驱动能力和带负载能力,再经过反相器反相整形,由于输入人体的信号电压不能太强,要求不超过5V,所以用5V稳压管稳压后经特制耳极分别送入人体两只耳朵上特定的穴位。其原理框图如图2-3所示。2.3.3器件选用及电路连接数理与信息工程学院单片机原理及应用 期末课程设计电子睡眠仪器的制作12运算放大器选用LM358,它是一个双运算放大器,LM358内部包括有两个独立的、高增益、内部频率补偿的双运算
23、放大器,适合于电源电压范围很宽的单电源使用,也适用于双电源工作模式,在推荐的工作条件下,电源电流与电源电压无关。它的使用范围包括传感放大器、直流增益模块和其他所有可用单电源供电的使用运算放大器的场合。它的管脚图如图2-5所示:反相器我们采用HEF4069UBP,它是六反相器集成电路,采用双列式塑封装,共14引脚,内含六个独立的反相器。每个反相器均可执行逻辑的反相操作。用它还可构成振荡器、脉冲整形和小信号的电压放大等。我们这里主要应用其反相和脉冲整形功能。2.4脉搏信号采集硬件设计脉搏是动脉血管随心脏舒缩而周期性波动的现象。一个健康成年人的脉搏数会稳定在50100次/秒。当每分钟的脉搏数低于50
24、次/秒时称为心动过缓,高于160次/秒称为心动过速,心动过缓和过速都可能会直接带来生命危险。在医院临床监护和日常中老年保健中,脉搏是一项基本的生命指标,因而脉搏测量是最常见的生命特征的提取2.4.1脉搏采集部分总体设计数理与信息工程学院单片机原理及应用 期末课程设计电子睡眠仪器的制作13。检测脉搏脉冲信号的传感器采用压电陶瓷即可获得人体脉搏范围的信号(约在0.663.33Hz之间) ,首先将人体的脉搏通过压电陶瓷片转换为可处理的电压信号,由于人体脉搏信号比较微弱,转换得到的电压幅值约为200mV,首先经过同相放大器一级放大,放大倍数为8倍,再经过RC低通滤波器,截止频率为10Hz,将50Hz工
25、频频干扰滤去,然后经过二级放大器放大3倍后,经过反相器整形,将模拟电压信号转化为单片机所需要的标准的高低电平脉冲信号,再送入单片机进行处理。2.4.2脉搏采集部分总体设计压电陶瓷片一端接地,另一端接放大滤波电路整形后送入单片机的RB4口,有脉冲单片机则计数。硬件连接如图2-7所示:2.4.3检测脉搏传感器的选择脉搏检测传感器的分类脉搏测量有以下几种方法:一是从心电信号中提取,该种方法需要从身体上固定好几个电极,一般是用在医院中的较大型的综合检测仪,不适合用在家庭中对进行睡眠时的长时监测;二是用压力传感器测量脉搏搏动压力数理与信息工程学院单片机原理及应用 期末课程设计电子睡眠仪器的制作14信号,
26、计算脉搏频率,该方法简单易行,但测得的信号较微弱,须进行放大处理。三是容积脉搏波检测法,应用光电式传感器检测手指,耳垂和脚趾等血流透光率的变化来确定心率。压电方式检测起来比较容易,但是光电方式同时还能检测血样饱和度。2.5体温信号采集硬件设计体温是人体进行新陈代谢和正常生命活动的必要条件,是人体内在活动的客观反映,是判断人体健康状态的基本依据和指标,临床称之为生命体征。人体体温测量在临床诊断与治疗上具有重要意义。住院患者的体温、血压和脉搏测量,是医护人员每日必须检测的生理指标之一,护理人员仍然普遍采用传统的方法,即用水银玻璃温度计进行手工测量和记录。这存在着一些隐患和不便。采用水银体温计检测由
27、于检测时间长、检测精度低,难以进行温度的自动化检测,已不能满足现代医院的需要,研制快速、方便的人体温度测量系统则显得更有必要。 (3) ATmega16L 包含512 字节的EEPROM 数据存储器。它是作为一个独立的数据空间而存在的,可以按字节读写EEPROM 的寿命至少为100,000 次擦除周期。2.5.1体温信号采集电路设计温度传感器我们选用四线制Pt100,温度为0时电阻值为100?,随着温度的升高电阻值随之增大。温度检测电路如图2-9所示,恒流源与铂电阻组成的回路为电流回路,放大器和铂电阻组成的回路为电压回路。电流回路中的电流是恒定的,为1mV。当铂电阻的电阻值随温度发生变化时,其
28、两端的电压会发生相应的变化,此电压与温度之间具有很好的线性关系。放大器是输入阻抗极大的集成电路,因此电压回路中的电流极小,铂电阻两端的电压可以经过很长的导线传输而几乎没有损失,从而消除了导线电阻的影响。放大器的输出经过A/D转换器即可转换为相应的数字信号。铂电阻模拟输出的四线制A/D转换技术大大提高了铂电阻测温的准确度和抗干扰性。数理与信息工程学院单片机原理及应用 期末课程设计电子睡眠仪器的制作152.5.2温度传感器的选择常用的温度传感器根据传感器的测温方式,温度基本测量方法通常可分成接触数理与信息工程学院单片机原理及应用 期末课程设计电子睡眠仪器的制作16式和非接触式两大类。接触式温度测量
29、的特点是感温元件直接与被测对象相接触,两者进行充分的热交换,最后达到热平衡,此时感温元件的温度与被测对象的温度必然相等,温度计就可据此测出被测对象的温度。非接触式温度测量特点是感温元件不与被测对象直接接触,而是通过接受被测物体的热辐射能实现热交换,据此测出被测对象的温度。2.5.3恒流源选铂电阻测温电路有2种形式,一种是用恒流源电路,一种是用恒压源电路。恒流源电路就是给铂电阻提供一个恒定的电流,这样温度引起电阻的变化就会转变为铂电阻两端电压差的变化。我们采用的就是恒流源电路,为了避免因为铂电阻自身发热引起的温度变化产生测量误差,通过铂电阻的电流不应过大,可为0.51mA范围内,我们恒流源的电流
30、值选择为1mA本文所选恒流源为LM334,它是美国国家半导体公司生产的三端可调恒流源器件,在工作电流内恒流源可调范围比为10000:1,并且具有lV到40V宽的动态电压范围,恒流特性非常好。恒流源的建立只需一只外接电阻而不再需要其它元件。LM334是无需独立电源供电的真正悬浮恒流源。另外,器件可以反向施加电压到20V而只流过几十微安的电流,在交流应用场合,该器件既可作整流同时又可作恒流源。该器件还具有与绝对温度成正比的敏感电压特性,因此也可以用作温度传感器。通过外接一只电阻和二极管可以获得零温度漂移的恒流源。2.6 按键、液晶显示器的设计2.6.1按键部分设计为了实现模式的切换和强度的增减,我
31、们设置了三个按键,分别为模式选择键,增强键和减弱键。根据按键的数量有不同的按键设计方法:独立式按键结构和矩阵式按键结构。独立式按键是指直接用I/O口线构建成的单个按键电路。每个独立式按键单独占有一根I/O口线,每根I/O口线上的按键工作状态不会影响其它I/O口线的工作状态。矩阵式按键结构是用I/O口线组成行、列结构,按键设置在行列的交点上,在按键较多时采用这种方式。独立式按键电路配置灵活,软件结构简单,但是每个按键必须占用一根I/O口线,在按键较多时,I/O口线浪费较大。故在按键数量不多时,常采用这种按键电路。本文共三个按键,所以选择独立式按键。 模式选择键:仪器输出催眠和治疗两种模式的低频电
32、子脉冲,波形分别为固定数理与信息工程学院单片机原理及应用 期末课程设计电子睡眠仪器的制作17频率为0.5Hz的方波和频率为215Hz不规则变化的方波,开机时默认模式为催眠模式,当按下模式选择键后,转换当前所选择的模式。增强键:用来加强脉冲的强度,开机时默认强度为2,按下一次增强键强度加1,增加到强度6则不在增加。减弱键:用来减弱脉冲的强度,最小强度值为1。2.6.2液晶显示模块设计 液晶显示模块是一种将液晶显示器件,连接件,集成电路,PCB 线路板,背光源,结构件装配在一起的组件,简称 LCM。液晶显示模块可分为笔段型,字符型和图形型液晶显示模块。笔段型是将长条状显示像素结合起来以显示信息的液
33、晶显示模块,主要用于显示数字、西文字母、某些专用符号或固定图形;点阵字符型液晶显示模块,可以显示数字和西文字符,这种点阵字符模块本身具有字符发生器,显示容量大,功能丰富;点阵图形式液晶显示模块,除了可以显示图形之外,也可以显示字符和汉字,根据显示信息量的区别,它还可以分为大规模、中规模和小规模块。数理与信息工程学院单片机原理及应用 期末课程设计电子睡眠仪器的制作19由于要显示汉字,我们选用 128 列64 行的小规模图形点阵型液晶显示模块。所选用的液晶模块型号为 YM12864I。它是一种应用非常广泛的内置驱动控制器液晶显示模块。模块自带两个列显示驱动控制器 KS0108B 和一个行显示驱动控
34、制器KS0107B。两个 KS0108B 分别控制左右两个半屏像素点显示,KS0107B 作为 64 行的行驱动控制,还包括一个 12864 点阵的 LCD 液晶屏和一块 LED 背光板。该模块控制电路主要由指令寄存器(IR)、数据寄存器(DR)、忙标志(BF)、显示控制触发器(DFF)、XY 地址计数器(DDRAM)、显示数据(RAM)及 Z 地址计数器组成。其结构如图 2-14 所示:数理与信息工程学院单片机原理及应用 期末课程设计电子睡眠仪器的制作20液晶显示模块(LCM)用来显示选择的输出低频电子脉冲的模式,强度,人体温度值和脉搏值。其电路图连接如图 2-15 所示:2.7 通讯电路设
35、计通过 USB 接口将数据传输到上位机。我们选用 USB 接口转换芯片 PL2303,它是一款性价比很高的 USB 转换芯片。PL2303 是移动系统和嵌入式系统的理想选择,其小封装能够嵌入任何连接件和手持设备。PL2303 在工作模式和休眠模式都具有很低的功耗,非常适合总线供电场合使用。PL2303 的输出电压可调,可以满足类RS232 接口的 5V、3.3V、 2.5V 之间的电压。它通常用作微控制器系统中实现与 PC机进行数据通信的控制,它的开发时间短,风险小,且费用少,所以是实现 USB 外设的最经济的解决USB 外围电路图如图 2-16 所示,PL2303 将把从 PIC 单片机中处
36、理的数据经过转换后,通过 USB 总线上传至 PC 机。PL2303 的驱动程序可在其官方网站上下载,用户使用非常方便。其片内已存储固件程序,若用户需要增加或修改其功能,可自己编写固件程序。PL2303 默认的是 COM3 口。数理与信息工程学院单片机原理及应用 期末课程设计电子睡眠仪器的制作21第 3 章电子睡眠仪的软件设计3.1 软件总体框图单片机软件程序使用 Microchip 公司提供的适合所有的 PIC 系列单片机的 MPASM汇编语言进行编写。软件程序有以下几个模块:发送 PWM 方波脉冲信号,对温度信号进行 A/D 转换和数据处理,对脉搏信号计数,响应三个功能按键的中断,液晶显示
37、程序,TMR1 定时 30 分钟。其主循环流程图如 3-1 所示:数理与信息工程学院单片机原理及应用 期末课程设计电子睡眠仪器的制作22数理与信息工程学院单片机原理及应用 期末课程设计电子睡眠仪器的制作23由于 PIC16F877A 只有一个中断向量,它没有中断优先级,要实现中断的优先级,只能通过硬件电路和软件编程来实现,为了避免电路设计中,中断源同时产生的可能,我们在硬件电路的设计上实现了不同时序处理中断响应。也就是说,在某一时刻微控制器只能处理一个中断事件。如图 3-2 是中断子程序的流程图,程序进入中断处理子程序,首先要保护现场,判断中断源。若是 PWM 模块产生中断请求,则执行 PWM
38、 中断子程序;若是 RB 电平变化中断产生中断请求,那么相应的就进入 RB 中断子程序;若是定时器 0 产生中断请求,则执行定时器 0 中断子程序。3.2 低频脉冲输出程序设计数理与信息工程学院单片机原理及应用 期末课程设计电子睡眠仪器的制作24本课题使用 PIC16F877A 单片机 CCP 模块的 PWM 功能来发送要求的脉冲信号。我们根据方波的周期和占空比来设定 PR2 寄存器的值,和 CCPRxL 寄存器工作周期值,即高电平的宽度。调用 PWM 初始化程序 PWM_INIT 开始发送脉冲,默认模式为催眠模式,Timer2 寄存器的值增量到与 PR2 寄存器的值相等时产生的中断来为CCP
39、RxL 寄存和 PR2 寄存器重新赋值。其流程图如图 3-3 所示:3.2.2 治疗模式 治疗模式下,PIC16F877A 单片机发送频率范围为 215Hz 随机变化的不规则方波,使人体不易产生对脉冲的适应性,对穴位刺激更加有效,治疗失眠作用更加显著,适用于重度失眠者。通过改变周期寄存器 PR2 的值来改变方波的周期。实际上,真正的随机输出是难以达到的,通常只能产生看来是随机的数字输出。这种数叫做伪随机数或伪随机码。这里的伪意味着输出并非是真正的随机数。仍然是一个周期重复的序列。但是,此序列足够长,看来像随机的41。215Hz 频率方波对应的PR2 的值为 21H0FFH,建立一个 64 维的
40、表,包含 64 个范围是 21H0FFH 随机数,通过查表方式给 PR2 赋值。其流程图如图 3-5 所示:数理与信息工程学院单片机原理及应用 期末课程设计电子睡眠仪器的制作253.3脉搏信号采集程序压电陶瓷片传感器采集的脉搏信号经过硬件电路放大滤波整形后送入单片机的RB4口,利用 PORTB口的电平变化中断功能,每采集一个脉冲计数一次,脉冲次数寄存器值加1,定时时间为30s,进行阈值判断,大于 40送液晶显示,其程序流程图如图3-6所示:数理与信息工程学院单片机原理及应用 期末课程设计电子睡眠仪器的制作263.4体温信号采集及A/D转换程序体温信号采集硬件电路将反映温度值的Pt100的阻值转
41、换为电压值经放大后送入单片机进行A/D转换,而单片机程序对电压值进行数据处理,将电压值还原为温度值送液晶模块显示。体温信号模拟量通过RA0口送入单片机进行 A/D转换,A/D转换模块有10位的分辨率,输入引脚上的模拟信号经过转换之后会得到0到1023之间的值,因此用到两个8位的寄存器来存储转换结果。输入模拟信号的参考电压从寄存器设置选择以单片机的供电电压DDV为基准,为+5V。体温信号采集的软件程序主要包括:A/D转换,阈值判断,数据处理,十进制数转BCD码,液晶显示体温值。其主程序框图如图3-7 所示。数理与信息工程学院单片机原理及应用 期末课程设计电子睡眠仪器的制作273.5按键及显示程序
42、3.5.1按键功能实现按键功能实现是利用单片机RORTB端口电平变化中断功能完成的,但是由于选用的按键都是利用机械触点,当机械触点在闭合及断开的瞬间均有抖动过程,所以按键必须采用软件去除抖动。即在检测到有按键按下时,执行一个10ms的延时后在确认该键电平是否仍保持闭合状态,如果保持闭合状态则确认为按下,从而可以消除按键抖动的影响。在用到RORTB端口电平变化中断功能时,不管是电平从高到低状态还是电平从低到高状态,都会引发中断,所以当按一次键时,实际上已经发生:了两次中断,必须用软件来区分两次不同的中断,并使一次中断没有实际意义。所以在程序中设计执行相应中断子程序功能之前先判断按键是否确实按下,
43、是则判断按键是否释放,释放后再往下执行,否则等待按键释放。3.5.2液晶显示程序液晶显示包括固定汉字显示和变量显示两部分。固定汉字包括:“模式” 、 “脉搏” 、 “体温”和“强度” ,而变量包括所选择的模式为“催眠”还是“治疗” ,测得的脉搏次数和体温值,还有选用的强度值。液晶程序包括清屏,写指令,写数据,设置起始页、列、行值等子程序,实时显示选择模式,强度,脉搏,体温值。其流程图如图3-8 所示:液晶模块的工作过程简析为,液晶模块经数据总线接收外部单片机发来的指令和数据,并存入内部的指令或数据寄存器中,在这些指令的控制下,数理与信息工程学院单片机原理及应用 期末课程设计电子睡眠仪器的制作2
44、8行列驱动器对12864点阵的LCD显示屏进行控制。液晶为12864图形点阵型,液晶模块不带字库,需要将要显示的汉字和字符的字模编入程序中。汉字为1616点阵,字符为816点阵。显示一个汉字需占用32字节存储区,显示一个字符需占用16字节存储区汉字显示的流程图如图3-9所示:第4章系统调试及实验结果数理与信息工程学院单片机原理及应用 期末课程设计电子睡眠仪器的制作294.1系统调试4.1.1体温信号获取及放大体温信号采集硬件电路将反映温度值的Pt100的阻值转换为电压值,经差分放大后送入单片机进行A/D转换,本部分实验主要是验证在不同电阻输入情况下,放大倍数是否和理论值相符且保持一致。由图2-
45、9 体温测量电路可知:放大倍数:用已知阻值的电阻模拟不同温度下铂电阻的阻值,测量其输入到单片机的电压,计算不同阻值下的电压值,标定出差动放大电路的放大倍数A 。由表4-1可知,放大倍数A和理论值符合率较好。将模拟信号送入单片机 A/D转换后液晶显示的数值和理论值相差不大于0.2。表4-1不同电阻值对应的各点输出4.1.2液晶显示和按键调试液晶显示包括固定汉字显示和变量显示两部分。固定汉字包括:“模式” 、 “脉搏” 、 “体温”和“强度” ,而变量包括所选择的模式为“治疗” ,测得的脉搏次数和体温值,还有选用的强度值。调节背光亮度和显示对比度,使视觉果达到较好。然后测试液晶显示的内容和位置是否
46、和所设置的相符,并作适当修改使布局更为合理。应的按键,看显示的内容是否相应的改变,给体温值和脉搏次数在程序中赋值,检测液晶显示的数字是否正确。4.1.3低频电子脉冲输出调试开机后观测输出是否为强度为2,催眠模式下频率固定为0.5Hz的方波。然后测试按下模式选择键,模式是否做相应的改变。按下增强键观测其脉宽是否为相应强度下设定的值,当强度增强到6时则不再继续增强,减弱键减弱到强度为1则不再减弱。经过多次实验,输出波形比较稳定,效果理想。数理与信息工程学院单片机原理及应用 期末课程设计电子睡眠仪器的制作304.2实验结果及分析:本系统有改善睡眠,测量脉搏值和体温值的功能。就这三项功能我们了简单的实验,实验结果