zpf0506 发表于 2013-1-19 18:36:30

STM32位段区的问题

/*
PORTC的基地址是:0x4001 1000
设备位段区的基地址:  0x4000 0000
设备位段别名区基地址: 0x4200 0000
位段区的偏移量 = 0x4001 1000 - 0x4000 0000 = 0x1 1000
字偏移地址 = (0x1 1000*0x20) + ((ÒªÉèÖõĵڼ¸Î»)3 * 4) 
位带别名区的地址 = 0x4200 0000 + (0x1 1000*0x20) + ((ÒªÉèÖõĵڼ¸Î»)3 * 4)
*/
// #define PortCBit3   (*((volatile unsigned int *)(0x4222000C)))
// #define PortCBit4   (*((volatile unsigned int *)(0x42220010)))
// #define PortCBit5   (*((volatile unsigned int *)(0x42000014)))
// #define CLOSE_LED1() (PortCBit3 = 0)
// #define CLOSE_LED2() (PortCBit4 = 0)
// #define CLOSE_LED3() (PortCBit5 = 0)
// #define TURN_LED1() (PortCBit3 = 1)
// #define TURN_LED2() (PortCBit4 = 1)
// #define TURN_LED3() (PortCBit5 = 1)
 
为什么我在主函数中调用上面6个宏,led灯不会闪烁,用库函数却可以。求赐教!

zykzyk-93033 发表于 2013-1-19 21:18:42

RE:STM32位段区的问题

定义不准确吧。:D

zpf0506 发表于 2013-1-19 23:28:34

回复:STM32位段区的问题

回复第 2 楼 于2013-01-19 21:18:42发表:
定义不准确吧。:D 

您说的是宏定义后面的地址计算的有问题?可是这个地址我算了好几遍了,没问题啊。
页: [1]
查看完整版本: STM32位段区的问题