初级会员

- 积分
- 77
- 金钱
- 77
- 注册时间
- 2015-10-24
- 在线时间
- 1 小时
|
5金钱
#define APB2_BITBAND(addr,bitnum) ((addr&0xF0000000)+0X2000000+((addr&0xFFFFF)<<5)+(bitnum<<2))
#define APB2_MEM_ADDR(addr) *((volatile unsigned long *)(addr))
#define APB2_BIT_ADDR(addr,bitnum) APB2_MEM_ADDR(APB2_BITBAND(addr,bitnum))
typedef struct
{
volatile uint32_t CRL;
volatile uint32_t CRH;
volatile uint32_t IDR;
volatile uint32_t ODR;
volatile uint32_t BSRR;
volatile uint32_t BRR;
volatile uint32_t LCKR;
}GPIO_TypeDef;
#define APB2_BASE 0x40010000
#define GPIOE_BASE (APB2_BASE+0x1800)
#define GPIOODR(m,n) APB2_BIT_ADDR((m+0X08),n)
GPIOODR(GPIOE_BASE,5)=1;//这语句写不进去,就是值不了1
GPIOBSRR(GPIOE_BASE,5)=1;//这条就可以 |
|