先到官方下载ucos源码,比较接近的是http://micrium.com/download/micrium_stm32f103-sk_ucos-ii/,本文就采用该文件

开发工具版本为MDK511
1.新建ucos工程,选择STM32F103VE,选择CMSIS下的CORE和Device下的Startup,以及Device下的StdPeriph Drivers下的Framework,RCC,和GPIO
2.工程中和实际目录中都新建几个目录,APP,UCOS,BSP,LIB,CPU,Output
3.工程上右键,Options,Output页签,Select Foldeer for Objects,进入Output目录,点击OK
4.把Micrium\Software\uCOS-II\Source目录中的文件拷贝到UCOS目录下,并添加到工程中
5.工程Options中,C/C++页签,Include Paths,点击后面省略号可选择include目录,添加UCOS路径
6.复制Micrium\Software\EvalBoards\ST\STM3210B-EVAL\RVMDK\OS-Probe目录下的文件app_cfg.h,os_cfg.h和includes.h到APP目录中,并在Include Paths中添加APP
7.复制Micrium\Software\uCOS-II\Ports\arm-cortex-m3\Generic\RealView目录下的所有文件到CPU目录,添加到工程和Include Path中
8.工程Options中,C/C++页签,Defines中添加 USE_STDPERIPH_DRIVER
9.把RTE和RTE\Device\STM32F103VE添加进Include Paths中
10.修改os_cfg.h文件,#define OS_APP_HOOKS_EN           1为0
11.BSP目录下新建BSP.c文件,添加内容如下:

#include <BSP.h>CPU_INT32U  BSP_CPU_ClkFreq (void)
{RCC_ClocksTypeDef  rcc_clocks;RCC_GetClocksFreq(&rcc_clocks);return ((CPU_INT32U)rcc_clocks.HCLK_Frequency);
}INT32U  OS_CPU_SysTickClkFreq (void)
{INT32U  freq;freq = BSP_CPU_ClkFreq();return (freq);
}

12.复制Micrium\Software\EvalBoards\ST\STM3210B-EVAL\RVMDK\BSP目录下的bsp.h到 BSP目录中
13.复制Micrium\Software\uC-CPU\ARM-Cortex-M3\RealView目录和Micrium\Software\uC-CPU目录下的所有文件到CPU目录下,并添加到工程和Include Path中
14.复制Micrium\Software\uC-LIB目录下的所有.h文件到LIB目录下,并添加到Include Path中
15.注释掉bsp.h中的#include    <stm32f10x_lib.h>和#include    <lcd.h>
16.app_cfg.h文件中,修改为#define  APP_OS_PROBE_EN                         0
17.APP目录下新建app.c文件,内容为

#include <includes.h>int main(){OSInit();OSStart();return 0;
}

18.注释掉includes.h文件中的#include    <stm32f10x_lib.h>和#include    <lcd.h>

至此,第一步准备工作完成,虽然未实现任何功能,至少编译不再报错了

1.一步一步移植ucos到stm32f103开发版(修订版)相关推荐

  1. 机智云代码移植_一步一步移植麒麟座例程到机智云GoKit V2.1

    本帖最后由 hiyle 于 2016-12-14 15:53 编辑 由于麒麟座开发版申请很慢,而很多朋友之前都有机智云的GoKit的开发版,我们可以利用起来学习OneNET的接入. 例程:麒麟座One ...

  2. 【ARM】一步一步移植Linux Kernel 2.6.13到板子

    1环境搭建所需材料 2环境搭建所需材料之间的关系 3所使用的开发板 4译内核 1修改makefile 2拷贝配置文件 3编译得到zImage 4把zImage转成uImage 5开发板串口连接 6ub ...

  3. 用C语言写ucos中断服务程序,在ARM处理器上移植uCOS II的中断处理

    uCOS II是一个源码公开.可移植.可固化.可剪裁和抢占式的实时多任务操作系统,其大部分源码是用ANSI C编写,与处理器硬件相关的部分使用汇编语言编写.总量约200行的汇编语言部分被压缩到最低限度 ...

  4. 一步一步教你如何将 yolov3/yolov4 转为 caffe 模型

    实际工作中,目标检测 yolov3 或者 yolov4 模型移植到 AI 芯片中,经常需要将其先转换为 caffe1.x 模型,大家可能或多或少也有这方面的需求.例如华为海思 NNIE 只支持caff ...

  5. 【Linux】一步一步学Linux——初识Linux命令解析器(10)

    00. 目录 文章目录 00. 目录 01. Shell简介 02. Shell分类 03. 交互式shell和非交互式shell 04. 登录shell和非登录shell 05. Shell类型 0 ...

  6. unity跑酷怎么添加金币_【Unity3D实战】零基础一步一步教你制作跑酷类游戏(填坑完整版)...

    在两个月前曾写了一篇<[Unity3D实战]零基础一步一步教你制作跑酷类游戏(1)>,里面一步一步演示了制作跑酷类游戏,然而由于时间原因,只写到了让角色往前移动为止.这个坑一直没有时间去填 ...

  7. pve 加大local容量_一步一步实现Proxmox (pve)环境的家庭服务器(WIN,DSM,软路由)...

    本帖最后由 wolfgangsk07 于 2019-4-12 17:04 编辑 一步一步实现Proxmox (pve)环境的家庭服务器(WIN,DSM,软路由) 导语:ESXI由于其操作的简便,得到了 ...

  8. 【Linux】一步一步学Linux——Linux发展史(01)

    00. 目录 文章目录 00. 目录 01. Linux概述 02. Linux简史 03. Linux主要特性 04. Linux之父 05. Linux相关术语 06. Linux其它 07. L ...

  9. 【Unity3D实战】零基础一步一步教你制作跑酷类游戏

    原转载自 https://blog.csdn.net/sun15980/article/details/51093048 ,已失效 新 [Unity3D开发小游戏]Unity3D零基础一步一步教你制作 ...

最新文章

  1. java聊天程序步骤解析_java网络之基于UDP的聊天程序示例解析
  2. 基因结构图绘制-单个基因
  3. SAP QM-IDI 初探
  4. 面试官问我:spring、springboot、springcloud的区别,我笑了
  5. html定义好的css样式不能被渲染
  6. 开源个小工具simple-repo
  7. 计算机初赛基础知识,备战初赛计算机基础知识
  8. 大数据-HDFS 配置与使用
  9. ucenter php7.0版,UCenter1.5.0/UCenter Home1.5/Discuz! 7.0
  10. Java服务器上显示图片问题_java,_服务器读取图片到jsp显示问题,java - phpStudy
  11. ztree隐藏指定节点后面的(重命名和删除)图标
  12. 字符串交错组成--很优美的递归算法
  13. int main(int argc,char *argv[])该函数中int argc和argv[]两个参数的理解你懂多少?
  14. NumberFormat和DecimalFormat
  15. linux同花顺乱码,打开同花顺软件全是问号
  16. HttpWatch软件介绍与基本使用
  17. ElasticSearch汇总
  18. Windows 中如何远程访问内网计算机
  19. python八进制表示_八进制python
  20. 音乐手记之民谣二:Chamber

热门文章

  1. Ubuntu 查看隐藏的文件
  2. android selector的用法解析
  3. 【luogu3398】 仓鼠找sugar [LCA 倍增]
  4. 如何编写可测试的golang代码
  5. Vue-Resource请求PHP数据失败的原因
  6. java.sql.Exception:setString 只能处理少于 32766 个字符的字符串
  7. C语言对mysql数据库的操作
  8. jquery图片播放切换插件
  9. MySql按日期进行统计(前一天、本周、某一天)[转载]
  10. Android模拟器学framework和driver之传感器篇1(linux sensor driver)