基于单片机的无线病床呼叫系统.doc_第1页
基于单片机的无线病床呼叫系统.doc_第2页
基于单片机的无线病床呼叫系统.doc_第3页
基于单片机的无线病床呼叫系统.doc_第4页
基于单片机的无线病床呼叫系统.doc_第5页
已阅读5页,还剩28页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

无线病床呼叫系统无线病床呼叫系统 专专 业业 电电 气气 自自 动动 化化 学学 生生 姓姓 名名 匡匡 策策 意意 班班 组组 1 1 3 3 自自 动动 化化0 0 1 1 学学 号号 2 2 0 0 1 1 3 3 1 1 0 0 0 0 7 7 0 0 1 1 1 1 5 5 指指 导导 教教 师师 袁袁 泉泉 完完 成成 日日 期期 1 目目 录录 第一章 绪 论 1 1 1 课题设计的背景及意义 1 1 2 设计要求及预期目标 1 1 3 设计可行性 1 1 4 设计方案及步骤 2 第二章 系统硬件设计 3 2 1 系统原理框图 3 2 2 单片机 STC89C51 芯片简介 3 2 3 硬件模块设计 7 2 3 1 无线发射模块 7 2 3 2 无线接收模块 9 2 3 3 液晶显示模块 11 2 3 4 声音报警模块 12 2 3 5 应答电路 13 第三章 系统软件设计 15 3 1 设计的软件环境简介 15 3 1 1 Keil c51 15 3 1 2 Protel99SE 15 3 2 主函数程序设计 18 3 3 初始化程序设计 18 3 4 延时子程序设定 22 3 5 液晶显示子程序 22 结束语 24 参考文献 25 致谢 26 附录 27 附录一 PROTEL原理图 27 附录二 C 语言源程序 28 I 基于单片机的无线病床呼叫系统基于单片机的无线病床呼叫系统 摘摘 要要 随着科技的发展 无线应用技术已经渗透到生活的各个领域 无线传输技术也越来越 成熟 本设计是将无线传输技术应用到临床上的研究型课题 实现基于单片机的无线传 输模块构成的无线多路病床呼叫系统 本文以 STC89C51 单片机为控制核心 通过无线发射模块发射传输信号 无线接收 模块接收信号 经 STC89C51 处理后显示输出 从而实现病人与医护的无线远距离沟通 本病床呼叫系统能够实现 100 米的远距离发射接收 也能绕过障碍物传输 其性能稳定 占用空间小 使用材料少 传输速度快 距离远 能够满足临床应用的要求 关关键键词词 单片机 STC89C51 无线传输模块 病床呼叫 II 学院毕业设计说明书 1 第一章 绪 论 1 11 1 课题设计的背景及意义课题设计的背景及意义 目前大多医院的病床呼叫系统采用有线传输方式 有线传输占用空间较大 耗材多 而且不易移动 因此现今需要对病床呼叫系统进行升级 近年来在我国无线领域有了大 的进展 这为此提供了有力的技术支持 有的一些简易无线发射接收模块传输距离近 效率低 可靠性差 不适合用于产品的设计 本设计是基于单片机实现的医用无线多路病床呼叫系统 分为无线发射模块 无线 接收模块 单片机控制模块 显示模块 呼叫报警部分和复位应答部分 本系统通过无 线电实现信号的传递 单片机作为控制部件协调处理整个系统的工作 实现无线信号的 远距离传输 减少了材料的耗费 安装简单 使医患沟通更加灵活 是无线网络技术在 医学临床上的大胆应用 具有创新性 1 21 2 设计要求及预期目标设计要求及预期目标 设计要求 设计出稳定高效的运行系统 并且有一定的抗干扰能力 能够实现多路 呼叫且互不干扰 距离在 100m 范围内 实现多路无线病床呼叫 并留有扩展空间 预期目标 病人按呼叫键时 无线发射器发射信号 无线接收器接收无线信号 通 过单片机控制处理 护士值班室发出呼叫警报 同时 1602 液晶上显示相应的床位号 当 护士按键应答 呼叫报警停止 液晶显示以应答 警报由定时器控制关闭 当有多个病 人呼叫没有及时应答时 对应显示各床床位号 同时报警 1 31 3 设计可行性设计可行性 有线呼叫器受位置的制约不能很好的达到医患沟通 无线呼叫系统就显示其很大的 优越性 可移动 不受位置制约 现今无线传输技术有了突飞猛进的发展 技术越来越 成熟 普遍应用到生活 娱乐 学习和军工等领域 这为无线传输技术与医学临床的结 合提供了技术支持 在校期间也学习了与单片机相关的课程 有了一定的理论基础 因 此 本课题具有可行性 能够得到实现 第一章 绪论 2 1 41 4 设计方案及步骤设计方案及步骤 针对单片机的无线病床呼叫系统 制定以下方案及步骤 第一步 根据设计目的构想设计的原理图框架 学习设计中要用到的知识 如无线 发射模块的原理 编码解码 单片机 C 语言编程设计 液晶 1602 的显示 使用的芯片引 脚工作原理 Protel软件使用等 第二步 对硬件模块进行设计 如无线发射模块 无线接收模块 1602 显示模块 声音呼叫模块 在 Protel 中绘制原理图 第三步 对系统软件进行设计 如主函数程序设计 初始化程序设计 延时子程序 设计 液晶显示子程序设计 定时器中断服务子程序设计 学院毕业设计说明书 3 第二章 系统硬件设计 2 12 1 系统原理框图系统原理框图 根据单片机的无线病床呼叫系统要求初步绘制出系统原理框图如图 2 1 所示 图 2 1 系统原理框图 2 22 2 单片机单片机 STC89C51STC89C51 芯片简介芯片简介 STC89C51 是一种低功耗 高性能 CMOS8 位微控制器 具有 8K 在系统可编程 Flash 存储器 在单芯片上 拥有灵巧的 8 位 CPU 和在系统可编程 Flash 使得 STC89C51 为众多嵌入式控制应用系 统提供高灵活 超有效的解决方案 具有以下标准功能 8k 字节 Flash 512 字节 RAM 32 位 I O 口线 看门狗定时器 内置 4KB EEPROM MAX810 复位电路 三个 16 位 定时器 计数器 一个 6 向量 2 级中断结构 全双工串行口 另外 STC89X51 可降至 0Hz 静态逻辑操作 支持 2 种软件可选 择节电模式 空闲模式下 CPU 停止工作 允许 RAM 定时器 计数器 串口 中断继续工作 掉电 保护方式下 RAM 内容被保存 振荡器被冻结 单片机一切工作停止 直到下一个中断或硬件复位为 止 最高运作频率 35Mhz 6T 12T 可选 发射模块 接收模块 单片机 声音报警 液晶显示 应答按键 第二章 系统硬件设计 4 EA VP 31 X1 19 X2 18 RESET 9 P37 RD 17 P36WR 16 P32 INT0 12 P33 INT1 13 P34 T 0 14 P35 T 1 15 P10 1 P11 2 P12 3 P13 4 P14 5 P15 6 P16 7 P17 8 P00 39 P01 38 P02 37 P03 36 P04 35 P05 34 P06 33 P07 32 P20 21 P21 22 P22 23 P23 24 P24 25 P25 26 P26 27 P27 28 PSEN 29 ALE P 30 P31 T XD 11 P30 RX D 10 GND 20 VCC 40 U1 ST C89C52 图 2 2 STC89C51 单片机引脚图 单片机是美国 STC 公司最新推出的一种新型 51 内核的单片机 片内含有 Flash 程序存储器 SRAM UART SPI PWM 等模块 一 STC89C51 主要功能 性能参数如下 1 内置标准 51 内核 机器周期 增强型为 6 时钟 普通型为 12 时钟 2 工作频率范围 0 40MHZ 相当于普通 8051 的 0 80MHZ 3 STC89C51RC 对应 Flash 空间 4KB 4 内部存储器 RAM 512B 5 定时器 计数器 3 个 16 位 6 通用异步通信口 UART 1 个 7 中断源 8 个 8 有 ISP 在系统可编程 IAP 在应用可编程 无需专用编程器 仿真器 9 通用 I O 口 32 36 个 10 工作电压 3 8 5 5V 11 外形封装 40 脚 PDIP 44 脚 PLCC 和 PQFP 等 二 STC89C51 单片机的引脚说明 VCC 供电电压 GND 接地 P0 口 P0 口为一个 8 位漏级开路双向 I O 口 每脚可吸收 8TTL 门电流 当 P1 口的管脚第一次 写 1 时 被定义为高阻输入 P0 能够用于外部程序数据存储器 它可以被定义为数据 地址的第八位 在 FIASH 编程时 P0 口作为原码输入口 当 FIASH 进行校验时 P0 输出原码 此时 P0 外部必须被 拉高 P1 口 P1 口是一个内部提供上拉电阻的 8 位双向 I O 口 P1 口缓冲器能接收输出 4TTL 门电流 P1 口管脚写入 1 后 被内部上拉为高 可用作输入 P1 口被外部下拉为低电平时 将输出电流 这 是由于内部上拉的缘故 在 FLASH 编程和校验时 P1 口作为第八位地址接收 P2 口 P2 口为一个内部上拉电阻的 8 位双向 I O 口 P2 口缓冲器可接收 输出 4 个 TTL 门电流 当 P2 口被写 1 时 其管脚被内部上拉电阻拉高 且作为输入 并因此作为输入时 P2 口的管脚被 外部拉低 将输出电流 这是由于内部上拉的缘故 P2 口当用于外部程序存储器或 16 位地址外部数 据存储器进行存取时 P2 口输出地址的高八位 在给出地址 1 时 它利用内部上拉优势 当对外 部八位地址数据存储器进行读写时 P2 口输出其特殊功能寄存器的内容 P2 口在 FLASH 编程和校验 时接收高八位地址信号和控制信号 P3 口 P3 口管脚是 8 个带内部上拉电阻的双向 I O 口 可接收输出 4 个 TTL 门电流 当 P3 口 写入 1 后 它们被内部上拉为高电平 并用作输入 作为输入 由于外部下拉为低电平 P3 口将 学院毕业设计说明书 5 输出电流 ILL 这是由于上拉的缘故 P3 0 RXD 串行输入口 P3 1 TXD 串行输出口 P3 2 INT0 外部中断 0 P3 3 INT1 外部中断 1 P3 4 T0 记时器 0 外部输入 P3 5 T1 记时器 1 外部输入 P3 6 WR 外部数据存储器写选通 P3 7 RD 外部数据存储器读选通 P3 口同时为闪烁编程和编程校验接收一些控制信号 I O 口作为输入口时有两种工作方式 即所谓的读端口与读引脚 读端口时实际上并不从外部读 入数据 而是把端口锁存器的内容读入到内部总线 经过某种运算或变换后再写回到端口锁存器 只 有读端口时才真正地把外部的数据读入到内部总线 上面图中的两个三角形表示的就是输入缓冲器 CPU 将根据不同的指令分别发出读端口或读引脚信号以完成不同的操作 这是由硬件自动完成的 不 需要我们操心 1 然后再实行读引脚操作 否则就可能读入出错 为什么看上面的图 如果不对端口 置 1 端口锁存器原来的状态有可能为 0Q 端为 0Q 为 1 加到场效应管栅极的信号为 1 该场效应管就导 通对地呈现低阻抗 此时即使引脚上输入的信号为 1 也会因端口的低阻抗而使信号变低使得外加的 1 信号读入后不一定是 1 若先执行置 1 操作 则可以使场效应管截止引脚信号直接加到三态缓冲器中 实现正确的读入 由于在输入操作时还必须附加一个准备动作 所以这类 I O 口被称为准双向口 89C51 的 P0 P1 P2 P3 口作为输入时都是准双向口 RST 复位输入 当振荡器复位器件时 要保持 RST 脚两个机器周期的高电平时间 ALE PROG 当访问外部存储器时 地址锁存允许的输出电平用于锁存地址的地位字节 在 FLASH 编程期间 此引脚用于输入编程脉冲 在平时 ALE 端以不变的频率周期输出正脉冲信号 此频率为振荡器频率的 1 6 因此它可用作对外部输出的脉冲或用于定时目的 然而要注意的是 每当 用作外部数据存储器时 将跳过一个 ALE 脉冲 如想禁止 ALE 的输出可在 SFR8EH 地址上置 0 此 时 ALE 只有在执行 MOVX MOVC 指令是 ALE 才起作用 另外 该引脚被略微拉高 如果微处 理器在外部执行状态 ALE 禁止 置位无效 PSEN 外部程序存储器的选通信号 在由外部程序存储器取指期间 每个机器周期两次 PSEN 有效 但在访问外部数据存储器时 这两次有效的 PSEN 信号将不出现 EA VPP 当 EA 保持低电平时 则在此期间外部程序存储器 0000H FFFFH 不管是否有内部 程序存储器 注意加密方式 1 时 EA 将内部锁定为 RESET 当 EA 端保持高电平时 此间内部程序 存储器 在 FLASH 编程期间 此引脚也用于施加 12V 编程电源 VPP XTAL1 反向振荡放大器的输入及内部时钟工作电路的输入 XTAL2 来自反向振荡器的输出 三 STC89C51 单片机最小系统 最小系统包括单片机及其所需的必要的电源 时钟 复位等部件 能使单片机始终处于正常的运 行状态 电源 时钟等电路是使单片机能运行的必备条件 可以将最小系统作为应用系统的核心部分 通过对其进行存储器扩展 A D 扩展等 使单片机完成较复杂的功能 STC89C51 是片内有 ROM EPROM 的单片机 因此 这种芯片构成的最小系统简单 可靠 用 STC89C52 单片机构成最小应用系统时 只要将单片机接上时钟电路和复位电路即可 结构如图 2 3 所示 由于集成度的限制 最小应用系统只能用作一些小型的控制单元 图 2 3 单片机最小系统原理框图 1 时钟电路 时钟电路 复位电路 STC89C51 单片机 I O 口 时钟电路 复位电路 51 系列 单片机 I O 接 口 第二章 系统硬件设计 6 STC89C51 单片机的时钟信号通常有两种方式产生 一是内部时钟方式 二是外部时钟方式 内 部时钟方式如图 2 4 所示 在 STC89C51 单片机内部有一振荡电路 只要在单片机的 XTAL1 18 和 XTAL2 19 引脚外接石英晶体 简称晶振 就构成了自激振荡器并在单片机内部产生时钟脉冲信号 图 中电容 C1 和 C2 的作用是稳定频率和快速起振 电容值在 5 30pF 典型值为 30pF 晶振 CYS 的振荡 频率范围在 1 2 12MHz 间选择 典型值为 12MHz 和 6MHz Y1 11 0592MHz C2 30pF C3 30pF 18 19 图 2 4 STC89C51 内部时钟电路 2 复位电路 当在 STC89C51 单片机的 RST 引脚引入高电平并保持 2 个机器周期时 单片机内部就执行复位 操作 若该引脚持续保持高电平 单片机就处于循环复位状态 复位电路通常采用上电自动复位和按钮复位两种方式 最简单的上电自动复位电路中上电自动复位是通过外部复位电路的电容充放电来实现的 只要 Vcc 的上升时间不超过 1ms 就可以实现自动上电复位 除了上电复位外 有时还需要按键手动复位 本设计就是用的按键手动复位 按键手动复位有电 平方式和脉冲方式两种 其中电平复位是通过 RST 9 端与电源 Vcc 接通而实现的 按键手动复位电路 见图 2 5 时钟频率用 11 0592MHZ 时 C 取 10uF R 取 10k R1 10k C1 10uF S4VCC 9 图 2 5 STC89C51 复位电路 四 STC89C51 中断技术概述 中断技术主要用于实时监测与控制 要求单片机能及时地响应中断请求源提出的服务请求 并作 出快速响应 及时处理 这是由片内的中断系统来实现的 当中断请求源发出中断请求时 如果中断 请求被允许 单片机暂时中止当前正在执行的主程序 转到中断服务处理程序处理中断服务请求 中 断服务处理程序处理完中断服务请求后 再回到原来被中止的程序之处 断点 继续执行被中断的主 程序 图 2 6 为整个中断响应和处理过程 图 2 6 中断响应和处理过程 如果单片机没有中断系统 单片机的大量时间可能会浪费在查询是否有服务请求发生的定时查询 学院毕业设计说明书 7 操作上 采用中断技术完全消除了单片机在查询方式中的等待现象 大大地提高了单片机的工作效率 和实时性 2 32 3 硬件模块设计硬件模块设计 由图 2 1 系统原理框图可知 整个系统分为五个模块 无线发射模块 无线接收模 块 声音报警模块 液晶显示模块 按键应答模块 下面将简单的介绍各个模块设计方案 2 3 1 无线发射模块 PT2262 是一种 CMOS 工艺制造的低功耗低价位通用编码电路 PT2262 最多可有 12 位 A0 A11 三态地址端管脚 悬空 接高电平 接低电平 任意组合可提供 531441 地址码 PT2262 最多可有 6 位 D0 D5 数据端管脚 设定的地址码和数据码从 17 脚 串行输出 可用于无线遥控发射电路 PT2262 管脚说明如表2 4 表2 4 PT2262管脚说明 名称管脚说明 A0 A11 1 8 10 13 地址管脚 用于进行地址编码 可置为 0 1 悬 空 D0 D5 7 8 10 13 数据输入端 有一个为 1 即有编码发出 内部下拉 VCC 18 电源正端 GND 9 电源负端 TE 14 编码启动端 用于多数据的编码发射 低电平有效 OSC1 16 振荡电阻输入端 与 OSC2所接电阻决定振荡频率 OSC2 15 振荡电阻振荡器输出端 DOUT 17 编码输出端 正常时为低电平 T10A 发射模块 如表 2 5 采用 SMD 技术 在稳频处理上采用最先进声表谐振器 SAW 元件 电路板 PCB 采用介质损耗最小的材料 体积小巧 表 2 5 T10A 发射模块 技术指标参数 工作电压 3V 12V 第二章 系统硬件设计 8 工作电流 25mA 12V 2mA 3V 谐振方式声表谐振 SAW 调制方式 AM ASK OOK 工作频率315MHz 433 92MHz 可选 频率误差 150kHz max 发射功率25mW 315MHz 12V 时 图 2 6 所示为无线发射模块图 由 PT2262 编码 发射模块的四个按键分别代表不同 的病床号 按下表示病人呼叫 A 0 1 A 1 2 A 2 3 A 3 4 A 4 5 A 5 6 A 6 7 A 7 8 G ND 9 D 3 10 D 2 11 D 1 12 D 0 13 TE 14 O SC1 15 O SC2 16 D OU T 17 V CC 18 U 2 PT2262 R3 4 7M 4 10k S1 S2 S3 S4 D 1D 2D 3D 4 V CC VCC GND DATA ANT 图 2 6 无线发射模块图 发射模块有密码保证功能 最多可以编 6 个数据码和 6561 个地址码 使重复的机会 大大减少 其性能参数如下 电源电压 DC3V DC12V 静态电流 0 02uA 发射频率 315MHz 发射电流 5 50mA 发射距离 50 800m 调制方式 ASK 在通常使用中 一般采用 8 位地址码和 4 位数据码 这时编码芯片 PT2262 和解码芯 片 PT2272 的第 1 8 脚为地址设定脚 有三种状态可供选择 悬空 接正电源 接地三 学院毕业设计说明书 9 种状态 3 的 8 次方为 6561 所以地址编码不重复度为 6561 组 只有发射端 PT2262 和 接收端 PT2272 的地址编码完全相同 才能配对使用 一般生产厂家都把地址编码端悬空 用户可以自己设置编码 设置地址码的原则是 同一个系统地址码必须一致 不同的系 统可以依靠不同的地址码加以区分 2 3 2 无线接收模块 解码接收模块包括接收头和解码芯片 PT2272 两部分 接收头将接收的信号输入 PT2272 的 14 引脚 DIN PT2272 对接收到的信号解码 无线接收模块如图 2 7 所示 A 0 1 A 1 2 A 2 3 A 3 4 A 4 5 A 5 6 A 6 7 A 7 8 G ND 9 D 3 10 D 2 11 D 1 12 D 0 13 TE 14 O SC1 15 O SC2 16 V T 17 V CC 18 U 3 PT2272 V CC R1 780kV CC RXD G ND 器器器器器器 V CC P20 P21 P22 P23 图 2 7 无线接收模块图 编码芯片 PT2262 发出的编码信号由 地址码 数据码 同步码组成一个完整的 码字 解码芯片 PT2272 接收到信号后 其地址码经过两次比较核对后 VT 脚才输 出高电平 与此同时相应的数据脚也输出高电平 如果发送端一直按住按键 编码芯 片也会连续发射 当发射机没有按键按下时 PT2262 不接通电源 其 17 脚为低电 平 所以315MHz 的高频发射电路不工作 当有按键按下时 PT2262 得电工作 其 第17 脚输出经调制的串行数据信号 当 17 脚为高电平期间 315MHz 的高频发射电路 起振并发射等幅高频信号 当 17 脚为低平期间 315MHz 的高频发射电路停止振荡 所以高频发射电路完全收控于 PT2262 的17 脚输出的数字信号 从而对高频电路完 成幅度键控 ASK 调制 相当于调制度为 100 的调幅 第二章 系统硬件设计 10 PT2272管脚说明如表2 9 表2 8 PT2272管脚说明 名称管脚说明 A0 A1 1 1 8 10 13 地址管脚 用于进行地址编码 可置为 0 1 f 悬空 必须与 2262 一致 否则不解码 D0 D5 7 8 10 13 地址或数据管脚 当做为数据管脚时 只有在地址码与 2262 一致 一致 数据管脚才能输出与 2262 数据端对应的高电平 否则输出 为低电平 锁存型只有在接收到下一数据才能转换 VCC 18 电源正端 GND 9 电源负端 DIN 14 数据信号输入端 来自接收模块输出端 OSC1 16 振荡电阻输入端 与 OSC2 所接电阻决定振荡频率 OSC2 15 振荡电阻振荡器输出端 VT 17 解码有效确认 输出端 常低 解码有效变成高电平 瞬态 PT2262和 PT2272除地址编码必须完全一致外 振荡电阻还必须匹配 一般要求译码 器振荡频率要高于编码器振荡频率的2 5 8倍 否则接收距离会变近甚至无法接收 随 着技术的发展市场上出现一批兼容芯片 在实际使用中只要对振荡电阻稍做改动就能配 套使用 在具体的应用中 外接振荡电阻可根据需要进行适当的调节 阻值越大振荡频 率越慢 编码的宽度越大 发码一帧的时间越长 市场上大部分产品都是用 2262 1 2M 2272 200K 组合的 少量产品用2262 4 7M 2272 820K 解码接收模块包括接收头和解码芯片 PT2272两部分组成 接收头将收到的信号输入 PT2272的14脚 DIN PT2272再将收到的信号解码 接收板工作电压为 DC 5V 接收灵敏度 103dBm 尺寸 mm 49 20 7 工作频率 315MHz 工作电流 5mA 编码类型 固定码 板上焊盘跳接设置 应用说明 与各类型 遥控器配合使用 解码输出后进行相应控制 在通常使用中 我们一般采用8位地址码和 4位数据码 这时编码芯片 PT2262和解码芯片 PT2272的第1 8脚为地址设定脚 有三种 状态可供选择 悬空 接正电源 接地三种状态 地址编码不重复度为38 6561组 只有 发射端 PT2262和接收端 PT2272的地址编码完全相同 才能配对使用 遥控模块的生产厂 家为了便于生产管理 出厂时遥控模块的 PT2262和 PT2272的八位地址编码端全部悬空 这样用户可以很方便选择各种编码状态 用户如果想改变地址编码 只要将 PT2262和 学院毕业设计说明书 11 PT2272的1 8脚设置相同即可 例如将发射机的 PT2262的第2脚接地 第3脚接正电源 其它引脚悬空 那么接收机的 PT2272只要也第2脚接地 第3脚接正电源 其它引脚悬空 就能实现配对接收 当两者地址编码完全一致时 接收机对应的 D1 D4端输出约4V 互锁 高电平控制信号 同时 VT 端也输出解码有效高电平信号 2 3 3 液晶显示模块 图图 2 10 1602 实物图实物图 1602LCD 的基本参数及引脚功能的基本参数及引脚功能 1602LCD 分为带背光和不带背光两种 基控制器大部分为 HD44780 带背光的比不带背光的厚 是 否带背光在应用中并无差别 两者尺寸差别如下图 10 54 所示 图 2 11 1602LCD 尺寸图 1602LCD 主要技术参数 主要技术参数 显示容量 16 2 个字符 芯片工作电压 4 5 5 5V 工作电流 2 0mA 5 0V 第二章 系统硬件设计 12 模块最佳工作电压 5 0V 字符尺寸 2 95 4 35 W H mm 引脚功能说明引脚功能说明 1602LCD 采用标准的 14 脚 无背光 或 16 脚 带背光 接口 各引脚接口说明如表 10 13 所示 编号符号引脚说明编号符号引脚说明 1VSS电源地9D2数据 2VDD电源正极10D3数据 3VL液晶显示偏压11D4数据 4RS数据 命令选择12D5数据 5R W读 写选择13D6数据 6E使能信号14D7数据 7D0数据15BLA背光源正极 8D1数据16BLK背光源负极 表 2 12 引脚接口说明表 第 1 脚 VSS 为地电源 第 2 脚 VDD 接 5V 正电源 第 3 脚 VL 为液晶显示器对比度调整端 接正电源时对比度最弱 接地时对比度最高 对比度过高时 会产生 鬼影 使用时可以通过一个 10K 的电位器调整对比度 第 4 脚 RS 为寄存器选择 高电平时选择数据寄存器 低电平时选择指令寄存器 第 5 脚 R W 为读写信号线 高电平时进行读操作 低电平时进行写操作 当 RS 和 R W 共同为低 电平时可以写入指令或者显示地址 当 RS 为低电平 R W 为高电平时可以读忙信号 当 RS 为高电平 R W 为低电平时可以写入数据 第 6 脚 E 端为使能端 当 E 端由高电平跳变成低电平时 液晶模块执行命令 第 7 14 脚 D0 D7 为 8 位双向数据线 第 15 脚 背光源正极 第 16 脚 背光源负极 2 3 4 声音报警模块 该设计有声音报警 当有病人呼叫时 蜂鸣器就会大声提示 直到护士应答回复 才会停止鸣叫 控制引脚接在 P3 4 引脚上 利用三极管当做开关电路可以保护单片机 学院毕业设计说明书 13 还可以起到放大电流的作用 当三极管基极为高电平时 发射极截止 为低电平时 发 射极导通 报警模块如图 2 13 所示 Q1 8550 器器器 VCC R4 1k P34 图 2 13 声音报警模块 2 3 5 应答电路 本设计中四个床位使用一个应答按钮 接在 P3 3 引脚上 当有病人按下按钮 报警 开始时 按下应答按钮 即可停止报警 声音模块图如图 2 14 所示 S1 VCC R5 10k P33 第二章 系统硬件设计 14 图 2 14 应答电路 学院毕业设计说明书 15 第三章 系统软件设计 3 13 1 设计的软件环境简介设计的软件环境简介 3 1 1 Keil c51 Keil C51 是美国 Keil Software 公司出品的 51 系列兼容单片机 C 语言软件开发系统 与汇编相比 C 语言在功能上 结构性 可读性 可维护性上有明显的优势 因而易学易 用 用过汇编语言后再使用 C 来开发 体会更加深刻 Keil C51 软件提供丰富的库函 数和功能强大的集成开发调试工具 全 Windows 界面 另外重要的一点 只要看一下编 译后生成的汇编代码 就能体会到 Keil C51 生成的目标代码效率非常之高 多数语句生 成的汇编代码很紧凑 容易理解 在开发大型软件时更能体现高级语言的优势 下面详 细介绍 Keil C51 开发系统各部分功能和使用 Keil c 软件界面如图 3 1 1 图 3 1 1Keil c 软件界面 该软件是一款集编程和仿真于一体的软件 它支持汇编 C 语言及二者的混合编程 3 1 2 Protel99SE Protel99SE 是 PORTEL 公司在 80 年代末推出的 EDA 软件 Protel99SE 是应用于 Windows9X 2000 NT 操作系统下的 EDA 设计软件 采用设计库管理模 第三章 系统软件设计 16 式 可以网设计 具有很强的数据交换能力和开放性及 3D 模拟功能 是一个 32 位的设计 软件 可以完成电路原理图设计 印制电路板设计和可编程逻辑器件设计等工作 可以 设计 32 个信号层 16 个电源 地层和 16 个机加工层 Protel99SE 软件的特点 1 可生成 30 多种格式的电气连接网络表 2 强大的全局编辑功能 3 在原理图中选择一级器件 PCB 中同样的器件也将被选中 4 同时运行原理图和 PCB 在打开的原理图和 PCB 图间允许双向交叉查找元器 件 引脚 网络 5 既可以进行正向注释元器件标号 由原理图到PCB 也可以进行反向注释 由 PCB 到原理图 以保持电气原理图和PCB 在设计上的一致性 6 满足国际化设计要求 包括国标标题栏输出 GB4728 国标库 方便易 用的数模混合仿真 兼容 SPICE 3f5 7 支持用 CUPL 语言和原理图设计 PLD 生成标准的 JED 下载文件 PCB 可设计 32 个信号层 16 个电源 地层和 16 个机加工层 8 强大的 规则驱动 设计环境 符合在线的和批处理的设计规则检查 9 智能覆铜功能 覆铀可以自动重铺 10 提供大量的工业化标准电路板做为设计模版 11 放置汉字功能 12 可以输入和输出 DXF DWG 格式文件 实现和 AutoCAD 等软件的数据 交换 13 智能封装导航 对于建立复杂的 PGA BGA 封装很有用 14 方便的打印预览功能 不用修改 PCB 文件就可以直接控制打印结果 15 独特的 3D 显示可以在制板之前看到装配事物的效果 16 强大的 CAM 处理使您轻松实现输出光绘文件 材料清单 钻孔文件 贴 片机文件 测试点报告等 17 经过充分验证的传输线特性和仿真精确计算的算法 信号完整性分析直接 从 PCB 启动 18 反射和串扰仿真的波形显示结果与便利的测量工具相结合 学院毕业设计说明书 17 Protel99SE 的工作界面是一种标准的 Windows 界面 如图所示 包括 标题栏 主菜 单 标准工具栏 绘图工具栏 状态栏 对象选择按钮 预览对象方位控制按钮 仿 真进程控制按钮 预览窗口 对象选择器窗口 图形编辑窗口 Protel99SE 软件界面 如图 3 1 2 图 3 1 2Prtel99SE 软件界面 运行 Protel99SE 程序后 进入软件的主界面 通过左侧工具栏中的 Browse 从库中选 择元件命令 命令 结束语 18 3 23 2 主函数程序设计主函数程序设计 一个完整的程序中只有一个 main 函数 首先调用初始化函数进行初始化 然后判断 并调用显示子程序使液晶 1602 显示 蜂鸣器鸣响报警 程序流程如图 3 2 所示 图 3 2 主程序流程图 3 33 3 初始化程序设计初始化程序设计 初始化程序包括液晶初始化显示 定时器中断系统初始化 判断是否有床 位报警 调用初始化子程序 报警器打开 液 晶显示对应床位 号 液晶显示欢迎语 是 否 判断应答按键 是否按下 是 否 关闭报警器 液晶显示知晓 结束 开始 学院毕业设计说明书 19 一 液晶初始化 根据液晶使用手册 在液晶使用之前 要对其设置显示模式 光标设置 然后进行 清屏操作 方便之后使用 二 定时器中断系统初始化 STC89C51 有两个定时 计数器 都有定时和计数两种工作模式 四种工作方式 方式 0 方式 1 方式 2 方式 3 属于增一计数器 特殊功能寄存器 TMOD 用于选择定时器 计数器 T0 T1 的工作模式和工作方式 但无论是工作在定时器模式还是计数器模式 实 质都是对脉冲信号进行计数 只是计数的来源不同 计数器模式是对加在 T0 P3 4 和 T1 P3 5 两个引脚的外部脉冲进行计数 而定时器模式是对单片机的时钟振荡器信号经 片内 12 分频后的内部脉冲信号计数 3 工作方式控制寄存器 TMOD 不能位寻址 其格式如图 3 3 所示 图 3 3 寄存器 TMOD 的格式 1 GATE 门控位 2 M0 M1 工作方式选择位 3 C T 计数器和定时器模式选择位 C T 0 为定时器模式 C T 1 为计数器模式 M0 M1 共有 4 种编码 对应于 4 种工作方式的选择 见表 3 4 表 3 4 M1 M0 工作方式选择 M1 M0 工作方式 0 0 方式 0 为 13 位定时器 计数器 0 1 方式 1 为 16 位定时器 计数器 1 0 方式 2 8 位的常数自动重装的定时器 计数器 结束语 20 1 1 方式 3 仅用于 T0 此时 T0 分为两个 8 位计数器 T1 停止 计数 定时器的工作方式设置好以后就要给定时器装入初值 工作方式不同初值也不同 1 下面介绍一下单片机的时钟周期 机器周期和指令周期 1 时钟周期是单片机时钟控制信号的基本时间单位 若时钟晶体的震荡频率为 f0sc 则时钟周期 Tosc 1 fosc 2 机器周期是 CPU 完成一个基本操作所需要的时间 AT89C51 单片机的每 12 个 时钟周期为一个机器周期 即 TCY 12 fOSC 3 指令周期是执行一条指令所需的时间 AT89C51 单片机中指令按字节来分 可分为单字节 双字节和三字节指令 单字节和双字节指令一般为单机器周期和双机器 周期 三字节指令都是双机器周期 只有乘 除指令占 4 个机器周期 本设计中 时钟晶体的频率为 11 0592MHZ 所以时钟周期为 1 12M T0 作为定时器 使用 工作方式为方式 1 作为 16 位计数器 设计数个数为 N 计数初值为 X 那么 X 216 N 定时时间 N 12 晶振频率 所以 定时时间 216 X 12 晶振频率 本设计设置每隔 50ms 中断一次 那么得出初值 X 0 x4BFF 定时器 T0 的高 8 位 TH0 赋值 0 x4B 低 8 位 TL0 赋值 0 xFF 2 定时器 计数器控制寄存器 TCON 可位寻址 其格式见表 3 5 表 3 5 特殊寄存器 TCON 的格式 D7D6D5D4D3D2D1D0 TCONTF1TR1TF0TR0IE1IT1IE0IT0 位地址8FH 8DH 8BH8AH89H88H TR0 定时器启动位 TR0 0 关闭定时器 0 TR0 1 开启定时器 0 IT0 选择外部中断 0 为跳沿触发方式还是电平触发方式 IT0 0 为电平触发方 式 IT0 1 为跳沿触发方式 4 单片机对各中断源的开放或屏蔽是由片内的中断允许寄存器 IE 控制的 可位寻址 其格式见表 3 6 学院毕业设计说明书 21 表 3 6 中断允许寄存器 IE 的格式 D7D6D5D4D3D2D1D0 IEEA ESET1EX1ET0EX0 位地址AFH ACHANHAAHA9HA8H 1 EA 中断允许总开关控制位 EA 0 所有的中断请求被屏蔽 EA 1 所有的中断 请求被开放 2 ES 串行口中断允许位 ES 0 禁止串行口中断 ES 1 允许串行口中断 3 ET0 定时器 计数器 T0 的溢出中断允许位 ETO 0 禁止 T0 溢出中断 ETO 1 允许 T0 溢出中断 4 EX0 外部中断 0 中断允许位 EX 0 禁止外部中断 0 中断 ES 1 允许外部中 断 0 中断 STC89C51 复位后 IE 被清零 所有的中断请求被禁止 所以在初始化时 要 令 EA 1 EX0 1 ET0 1 开放总中断 允许 T0 中断 初始化程序如下 void init bg 1602 0 TMOD 0 x01 TL0 0 x4b TH0 0 xff EA 1 ET0 1 TR0 1 E 0 com 1602 0 x38 com 1602 0 x0c com 1602 0 x06 com 1602 0 x80 com 1602 0 x01 结束语 22 3 43 4 延时子程序设定延时子程序设定 延时子程序作为方便其他程序调用 避免程序繁琐重复 我将延时子程序定为有参 函数 延时 1ms 程序如下 void delay ui x ui i j for i 0 i x i for j 0 j 121 j 3 53 5 液晶显示子程序液晶显示子程序 void display if num D0 num D1 num D2 num D3 if num D0 1 dis 1602 1 0 2 0 1 dis 1602 1 0 3 0 10 if num D1 2 dis 1602 1 0 4 0 2 dis 1602 1 0 5 0 10 if num D2 3 学院毕业设计说明书 23 dis 1602 1 0 6 0 3 dis 1602 1 0 7 0 10 if num D3 4 dis 1602 1 0 8 0 4 dis 1602 1 0 9 0 10 dis 1602 10 1 5 1 0 else dis 1602 15 0 0 3 0 结束语 24 结束语 至此 本设计的主要内容已经完成 本章是在对前面完成的工作进行总结的基础上 提出今后进一步工作的建议和设想 选择这个课题之后 我明白要解决的难点 病人都按开关时 在数码显示器能循环 显示病床 这也

温馨提示

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

评论

0/150

提交评论