nokiagx 发表于 2024-3-23 09:30

把PA7复用开漏输出_复用推挽输出.....AT32F421位带操作怎么写?

以下这两句是STM32F103的代码,把这两句改成AT32F421的代码,怎么写?

#define SPI_TX_OFF {GPIOA->CRL&=0x0FFFFFFF;GPIOA->CRL|=0xF0000000;}//把PA7(MOSI)复用开漏输出
#define SPI_TX_ON{GPIOA->CRL&=0x0FFFFFFF;GPIOA->CRL|=0xB0000000;}//把PA7(MOSI)复用推挽输出

DTLZ_001 发表于 2024-3-23 20:53

421不支持IO位带功能

nokiagx 发表于 2024-3-24 14:36

DTLZ_001 发表于 2024-3-23 20:53
421不支持IO位带功能

是吗?请教一下有没有别的方法?和位带操作一样快速的

muyichuan2012 发表于 2024-3-25 09:46

本帖最后由 muyichuan2012 于 2024-3-26 20:13 编辑

可以参考BSP这个案例AT32F421_Firmware_Library/ project / at_start_f421 / examples / gpio / io_toggle
/* set pa.01 */
    GPIOA->scr = GPIO_PINS_1;
    /* reset pa.01 */
    GPIOA->clr = GPIO_PINS_1;

    /* set pa.01 */
    GPIOA->scr = GPIO_PINS_1;
    /* reset pa.01 */
    GPIOA->clr = GPIO_PINS_1;

nokiagx 发表于 2024-3-26 15:48

本帖最后由 muyichuan2012 于 2024-3-26 20:14 编辑

muyichuan2012 发表于 2024-3-25 09:46
可以参考BSP这个案例AT32F421_Firmware_Library/ project / at_start_f421 / examples / gpio / io_togg ...
非常谢谢

药无尘 发表于 2024-4-1 11:22

用寄存器直接操作应该也很快的
页: [1]
查看完整版本: 把PA7复用开漏输出_复用推挽输出.....AT32F421位带操作怎么写?