单片机lcd实现滚屏

单片机lcd实现滚屏,第1张

看LCD的接口情况,并口需要数据线8位、片选、读使能、写使能等。

如果LCD为串口,数据线1,数据同步时钟1,片选1。

使用定时器,启动定时滚屏动作

如果lcd支持滚屏,只要刷新一行即可。

否则,只能重画了

增设一个N行的输出缓冲区,要输出的内容先写到缓冲区中,记录缓冲区实际数据行数

每次新输出一行时,缓冲区数据行数未满则直接添加一行,如果满则先移动:第二行复制到第一行,第三行复制到第二行...第N行复制到第N-1行,然后新内容写到第N行

然后清屏把缓冲区内容全部重新输出到LCD屏, 大体的思路如此,应当可以实现你的想法

求驱图液晶程序

请帮忙看看程序 ,LCD1602没显示,背光

##include <reg52.h>

#define uchar unsigned char

#define uint unsigned int

#define ulong unsigned long

uchar code tabel1[]="U:5V"

void delaynms(uint x)

void init()//液晶屏初始化

bit lcd_bz()//LCD忙检测

void LCD_RegWrite(uchar Command)//寄存器进行写 *** 作

void LCD_DataWrite(uchar Data)//写字节显示数据至 LCD

sbit LCD_RS =P3^4

sbit LCD_RW =P3^5

sbit LCD_E =P3^6

void delaynms(uint x) //延1ms程序

{

uchar j

while(x--)

{

for(j=0j<120j++)

}

}

void init()

{

delaynms(50)

LCD_RegWrite(0x38)//功能设置8位双行显示5*7点阵

delaynms(5)

LCD_RegWrite(0x38)//功能设置8位双行显示5*7点阵

delaynms(5)

LCD_RegWrite(0x38)//功能设置8位双行显示5*7点阵

delaynms(5)

LCD_RegWrite(0x08)//关闭显示

LCD_RegWrite(0x01)//清屏

LCD_RegWrite(0x06)//输入式设置光标左向右移显示屏移

LCD_RegWrite(0x0C)//显示显示光标光标闪烁

}

bit lcd_bz()

{ // 测试LCD忙碌状态

bit result

P0=0xFF

LCD_RS = 0

LCD_RW = 1

LCD_E = 0

delaynms(1)

LCD_E = 1

result = (bit)(P0 &0x80)

delaynms(5)

LCD_E = 0

return result

}

//*************写命令***************

void LCD_RegWrite(uchar Command)

{

while(lcd_bz())

LCD_RS = 0//RS 置低示意进行寄存器 *** 作

LCD_RW = 0//RW 置低示意进行写入 *** 作

LCD_E= 0

P0=Command

delaynms(5)

LCD_E= 1

delaynms(5)

LCD_E = 0

}

//**************写数据**************

void LCD_DataWrite(uchar Data)

{

while(lcd_bz())

LCD_RS= 1//RS 置高示意进行显存数据 *** 作

LCD_RW= 0//RW 置低示意进行写入 *** 作

LCD_E = 0

P0=Data//装载数据置总线

delaynms(5)

LCD_E= 1

delaynms(5)

LCD_E= 0//产效跳变沿

}

void LCDxianshi()

{

uchar i

LCD_RegWrite(0x80+0x01)//设置第行第2列显示

for(i=0i<4i++)

{LCD_DataWrite(tabel1[i])

delaynms(10)

}

}

void main()

{

delaynms(400)

init()

delaynms(50)

LCDxianshi()

}


欢迎分享,转载请注明来源:内存溢出

原文地址: https://www.outofmemory.cn/yw/11885942.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存