基于单片机的病床呼叫系统设计_第1页
基于单片机的病床呼叫系统设计_第2页
基于单片机的病床呼叫系统设计_第3页
基于单片机的病床呼叫系统设计_第4页
基于单片机的病床呼叫系统设计_第5页
免费预览已结束,剩余33页可下载查看

下载本文档

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

文档简介

基于单片机的病床呼叫系统设计基于单片机的病床呼叫系统设计 摘要摘要 病房呼叫系统是传送临床信息的重要手段 可将病人的请求快速传送给值班医生或护士 它主要用于协助医院病员在病床上方便地呼叫医务人员 是提高医院和病室护理水平的必备 设备之一 让患者需要服务时 只要按一下随身携带的呼叫器 信息立马就能传至护工处 避免没有看护人在时 病人急需服务却无法通知医生的情况 它要求及时 准确 可靠 简便 可行 本设计的呼叫系统由按键检测 数据处理 信息显示三部分组成 由 C51 单片机作为 主要控制器 利用液晶显示器作为显示部分 使用 3X8 矩阵开关分别模拟医院病房与病床位 数 病人按下按键时 C51 立即获取病人的病房号和病床号 同时采集此时的时间并一起显 示在液晶显示器上 当护士看到显示器上病人的信息 并按下清零键后 液晶显示器恢复到 初始状态 本系统对键盘的检测采用中断的方式 能够提高系统的立即性和高效性 当同时 有数个病床呼叫时 本系统还可以循环呼叫记录显示 关键词关键词 病房呼叫 单片机 中断 液晶显示 I Design of hospital bed call system based on single chip microcomputer Summary Ward call system is an important means to transfer the clinical information the patient s request can be quickly transmitted to the doctor or nurse on duty it is mainly used to assist the hospital easily call the medical staff in a hospital bed is one of the necessary equipment to improve the level of nursing and hospital ward Let the patient need service just click the thecarry pager information can spread to the workers Immediately without caregivers when patients needed services cannot tell the doctor It requires timely accurate and reliable simple and feasible The design of the call system by the key detection data processing information display three parts C51 microcontroller as the main controller the use of liquid crystal display as the display part the use of 3X8 matrix switch to simulate the hospital ward and hospital beds When the press button is pressed the C51 immediately gets the patient s ward number and the bed number while the time is collected and displayed on the LCD monitor when the nurse sees the patient s information and press the reset button the LCD screen is returned to its initial state This system can improve the immediate and efficiency of the system by using the interrupt mode When there are a number of hospital beds call the system can also be a circular call records show Key words ward call SCM interrupt liquid crystal display 0 目录目录 前言前言 I 第第 1 1 章章 绪论绪论 3 1 1 课题概述 3 1 2 智能病床呼叫系统发展概况 3 1 3 课题研究的目的和意义 3 1 4 设计任务 4 1 5 任务要求分析 4 第第 2 2 章章 系统设计和方案选择系统设计和方案选择 5 2 1 设计思路 5 2 2 键盘采集方案选择 5 2 3 设计芯片的选择 6 第第 3 3 章系统硬件电路设计章系统硬件电路设计 7 3 1 单片机控制系统硬件设计 7 3 2 液晶显示的硬件设计 7 3 3 扫描键盘的硬件设计 8 3 4 时钟芯片的硬件设计 9 3 4 中断电路设计 9 第第 4 4 章系统软件设计章系统软件设计 10 4 1 主程序设计 10 4 2 矩阵键盘的中断程序的设计 11 4 3 液晶 LCD12864 驱动程序的设计 13 4 4 实时时钟 DS1302 驱动程序的设计 14 第第 5 5 章仿真结果及分析章仿真结果及分析 15 5 1 无病人呼救时的仿真结果 15 5 2 有病人呼救时的仿真结果 15 1 5 3 有多个病人呼救时的仿真结果 16 结论结论 17 谢辞谢辞 18 参考文献参考文献 1 附录附录 1 1 系统原理图系统原理图 2 附录附录 2 2 程序源代码程序源代码 3 2 第第 1 1 章章 绪论绪论 1 11 1 课题概述课题概述 在这个瞬息万变 竞争激烈的时代 选择一个优越的工具往往能提升企业在这个市场上 的竞争力 尤其医院的竞争越来越激烈 商业医院的生存是第一位 提升档次和服务质量迫 在眉睫 陪护问题一直是医患矛盾的主体 也是长期困扰卫生系统服务质量的大问题 使用 病房呼叫系统 方便病人更快找到医生 以节约病人的宝贵时间 病房呼叫系统是一种应 用于医院病房 养老院等地方 用来联系沟通医护人员和病员的专用呼叫系统 是提高医院 护理水平的必备设备 以前当病人需要服务时就不得不亲自到值班室去叫 安装该呼叫系统 后 在病人与护士之间架起一座及时沟通的桥梁 可在减少护理人员的同时 保证病人随时 能够得到服务 让每个病人及时得到最佳护理 病房呼叫系统的优劣直接关系到病员的安 危 历来受到各大医院的普遍重视 它要求及时 准确可靠 简便可行 利于推广 利用单 片机的通讯功能 设计出具有振铃 显示房号等功能的多功能病床呼叫系统 满足了医院的 病房管理和护理的要求 1 21 2 智能病床呼叫系统发展概况智能病床呼叫系统发展概况 呼叫系统发展到今天 从应用层面可以说已经进入到商业化运营阶段 国内许多的呼叫 中心其服务模式 已经从单纯的客户服务向服务与经营的混合型模式转变 这首先是呼叫市 场需求的结果 也是呼叫技术及管理发展的必然结果 信息时代的医院管理已经从传统的人 管模式 向智能化 电子化 信息化 网络化得高科技管理模式的方向迅速发展 病房呼 叫系统 可实现医院病房的智能化管理 可实现呼叫 报警 信息储存 显示等功能 为医 院和患者都带来方便 在中国 约在 30000 个医院中仅 30 的医院拥有自己的信息管理 系统 拥有前端电话接入系统的医院就更少了 目前市场上存在着许多种型号不一功能各异 的医院病房呼叫系统 主要为两大类 有线式和无线式 传统的有线式病房呼叫系统往往采 用集中式结构 电源线 数据通信线 语音通信线分开传输 具有铺设线路较多 成本高 安装调试困难 实时性差 故障率较高等缺点 无线式病房呼叫系统可靠性差 而且无线电 波会干扰其它医疗仪器设备 目前大多数医院不采用无线呼叫系统 1 31 3 课题研究的目的和意义课题研究的目的和意义 智能病床呼叫是传送病床信息的重要手段 病床呼叫系统可将病人的请求快递传送给值 班医生和护士 呼叫系统的优劣直接关系到病人的安危 历来受到各大医院的普遍重视 它 要求及时 准确 可靠 简便可行 利于推广 单片机多机通信和计算机监控管理技术的具 有呼叫 振铃 显示 等功能的病床呼叫系统 基本满足了医院的病房护理要求 3 1 41 4 设计任务设计任务 本病床呼叫系统中 使用 3X8 矩阵开关分别模拟医院病房与病床位数 当某开关按下 时 系统显示呼叫的病房与病床 呼叫的时间 处理完毕可清除该呼叫显示记录 当同时有 数个病床呼叫时 本系统还可以循环呼叫记录显示 1 51 5 任务要求分析任务要求分析 通过对上述设计任务的分析 可以将之细分为以下几点 最后的调试也将以下面各点为 依据 当有病人按下按键时 液晶显示器上显示病人的病房号 病床号 以及按键时的时间 在护士按下清零键后 液晶显示器上内容恢复到初始状态 若在护士按下清零键前有多个病人按键 则液晶显示器上将循环显示各个病人的信息 直到护士按下清零键后 液晶显示器上内容恢复到初始状态 4 第第 2 2 章章 系统设计和方案选择系统设计和方案选择 2 12 1 设计思路设计思路 根据设计要求 该病床呼叫系统利用 C51 单片机作为核心 外接 3X8 矩阵键盘 每一个 键对应着不同的床位 在没有病人呼叫时 单片机循环等待按键按下 当病人按下床头对应 的按键 产生中断信号 单片机收到中断信号后调用中断服务程序识别出呼叫病床的病房号 码和床位号码 同时记录当时系统的时间 将呼叫记录通过 LCD12864 显示出来 护士通过 读取屏幕上提示的呼叫信息即可快速的 正确的查出病人的床位 并做相应的准备以及时处 理 处理完成后 按下清除按钮 即可清除本次呼叫记录 等待下次呼叫 同时液晶屏幕上 再次显示 一切正常 其结构图如下 图 2 1 病床呼叫系统结构图 2 22 2 键盘采集方案选择键盘采集方案选择 键盘的工作方式应该根据实际应用系统中 CPU 的工作状况而定其选取的原则是既要保 证 CPU 能及时响应按键操作又不要过多占用 CPU 的工作时间 通常键盘的工作方式有三种即 编程扫描 定时扫描和中断扫描 1 编程扫描方式 编程扫描方式是利用 CPU 完成其他工作的空余时间调用键盘扫描子程序来检验按键态响 应键盘输入 执行键功能程序时 CPU 不再享有键输入要求直到 CPU 重新扫描键盘为止 2 定时扫描方式 定时扫描方式就是每隔一段时间对键盘扫描一次她利用单片机内部的定时器产生一定时 间如 20ms 的定时定时时间到产生定时器溢出中断 CPU 在中断服务程序中键盘进行扫描并 在有键按下时识别出该键并保存键号然后在中断服务程序或主程序中执行该键的功能程序 3 中断扫描方式 中断扫描方式就是当按键有按下时 产生中断信号 CPU 收到中断信号后就执行相应的 单 片 机 键盘 液晶显示 实时时钟芯片 5 中断服务子程序响应该按键 处理完后 CPU 又开始循环等待下一次按键按下 当采用前两种键盘描方式时 无论是否有键按下 CPU 都要定时扫描键盘而单片机应用系 统工作时并非经常需要键盘输入 因此 CPU 经常处于空扫描状态 浪费 CPU 大量时间 CPU 不扫描键盘而有键按下时通过相应电路产生中断请求 CPU 响应中断 执行键盘扫描子程序 并识别键号 所以本设计中采用中断扫描方式采集键盘信息 2 3 设计芯片的选择 C51 单片机 单片机是一种集成电路芯片 是采用超大规模集成电路技术把具有数据处理能力的 CPU RAM ROM 多路 I O 口和中断系统 定时器 计数器等功能集成到一块芯片上的一个小 系统 通过编写程序下载到单片机的程序存储器以实现不同的功能 液晶显示器 LCD12864 相对于数码管 LED 二极管点阵等 液晶显示具有可以实现汉字的显示 硬件电路连接 比较简单等优点 6 第第 3 3 章系统硬件电路设计章系统硬件电路设计 3 13 1 单片机控制系统硬件设计单片机控制系统硬件设计 单片机控制系统功能是 键盘数据采集并保留采集结果 控制液晶显示设计要求的内 容 读取实时时间 并作适当的数据处理 该控制系统中单片机 AT89C51 的 P0 P1 P2 及 P3 0 P3 1 接口作普通 I O 使用 其中 P0 口作为 LCD12864 的数据传输口 P2 0 P2 5 口的作为其控制端口 P2 6 P2 7 P3 0 以 及 P1 口为键盘的行列口 P3 0 作为清除按键的数据输入口 P3 2 作为外部中断信号输入口 P3 部分口与时钟芯片 DS1302 相连实现时间的通信 具体电路图显示如图 3 1 所示 图 3 1 单片机控制系统电路图 3 23 2 液晶显示的硬件设计液晶显示的硬件设计 液晶显示的功能包括 没有病人呼叫时 显示 一切正常 当有病人呼叫时 显示病 人的具体位置和呼叫的时间 日期 通用型 LCD12864 共有 18 个引脚 其中 DB7 DB0 是连接控制器的数据总线 其他的引脚 中 6 根控制线 另外还有电源线 具体连接见图 3 2 7 其中上拉电阻是由于 P0 口作普通口时内部没有上拉电阻 图 3 2 液晶 LCD12864 电路图 3 33 3 扫描键盘的硬件设计扫描键盘的硬件设计 键盘输入的功能 每个按键对应着一张病床 由 3X8 矩阵键盘组成 该矩阵键盘的总共需要 11 个接口 其中列分别与单片机 P2 6 P2 7 P3 0 口相接 行 占用了整个 P1 口 具体连接如图 3 3 所示 图 3 3 3X8 矩阵键盘 8 3 43 4 时钟芯片的硬件设计时钟芯片的硬件设计 时钟芯片 DS1302 有两个电源引脚 VCC1 和 VCC2 其中 VCC1 是主电源 VCC2 是备份电 源 当 VCC2 VCC1 0 2V 时 由 VCC2 向 DS1302 供电 当 VCC2 VCC1 时 由 VCC1 向 DS1302 供电 以防止系统掉电时芯片内部的数据不会丢失 其通信引脚有 3 个 另外外接 32 768KHz 晶振是为芯片提供计时脉冲 其连接电路图如图 3 4 所示 图 3 4 时钟芯片电路图 3 43 4 中断电路设计中断电路设计 若系统初始化时将 L1 L2 L3 设置为高电平 P0 口设置为低电平 则当有按键按下时 L1 L2 L3 会有一个变为低电平 同样当按下清除键时 CLEAR 也会为低电平 这样通过一个 4 输入与门连接到 P3 2 上即可实现对键盘的中断检测 其连接电路图如图 3 5 所示 图 3 5 中断电路图 9 第第 4 4 章系统软件设计章系统软件设计 对于一个完整的设计 除了需要设计硬件电路外 还需要根据功能需求设计要求设计一 个运行高效 冗余指令少 稳定性强的软件系统 在这一块的完成上 我们采用的主要是各 个子程序设计 主函数只需要做简单的数据处理和各个子程序的调用 从而逐步完成题目的 全部要求 4 14 1 主程序设计主程序设计 主程序主要是对各子程序 中断服务子程序进行初始化 并循环显示病人信息 其流程 图如图 4 1 所示 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 图 4 1 主程序流程图 主程序设计如下 void main uchar i init LCD init1302 10 set line 0 clear display EA 1 EX0 1 INT0 1 P1 0 x00 L1 L2 L3 1 while 1 for i 0 i t i key display i delay 1000 4 24 2 矩阵键盘的中断程序的设计矩阵键盘的中断程序的设计 矩阵键盘的中断程序主要是对按键的扫描以实现对按键的键号识别 同时对键号对应 的病房 病床号以及按键的时间进行存储 主函数通过调用存储的数据便可实现病房信息的 循环显示 其设计流程图如图 4 2 所示 需要说明的是 在此中断程序中抖动的识别可以通过延时一段时间后再对 L1 L2 L3 及 CLEAR 的高低电平进行判断来实现 若延时后仍然有低电平则不是抖动而是真的有按键按下 矩阵键盘的中断程序设计如下 void int0 interrupt 0 using 0 uchar i EX0 0 11 delay 5 if L1 else if L2 0 room num 2 else room num 3 P1 0 xff L1 L2 L3 0 for i 0 i 8 i if P1 table i bed num i 1 break num t 0 room num num t 1 bed num time t 0 read 1302 0 x81 time t 1 read 1302 0 x83 time t 2 read 1302 0 x85 time t 3 read 1302 0 x87 time t 4 read 1302 0 x89 time t 5 read 1302 0 x8d t P1 0 x00 L1 L2 L3 1 12 if CLEAR 0 clear display EX0 1 一 一 一 一 一 一 L1 L2 L3一 一 一 0 一 一 一 一 一 一 一 P1 oxff L1 L2 L3 0 P1一 一 一 一 一 一 0一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 一 P1 ox00 L1 L2 L3 1 一 一 一 一 一 一 一 一 YES NO 图 4 2 矩阵键盘的中断程序流程图 4 34 3 液晶液晶 LCD12864LCD12864 驱动程序的设计驱动程序的设计 编写液晶 LCD12864 驱动程序前首先要对系统中用到的汉字 数字以及特殊字符的数据 组进行设计 针对液晶驱动程序主要考虑以下的编写 1 void read busy 读忙函数 2 void write LCD command uchar value 写指令函数 13 3 void write LCD data uchar value 写数据函数 4 void set page uchar page 设置页 5 void set line uchar startline 设置起始行 6 void set column uchar column 设置起始列 7 void setonoff uchar onoff 开 关显示 0 开 1 关 8 void selectscreen uchar screen 选屏函数 00 全屏 01 左半屏 10 右半屏 9 void clearscreen uchar screen 清屏函数 10 void init LCD 初始化函数 11 void display uchar ss uchar page uchar column uchar p 显示汉字函数 12 void display1 uchar ss uchar page uchar column uchar p 显示字符 上述函数的具体编写参看附录 2 4 44 4 实时时钟实时时钟 DS1302DS1302 驱动程序的设计驱动程序的设计 由于 DS1302 是 SPI 总线驱动方式 它不仅要向寄存器写入控制字 还需要读取相应的 寄存器数据 所以要想与其通信 首先得了解 DS1302 控制字 而且 SPI 总线进行数据通行 时只有两条数据线 即 SCLK 和 RST 通过不同时刻两条总线的电瓶变化不同可以进行不同 的操作 其驱动函数包括 1 void write byte1302 uchar dat 写一个字节 2 uchar read byte1302 读一个字节 3 void write 1302 uchar add uchar dat 写数据 4 uchar read 1302 uchar add 读数据 5 void init1302 初始化 上述函数的具体编写参看附录 2 14 15 第第 5 5 章仿真结果及分析章仿真结果及分析 在 protues 和单片机编译软件 keil C51 中分别完成硬件电路设计和软件系统的设计后 生成 HEX 文件载入单片机中开始逐步调试程序 经过多次调试 系统能够正常的运行 并能 够正确的在液晶屏上显示呼叫病床的病房号和床位号以及系统当时的时间与日期 5 15 1 无病人呼救时的仿真结果无病人呼救时的仿真结果 点击 运行 按钮 系统开始运行 并在液晶屏上显示 一切正常 表示没有病人求 救 如图 5 1 所示 图 5 1 没有呼叫时液晶显示结果 5 25 2 有病人呼救时的仿真结果有病人呼救时的仿真结果 当某一房间的病人按下求救按钮 如按下 2 5 键 时液晶屏提示值班人员的显示 如图 5 2 所示 图 5 2 号房间第 5 床的病人求救 当按下 清除 键后 在没有病人求救的情况下 液晶屏幕会再次出现 一切正常 与运行开始时的结果是一致的 16 5 35 3 有多个病人呼救时的仿真结果有多个病人呼救时的仿真结果 当有多个病人同时按键时 液晶显示屏上以一定的时间间隔循环显示各个病人的病房 病床信息以及按键时间 其仿真结果见图 5 3 图 5 4 这里假设只有两个病人呼救 图 5 3 2 号房间第 4 床位的病人求救 图 5 4 3 号房间第 3 床位的病人求救 当按下 清除 键后 在没有病人求救的情况下 液晶屏幕会再次出现 一切正常 与运行开始时的结果是一致的 17 结论结论 本设计是以 AT89C51 为核心的病人呼叫系统 对该系统的硬件和软件结构进行了相应 的描述 通过对病区的数据采集实现医院医疗人员值班室和病人房之间的通信联系具有使用 方便 操作简单等特点 此次设计为有线呼叫系统 虽存在布线复杂 维修不便 病房不能 与值班室的语音对话等缺陷 但相对于无线呼叫系统而言它的可靠性能高而且不干扰其他医 疗设备 如果采用无线传输会节约布线和改造线路的资金为医院节约成本并且及时 简便可 行比目前的同类产品更能受到医院及病人的认可有更强的竞争力能大量推广 在系统设计期间 尤其是程序的调试间段出现很多次差错 主要包括 LCD12864 显示和 DS1302 部分子程序的错误 这主要是由于自己对 LCD12864 的显示原理和对 DS1302 的子函 数返回值不熟悉所导致 在设计多病人呼叫循环显示时 我也遇到了许多难题 为了将病人 的键号和按键时间及时存储下来 我在主程序外定义了两个无符号整型的数组 并按 24 个 病人的长度进行定义 结果导致数据段内存不够 不能编译 后来将数组改能无符号字符型 并将长度降为 10 这样已经可以满足实际需要 修改后程序才能顺利编译运行 通过本次设计不仅让我对医院病床呼叫系统有了进一步的了解 也在熟悉芯片的同时 加强了我在编程方面的技巧 另外 在这次的设计过程中 我不断地查阅资料并请将同学 这让我的自学能力也有了很大的提高 18 谢辞谢辞 计算机控制技术与应用课程设计很快就结束了 经过各位老师的悉心指导和精心教导及 各位同学的帮助与支持下 顺利的完成了本次课程设计 并完成报告的编制 在本次课程设计过程中 我为能理解和应用专业课学习成果而感悟颇深 同时我也深深的感 受到了基础知识的重要性 在以后的学习生活中切不可急于求成而忽略了基础的夯实 对一 门系统学科 应该扎实的学习他的每一部分知识 充分利用各种实践环节 切实做到理论联 系实践 学以致用 同样 通过这次课程设计我也体会到我们学习上的不足 课程设计的这 段时间过得相当充实 在日后的学习与工作中 我仍将认真巩固对专业基础知识的学习 继 续扎实的学习自动化专业知识 在此 感谢每一位老师给我们的悉心讲解和指导 是他们教会了我生存的方法 是他们 给了我们独立的力量 是他们让我心怀梦想 积极的面对未来的一切 愿所有老师和同学工 作顺利 身体健康 0 参考文献参考文献 1 1 李群芳 单片微型计算机与接口技术 M 第 3 版 北京 电子工业出版社 2008 2 2 窦振中 基于单片机的嵌入式系统式工程设计 M 北京 中国电力出版社 2008 3 3 冯建华 单片机应用系统设计与产品开发 M 北京 人民邮电出版社 2004 4 4 谭浩强 C 程序设计 第三版 M 清华大学出版社 2008 5 5 王巧芝 郑锋 刘瑞国 高学辉 51 单片机开发应用从入门到精通 M 中国铁道出版社 2011 6 6 宋彩利 孙友仓 吴宏岐 单片机原理与 C51 编程 西安 西安交通大学出版社 2008 7 7 李华 MCS 51 系列单片机实用接口技术 北京 北京航空航天大学出版社 2000 8 8 谭浩强 C 语言程序设计 北京 清华大学出版社 1991 9 9 陈学平 兰帆 胡勇 Protel 2004 电路设计与仿真 北京 清华大学出版社 2007 10 10 张靖武 周灵彬 单片机系统的 Proteus 设计与仿真 北京 电子工业出版社 2007 11 11 刘国荣 梁景凯 计算机控制技术与应用第二版 机械工业出版社 2008 1 1 附录附录 1 1 系统原理图系统原理图 2 附录附录 2 2 程序源代码程序源代码 include include define uint unsigned int define uchar unsigned char define LCD databus P0 uchar room num bed num n y r s f m t 0 uchar num 10 2 time 10 6 uchar code table 0 xfe 0 xfd 0 xfb 0 xf7 0 xef 0 xdf 0 xbf 0 x7f uchar keyscan sbit RS P2 4 RS 为 0 命令 为 1 数据 sbit RW P2 5 RW 为 1 写 为 0 读 sbit EN P2 2 使能端 sbit CS1 P2 0 片选 1 低电平有效 控制左半屏 sbit CS2 P2 1 片选 2 低电平有效 控制右半屏 sbit L1 P2 6 sbit L2 P2 7 sbit L3 P3 0 sbit IO P3 7 sbit SCLK P3 6 sbit RST P3 5 sbit CLEAR P3 1 sbit ACC0 ACC 0 sbit ACC7 ACC 7 uchar code ZK 文字 病 宋体 12 此字体下对应的点阵为 宽 x 高 16x16 3 0 x10 0 x60 0 x00 0 xFC 0 x04 0 x24 0 x24 0 x24 0 x25 0 xE6 0 x24 0 x24 0 x24 0 x24 0 x04 0 x00 0 x84 0 x42 0 x31 0 x0F 0 x00 0 xFF 0 x11 0 x09 0 x05 0 x03 0 x05 0 x59 0 x81 0 x7F 0 x00 0 x00 文字 床 宋体 12 此字体下对应的点阵为 宽 x 高 16x16 0 x00 0 x00 0 xFC 0 x04 0 x44 0 x44 0 x44 0 x45 0 xF6 0 x44 0 x44 0 x44 0 x44 0 x44 0 x04 0 x00 0 x40 0 x30 0 x0F 0 x20 0 x10 0 x08 0 x06 0 x01 0 xFF 0 x01 0 x06 0 x08 0 x10 0 x20 0 x20 0 x00 文字 房 宋体 12 此字体下对应的点阵为 宽 x 高 16x16 0 x00 0 x00 0 xFC 0 x24 0 x24 0 x24 0 x25 0 x66 0 xA4 0 x24 0 x24 0 x24 0 x24 0 x3C 0 x00 0 x00 0 x40 0 x30 0 x0F 0 x81 0 x41 0 x31 0 x0F 0 x09 0 x09 0 x09 0 x49 0 x89 0 x79 0 x01 0 x00 0 x00 文字 时 宋体 12 此字体下对应的点阵为 宽 x 高 16x16 0 x00 0 xFC 0 x84 0 x84 0 x84 0 xFC 0 x00 0 x10 0 x10 0 x10 0 x10 0 x10 0 xFF 0 x10 0 x10 0 x00 0 x00 0 x3F 0 x10 0 x10 0 x10 0 x3F 0 x00 0 x00 0 x01 0 x06 0 x40 0 x80 0 x7F 0 x00 0 x00 0 x00 文字 间 宋体 12 此字体下对应的点阵为 宽 x 高 16x16 0 x00 0 xF8 0 x01 0 x06 0 x00 0 xF0 0 x12 0 x12 0 x12 0 xF2 0 x02 0 x02 0 x02 0 xFE 0 x00 0 x00 0 x00 0 xFF 0 x00 0 x00 0 x00 0 x1F 0 x11 0 x11 0 x11 0 x1F 0 x00 0 x40 0 x80 0 x7F 0 x00 0 x00 文字 日 宋体 12 此字体下对应的点阵为 宽 x 高 16x16 0 x00 0 x00 0 x00 0 xFE 0 x82 0 x82 0 x82 0 x82 0 x82 0 x82 0 x82 0 xFE 0 x00 0 x00 0 x00 0 x00 0 x00 0 x00 0 x00 0 xFF 0 x40 0 x40 0 x40 0 x40 0 x40 0 x40 0 x40 0 xFF 0 x00 0 x00 0 x00 0 x00 4 文字 期 宋体 12 此字体下对应的点阵为 宽 x 高 16x16 0 x00 0 x04 0 xFF 0 x24 0 x24 0 x24 0 xFF 0 x04 0 x00 0 xFE 0 x22 0 x22 0 x22 0 xFE 0 x00 0 x00 0 x88 0 x48 0 x2F 0 x09 0 x09 0 x19 0 xAF 0 x48 0 x30 0 x0F 0 x02 0 x42 0 x82 0 x7F 0 x00 0 x00 文字 号 宋体 12 此字体下对应的点阵为 宽 x 高 16x16 0 x80 0 x80 0 x80 0 xBE 0 xA2 0 xA2 0 xA2 0 xA2 0 xA2 0 xA2 0 xA2 0 xBE 0 x80 0 x80 0 x80 0 x00 0 x00 0 x00 0 x00 0 x06 0 x05 0 x04 0 x04 0 x04 0 x44 0 x84 0 x44 0 x3C 0 x00 0 x00 0 x00 0 x00 文字 一 宋体 12 此字体下对应的点阵为 宽 x 高 16x16 0 x80 0 x80 0 x80 0 x80 0 x80 0 x80 0 x80 0 x80 0 x80 0 x80 0 x80 0 x80 0 x80 0 x80 0 x80 0 x00 0 x00 0 x00 0 x00 0 x00 0 x00 0 x00 0 x00 0 x00 0 x00 0 x00 0 x00 0 x00 0 x00 0 x00 0 x00 0 x00 文字 切 宋体 12 此字体下对应的点阵为 宽 x 高 16x16 0 x40 0 x40 0 x40 0 xFF 0 x20 0 x20 0 x20 0 x04 0 x04 0 xFC 0 x04 0 x04 0 x04 0 xFC 0 x00 0 x00 0 x00 0 x00 0 x00 0 x1F 0 x08 0 x84 0 x42 0 x20 0 x18 0 x07 0 x40 0 x80 0 x40 0 x3F 0 x00 0 x00 文字 正 宋体 12 此字体下对应的点阵为 宽 x 高 16x16 0 x00 0 x02 0 x02 0 xC2 0 x02 0 x02 0 x02 0 xFE 0 x82 0 x82 0 x82 0 x82 0 x82 0 x02 0 x00 0 x00 0 x40 0 x40 0 x40 0 x7F 0 x40 0 x40 0 x40 0 x7F 0 x40 0 x40 0 x40 0 x40 0 x40 0 x40 0 x40 0 x00 文字 常 宋体 12 此字体下对应的点阵为 宽 x 高 16x16 0 x20 0 x18 0 x08 0 xEA 0 xAC 0 xA8 0 xA8 0 xAF 0 xA8 0 xA8 0 xAC 0 xEA 0 x08 0 x28 0 x18 0 x00 5 0 x00 0 x00 0 x3E 0 x02 0 x02 0 x02 0 x02 0 xFF 0 x02 0 x02 0 x12 0 x22 0 x1E 0 x00 0 x00 0 x00 uchar code SK 文字 0 宋体 12 此字体下对应的点阵为 宽 x 高 8x16 0 x00 0 xE0 0 x10 0 x08 0 x08 0 x10 0 xE0 0 x00 0 x00 0 x0F 0 x10 0 x20 0 x20 0 x10 0 x0F 0 x00 文字 1 宋体 12 此字体下对应的点阵为 宽 x 高 8x16 0 x00 0 x10 0 x10 0 xF8 0 x00 0 x00 0 x00 0 x00 0 x00 0 x20 0 x20 0 x3F 0 x20 0 x20 0 x00 0 x00 文字 2 宋体 12 此字体下对应的点阵为 宽 x 高 8x16 0 x00 0 x70 0 x08 0 x08 0 x08 0 x88 0 x70 0 x00 0 x00 0 x30 0 x28 0 x24 0 x22 0 x21 0 x30 0 x00 文字 3 宋体 12 此字体下对应的点阵为 宽 x 高 8x16 0 x00 0 x30 0 x08 0 x88 0 x88 0 x48 0 x30 0 x00 0 x00 0 x18 0 x20 0 x20 0 x20 0 x11 0 x0E 0 x00 文字 4 宋体 12 此字体下对应的点阵为 宽 x 高 8x16 0 x00 0 x00 0 xC0 0 x20 0 x10 0 xF8 0 x00 0 x00 0 x00 0 x07 0 x04 0 x24 0 x24 0 x3F 0 x24 0 x00 文字 5 宋体 12 此字体下对应的点阵为 宽 x 高 8x16 0 x00 0 xF8 0 x08 0 x88 0 x88 0 x08 0 x08 0 x00 0 x00 0 x19 0 x21 0 x20 0 x20 0 x11 0 x0E 0 x00 6 文字 6 宋体 12 此字体下对应的点阵为 宽 x 高 8x16 0 x00 0 xE0 0 x10 0 x88 0 x88 0 x18 0 x00 0 x00 0 x00 0 x0F 0 x11 0 x20 0 x20 0 x11 0 x0E 0 x00 文字 7 宋体 12 此字体下对应的点阵为 宽 x 高 8x16 0 x00 0 x38 0 x08 0 x08 0 xC8 0 x38 0 x08 0 x00 0 x00 0 x00 0 x00 0 x3F 0 x00 0 x00 0 x00 0 x00 文字 8 宋体 12 此字体下对应的点阵为 宽 x 高 8x16 0 x00 0 x70 0 x88 0 x08 0 x08 0 x88 0 x70 0 x00 0 x00 0 x1C 0 x22 0 x21 0 x21 0 x22 0 x1C 0 x00 文字 9 宋体 12 此字体下对应的点阵为 宽 x 高 8x16 0 x00 0 xE0 0 x10 0 x08 0 x08 0 x10 0 xE0 0 x00 0 x00 0 x00 0 x31 0 x22 0 x22 0 x11 0 x0F 0 x00 文字 宋体 12 此字体下对应的点阵为 宽 x 高 8x16 0 x00 0 x00 0 x00 0 xC0 0 xC0 0 x00 0 x00 0 x00 0 x00 0 x00 0 x00 0 x30 0 x30 0 x00 0 x00 0 x00 时间号 宋体 12 此符号下对应的点阵为 宽 x 高 8x16 0 x00 0 x00 0 x00 0 x30 0 x30 0 x00 0 x00 0 x00 0 x00 0 x00 0 x00 0 x0C 0 x0C 0 x00 0 x00 0 x00 文字 宋体 12 此字体下对应的点阵为 宽 x 高 8x16 0 x00 0 x00 0 x00 0 x00 0 x00 0 x00 0 x00 0 x00 0 x01 0 x01 0 x01 0 x01 0 x01 0 x01 0 x01 0 x01 7 void delay uint i uint x y for x i x 0 x for y 110 y 0 y void read busy 读忙函数 数据线最高位为 DB7 为 1 则 busy P0 0 x00 RS 0 RW 1 EN 1 while P0EN 0 void write LCD command uchar value read busy RS 0 RW 0 LCD databus value EN 1 nop nop EN 0 void write LCD data uchar value read busy RS 1 RW 0 LCD databus value EN 1 nop 8 nop EN 0 void set page uchar page page page 0 xb8 write LCD command page void set line uchar startline startline 0 xc0 startline write LCD command startline void set column uchar column column column column 0 x40 column write LCD command column void setonoff uchar onoff onoff 0 x3e onoff write LCD command onoff void selectscreen uchar screen switch screen 9 case 0 CS1 0 CS2 0 break case 1 CS1 0 CS2 1 break case 2 CS1 1 CS2 0 break default break void clearscreen uchar screen uchar i j selectscreen screen for i 0 i 8 i set page i set column 0 for j 0 j 64 j write LCD data 0 x00 void init LCD read busy selectscreen 0 setonoff 0 selectscreen 0 setonoff 1 selectscreen 0 10 clearscreen 0 set line 0 void display uchar ss uchar page uchar column uchar p uint i selectscreen ss set page page set column column for i 0 i 16 i write LCD data ZK i p 32 set page page 1 set column column for i 0 i 16 i write LCD data ZK i 16 p 32 void display1 uchar ss uchar page uchar column uchar p uint i selectscreen ss set page page set column column for i 0 i 8 i 11 write LCD data SK i p 16 set page page 1 set column column for i 0 i0 kk IO ACC0 SCLK 0 SCLK 1 ACC ACC 1 uchar read byte1302 uchar k

温馨提示

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

评论

0/150

提交评论