单片机课程设计:八路温度巡回检测系统 - 图文 联系客服

发布时间 : 星期一 文章单片机课程设计:八路温度巡回检测系统 - 图文更新完毕开始阅读53025fc8d5bbfd0a795673d5

程序实现如下:

/************************************************* 读数据

**************************************************/ unsigned char u8_Lcd12864ReadByte_f( void ) {

unsigned char byReturnValue ;

chk_busy() ; //检测LCD是否工作繁忙 TRISD=0XFF; //设置PD口为输入状态 PORTD = 0xff ; //PD初始化为高电平

rs=1; // 读置高 rw=1; // 写置高 e=0; // 使能置低 e=1; // 使能置高 byReturnValue = PORTD ; // 读数据 e=0; // 关使能

TRISD=0X00; // 恢复PD口为输出 return byReturnValue ; // 返回读到的数据 }

3.4 具体指令介绍

1、清除显示

CODE: RW RS DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0

L 2、位址归位

CODE: RW RS DB7 DB6 DB5 DB4 DB3 DB2 DB1

L L L L L L L L H 功能:清除显示屏幕,把DDRAM位址计数器调整为“00H”

DB0

L DDRAM 3、位址归位

CODE: RW RS DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0

L L L L L L L H I/D S 功能:把DDRAM位址计数器调整为“00H”,游标回原点,该功能不影响显示DDRAM功能:执行该命令后,所设置的行将显示在屏幕的第一行。显示起始行是由Z地址计数器控制的,该命令自动将A0-A5位地址送入Z地址计数器,起始地址可以是0-63范围内任意一行。Z地址计数器具有循环计数功能,用于显示行扫描同步,当扫描完一行后自动加一。 4、显示状态 开/关

CODE: RW RS DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0

L L L L L L H D C B 功能: D=1;整体显示ON C=1;游标ON B=1;游标位置ON 5、游标或显示移位控制

CODE: RW RS DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0

L 内容 6、功能设定

CODE: RW RS DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0

L 集动作

7、设定CGRAM位址

CODE: RW RS DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0

AC5 AC4 AC3 AC2 AC1 AC0 功能:设定CGRAM位址到位址计数器(AC) L L L H L L L H DL X 0 RE X X 功能:DL=1(必须设为1) RE=1;扩充指令集动作 RE=0:基本指令

L L L L H S/C R/L X X 功能:设定游标的移动与显示的移位控制位:这个指令并不改变DDRAM的

L L L L L L L H X 功能:把DDRAM位址计数器调整为“00H”,游标回原点,该功能不影响显示

8、设定DDRAM位址

CODE: RW RS DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0

L L H AC6 AC5 AC4 AC3 AC2 AC1 AC0 功能:设定DDRAM位址到位址计数器(AC) 9、读取忙碌状态(BF)和位址

CODE: RW RS DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0

L H BF AC6 AC5 AC4 AC3 AC2 AC1 AC0 功能:读取忙碌状态(BF)可以确认内部动作是否完成,同时可以读出位址计数器(AC)的值 10、写资料到RAM

CODE: RW RS DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0

H L D7 D6 D5 D4 D3 D2 D1 D0 功能:写入资料到内部的RAM(DDRAM/CGRAM/TRAM/GDRAM) 11、读出RAM的值

CODE: RW RS DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0

H 12、 DB0

L L L L L L L L L H 功能:进入待命模式,执行其他命令都可终止待命模式 13、卷动位址或IRAM位址选择(13H)

CODE: RW RS DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0

L L L L L L L L H SR 功能:SR=1;允许输入卷动位址 SR=0;允许输入IRAM位址 14、反白选择(14H)

CODE: RW RS DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0

L L L L L L L H R1 R0 H D7 D6 D5 D4 D3 D2 D1 D0 功能:从内部RAM读取资料(DDRAM/CGRAM/TRAM/GDRAM)

待命模式(12H)

CODE: RW RS DB7 DB6 DB5 DB4 DB3 DB2 DB1

功能:选择4行中的任一行作反白显示,并可决定反白的与否 15、睡眠模式(015H)

CODE: RW RS DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0

L L L L L L H SL X X 功能:SL=1;脱离睡眠模式 SL=0;进入睡眠模式 16、扩充功能设定(016H)

CODE: RW RS DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0

L L L L H H X 1 RE G L 功能:RE=1;扩充指令集动作 RE=0;基本指令集动作 G=1;绘图显示ON G=0;绘图显示OFF

17、设定IRAM位址或卷动位址(017H)

CODE: RW RS DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0

L L L H AC5 AC4 AC3 AC2 AC1 AC0 功能:SR=1;AC5~AC0为垂直卷动位址 SR=0;AC3~AC0写ICONRAM位址

18、设定绘图RAM位址(018H)

CODE: RW RS DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0

L L H AC6 AC5 AC4 AC3 AC2 AC1 AC0 功能:设定GDRAM位址到位址计数器(AC) 备注、

1、当模块在接受指令前,微处理顺必须先确认模块内部处于非忙碌状态,即读取BF标志时BF需为0,方可接受新的指令;如果在送出一个指令前并不检查BF标志,那么在前一个指令和这个指令中间必须延迟一段较长的时间,即是等待前一个指令确实执行完成,指令执行的时间请参考指令表中的个别指令说明。

2、“RE”为基本指令集与扩充指令集的选择控制位元,当变更“RE”位元后,往后的指令集将维持在最后的状态,除非再次变更“RE”位元,否则使用相同指令集时,不需每次重设“RE”位元。 本次设计液晶初始化如下: