RT-Thread是一个国产开源的实时操作系统,支持MCU多,外设丰富。值得学习

  • 下载地址:http://www.rt-thread.org/page/31.html ,解压可以得到一下目录结构:
    |-- bsp
    |-- components
    |-- documentation
    |-- include
    |-- libcpu
    |—src
    其中bsp文件夹包括对各个MCU的支持,这里我们先拿simulator这个文件夹的模拟器来找找感觉。
  • 按照官方提供的《RT-Thread编程指南》,构建项目工程需要用到SCons,而SCons需要Python2.x的支持。下面主要简介一下windows下的配置
    • Python
      1.下载地址:https://www.python.org/getit/,一定要下2.x的那个,3.5和2.7 语法不一样,不兼容。
      2.Python按照正在的顺序安装就行,安装完成后要进行这样的步骤(尤其是64位操作系统),不然后面安装SCons会提示“No Python installation found in the registry”。
      检查注册表里面的这个项的默认值是指向你安装Python的目录(例如“C:\\Python27”):
      HKEY_LOCAL_MACHINE/SOFTWARE/Wow6432Node/Python/PythonCore/2.7/InstallPath (64位特有)
      HKEY_LOCAL_MACHINE/SOFTWARE/Python/PythonCore/2.7/InstallPath
    • SCons
      1.下载地址:http://www.scons.org/ ,点击右边的download跳转到sourceforge下载,安装的时候记得用管理员权限(尤其是win8/10的电脑)

      2.安装完成后把“C:\Python27\Scripts”和“C:\Python27”(C:\Python27替换为你的Python安装目录)添加到环境变量PATH中
      3.然后你在cmd里面运行scons出现这样的提示就说明可以了
    • 生成VS项目
      1.接下来定位到“rt-thread-2.0.1\bsp\simulator”,里面虽然有2个vc的工程文件,但是都是空的,需要用SCons生成修改的工程文件

      2.先打开rtconfig.py,把msvc那一段的EXEC_PATH改成你的VS的nmake的位置,一般是”VS安装目录/VC/BIN/NMAKE.exe”

      3.然后定位到simulator的目录,在输入“SCons --target=vs -s”,就会生成新的工程文件
  • hello world
    1.找到application.c,将原来的修改成如下代码:
    1. void entry(void *parameter)
    2. {
    3. int i = ;
    4. rt_kprintf("%dHZ\nHello World\n", RT_TICK_PER_SECOND);
    5. while (i++)
    6. {
    7. rt_thread_delay();
    8. rt_kprintf("%d\t",i);
    9. }
    10. }
    11.  
    12. int rt_application_init()
    13. {
    14. rt_thread_t tid;
    15. tid = rt_thread_create("init",
    16. rt_init_thread_entry, RT_NULL,
    17. , RT_THREAD_PRIORITY_MAX / , );
    18. if (tid != RT_NULL)
    19. rt_thread_startup(tid);
    20.  
    21. rt_thread_startup(rt_thread_create("GGG", entry, NULL, , , ));
    22.  
    23. return ;
    24. }

    2.然后运行就能出现这样的界面了:

RT-Thread入门和模拟器的配置生成的更多相关文章

  1. RT Thread 通过ENV来配置SFUD,操作SPI Flash

    本实验基于正点原子stm32f4探索者板子 请移步我的RT Thread论坛帖子. https://www.rt-thread.org/qa/forum.php?mod=viewthread& ...

  2. PHP入门及服务环境配置(Nginx+PHP)

    PHP入门及服务环境配置(Nginx+PHP) PHP入门 PHP维基百科: PHP(全称:PHP:Hypertext Preprocessor,即"PHP:超文本预处理器")是一 ...

  3. Asp.Net SignalR 使用记录 技术回炉重造-总纲 动态类型dynamic转换为特定类型T的方案 通过对象方法获取委托_C#反射获取委托_ .net core入门-跨域访问配置

    Asp.Net SignalR 使用记录   工作上遇到一个推送消息的功能的实现.本着面向百度编程的思想.网上百度了一大堆.主要的实现方式是原生的WebSocket,和SignalR,再次写一个关于A ...

  4. MVC5+EF6 入门完整教程13 -- 动态生成多级菜单

    稍微有一定复杂性的系统,多级菜单都是一个必备组件. 本篇专题讲述如何生成动态多级菜单的通用做法. 我们不用任何第三方的组件,完全自己构建灵活通用的多级菜单. 需要达成的效果:容易复用,可以根据mode ...

  5. 前端引擎初步设计稿 -通过配置生成动态页面 ,LandaSugar平台 .NET-C#-MVC

    公司准备开发出一款项目开发平台 LandaSugar,分为 前端引擎.工作引擎.数据引擎 三大块,开发人员只需要对三大模块进行相应的配置便能够完成一个定制项目的开发. 听起来貌似是异想天开,但是是否真 ...

  6. MyCat 入门:漫谈 MyCat 配置系统

    文章首发于[博客园-陈树义],点击跳转到原文<MyCat 入门:漫谈 MyCat 配置系统> 上篇文章<MyCat 启蒙:分布式系统的数据库架构演变>中,我们通过一个项目从零到 ...

  7. Redis入门 -- Redis安装与配置

    Redis入门 -- Redis安装与配置 Redis的安装 Redis的安装,我这里使用的是虚拟机. 为了让主机和虚拟机之间可以顺利通信,按照以下步骤进行: 1. 将网络连接模式改为桥接 2. re ...

  8. SpringBoot入门之内嵌Tomcat配置

    spring boot默认web程序启用tomcat内嵌容器tomcat,监听8080端口,servletPath默认为 / .需要用到的就是端口.上下文路径的修改,在spring boot中其修改方 ...

  9. Linux基础入门之网络属性配置

    Linux基础入门之网络属性配置 摘要 Linux网络属性配置,最根本的就是ip和子网掩码(netmask),子网掩码是用来让本地主机来判断通信目标是否是本地网络内主机的,从而采取不同的通信机制. L ...

随机推荐

  1. HTML5的学习--performance

    HTML5提供的performance接口精确的告诉我们当访问一个网站页面时当前网页每个处理阶段的精确时间(timestamp),以方便我们进行前端分析. 它是浏览器的直接实现,比在网页中用js设置D ...

  2. Windows Azure Cloud Service (38) 微软IaaS与PaaS比较

    <Windows Azure Platform 系列文章目录> 最近一直想总结Azure IaaS和PaaS的区别与比较,写个博文详细说明一下.建议读者在阅读之前,先熟悉微软PaaS和Ia ...

  3. Android聚合广告AFP的对接系统设计

    工作需要,要对接阿里妈妈的广告聚合平台,简称AFP.对于一般的应用而言,想要流量变现,广告是显而易见的手段,尤其是在中国,打开一个千万级别的用户,肯定有某个地方是有对接广告的,只不过明不明显而已. 阿 ...

  4. php版本历史

    php最初就是为了快速构建一个web页面而迅速被大家广为接受的.它的好处是在代码中能内嵌html的代码,从而让程序员能再一个页面中同时写html代码和php代码就能生成一个web页面. 这篇文章用时间 ...

  5. 纯Shading Language绘制飞机火焰效果

    上篇<纯Shading Language绘制HTML5时钟>体现了GLSL可编程性特点,但没有体现GLSL可编程出各种酷炫效果的特点,今天我们将用纯Shading Language绘制火焰 ...

  6. Python访问剪切板

    剪切板访问工具 ----pyperclip he purpose of Pyperclip is to provide a cross-platform Python module for copyi ...

  7. ms sql 2005和2008收缩日志的方法

    步骤1: 2005的sql 语句为:back up log 数据库名称 with no_log 目的:截断数据库日志 2008的sql 语句为:alter database 数据库名称 set rec ...

  8. PHP函数microtime()

    定义和用法    PHP函数microtime()返回当前 Unix 时间戳和微秒数.PHP函数microtime()语法    microtime(get_as_float)PHP函数microti ...

  9. 【Java每日一题】20161025

    20161024问题解析请点击今日问题下方的"[Java每日一题]20161025"查看 package Oct2016; import static java.lang.Math ...

  10. 【转】php中XML、XSLT的结合运用

    原文:http://blog.csdn.net/bjbs_270/article/details/140253   下面我要讲的是一个简单的从数据库中抽取数据,生成XML文档,使用XSLT转换成HTM ...