求助,STM8操作了一个IO木反应呀
RT,刚上手STM8L151用库函数配置了一个IO(PC0),然后输出高电平,木有反应,不知道哪位可以指点一下。不要用库,用寄存器绝对行,这不是盖的 木有反应是啥意思,万用表测引脚电压是多少?
把while循环里的那句注释起来试试。 好吧,记得stm8库操作IO,有个强制失效的过程,所以有时误认为是自己的问题,其实是函数库的问题。
一,首先确定硬件平台没问题,
二,其次就是用寄存器在main里配置好推挽输出,输出高电平PC_DDR |= 0x0e;
PC_CR1 |= 0x0e;
//PC_CR2 |= 0x07;
PC_ODR |= 0x0e;//PC1,PC2,PC3初始化为高电平
这是寄存器。
GPIO_DeInit(GPIOC);
GPIO_Init(GPIOC, (GPIO_PIN_1|GPIO_PIN_2|GPIO_PIN_3), GPIO_MODE_OUT_PP_HIGH_FAST);
这是库的。 四楼的答案很好。 GPIOC->DDR |=0x01;//配置为输出
GPIOC->CR1|= 0x01;//上拉输出
GPIOC->CR2&= ~0x01;
GPIOC->ODR |= 0x01;//输出高电压
你这样试一下,如果还是不行,那就是硬件的问题了,还有,你的时钟是不是初始化了?
签到了! 直接用库操作简单易用~~~ mark ,帮顶 不行,就检查一下,很简单的
这样才有长进