Toggle navigation
首页
问答
文章
积分商城
专家
专区
更多专区...
文档中心
返回主站
搜索
提问
会员
中心
登录
注册
RTOS
内核
环境搭建
操作系统内核技术研究:环境搭建
发布于 2021-07-22 22:58:27 浏览:1171
订阅该版
[tocm] [入门学习笔记 - 目录](https://club.rt-thread.org/ask/article/3420.html) [操作系统内核技术研究:开篇](https://club.rt-thread.org/ask/article/2905.html) [操作系统内核技术研究:环境搭建](https://club.rt-thread.org/ask/article/2906.html) [操作系统内核技术研究:ARM汇编指令](https://club.rt-thread.org/ask/article/2913.html) [操作系统内核技术研究:STMFD与LDMFD的使用](https://club.rt-thread.org/ask/article/2914.html) [操作系统内核技术研究:任务上下文切换](https://club.rt-thread.org/ask/article/2918.html) [操作系统内核技术研究:线程切换与运行](https://club.rt-thread.org/ask/article/2919.html) ## 开发软环境 - Win10 64位 - Keil MDK5 - VS Code(可选),用于代码的阅读、编辑、全局查找等。 - STM32F103VE开发板,包含原理图、STM32数据手册、参考手册等。 - STM32CubeMX,利用可视化的IDE,快速搭建开发工程 ## 工具准备 - PC电脑或笔记本电脑 - USB-Hub或USB线,用于供电 - J-Link 或ST-Link,用于下载调试 - 万用表(可选) - 逻辑分析仪(可选) - USB转串口 - 直流稳压电源(可选) - 电烙铁、热风枪(可选) - 杂件:一些调试线,如电源线、杜邦线,排针等(可选) ## 裸机工程代建 - 使用STM32CubeMX,生成STM32F103VE的初步代码,如实现LED闪烁。 - 基于这个裸机工程,一步步学习、构建一个RTOS。 ### 步骤如下: - 【配置外部晶振HSE】 ![2021-06-25_075816.png](https://oss-club.rt-thread.org/uploads/20210722/cd13976a04790f6239abe73e17e35b69.png.webp) - 【配置下载SWD口】,默认配置会禁用SWD,可能会造成SWD第二次无法正常烧写 ![2021-06-25_080017.png](https://oss-club.rt-thread.org/uploads/20210722/fb3a0635e7b6e431ec5e95166dd272a2.png.webp) - 【时钟配置,8MHz外部晶振,系统主频:72MHz】 ![2021-06-25_080136.png](https://oss-club.rt-thread.org/uploads/20210722/161338614ff0fd20ae84706adbe0296e.png.webp) - 【设置好项目名称、保存路径】 ![2021-06-25_080346.png](https://oss-club.rt-thread.org/uploads/20210722/7892456dfa4ec98b8d7c0bb65b9b1548.png.webp) - 【配置LED GPIO 引脚】 ![2021-06-25_080817.png](https://oss-club.rt-thread.org/uploads/20210722/b0810647252b169398da2d254026e19b.png.webp) - 【生成Keil MDK5的工程,默认是IAR的】 ![2021-06-25_080642.png](https://oss-club.rt-thread.org/uploads/20210722/55c62872ba4a66f52d29629e0f41eba7.png.webp) - 【生成工程后,使用Keil MDK5打开】 - 首次可能需要下载STM32F1系列的PACK包。 - 配置下main.c,实现LED的闪烁: ![2021-06-26_123759.png](https://oss-club.rt-thread.org/uploads/20210722/f8f66ed0eeb9a20fe47828ff7256e92a.png.webp) ```c /** * @brief The application entry point. * @retval int */ int main(void) { HAL_Init(); SystemClock_Config(); MX_GPIO_Init(); while (1) { HAL_GPIO_WritePin(GPIOE, GPIO_PIN_4, GPIO_PIN_RESET); HAL_Delay(2000); HAL_GPIO_WritePin(GPIOE, GPIO_PIN_4, GPIO_PIN_SET); HAL_Delay(1000); } } ``` - 以上搭建了基于STM32F103VE的最小裸机工程。 ![2021-06-26_124628.png](https://oss-club.rt-thread.org/uploads/20210722/55cfff1dbe7053288b8ba33774d178c4.png.webp) ## 小结 - 开发环境初步搭建完成,开始RTOS探索与学习之旅 - 学习之路,充满寂寞,需要耐心、坚持。
1
条评论
默认排序
按发布时间排序
登录
注册新账号
关于作者
张世争
学以致用
文章
130
回答
740
被采纳
161
关注TA
发私信
相关文章
1
rt-thread的学习疑惑
2
基于stm32的RTT在RTT Studio IDE环境中的启动顺序求解
3
关于 rt_object_detach 脱离内核对象函数的作用求解
4
RT-Thread内核什么时候考虑加入MPU功能?
5
rt_hw_board_init中开中断后,触发SysTick_Handler
6
Cortex-M0在bootloader环境下的上下文切换问题?
7
关于ART-PI的bootloader是怎么烧写进去的
8
为什么内核代码和bootloader的代码一样的
9
线程对象结构体为什么不直接选择继承内核对象?
10
使用rt_memset给线程栈初始化,为什么选择字符‘#’,而不是‘\0’?
推荐文章
1
RT-Thread应用项目汇总
2
玩转RT-Thread系列教程
3
机器人操作系统 (ROS2) 和 RT-Thread 通信
4
国产MCU移植系列教程汇总,欢迎查看!
5
五分钟玩转RT-Thread新社区
6
【技术三千问】之《玩转ART-Pi》,看这篇就够了!干货汇总
7
关于STM32H7开发板上使用SDIO接口驱动SD卡挂载文件系统的问题总结
8
STM32的“GPU”——DMA2D实例详解
9
RT-Thread隐藏的宝藏之completion
10
【ART-PI】RT-Thread 开启RTC 与 Alarm组件
热门标签
RT-Thread Studio
串口
LWIP
SPI
Env
Bootloader
AT
ART-Pi
Hardfault
CAN总线
FinSH
USB
文件系统
DMA
RT-Thread
SCons
线程
RT-Thread Nano
MQTT
STM32
RTC
FAL
rt-smart
ESP8266
ota在线升级
WIZnet_W5500
I2C_IIC
UART
flash
cubemx
packages_软件包
freemodbus
PWM
潘多拉开发板_Pandora
定时器
ADC
BSP
中断
编译报错
socket
keil_MDK
MicroPython
GD32
msh
Debug
ulog
SDIO总线
SFUD
rt_mq_消息队列_msg_queue
flashDB
本月问答贡献
用户名由3_15位
17
个答案
3
次被采纳
xiaorui
7
个答案
3
次被采纳
sakumisu
4
个答案
3
次被采纳
三世执戟
31
个答案
1
次被采纳
梦笑真美
20
个答案
1
次被采纳
本月文章贡献
比特饼干
2
篇文章
6
次点赞
Z_Y
2
篇文章
5
次点赞
Alipay
2
篇文章
3
次点赞
xusiwei1236
2
篇文章
3
次点赞
yinxiangxv
2
篇文章
3
次点赞
回到
顶部
发布
问题
投诉
建议
回到
底部