viod LCD_WR_REG(VU16 REGVAL)求助

2019-07-21 04:12发布

//写寄存器函数
//regval:寄存器值
void LCD_WR_REG(vu16 regval)
{  
 regval=regval;  //使用-O2优化的时候,必须插入的延时
 LCD->LCD_REG=regval;//写入要写的寄存器序号 
}
我对此函数的理解是regval是命令,从后面void LCD_Init(void)里面,LCD_WR_REG(0XD3),也得到了证实。 请求确认这两处是否冲突?我的理解对还是例子的注释对?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
4条回答
正点原子
1楼-- · 2019-07-21 04:55
这就是写入一个寄存器,完全不存在难理解啊。
styleno1
2楼-- · 2019-07-21 08:52
它的操作是往该地址写数据,至于功能,建议你翻手册。
ZHWH0123
3楼-- · 2019-07-21 13:21
回复【2楼】styleno1:
---------------------------------
我看了好几遍,有问问题请教:
typedef struct
{
u16 LCD_REG;
u16 LCD_RAM;
} LCD_TypeDef;
//使用NOR/SRAM的 Bank1.sector4,地址位HADDR[27,26]=11 A6作为数据命令区分线 
//注意设置时STM32内部会右移一位对其! 111 1110=0X7E     
#define LCD_BASE        ((u32)(0x6C000000 | 0x0000007E))
#define LCD             ((LCD_TypeDef *) LCD_BASE)
当:
void LCD_WR_REG(vu16 regval)
 {   
  regval=regval;  //使用-O2优化的时候,必须插入的延时
 LCD->LCD_REG=regval;//写入要写的寄存器序号  
 } 
也就是将regval的值,通过数据线,送到内存0x6C00007E。但是,由于rs是上接的是0,所以送来的数据被认为是对地址寻址?所以是要写入的寄存器的序号?
ZHWH0123
4楼-- · 2019-07-21 17:41
求大神指导啊!

一周热门 更多>