- 1、本文档共42页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
3、源码讲解-LCD结构体(Mini板没有) 淘宝店铺: 技术论坛: //LCD地址结构体 typedef struct { vu16 LCD_REG; vu16 LCD_RAM; } LCD_TypeDef; //使用NOR/SRAM的 Bank1.sector4,地址位HADDR[27,26]=11 A10作为数据命令区分线 //注意设置时STM32内部会右移一位对其! #define LCD_BASE ((u32)(0x6C000000 | 0x000007FE)) #define LCD ((LCD_TypeDef *) LCD_BASE) LCD_BASE,须根据外部电路的连接来确定,如Bank1.sector4就是从地址0X6C000000开 始,而0X000007FE,则是A10的偏移量。以A10为例,7FE换成二进制为:111 1111 1110 ,而16位数据时,地址右移一位对齐,对应到地址引脚,就是:A10:A0=011 1111 1111, 此时A10是0,但是如果16位地址再加1(对应到8位地址是加2,即7FE+0X02),那么: A10:A0=100 0000 0000,此时A10就是1了,即实现了对RS的0和1的控制。 我们将这个地址强制转换为LCD_TypeDef结构体地址,那么可以得到LCD-LCD_REG的 地址就是0X6C00,07FE,对应A10的状态为0(即RS=0),而LCD- LCD_RAM的地址就是 0X6C00,0800(结构体地址自增),对应A10的状态为1(即RS=1),从而实现对RS的控 制。 探索者F4,RS接A6, 则| 0x0000007E 3、源码讲解-lcddev结构体 淘宝店铺: 技术论坛: //LCD重要参数集 typedef struct { u16 width; //LCD 宽度 u16 height; //LCD 高度 u16 id; //LCD ID u8 dir; //横屏还是竖屏控制:0,竖屏;1,横屏。 u16 wramcmd; //开始写gram指令 u16 setxcmd; //设置x坐标指令 u16 setycmd; //设置y坐标指令 }_lcd_dev; //LCD参数 extern _lcd_dev lcddev; //管理LCD重要参数 lcddev结构体参数的赋值,基本上都是在LCD_Display_Dir函数完成 3、源码讲解-底层接口函数 淘宝店铺: 技术论坛: 7个底层接口函数: 1,写寄存器值函数 :void LCD_WR_REG(u16 regval) 2,写数据函数:void LCD_WR_DATA(u16 data) 3,读数据函数:u16 LCD_RD_DATA(void) 4,写寄存器内容函数: void LCD_WriteReg(u16 LCD_Reg, u16 LCD_RegValue) 5,读寄存器内容函数: u16 LCD_ReadReg(u16 LCD_Reg) 6,开始写GRAM函数: void LCD_WriteRAM_Prepare(void) 7,写GRAM函数: void LCD_WriteRAM(u16 RGB_Code) 3、源码讲解-LCD初始化函数 淘宝店铺: 技术论坛: LCD初始化函数伪代码: //LCD初始化 void LCD_Init(void) { 初始化GPIO; 初始化FSMC; //Mini板不需要 读取LCD ID; printf(“LCD ID:%x\r\n”,lcddev.id);//打印LCD ID,用到了串口1 //所以必须初始化串口1,否则黑屏 根据不同的ID执行LCD初始化代码; LCD_Display_Dir(0); //默认为竖屏 LCD_LED=1; //点亮背光 LCD_Clear(WHITE); //清屏 } 3、源码讲解-LCD坐标设置函数 淘宝店铺: 技术论坛: //设置光标位置 //Xpos:横坐标 //Ypos:纵坐标 void LCD_Se
您可能关注的文档
- 企业学习模块(FANUC) 工业机器人CNC上下料工作站 C-02-O-F上下料机器人.ppt
- 企业学习模块(FANUC) 工业机器人装配工作站 C-03-O-F装配机器人分类与特点.ppt
- 企业学习模块(FANUC) 工业机器人装配工作站 C-05-O-F装配机器人传感器.ppt
- 企业中心 新材料 四新-新材料-GRG介绍.ppt
- 企业资源 中层管理 武汉中百:潜心经营迎挑战用心管理创佳绩.ppt
- 起重机械 塔式起重机 4.3塔式起重机 .ppt
- 汽车车身控制系统故障诊断与修理 安全带维修案例分析 3.1.6安全带检修案例分析.ppt
- 汽车车身控制系统故障诊断与修理 电动车窗的组成结构 1.2电动车窗的组成结构.ppt
- 汽车底盘构造与维修 演示文稿 4 演示文稿 ok.ppt
- 汽车底盘机械系统检修 2016级奔驰班 2016级奔驰班(大众两轴式手动变速器拆装.第二组).pptx
文档评论(0)