目录
3.2 Pinout&Configuration >> 配置GPIO
3.3 Pinout&Configuration >> 配置时钟源
3.4 Pinout&Configuration >> 配置串口
一、移植前的准备工作
1. 硬件(STM32测试板)
MCU:STM32F407VET6(RAM: 196K ,FLASH: 512K,最高168MHz工作频率)
晶振:8MHz
2. 软件
编译器环境:Keil MDK-ARM Version 5.33
STM32cube 初始化代码生成器:STM32CubeMX Version 6.20
3. 裸机工程
使用 STM32cubeMX 生成裸机代码
3.1选择芯片STM32F407VET6

3.2 Pinout&Configuration >> 配置GPIO
板载三个指示灯,原理图如下图所示。

接着配置控制指示灯的引脚,配置为推挽输出,输出电平为高电平,保证初始化后指示灯是灭的。

在user Label(用户标签)中填写内容是用来表示该引脚的,代替实际引脚,提高代码的移植性。STM32cubeMX生成程序时会在 main.h 中添加宏定义,如下所示。
/* Define to prevent recursive inclusion -------------------------------------*/
#ifndef __MAIN_H
#define __MAIN_H
......
/* Private defines -----------------------------------------------------------*/
#define BLUETOOTH_EN_Pin GPIO_PIN_2
#define BLUETOOTH_EN_GPIO_Port GPIOE
#define BLUETOOTH_RST_Pin GPIO_PIN_3
#define BLUETOOTH_RST_GPIO_Port GPIOE
#define LED_Run_Pin GPIO_PIN_4
#define LED_Run_GPIO_Port GPIOE
#define LED_Status_Pin GPIO_PIN_5
#define LED_Status_GPIO_Port GPIOE
#define LED_Error_Pin GPIO_PIN_6
#define LED_Error_GPIO_Port GPIOE
3.3 Pinout&Configuration >> 配置时钟源

3.4 Pinout&Configuration >> 配置串口

3.5 时钟配置
芯片的最高时钟频率可达到168MHz

3.6 生成工程配置

3.7 生成代码配置

3.8 生成代码

3.9 裸机代码结构

二、移植TencentOS-tiny
1. TencentOS-tiny 架构
TencentOS tiny 由一个轻量级 RTOS 内核 + 多个物联网组件构成,其主体架构图(引用 腾讯物联网终端操作系统)如下图所示:

2. 获取TencentOS-tiny源码
可直接前往Github:https://github.com/Tencent/TencentOS-tiny 直接进行下载。

3683

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



