参考链接:https://blog.51cto.com/rainlee/1415034
滚屏主要需要使用扩展命令字,以及12864DDRAM的结构:
80H、81H、82H、83H、84H、85H、86H、87H、88H、89H、8AH、8BH、8CH、8DH、8EH、8FH
90H、91H、92H、93H、94H、95H、96H、97H、98H、99H、9AH、9BH、9CH、9DH、9EH、9FH
A0H、A1H、A2H、A3H、A4H、A5H、A6H、A7H、A8H、A9H、AAH、ABH、ACH、ADH、AEH、AFH
B0H、B1H、B2H、B3H、B4H、B5H、B6H、B7H、B8H、B9H、BAH、BBH、BCH、BDH、BEH、BFH
上表中红色是上半屏可显示的区域,绿色是下半屏可显示的区域,粉色是上半屏滚动后可显示的区域,蓝色是下半屏滚动后可显示的区域。
代码下载链接:https://download.csdn.net/download/qq_45434284/16386277
核心代码:
#include "lcd12864.h"
void main()
{
unsigned char i;
lcd_init();
lcd_pos(11,0);
lcd_wstring("wjh776a68");
lcd_pos(12,0);
lcd_wstring("参考链接 blog.51");
lcd_pos(13,0);
lcd_wstring("cto.com/rainlee/");
lcd_pos(14,0);
lcd_wstring("1415034 ");
lcd_pos(21,0);
lcd_wstring("cto.com/rainlee/");
lcd_pos(22,0);
lcd_wstring("1415034 ");
lcd_pos(23,0);
lcd_wstring("wjh776a68");
lcd_pos(24,0);
lcd_wstring("参考链接 blog.51");
for(i=0x00;i<0x64;i++)
{
LCD_RS = 0;
LCD_RW = 0;
//lcd_wcmd(0x1f); //0001 11xx 向右滚屏
//lcd_wcmd(0x14); //0001 01xx 向左滚屏
lcd_wcmd(0x34); //进入扩充指令操作 0011 x1xx
lcd_wcmd(0x03); //设置滚屏 0000 0011
lcd_wcmd(0x40 + i); //设置纵向滚屏地址
lcd_wcmd(0x30); //返回基本指令操作 0011 x000
lcd_delay(1000);
}
while(1);
}