基于单片机的脉搏计设计 联系客服

发布时间 : 星期六 文章基于单片机的脉搏计设计更新完毕开始阅读

加之此类传感器购买起来相对方便,也很廉价,也就不再做进一步的选型和论证了。在光电传感器的选型方面,我查阅了很多资料,最终选择了光敏三极管ST188作为本设计的光电传感器使用。它的工作原理是:当光照射到PN结上时,被吸收的光能会转换成电能,。当在此三极管上接入方向电压,内部的电流就会随着光照增大而增大[4]。 3.2 概述

经过不断的选型以及对其进行相应的论证,初步选择STC89C52作为单片机、LCD1602作为显示屏、12M晶振作为时钟标准模块、LM358作为运放模块、ST188作为传感器模块。在使用时:只需把手指指腹放在光电传感器ST188上面,在人体脉搏跳动过程中,由于血液的透光性不同,这就会导致接收器接收到的信号强弱不同。再将接受到的信号通过整形电路和放大电路对信号进行处理后,传回单片机的IO口,然后单片机通过运算和换算得到此人在规定时间内的脉搏跳动次数,最终将结果显示在LCD1602显示屏上。

4 系统的硬件电路设计

4.1 设计原理

经过上文的论证选型处理已经对元器件的选择,本设计的初步工作原理为:利用USB给整个系统供电;主控模块单片机,对整个系统进行对应的控制;ST188对脉搏进行检测;LM358对检测得到的信号进行放大的整形,之后传入单片机;LCD1602液晶显示屏用来显示最终的测量结果;晶振模块给单片机提供了标准的始终,以便它协调的控制各个模块的工作;复位电路提供复位功能,以便在使用时不需要开断电源;二极管通过自身的亮灭以便使用者更好的观测脉搏的跳动。下面分别对主要模块进行设计说明。 4.2 单片机主控模块

单片机模块在本设计中作为核心主控模块出现,在系统中,它起统筹作用,结合各个模块最终实现脉搏的测量和显示工作。在本设计中,综合使用条件和价格,我选用了STC89C52作为主控单片机使用。

随着HOMS技术的飞速发展,Intel公司在48系列单片机的基础上,设计推出了51系列单片机。后来随着核心设计被出售,市面上逐渐出现各种以51为内核而且兼容51指令的单片机。

5

本设计中用到的STC89C52是STC公司的一款单片机产品,该单片机有功耗低的特点;在微控制器方面,它具有高性能的CMOS8微控制器;还配备了8k在系统可编程的flash存储器。 4.2.1 单片机引脚和结构

STC89C52一共有40个引脚,其中包括:4个8位并行共32位的I/O口线;五个中断源,其中包括四个外部中断,一个7向量4级中断结构(可兼容51的传统5向量级2级中断结构);全双工异步串行口;16位定时器2个等等。具体的引脚图如图4-1所示,基本的组成框图如图4-2所示。

图4-1 STC89C52引脚图

图4-2 STC89C52基本组成框图

6

该单片机的每个引脚功能如下: 1.时钟电路引脚XTAL1 和XTAL2:

XTAL2(18 脚):接外部晶体和微调电容的一端;片内它是振荡电路反相放大器的输出端,振荡电路的频率就是晶体固有频率。若需采用外部时钟电路时,该引脚输入外部时钟脉冲。

要检查振荡电路是否正常工作,可用示波器查看XTAL2 端是否有脉冲信号输出。

XTAL1(19 脚):接外部晶体和微调电容的另一端;在片内它是振荡电路反相放大器的输入端。在采用外部时钟时,该引脚必须接地[7]。

2.控制信号引脚RST,ALE,PSEN 和EA:

RST/VPD(9 脚):RST 是复位信号输入端,高电平有效。当此输入端保持备用电源的输入端。当主电源Vcc发生故障,降低到低电平规定值时,将+5V 电源自动两个机器周期(24个时钟振荡周期)的高电平时,就可以完成复位操作。RST 引脚的第二功能是VPD,即接入RST 端,为RAM 提供备用电源,以保证存储在RAM 中的信息不丢失,从而合复位后能继续正常运行。

ALE/PROG(30 脚):地址锁存允许信号端。当8051 上电正常工作后,ALE 引脚不断向外输出正脉冲信号,此频率为振荡器频率fOSC 的1/6。CPU 访问片外存储器时,ALE 输出信号作为锁存低8 位地址的控制信号。

平时不访问片外存储器时,ALE 端也以振荡频率的1/6 固定输出正脉冲,因而ALE 信号可以用作对外输出时钟或定时信号。如果想确定8051/8031 芯片的好坏,可用示波器查看ALE端是否有脉冲信号输出。如有脉冲信号输出,则8051/8031 基本上是好的。

ALE 端的负载驱动能力为8 个LS 型TTL(低功耗甚高速TTL)负载。

7

此引脚的第二功能PROG 在对片内带有4KB EPROM 的8751 编程写入(固化程序)时,作为编程脉冲输入端。

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

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

3.输入/输出端口P0/P1/P2/P3:

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

P1口(P1.0~P1.7,1~8 脚):P1口是一个带内部上拉电阻的8 位准双向I/O口。P1口每位能驱动4 个LS 型TTL 负载。在P1口作为输入口使用时,应先向P1口锁存地址(90H)写入全1,此时P1口引脚由内部上拉电阻拉成高电平。

8