功能
设计一个传送带系统,能够实现传送带的开始/停止,正转/反转,加减速,对传送带的物品计数。
按钮/app功能控制,oled屏幕/app显示。
设计框图
原理图
软件构建阶段
利用STM32CubeMX生成模板
MCU选型:STM32F103C8T6,双击打开。
Ststem Core->SYS:Serial Wire。Timebase Source:TIM1(供Freertos实时操作系统使用)。
Ststem Core->RCC:HSE、LSE--Crystal/Ceramic Resonator(不考虑低功耗,默认打开)。
Ststem Core->IWDG:Activated。psc--64、reload--625。(独立看门狗1s定时喂狗,判断系统正常运行)。
Connectivity->USART1:Asynchronous(蓝牙模块、调试输出所需)、9600-8-N-1、开中断。
搜索GPIO位置,选择IO模式,取别名。
PC13--推挽输出--SysLED。
PB9----推挽输出--BEEP。
PB12--推挽输出--AIN2。
PB13--推挽输出--AIN1。
PB14--推挽输出--STBY。
PB15--上拉输入--KEY_1。
PB11--上拉输入--KEY_2。
PB10--上拉输入--KEY_3。
PB1----上拉输入--KEY_4。
PB0----上拉输入--KEY_5。
PA3----上拉输入--Photoelectric_detector1。
PA4----上拉输入--Photoelectric_detector2。
PA0-WKUP----GPIO_EXIT0--Encoder。
配置时钟树。
配置I2C1(OLED屏幕通讯接口)。
配置TIM3、4(一个采集速度,一个PWM)。
配置FreeRTOS系统。
Project Manager->project:Toolchain/IDE:MDK-ARM。
Project Manager->Code Generator:勾上Generate peripheral initialization as a pair of '.c/.h' files per peripheral。
GENERATE CODE生成工程模板。
工程目录个人规范
标签:----,基于,传送带,推挽,--,STM32,上拉,KEY From: https://www.cnblogs.com/couvrir/p/17660487.html