1 GPIO设置
STM8 I/O 口引脚配置表
| Px_DDR | Px_CR1 | Px_CR2 | I/O 方式 | 引脚状态 |
|---|---|---|---|---|
| 0 | 0 | 0 | 输入 | 悬浮输入 |
| 0 | 0 | 1 | 输入 | 上拉输入 |
| 0 | 1 | 0 | 输入 | 中断悬浮输入 |
| 0 | 1 | 1 | 输入 | 中断上拉输入 |
| 1 | 0 | 0 | 输出 | 开漏输出 |
| 1 | 1 | 0 | 输出 | 推挽输出 |
| 1 | x | 1 | 输出 | 输出(最快速度为10MHZ) |
本文介绍了如何在STM8S单片机中进行GPIO设置以实现独立按键检测,包括上拉输入的问题和中断悬浮输入的解决。通过定时器TIM1配合按键,实现了连续按键检测,包括短按和长按的识别。关键在于利用两个标记(flag0和flag1)来判断按键状态,当满足特定时间间隔条件时,视为连续按键操作。
STM8 I/O 口引脚配置表
| Px_DDR | Px_CR1 | Px_CR2 | I/O 方式 | 引脚状态 |
|---|---|---|---|---|
| 0 | 0 | 0 | 输入 | 悬浮输入 |
| 0 | 0 | 1 | 输入 | 上拉输入 |
| 0 | 1 | 0 | 输入 | 中断悬浮输入 |
| 0 | 1 | 1 | 输入 | 中断上拉输入 |
| 1 | 0 | 0 | 输出 | 开漏输出 |
| 1 | 1 | 0 | 输出 | 推挽输出 |
| 1 | x | 1 | 输出 | 输出(最快速度为10MHZ) |

被折叠的 条评论
为什么被折叠?