stm32CubeMx+TrueSTUDIO+uc/os-III移植开发(一)
自从接触到stm32cubemx后,发现使用起来很方便,用来做项目开发的话,由于是图形化操作界面,工作效率比较快。如果要学习操作系统,以前的IDE如keil,IAR等IDE对操作系统的代码调试起来不够方便,于是乎又发现了TrueSTUDIO这款ST公司免费的IDE,是基于eclipse开发的软件,颜值也很高,如下图所示,这是在线调试的图片。TrueSTUDIO具有和sourceinsight的查看代码功能,ctrl+鼠标左键就可以goto代码,像下图的右下角的窗口可以查看芯片的内存使用情况、cpu使用率、uc/os的任务数、任务创建顺序、任务状态等,功能很强大。所以我在基于stm32CubeMx+TrueSTUDIO的开发环境上进行uc/os-III的移植。
(一)首先去官网下载uc/osIII的源代码,不过因为官网是外网,要翻墙才可以,这里提供百度网盘的源码下载 https://pan.baidu.com/s/18MKaiN7yiYuy-BeQekJaoA 提取码:q8el。
(二)打开stm32cubemx生成F4的底层代码。
具体操作如下:
(1)选择芯片,本人用的是F407,用F103的就选择相应的型号:
(2)配置调试方式,如果用ST-link或者J-link就选择Serial Wire:
(3)选择外部晶振,如图:
(4)设置频率,在Input frequency 里输入芯片的外部晶振型号,我用的是8M的晶振,然后在HCLK(MHz)的框框里输入芯片的工作频率按回车就可以自动设置好了:
(5)设置工程选项,选择保存的路径,生成代码的IDE,这里生成的是TrueSTUDIO的,如图
勾选Generated files的第一个选项,可以让生成的代码外设独自放一个文件夹,例如GPIO和串口的初始化文件会生成两个独立文件夹。
(6)最后点击GENERATE CODE生成代码
到此为止,芯片的底层代码和uc/osIII的源文件就准备好了。
stm32CubeMx+TrueSTUDIO+uc/os-III移植开发(一)的更多相关文章
- uc/os iii移植到STM32F4---IAR开发环境
也许是先入为主的原因,时钟用不惯Keil环境,大多数的教程都是拿keil写的,尝试将官方的uc/os iii 移植到IAR环境. 1.首先尝试从官网上下载的官方移植的代码,编译通过,但是执行会报堆栈溢 ...
- uC/OS - III 移植 IAR平台
关于移植uC/OS-III 网上已经有很多教程了此处只是做个记录 首先下载源码然后解压得到下面的文件: 然后在模版工程里新建各种文件夹: 最后全部都添加进工程: OK了,编译一下,惊呆了,竟然 0错误 ...
- stm32CubeMx+TrueSTUDIO+uc/os-III移植开发(二)
(三)复制相关文件 (1)继上次的代码生成后会显示如下的图 点击第一个,打开文件夹如下 (2)新建文件夹UCOSIII 在UCOSIII文件夹下,新建如下的文件夹 (3)将uc/os源文件中 Micr ...
- 在STM32F401上移植uC/OS的一个小问题 [原创]
STM32F401xx是意法半导体新推出的Cortex-M4内核的MCU,相较于已经非常流行的STM32F407xx和STM32F427xx等相同内核的MCU而言,其特点是功耗仅为128uA/MHz, ...
- 关于uC/OS的简单学习(转)
1.微内核 与Linux的首要区别是,它是一个微内核,内核所实现的功能非常简单,主要包括: 一些通用函数,如TaskCreate(),OSMutexPend(),OSQPost()等. 中断处理函数, ...
- uC/OS II原理分析及源码阅读(一)
uC/OS II(Micro Control Operation System Two)是一个可以基于ROM运行的.可裁减的.抢占式.实时多任务内核,具有高度可移植性,特别适合于微处理器和控制器,是和 ...
- UC/OS操作系统 (转)
1.和其他一些著名的嵌入式操作系统不同,uC/OS-II在单片机系统中的启动过程比较简单,不像有些操作系统那样,需要把内核编译成一个映像文件写入ROM中,上电复位后,再从ROM中把文件加载到RAM中去 ...
- 基于μC/OS—III的CC1120驱动程序设计
基于μC/OS—III的CC1120驱动程序设计 时间:2014-01-21 来源:电子设计工程 作者:张绍游,张贻雄,石江宏 关键字:CC1120 嵌入式操作系统 STM32F103ZE ...
- 【小梅哥SOPC学习笔记】NIOS II处理器运行UC/OS II
SOPC开发流程之NIOS II 处理器运行 UC/OS II 这里以在芯航线FPGA学习套件的核心板上搭建 NIOS II 软核并运行 UCOS II操作系统为例介绍SOPC的开发流程. 第一步:建 ...
随机推荐
- openpyxl(python操作Excel)
一.安装 >>> pip install openpyxl import openpyxl 二.常用操作 1.创建与保存一个工作簿 wb = openpyxl.Workbook() ...
- python 临时文件
1. TemporaryFile 临时文件 TemporaryFile 不在硬盘上的生成真正文件,而是写在内存中 from tempfile import TemporaryFile # , Name ...
- mysql in与exists区别
1.exists是对外表做loop循环,每次loop循环再对内表(子查询)进行查询,那么因为对内表的查询使用的索引(内表效率高,故可用大表),而外表有多大都需要遍历,不可避免(尽量用小表),故内表大的 ...
- YA157C交叉编译环境搭建
目录 1.开发板简介 3.主机搭建交叉编译环境 4.编译第一个ARM Linux程序--Hello World 5.在开发板上运行Hello World程序 6.ssh登录开发板 7.注意 8.she ...
- 当微信小程序遇上filter~
在微信小程序的开发过程中,当你想要实现不同页面间的数据绑定,却为此抓耳饶腮时,不妨让微信小程序与filter 来一场完美的邂逅,相信会给你带来别样的惊喜~ 前段时间被安利了一个很实用的公众号-前端早读 ...
- 【布局】圣杯布局&双飞翼布局
背景 随着前端技术的发展推进,web端的布局方式已基本成熟,那么在网站布局方式中,三列布局最为常用,布局方式也有很多,渐渐的开发者们开始从效率的角度优化自己的代码"如果三排布局能将中间的模块 ...
- jinja2的url_for 和数据块
1.静态文件引入:{{ url_for('static', filename='文件路径') }} 2.定义路由:{{ url_for('模块名.视图名',变量=参数) }} 3.定义数据块: ...
- 关于integer overflow错误
前端突然报了integer overflow错误,int类型溢出也就是数字超过了int类型,一看很懵逼,查看后台日期发现是在Math.toIntExact()方法报错 那么我们看下方法内部代码: /* ...
- 安装mysql.so
1.---- cd /usr/local/src/php-5.5.34/ext/mysql/2.---- /usr/local/php5/bin/phpize3.---- ./configure ...
- scrapycrawl 爬取笔趣阁小说
前言 第一次发到博客上..不太会排版见谅 最近在看一些爬虫教学的视频,有感而发,大学的时候看盗版小说网站觉得很能赚钱,心想自己也要搞个,正好想爬点小说能不能试试做个网站(网站搭建啥的都不会...) 站 ...