CH32V003J4M6引脚PD6或者PA1推挽输出点亮LED无反应

RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE);


    GPIO_InitTypeDef GPIO_InitStructure;

    GPIO_InitStructure.GPIO_Mode=GPIO_Mode_Out_PP;

    GPIO_InitStructure.GPIO_Pin =GPIO_Pin_1;

    GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;

    GPIO_Init(GPIOA, &GPIO_InitStructure);


您好,附件例程是CH32V003 PA1、PD6输出例程,测试是没问题的,如下图,你可以参考一下。注意PA1作为普通IO输出使用时,程序配置使用内部晶振。

icon_rar.gifCH32V003 GPIO_PA1_PD6输出.zip

image.png



你好,为什么用了你的例程PD6还是PA1都无法点亮,芯片V003J4M6,对于其它引脚可以正常点亮LED,只有1号引脚不行,换了个芯片也不行,用之前点亮过1号引脚的程序今天下载进去也是没反应,之前还可以,就今天突然不行了



CH32V003J4M6的PA1跟PD6是封在一起的,如果程序里面系统时钟选择的HSE,PA1将被作为OSC引脚,无法作为普通IO,也会导致PD6受影响。要想正常当作普通IO口来使用需要将系统时钟改为HSI。同时因为这两个口是封在一起的,在使用其中一个口的时候另外一个口要配置成浮空输入模式,否则会互相影响。同样的PD4/PD5/PD1也是这个情况,封在一起的引脚同时只能使用一个。

image.pngimage.png


谢谢答复,已解决



只有登录才能回复,可以选择微信账号登录