[MCU] 这个语句什么意思

[复制链接]
1416|31
 楼主| zhenykun 发表于 2020-5-26 22:18 | 显示全部楼层 |阅读模式

ioport unsigned int *ADCCTL1=(unsigned int *)0x6800;
ioport unsigned int *ADCDATA1=(unsigned int *)0x6801;
ioport unsigned int *ADCCLKDIV1=(unsigned int *)0x6802;
ioport unsigned int *ADCCLKCTL1=(unsigned int *)0x6803;
#define ADCCTL (*ADCCTL1)
#define ADCDATA (*ADCDATA1)
#define ADCCLKDIV (*ADCCLKDIV1)
#define ADCCLKCTL (*ADCCLKCTL1)

求解上述语句什么意思? 还有就是(unsigned int *)什么意思?有时候还有*(unsigned int *)这又是什么意思?谢谢各位大侠了!
wyjie 发表于 2020-5-26 22:21 | 显示全部楼层
定义一个无符号整型变量,就是寄存器的地址。
jlyuan 发表于 2020-5-26 22:26 | 显示全部楼层
回炉重炼,再学习C语言。
yszong 发表于 2020-5-26 22:35 | 显示全部楼层
工欲善其事,必先利其器,推荐使用《C语言程序设计》
dengdc 发表于 2020-5-26 22:38 | 显示全部楼层
指针不好懂,但是很好用
heweibig 发表于 2020-5-26 22:41 | 显示全部楼层

我觉得这就是C语言数据类型中的无符号整型指针
wuhany 发表于 2020-5-26 22:52 | 显示全部楼层

ioport unsigned int *ADCCTL1=(unsigned int *)0x6800;   // 定义unsigned int型指针ADCCTL1, 指针值为0x6800
#define ADCCTL (*ADCCTL1)                              // 为指针ADCCTL1指向的单元取个别名

生活例子 ADCCTL1相当于 一个门牌地址 该门地址编号为0x6800.  ADCCTL则为该地址所在的建筑
jiahy 发表于 2020-5-26 22:56 | 显示全部楼层
前面是定义了一个地址 后面是定义了该地址的内容是个变量!!!
 楼主| zhenykun 发表于 2020-5-26 22:59 | 显示全部楼层
谢谢各位了  
llljh 发表于 2020-5-26 23:03 | 显示全部楼层
表示指向无符号整形指针的指针
llljh 发表于 2020-5-26 23:08 | 显示全部楼层
放到指针指向的变量
renyaq 发表于 2020-5-26 23:12 | 显示全部楼层
int *p;这样才是定义指针
houcs 发表于 2020-5-26 23:15 | 显示全部楼层
(unsigned int *)定义的地址。
yinxiangh 发表于 2020-5-26 23:18 | 显示全部楼层
*(unsigned int *)指向寄存器的地址。
morrisk 发表于 2020-5-26 23:20 | 显示全部楼层
去学习C语言的指针吧。
lium 发表于 2020-5-26 23:24 | 显示全部楼层
就是寄存器的地址
llia 发表于 2020-5-26 23:28 | 显示全部楼层
你只需要调用这个寄存器就可以了。
happy_10 发表于 2020-5-26 23:30 | 显示全部楼层
这个就是指针和赋值的意思。
tian111 发表于 2020-5-26 23:33 | 显示全部楼层

你使用右键看看能不能找到这个定义。
zwll 发表于 2020-5-26 23:37 | 显示全部楼层
就是寄存器的地址。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

868

主题

11535

帖子

3

粉丝
快速回复 在线客服 返回列表 返回顶部