[技术问答]

nuc029sge GPIO操作问题

[复制链接]
1679|5
手机看帖
扫描二维码
随时随地手机跟帖
zzz5858662|  楼主 | 2021-9-6 10:24 | 显示全部楼层 |阅读模式
用新塘nuc029sge的PB口做控制,发现PB0~PB4受控,PB5~PB8不受控。PB0~PB8均采用库函数GPIO_SetMode(PB,BIT8,GPIO_MODE_OUTPUT);设置为输出,每个口设1秒翻转一次。GPIO_PIN_DATA(1,0) = 1 ...GPIO_PIN_DATA(1,8) = 1;DELAY;GPIO_PIN_DATA(1,0) = 0 ...GPIO_PIN_DATA(1,8) = 0;DELYA;经查看IO状态、示波器及运行状态,可以看出PB0~PB4有脉冲,PB5~PB8为固定值(如一直为0或则一直为1)。通过keil的状态查看,这些IO口的设置均是一样的。请问这是什么情况?操作上还有需要注意的地方吗?谢谢。

使用特权

评论回复
可以贴一下代码吗?

使用特权

评论回复
asmine| | 2021-9-6 10:48 | 显示全部楼层
看着有点乱啊
IO初始化,看看

使用特权

评论回复
zzz5858662|  楼主 | 2021-9-6 10:56 | 显示全部楼层
int main (void)
{
        SYS_UnlockReg();
        SysClk_Init();
        SYS_LockReg();
        delay_init(72);
        while(1)
        {
             GPIO_SetMode(PB,BIT0,GPIO_MODE_OUTPUT);
             GPIO_SetMode(PB,BIT1,GPIO_MODE_OUTPUT);
             GPIO_SetMode(PB,BIT2,GPIO_MODE_OUTPUT);
             GPIO_SetMode(PB,BIT3,GPIO_MODE_OUTPUT);
             GPIO_SetMode(PB,BIT4,GPIO_MODE_OUTPUT);
             GPIO_SetMode(PB,BIT5,GPIO_MODE_OUTPUT);
             GPIO_SetMode(PB,BIT6,GPIO_MODE_OUTPUT);
             GPIO_SetMode(PB,BIT7,GPIO_MODE_OUTPUT);
             GPIO_SetMode(PB,BIT8,GPIO_MODE_OUTPUT);
             delay_ms(1000);//1S延迟
             GPIO_PIN_DATA(1,0) = 1 ;
             GPIO_PIN_DATA(1,1) = 1 ;
             GPIO_PIN_DATA(1,2) = 1 ;
             GPIO_PIN_DATA(1,3) = 1 ;
             GPIO_PIN_DATA(1,4) = 1 ;
             GPIO_PIN_DATA(1,5) = 1 ;
             GPIO_PIN_DATA(1,6) = 1 ;
             GPIO_PIN_DATA(1,7) = 1 ;
             GPIO_PIN_DATA(1,8) = 1 ;
             delay_ms(1000);
            GPIO_PIN_DATA(1,0) = 0 ;
             GPIO_PIN_DATA(1,1) = 0;
             GPIO_PIN_DATA(1,2) = 0;
             GPIO_PIN_DATA(1,3) = 0;
             GPIO_PIN_DATA(1,4) = 0;
             GPIO_PIN_DATA(1,5) = 0;
             GPIO_PIN_DATA(1,6) = 0;
             GPIO_PIN_DATA(1,7) = 0;
             GPIO_PIN_DATA(1,8) = 0;   
             delay_ms(1000);        
         }

使用特权

评论回复
zzz5858662|  楼主 | 2021-9-6 10:59 | 显示全部楼层
asmine 发表于 2021-9-6 10:48
看着有点乱啊
IO初始化,看看

IO初始化?库文件里头只有gpio操作的,还有时钟配置的。我看了官方例程好像也没有看到有GPIO初始化的函数。

使用特权

评论回复
zzz5858662|  楼主 | 2021-9-6 23:27 | 显示全部楼层
解决了。谢谢各位。是我SPI初始化的时候把相应管脚复用了。忘记这茬了。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

6

主题

21

帖子

1

粉丝