请问gd32w51x单片机支不支持位带操作
//IO口操作宏定义#define BITBAND(addr, bitnum) ((addr & 0xF0000000)+0x2000000+((addr &0xFFFFF)<<5)+(bitnum<<2))
#define MEM_ADDR(addr)*((volatile unsigned long*)(addr))
#define BIT_ADDR(addr, bitnum) MEM_ADDR(BITBAND(addr, bitnum))
#define output_offset 0x14
#define input_offset0x10
#define GPIOA_ODR_Addr (GPIOA+output_offset)
#define PAout(n) BIT_ADDR(GPIOA_ODR_Addr,n)//输出
#define PAin(n) BIT_ADDR(GPIOA_IDR_Addr,n)//输入
PAout(0)=1;这样操作好像不行了,请指导!
不支持吧 用标准寄存器操作 GD32W51x不支持传统位带,要改用寄存器直接操作或模拟位带。 推荐用标准寄存器宏,代码清晰且可移植。 不支持位带操作??
页:
[1]