[STM8] stm8s io配置

[复制链接]
2706|10
 楼主| c17 发表于 2021-9-30 23:46 | 显示全部楼层 |阅读模式
stm8s的io有DDR,IDR,ODR,CR1,CR2这几个寄存器。对于io的配置,其实看懂下面这张表就懂了。一般用到的也就是推挽输出,浮空输入和上拉输入。
353926155dbbb49ce1.png
 楼主| c17 发表于 2021-9-30 23:47 | 显示全部楼层
下面以PC1脚为例说明该如何配置这三种模式。
 楼主| c17 发表于 2021-9-30 23:47 | 显示全部楼层
推挽输出:

PC_DDR_DDR1 = 1;//io方向:输出
PC_CR1_C11 = 1;//因为DDR为1,所以CR1置1表示推挽输出模式

PC_ODR_ODR1 = 1;//1:输出高 , 0:输出低

说明,io的CR2寄存器默认为0,一般我不会去修改它的值。只有一次做模拟串口发送时将CR2配置为1
 楼主| c17 发表于 2021-9-30 23:48 | 显示全部楼层
浮空输入:

PC_DDR_DDR1 = 0;//io方向:输入

PC_CR1_C11=0;//因为DDR为0,所以CR1为0表示浮空输入模式

说明:此时可以通过读PC_IDR_IDR1获取PC1输入电平的高低,stm8s复位情况下io为此模式,在进行adc采集时建议配置此种模式
 楼主| c17 发表于 2021-9-30 23:48 | 显示全部楼层
上拉输入:

PC_DDR_DDR1 = 0;//io方向:输入

PC_CR1_C11=1;//因为DDR为0,所以CR1为1表示上拉输入模式

说明:在进行按键检测,输入捕获时建议配置此种模式

labasi 发表于 2021-10-14 15:47 | 显示全部楼层
需要配置的寄存器还是很少的
tpgf 发表于 2021-10-14 15:48 | 显示全部楼层
这个有内部上拉吗
heimaojingzhang 发表于 2021-10-14 15:50 | 显示全部楼层
默认情况下是什么配置呢
keaibukelian 发表于 2021-10-14 15:52 | 显示全部楼层
感觉我很少用输入模式
paotangsan 发表于 2021-10-14 15:55 | 显示全部楼层
对应的外部硬件如何连接呢
skyred 发表于 2021-10-15 10:49 | 显示全部楼层
st8一直没用过,看着简单不少~
您需要登录后才可以回帖 登录 | 注册

本版积分规则

c17

40

主题

312

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部