目录
- Cubemx
- 引入RTT资源
- 新建工程
- 生成工程
- 时钟选择
- 选单片机引脚
- 引脚搜索快速选中
- 取消引脚选中
- 引脚命名
- IO普通模式设置
- 串口
- 串口基本配置
- 串口DMA
- ADC采集
- ADC基本应用
- ADC_DMA
- RTT-shell指令
- 定义RTTCOM调试串口
- J-Link RTT调试 教程
- shell指令
- RTT外设驱动使用1--串口添加
- STM32_pwm
Cubemx
链接: STM32CubeMx安装教程(HAL库)(保姆级别)
引入RTT资源
复制完连接先CHECK
再点OK
链接: CubeMax添加Rtthread操作系统 组件STM32F103
RTT资源引入链接:
https://www.rt-thread.org/download/cube/RealThread.RT-Thread.pdsc
链接: (RT-Thread学习笔记1)基于 CubeMX 移植 RT-Thread Nano
新建工程
详细介绍了cubmax然间的基本使用方法(包括引脚设置、时钟设置工程建立
)链接: 基于STM32CubeMax的工程建立
生成工程
时钟选择
主要借鉴链接: STM32CubxMX时钟配置注意事项
BYPASS Clock Source 是选择有源晶振
Crystal/Ceramic Resonator 是选择无源晶振
开启使STM32自带RCC时钟
选单片机引脚
链接: 学习笔记CUMBEMX新建工程
引脚搜索快速选中
取消引脚选中
引脚命名
IO普通模式设置
链接: 手把手教你使用HAL库开发入门——成为点灯大师
- 浮空输入(默认状态):GPIO_Mode_IN_FLOATING
引脚自身视为开路,电平由外部电路决定,不能输出; - 上拉输入:GPIO_Mode_IPU
与浮空输入类似,但当外部电平不确定时,会被拉至高电平; - 下拉输入:GPIO_Mode_IPD
与浮空输入类似,但当外部电平不确定时,会被拉至低电平; - 模拟输入:GPIO_Mode_AIN
用作内部AD采样脚; - 通用开漏输出:GPIO_Mode_OUT_OD
输出0为低电平,输出1为高阻态,电平由外部电路决定,可以读出引脚状态; - 通用推挽输出:GPIO_Mode_OUT_PP
输出0为低电平,输出1为内部电源电平(3.3V); - 复用开漏输出:GPIO_Mode_AF_OD
由复用外设控制输出,效果与通用开漏输出一致; - 复用推挽输出:GPIO_Mode_AF_PP
由复用外设控制输出,效果与通用推挽输出一致;
引用RTT延时函数,需要引入头文件
#include "rtthread.h"
串口
串口基本配置
串口DMA
ADC采集
ADC基本应用
链接: adc 采样时间 采样周期数 采样频率计算(以stm32为例)
链接: STM32 ADC采样频率的理解
链接: STM32的ADC采样频率及相应时间的确定
综上所述STM32F1可用于35K内的adc采集
ADC_DMA
RTT-shell指令
定义RTTCOM调试串口
static int uart_init(void)
{
/* TODO: Please modify the UART port number according to your needs */
UartHandle.Instance = USART1;
UartHandle.Init.BaudRate = 115200;
UartHandle.Init.WordLength = UART_WORDLENGTH_8B;
UartHandle.Init.StopBits = UART_STOPBITS_1;
UartHandle.Init.Parity = UART_PARITY_NONE;
UartHandle.Init.Mode = UART_MODE_TX_RX;
UartHandle.Init.HwFlowCtl = UART_HWCONTROL_NONE;
UartHandle.Init.OverSampling = UART_OVERSAMPLING_16;
if (HAL_UART_Init(&UartHandle) != HAL_OK)
{
while (1);
}
return 0;
}
J-Link RTT调试 教程
链接: J-Link RTT调试 教程
shell指令
两种shell的切换:如果打开了FINSH_USING_MSH而没有打开FINSH_USING_MSH_ONLY,finsh同时支持两种c-style模式与msh模式,但是默认进入c-style模式,执行 msh()即可切换到msh模式,在msh模式下执行 exit后即退回到c-style模式
finsh(C )中按下TAB键(或输入list()回车)可以打印则会当前系统支持所有内置符号。
#define FINSH_DEFAULT_PASSWORD “rtthread” //打开shell的密码
#define FINSH_USING_AUTH //身份验证,只有通过密码才能进入shell
链接: RT-Thread 添加 msh 命令
RTT外设驱动使用1–串口添加
链接: RTT外设驱动使用1–串口添加
STM32_pwm
我写的库函数版笔记链接: STM32 PWM配置
链接: STM32 PWM基本知识及配置过程