资源描述
装 订 线
北京科技大学
实验报告
课程名称 课程设计
班 级
学 号
姓 名
上课时间 2009年9月
指导教师
成 绩
信息工程学院
电子信息系
课程设计题目:温度测量LCD液晶显示系统
前言
在日常生活中,温度的测量与显示应用极其普遍。本次课程设计的目的就是让学生利用学过的相关专业知识,设计和实现一个温度测量LCD显示系统,以期巩固专业知识和提高实践能力。
本课程设计涉及到LCD液晶显示的应用、温度传感器的应用、I2C总线数据存储器的扩展及用LCD显示温度值等四个方面的内容,并划分为六个实验。内容包括:
1 编写程序使LCD液晶显示屏显示单个字符如“A”,“4”等。
2 编写程序使LCD液晶显示屏显示字符串如“WELCOM IN”等。
3 编写程序调通温度传感器。
4 编写程序读温度传感器TC74的值,并在PORTB端口的LED上显示。
5 编写程序读并写EEPROM中24LC256B的值,在PORTB端口显示。
6 编写程序在LCD液晶显示屏上显示温度传感器TC74的值。
实验一 LCD液晶显示的应用(一)
一 实验目的
1. 学习LCD显示的工作原理
2. 学会在LCD液晶显示屏上显示单个字符。
二 实验所用仪表及设备
硬件:PC机一台,在线仿真调试器MPLAB ICD2,PICDEM2目标实验板。
软件:MPLAB IDE集成开发软件
三 实验内容
通过编程用PICDEM2目标实验板上的LCD显示单个字符“A”。
四 实验原理
1. LCD显示模块介绍
本次实验使用的是PICDEM2目标实验板上的LCD模块,型号为 FEMA Electronics CG-1621-SGR1C P-TEC CORP PCOG1602B-GNFD-C1RCD RCD INDUSTRI UNITED RADIANT UMSH-3112JNV-1G。
该LCD模块可以显示2行*16列字符,每个字符为8×5点阵加游标。驱动电路模块型号为FCS2314AK,图1-1为该LCD的规格图,图1-2为LCD模块引脚图。
图1-1 LCD规格图
图1-2 LCD模块引脚图
从图1-2可以看出,该LCD电路模块有15个引脚,除电压端外,RS端用来选择是数据还是命令操作,如果是H则为数据操作,L则为命令操作。R/W为读写设置,H为读,L为写。E为使能端,DB0~7为数据总线。
在PICDEM2目标实验板上,PIC16F877A与LCD模块连接的电路如图1-3所示:
图1-3 FCS2314AK电路模块驱动LCD示意图
其中PIC16F877A的RA1连接E引脚,RA2连接R/W引脚,RA3连接RS引脚,RD0~3连接DB4~7(只连接半字节)。
2. LCD显示模块操作步骤
(1)初始化LCD
初始化LCD的具体内容为设置成4位数据总线,显示使能,清空显示,进入等待操作模式,设置DDRAM地址初始为0。DDRAM地址是指字符的位置,其定义如图1-4所示:
图1-4 DDRAM地址定义图
而初始化的每一步操作是找出对应的指令在RS=0,R/W=0的状态下,通过DB4~DB7写入。其指令表如表1-1所示。根据表1-1,可以查到初始化的指令依次为00101000,0x28,00001101,0x0d,00000001,0x01 00000110,0 x06,10000000。0x80
表1-1 指令表
(2)LCD模块的写操作
首先设置R/W为低电平,定义为写状态;然后通过DB4~DB7先写入待写入字节的高4位;接着通过DB4~DB7再写入低4位。
如果写入的是数据,则写满8位,则在DDRAM地址的位置显示该字符,并且DDRAM地址自动加1(注意每一行的最后一个字符的DDRAM地址变化)。另外,可以通过在RS=0的状态下,写入10000000或者11000000来选择是第一行或者第二行。因为DDRAM地址为0x40时正好是第二行第一个字符。
(3)LCD模块的读操作
读操作同写操作,设置R/W为高电平,先通过DB4~7读取DDRAM地址所在字符值的高4位,接着通过DB4~DB7再读取低4位。
另外,写和读的内容格式都是ascii码。
五、实验步骤
(1)硬件设计
本实验的主要框架如图1-5所示。
图1-5 系统框架图
(2)软件设计
系统主程序流程图如图1-6所示。
开始
调用初始化子程序
设定显示字符
调用写数据指令子程序
调用延时子程序
结束
图1-6 系统主程序流程图
初始化流程图如图1-7所示。
I/O端口设置
对D口清零
调用延时等待LCD忙碌结束
LCD功能设置为4位数据传送模式
调用写指令程序
打开LCD屏调用写指令程序
设置起始显示地址
调用写指令程序
返回
图1-7 初始化流程图
写数据子程序流程图如图1-8所示。
将要写的数据的高字节从RD3~RD0输出
写数据使能
将要写的数据的低字节从RD3~RD0输出
写数据使能
调用延时子程序
返回
图1-8 写数据子程序流程图
写指令子程序流程图如图1-9所示。
将要写的指令的高字节从RD3~RD0输出
写指令使能
将要写的指令的低字节从RD3~RD0输出
写指令使能
调用延时子程序
返回
图1-9 写指令子程序流程图
实验二 LCD液晶显示的应用(二)
一 实验目的
1. 熟练掌握LCD的设置及使用,学会不同的设置方式。
2. 学会在LCD液晶显示屏上显示字符串。
二 实验所用仪表及设备
硬件:PC机一台,在线仿真调试器MPLAB ICD2,PICDEM2目标实验板。
软件:MPLAB IDE集成开发软件
三 实验内容
通过编程用PICDEM2目标实验板上的LCD显示字符串“WELCOM IN”。
四 实验步骤
程序流程图如图2-1所示。
开始
调用初始化子程序
调用显示字符串
子程序
结束
调用发送指令子程序
图2-1 程序流程图
实验三 LCD液晶显示的应用(三)
一 实验目的
1. 熟练掌握LCD的显示原理及应用。
2. 熟练掌握在LCD液晶显示屏上显示字符串。
二 实验所用仪表及设备
硬件:PC机一台,在线仿真调试器MPLAB ICD2,PICDEM2目标实验板。
软件:MPLAB IDE集成开发软件
三 实验内容
通过编程用PICDEM2目标实验板上的LCD显示字符串“24:00”。
四 实验步骤
程序流程图如图3-1所示。
开始
调用初始化子程序
调用显示字符串
子程序
结束
调用发送指令子程序
图3-1 程序流程图
实验四 温度传感器的应用
一 实验目的
1. 熟悉智能温度传感器TC74的工作原理及应用方法。
2. 学习I2C总线串行数据的传送原理。
二 实验所用仪表及设备
硬件:PC机一台,在线仿真调试器MPLAB ICD2,PICDEM2目标实验板。
软件:MPLAB IDE集成开发软件
三 实验内容
用PICDEM2目标实验板实现读串行温度传感器TC74,并用连接在PORTB端口的LED灯显示。
四 实验原理
1. TC74 简介
TC74是美国国家半导体公司推出的一种新型智能温度传感器,与传统的温度传感器相比,它内部采用了高性能的A/D转换器,因此具有抗干扰能力强、分辨力高、线性度好、成本低等优点。TC74的特性叙述如下:
(1)采用SMBus/I2C串行接口;
(2)测温范围为-40~+125℃;
(3)8位二进制数据,分辨率为1℃;
(4)低功耗模式,可将电源消耗降到 200uA以下;
(5)工作电源为2.7~5.5 V;
(6)TC74采用 SOT-23型 5脚贴片式封装和 5脚的直插型TO-220封装。其引脚功能如表4-1所示,工作方式如图4-1所示。
表4-1 TC74引脚功能表
图4-1 TC74的工作方式
温度与二进制数值的转化如表4-2所示。
表4-2 温度与二进制数值的转化表
2. I2C总线串行数据的传送原理
I2C总线是一种二线制串行传输总线,由时钟线(SCL)和数据线(SDA)两根线组成。时钟线用于产生时钟节拍信号,数据线用于读写数据。它具有占用口少、控制方式简单、信号传输速度快、配套功能芯片种类多等优点。在总线上必须有一主控器(如PIC单片机等)和一个或多个受控器(如TC74等),其总线的传输过程是:
(1)主控者发出开始信号。
(2)主控者接着传送一字节的受控者地址信息,其中最低位为读写控制码。“1”为读,即主控者接受受控者发来的数据;“0”为写,即主控者发送数据到受控者。高七位为受控者器件地址码。(TC74的默认地址码为1001101,且温度寄存器地址码为00H)
(3)受控者发出认可信号。
(4)发送者开始发送信号,每发完一字节后接受者发送认可信号给发送者。
(5)主控者发出停止信号。
TC74总线数据传送格式如图4-2所示。
图4-2 TC74总线数据传送格式
数据信号SDA是在时钟信号SCLK为低电平时发出的。当SCLK为高电平而SDA由高变低时产生启动信号;当SCLK为高电平而SDA由低变高时产生停止信号。因此在传输数据期间,当SCLK为高电平时,数据信号SDA必须保持稳定。
五 实验步骤
程序流程图如图4-3所示。
开始
发送开始信号
发送受控者地址码(读写状态为写)
发送所读数据的首地址
重启
发送受控者地址码(读写状态为读)
读出一字节数据
发送认可信号
调用延时子程序
等待读数据完毕
循环读取温度
送PORTB口显示
初始化
结束
发出认可信号
发出认可信号
发出认可信号
发出认可信号
发出认可信号
图4-3 程序流程图
初始化子程序流程图如图4-4所示。
总线接口模块
初始化子程序
设置I/O端口
设定波特率
设定总线电平规范
关闭转换率控制
设定总线接口为主控方式
使能总线接口
返回
图4-4 初始化子程序流程图
实验五 I2C总线数据存储器的扩展
——24LC256B数据存储器芯片
一 实验目的
1. 学习数据存储器的存储和读写原理。
2. 学会使用I2C串行总线扩展数据存储器,并对其进行读写操作。
二 实验所用仪表及设备
硬件:PC机一台,在线仿真调试器MPLAB ICD2,PICDEM2目标实验板。
软件:MPLAB IDE集成开发软件
三 实验内容
用PICDEM2目标实验板实现读写数据存储器24LC256B,并用连接在PORTB端口的LED灯显示。
四 实验原理
24LC256B是容量为32K×8bit的具有I2C总线接口的EEPROM,其中工作电压为1.8V~5.5V,适用于低工作电压条件,功耗小,宽电压电源,工作电流约为3mA。
24LC256B引脚图如图5-1所示,其引脚功能和参数分别如表5-1、表5-2所示,
图5-1 24LC256B引脚图
表5-1 24LC256B引脚功能表
表5-2 24LC256B参数表
由于I2C总线可挂接多个串行接口器件,每个器件有唯一的地址,寻址地址由器件地址和器件(芯片)的片内地址组成。
按照总线规则,器件地址为七位数据,它和一位方向数据构成一个器件寻址字节,最低位为方向位(读/写)。器件寻址字节中高4位为器件型号地址,不同的I2C总线接口器件的型号地址是厂家给定的,如24LC256B的型号地址为1010,器件的低三位为引脚地址A2、A1、A0,在硬件设计中由连接的引脚电平给定。
对于容量小于256字节的EEPROM芯片,则只需用8位进行片内寻址;对于容量大于256字节的EEPROM芯片,若用8位进行片内寻址是不够的,如24LC256B,相应的寻址位数为15位。如图5-2所示。
图5-2 寻址格式图
对24LC256B进行写操作的数据格式如图5-3所示。
图5-3 写操作的数据格式
对24LC256B进行读操作的数据格式如图5-4所示。
图5-4读操作的数据格式
五 实验步骤
PICDEM2目标实验板上的单片机PIC16F877A利用I2C总线模式的接口模块MSSP,与具有I2C总线接口的24LC256B EEPROM进行通信时,只需要让模块处于主控模式即可。
在软件设计中,将一字节数据45H写入到EEPROM存储器0067H单元内,然后从该存储单元读取出来,并且送到PORTB口用LED灯显示。
在程序设计中,将总线初始化、总线的读操作、总线的写操作、10毫秒延时、从器件的应答信号检测、开始信号、结束信号都设计成子模块。
程序流程图如图5-5所示。
主程序
调用初始化子程序
数据读取变量清零
将45H送入变量
调用写子程序流程图
调用延时子程序
调用读子程序
原地循环
图5-5 程序流程图
初始化子程序流程图如图5-6所示。
总线接口模块
初始化子程序
设置I/O端口
设定波特率
设定总线电平规范
关闭转换率控制
设定总线接口为主控方式,使能总线接口
返回
图5-6 初始化子程序流程图
写子程序流程图如图5-7所示。
写子程序
建立启动信号程序
启动信号完成否?
发送地址码、写控制位
应答子程序
发送写单元高8位地址
应答信号子程序
发送写单元低8位地址
应答信号子程序
发送数据
应答信号子程序
调用停止子程序
返回
图5-7 写子程序流程图
建立启动信号程序
读子程序流程图如图5-8所示。
启动信号完成否?
读子程序
B
B
建立重启动信号程序
启动信号完成否?
发送地址码、读控制位
应答子程序
字节接受送RB口
发送非应答信号
调用停止子程序
返回
发送地址码、写控制位
应答子程序
发送写单元高8位地址
应答信号子程序
发送写单元低8位地址
应答信号子程序
图5-8 读子程序流程图
实验结果如图5-9所示。
图5-9 实验结果图
实验六 用LCD显示温度值
一 实验目的
1. 熟悉单片机测温系统的原理。
2. 设计和实现一个温度测量LCD显示系统。
二 实验所用仪表及设备
硬件:PC机一台,在线仿真调试器MPLAB ICD2,PICDEM2目标实验板。
软件:MPLAB IDE集成开发软件
三 实验内容
用PICDEM2目标实验板设计和实现一个温度测量LCD显示系统,用TC74A5温度传感器测量室内温度,并用LCD液晶显示屏显示所测的温度值。
四 实验步骤
程序流程图如图6-1所示。
主程序
初始化子程序
调用读温度子程序
调用显示TEMPARATURE子程序
调用LCD子程序
结束
图6-1 程序流程图
23
展开阅读全文