关于正点原子的TFT教程为什么要以A10偏移量作为RS的数据/命令区分

本文详细解释了如何利用A10的位1/0表示RS的命令和数据操作,以及在正点原子板子中如何通过STM32的地址引脚和自增性质的LCD地址结构体进行数据和命令的区分。
摘要由CSDN通过智能技术生成

简而言之,A10 在数据线上表示从0开始第10个bit,如果其为1 就是 100,0000,0000.

如果为0,就是 000,0000,0000。用A10的位1/0来表示RS的命令和数据操作。

为什么???其实因为正点原子板子接的就是A10

当然你要是用A11,也可以,改一下引脚就行。

因为TFT没有地址引脚,STM32提供的地址引脚就没有用处。

就拿地址来作为区分数据命令

为什么正点原子里面用的结构体,因为结构体内元素地址具有自增性质

//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强转成结构体类型指针(地址)LCD_TypeDef。而且typedef struct支持直接访问结构体成员。结构体内部地址自增。可以将地址空间看作是2^32个8位字节或者2^31个16位半字或2^30个32位字

也就出现了 位10  0和1的两种情况。

  • 7
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值