OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 3122|回复: 4

A10作为数据命令区分线,为什么结构体中 vu16 LCD_REG; vu16 LCD_RAM_替换不可以?

[复制链接]

3

主题

6

帖子

0

精华

初级会员

Rank: 2

积分
104
金钱
104
注册时间
2016-7-26
在线时间
30 小时
发表于 2016-10-14 10:55:03 | 显示全部楼层 |阅读模式
3金钱
[mw_shl_code=applescript,true]//LCD地址结构体
typedef struct
{
vu16 LCD_RAM;
        vu16 LCD_REG;
} LCD_TypeDef;
//使用NOR/SRAM的 Bank1.sector4,地址位HADDR[27,26]=11 A10作为数据命令区分线
//注意设置时STM32内部会右移一位对其!                             
#define LCD_BASE        ((u32)(0x6C000000 | 0x00000800))
#define LCD             ((LCD_TypeDef *) LCD_BASE)[/mw_shl_code]

为什么RAM对应地址0x6C000800   REG 0X6C000802   这样不可以?
   

最佳答案

查看完整内容[请看2#楼]

虽然是两年前的帖子了,但看到还是回复一些,帮助那些新人,因为你的程序例地址就是错的,要保证的是地址在加上一个类型长度的时候能够将第十二位的0变为1,很明显,你的十二位已经变成1了,就算在结构体中指针自加的时候第十二位的地址还是不会变化的
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

13

主题

48

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
431
金钱
431
注册时间
2017-9-24
在线时间
81 小时
发表于 2016-10-14 10:55:04 | 显示全部楼层
虽然是两年前的帖子了,但看到还是回复一些,帮助那些新人,因为你的程序例地址就是错的,要保证的是地址在加上一个类型长度的时候能够将第十二位的0变为1,很明显,你的十二位已经变成1了,就算在结构体中指针自加的时候第十二位的地址还是不会变化的
回复

使用道具 举报

30

主题

1170

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1993
金钱
1993
注册时间
2016-2-16
在线时间
527 小时
发表于 2016-10-14 11:03:23 | 显示全部楼层
楼主知道往0x6C000800  读写数据和往0X6C000802 读写数据,A10有什么不一样么
回复

使用道具 举报

0

主题

3

帖子

0

精华

新手上路

积分
23
金钱
23
注册时间
2019-8-7
在线时间
4 小时
发表于 2019-9-20 11:49:45 | 显示全部楼层
有谁知道0x6C000000的第十位为什么和A10可以对应起来吗?求助
回复

使用道具 举报

3

主题

9

帖子

0

精华

新手上路

积分
36
金钱
36
注册时间
2021-12-2
在线时间
6 小时
发表于 2025-1-20 17:23:23 | 显示全部楼层
gongzq666 发表于 2016-10-14 10:55
虽然是两年前的帖子了,但看到还是回复一些,帮助那些新人,因为你的程序例地址就是错的,要保证的是地址在 ...

十二位是不是因为正好是是个零代表A0到A10,然后还要右移一位,加1十二位变成1是不是因为这里就是命令数据存放的位置啊?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-2-22 16:53

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表