keil5编译
第一个图标:编译
第二个图标:链接—对你当前所更改的内容进行编译——》最常用的(快)
第三个图标:完全链接—对你整个工程进行编译
Proteus
主控芯片
MCU: STM32F103R6,通过主控芯片控制其他的外设,实现功能
按键模块
使用轻触按键:可以通过按键实现功能模式切换······
网络标签:
在电路里面,网络标签可以代替导线进行连接,网络标签必须成对出现而且名称一样
LCD屏幕显示模块
LED:
D1亮:LED1赋低电平 0(接地)
D1灭:LED1赋高电平 1 /不接
结论:想要控制D1亮灭,就得控制LED1端口电平高低
由图可知:LED1接在MCU的PC8管脚上面
控制LED灯,MCU的GPIO应该选择:通用推挽输出
代码编写:
1.初始化
- 开时钟
- 定义结构体变量
- 配置模式、管脚、速度
2.输出高低电平
STM32
IO口命名规则:
STM32里面I/O口命名规则:
例如:PC8:
P——Port——端口
C——端口号(A/B/C…字母表示)
8——端口位
端口+端口号+端口位
51单片机:P0.0~P0.7
I/O端口位的基本结构
GPIO的八种模式:
分为两大类:输入和输出
输入:
─ 输入浮空——|在空闲状态下,什么都不接,不确定是高电平还是低电平,既可以输入高电平,也可以输入低电平
─ 输入上拉——|在空闲状态下,外接了上拉电阻,输出电平是高电平
─ 输入下拉——|在空闲状态下,外了接下拉电阻,输出电平是低电平
─ 模拟输入——MCU单片机只能处理数字量,不能处理模拟量,需要进行模数转换(ADC)
输出:
─ 开漏输出——|在默认状态下,空闲状态下面,输出电平是低电平:0
─ 推挽式输出——|默认状态下,既可以输出高电平,也可以输出低电平
─ 推挽式复用功能
─ 开漏复用功能