智能车制作
标题:
能回答这个问题的都他妈是大师。。。。
[打印本页]
作者:
gc286
时间:
2010-8-2 13:48
标题:
能回答这个问题的都他妈是大师。。。。
/*** PWME - PWM Enable Register; 0x00000300 ***/
typedef union {
byte Byte;
struct {
byte PWME0 :1; /* Pulse Width Channel 0 Enable */
byte PWME1 :1; /* Pulse Width Channel 1 Enable */
byte PWME2 :1; /* Pulse Width Channel 2 Enable */
byte PWME3 :1; /* Pulse Width Channel 3 Enable */
byte PWME4 :1; /* Pulse Width Channel 4 Enable */
byte PWME5 :1; /* Pulse Width Channel 5 Enable */
byte PWME6 :1; /* Pulse Width Channel 6 Enable */
byte PWME7 :1; /* Pulse Width Channel 7 Enable */
} Bits;
} PWMESTR;
extern volatile PWMESTR _PWME @(REG_BASE + 0x00000300);
#define PWME _PWME.Byte
#define PWME_PWME0 _PWME.Bits.PWME0
#define PWME_PWME1 _PWME.Bits.PWME1
#define PWME_PWME2 _PWME.Bits.PWME2
#define PWME_PWME3 _PWME.Bits.PWME3
#define PWME_PWME4 _PWME.Bits.PWME4
#define PWME_PWME5 _PWME.Bits.PWME5
#define PWME_PWME6 _PWME.Bits.PWME6
#define PWME_PWME7 _PWME.Bits.PWME7
#define PWME_PWME0_MASK 1
#define PWME_PWME1_MASK 2
#define PWME_PWME2_MASK 4
#define PWME_PWME3_MASK 8
#define PWME_PWME4_MASK 16
#define PWME_PWME5_MASK 32
#define PWME_PWME6_MASK 64
#define PWME_PWME7_MASK 128
这段代码的具体意义怎么理解? 我懂C语言。。。。。。谢谢。。。。
作者:
zzy2099
时间:
2010-8-2 16:52
你对大师的要求太低了,
这个问题其实不需要大师回答的,
很遗憾的是,我不能冒充大师
作者:
zouyf12
时间:
2010-8-2 19:37
建议你看看C语言的共同体吧,具体什么意思我也不知道,但是作用我知道 你用过51吧? 你知道KEIL吧,比如你要访问P1口,但是KEIL不知道什么是P1 ,所以在reg52.h里定义了sfr P1 = 0x90; 这样,当你写P1=0X38的时候,KEIL就知道是吧0X38放到0x90这个地址。上面的作用就是定义了PWME这个寄存器的地址extern volatile PWMESTR _PWME @(REG_BASE + 0x00000300);让你在程序里可以直接写PWME来访问这个寄存器。其他的长篇大论无非你让你可以直接用PWME_PWME0这样的语句来访问PWME这个寄存器的第 0位, 原理没空研究~
等你用过STM32的硬件库就知道了,这样的写法很常用。其实就是让别人用起来方便而已,原理有兴趣就研究,没兴趣可以不用管
作者:
gc286
时间:
2010-8-9 14:04
回复
2#
zzy2099
那你是大湿。。。。。。
作者:
gc286
时间:
2010-8-9 14:06
回复
3#
zouyf12
谢谢,大师。。。
作者:
jay404823000
时间:
2010-8-25 13:44
首先说你的素质不高,我也不是大师!
寄存器的声明采用最经典的结构体位域法,具体看C语言的结构体位域教程。
所有的位域寄存器都是按2的位权赋值的,所以就有1,2,4,8,32,.......
后面只是一些定义罢了
作者:
encrease
时间:
2010-10-9 16:39
请LZ自行复习联合体与结构体。。这种问题不需要大师回答。。
这段程序中只有@(REG_BASE + 0x00000300)不是标准的C语言。
作者:
joab
时间:
2010-10-31 15:35
作者:
suaibinhan
时间:
2011-2-1 23:25
学习了
作者:
wugongzi
时间:
2011-2-2 07:22
en
作者:
make1001
时间:
2011-2-16 14:51
学习下
作者:
zyy464533641
时间:
2011-6-26 09:58
hh
欢迎光临 智能车制作 (http://dns.znczz.com/)
Powered by Discuz! X3.2