| 本帖最后由 tyw 于 2025-8-30 20:15 编辑 
 //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_offset  0x10
 
 #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;这样操作好像不行了,请指导!
 
 
 
 
 
  【Cortex-M】MCU位带操作最详细解析(主要以STM32为例,包括判断哪些MCU可用)_位带的.pdf
(2.35 MB, 下载次数: 3) 
 
 
 
 tyw 注
 
 
 
 
 |