RT-Thread

谈一谈国产芯片与国产操作系统

最后都变了- 提交于 2020-11-30 05:43:18
华为事件和早一些的中兴事件,以及让我们看到了芯片国产化的重要性,其实在嵌入式的很多的领域中,我们都能看到国产芯片的影子。不得不承认,在芯片行业,我们还是发展的比较晚,但是这绝对不是阻碍前进的障碍。也不可能说一直用别人的东西,很多时候,自主可控的方式才是可持续发展的模式。 我觉得龙芯一直在芯片研发领域稳步前进,并且做龙芯指令系统,兼容MIPS指令。在实现芯片国产化的道路上,不断的突破,不断的做一些尝试。虽然与英特尔和ARM相比,还是存在差距,这些差距主要上在芯片性能,生态环境上。目前芯片国产化其实都在一定程度上存在这些问题,比如目前很火的risc-v,很多都在探究着芯片国产化的方式。这些都是比较好的信号,自主研发,安全可控。不用看别人的脸色,我觉得这就是蛮好的。 RT-Thread作为一个开源的国产物联网操作系统,也是在积极的推进着国内开源事业的发展,目前RT-Thread的生态还是比较活跃,用过rt-thread的人可能都会被其生态所吸引,一大批的社区开源活跃的大佬在分享自己的东西,借助rt-thread的这个操作系统的平台,可以将自己的熟悉的东西做成组件,让需要的人可以用到,而且也可以吸引志同道合的朋友,一起将这个事情做到极致。 rt-thread在国产芯片的支持上也做着很多的工作,也支持了很多的体系架构的芯片,比如一些常用的,arm cortex-m,cortex-a系列

关注IoT:NB-IoT核心标准冻结

陌路散爱 提交于 2020-11-25 03:03:03
2016年6月16日,这是蜂窝物联网产业最为重要的一天,这一天在韩国釜山召开的3GPP RAN全会第72次会议顺利结束。NB-IoT(Narrow Band Internet of Things,窄带蜂窝物联网)作为3GPP R13一项重要课题,其对应的3GPP协议相关内容获得了RAN全会批准,正式宣告了这项受无线产业广泛支持的NB-IoT标准核心协议历经2年多的研究终于经全部完成。全球运营商终于有了基于标准化的物联网专有协议,基于该协议标准的产品和解决方案将能很好的服务于广大行业的物联网市场。标准化工作的成功完成也标志着NB-IoT即将进入规模商用阶段。 NB-IoT 标准起源 物联网可以应用在生产和生活的方方面面,其业务对网络传输速率的需求也有差别。高速率业务主要使用3G、4G技术,如监控摄像头等;中等速率业务主要使用GPRS技术,如POS机等。低速率业务目前还没有很好的蜂窝技术来满足,很多情况下只能使用GPRS技术勉力支撑。随着物联网的发展,低速率业务渐渐成为蜂窝物联网未来主要的市场发展方向,业界将这一市场归纳为LPWAN(Low Power Wide Area Network)市场,即低功耗广域网。由于GPRS技术存在终端功耗高、覆盖能力不足等问题,无法应对LPWAN市场需求。因此运营商希望有一个新的蜂窝物联网技术来满足LPWAN市场需求。

RT-Thread学习笔记系列之LCD驱动及emwin示例(2)

♀尐吖头ヾ 提交于 2020-11-24 12:49:32
文章目录 前言 一、资源介绍 二、配置过程 1.添加emwin软件包 2.配置外部引脚 总结 前言 随着物联网、智能家居、智能控制等行业的极速发展,小而美的且反应迅速且成本低的,模块化,定制化的嵌入式系统的需求越来越大,其中降低使用要求,提高用户体验,人机交互是一个非常好的方法,所以本文记录的是调试rtthread+lcd+emwin GUI的记录及流程 一、资源介绍 硬件是自行画的PCB板,资源如下 MCU:STM32F407ZGT6 LCD:3.2寸320*240分辨率,驱动芯片:ILI9341。 引脚除了RESET和背光控制引脚,其他引脚连接均和正点原子的STM32F407探索者开发板兼容 使用FSMC接口驱动 软件是使用rtthread studio1.1.5版本 二、配置过程 1.添加emwin软件包 使能示例保存之后工程的packges下就会有该软件包,其中该软件包是有LCD和OLED驱动的demo的,看了一下和正点原子的驱动是差不多的,可以直接拿来使用的,工程内是没有这个demo文件夹的,所以选中该软件包右击 打开资源所在目录 软件包里面有demo文件夹,我使用的是lcd驱动,所以把drv_lcd.h和drv_lcd.h两个文件拷贝到驱动 drivers 文件夹中如下 2.配置外部引脚 配置片外FSMC接口,本人的配置如下 static void HAL_FSMC

【DIY数字仪表】STM32F429移植TouchGFX到RT-Thread系统(1)

自古美人都是妖i 提交于 2020-11-23 09:06:22
点击“蓝字”关注我们吧 实验平台: 硬件: 野火挑战者STM32F429 V1开发版,5寸屏 软件: 最新版本的STM32CubeF4固件库,TouchGFXDesigner v4.13和 STM32CubeMX v5.6.1,开发环境MDK v5.29 实验前准备工作: 1.准备一套STM32F429开发版,和下载工具 2.下载 TouchGFXDesigner v4.13 压缩包下载完后,解压如下: Projects目录下有STM32H7B3I-DK的工程,可以用来参考。touchGFX Designer的PC端安装包在Utilities目录下,找到后并安装。 3.下载 STM32CubeMX v5.6.1 安装完STM32CubeMX v5.6.1版本后,还需要安装X_CUBE_TOUCHGFX软件包,安装路径如下: 4.下载 MDK v5.27以上版本 效果演示: 代码下载: 代码持续更新中:github代码下载地址https://gitee.com/Aladdin-Wang/hellotouchGFX.git 觉得有用的话,欢迎给个小星星 移植RT-Thread的BSP模板: 1.学习RT-Thread系统(学过的可以跳过此步骤) 通读RT-Thread系统官方学习文档,https://www.rt-thread.org/document/site/ 快速了解RT

RT_THREAD之nano学习

狂风中的少年 提交于 2020-11-16 03:04:31
nona版本为精简版本,只保留FISH(选配)最小内核,可以适配STM的STD.HAL/LL库,需要手动进行移植;现在可以在KEIL MDK/CUBEMX中进行集成,也可以 RT-Thread Nano 离线安装包下载 手动下载源码(安装在 )自己搭建。keil mdk在实时运行环境中打开,通过RT_CONFIG.H进行配置。 中断处理:原3个中断需要注释掉避免重复定义HardFault_Handler() 、 PendSV_Handler()、SysTick_Handler() 系统时钟配置:需要一个硬件定时器来实现OSTICK处理 内存堆栈初始化: RT_USING_HEAP使能后就可以进行 rt_malloc、rt_free 以及各种系统动态创建对象的 API。默认是通过数组实现,也可以也推荐通过分散加载文件将堆空闲的起始分别设定为RAM_ZI的结束及RAM的结束。 串口控制台实现的RT_Kprintf()只进行了\n判断,所有要实现回车换行需要添加\r处理,否则不会回到行首实现回车换行; FISH组件是在串口控制台(只实现了输出打印)基础上又实现串口的输入操作,从而可以自动初始化和调试,其实FISH接口还可以由USB、网口等其他实现。FISH是RT_THREAD的shell(包裹在操作系统外的门卫,上报输入和传达结果),有MSH(传统命令行模式,占用资源少,缺省选型

参与开源项目,结识技术大牛!CSDN“开源加速器计划”招募志愿者啦!

拟墨画扇 提交于 2020-11-11 14:46:18
什么是“CSDN开源加速器计划”? 纵观近 30 年的科技创新,开源已成为全球技术应用和行业数字化发展的基石,尤其最近几年,开源的商业化得到了极大突破,开源正在成为全球科技的强劲驱动力。 在开源生态中,开发者是最重要的核心生产力,中国开发者的数量已经成为世界第一,同时,随着以 AI 为代表的国产开源工具崛起,中国也正逐渐成为全球开源软件的主要使用者和核心贡献者,中国开源正在迎来黄金时代。 在这样的大环境下,2020 年 9 月 10 日,中国专业 IT 开发者社区 CSDN,隆重推出全新升级的以“秉承 CSDN 成就一亿技术人的使命,致力于服务全球中文开发者,参与开源、贡献开源、创造开源!”为使命的开源平台— CODE CHINA 而 “开源加速器计划”就是在此背景下,由CSDN发起的,通过利用CSDN平台的整合资源,帮助更多开源项目、开源社区、图书作者、课程讲师等个人/组织,更轻松运营开源社区的全新战略计划。 目前,“开源加速器计划”已经启动,并吸引到了一批知名开源项目、开源社区及一些技术社区运营者入驻,如: Google tensorflow、鸿蒙技术社区、 RT-Thread物联网操作系统、蚂蚁技术、 Uni-app技术社区、 Greenplum技术社区... 另外,百度、腾讯、滴滴等多家知名的开源技术社区也即将入驻。 为了更好地协助这些开源技术社区做优质内容的沉淀

RT-Thread Studio 输出PWM详细教程

为君一笑 提交于 2020-11-11 10:23:48
/** if you want to use pwm you can use the following instructions. * * STEP 1, open pwm driver framework support in the RT-Thread Settings file * * STEP 2, define macro related to the pwm * such as #define BSP_USING_PWM1 * * STEP 3, copy your pwm timer init function from stm32xxxx_hal_msp.c generated by stm32cubemx to the end if board.c file * such as void HAL_TIM_Base_MspInit(TIM_HandleTypeDef* htim_base) and * void HAL_TIM_MspPostInit(TIM_HandleTypeDef* htim) * * STEP 4, modify your stm32xxxx_hal_config.h file to support pwm peripherals. define macro related to the peripherals * such as

基于RT-Thread的智慧路灯案例实验分享

百般思念 提交于 2020-11-09 06:16:31
点击上方「 嵌入式大杂烩 」,选择「置顶公众号」第一时间查看嵌入式笔记! 进入文章正题之前先说一个事:昨天分享的那本Linux书籍是去 嵌入式Linux 公众号回复呀,不是在本公众号回复哈。 前言 之前分享了基于LiteOS的智慧农业案例实验分享 《基于LiteOS的智慧农业案例实验分享》 ,阅读量挺不错,看样子大家都挺喜欢这种实验。那咱们就再来一个类似的实验: 基于RT-Thread的智慧路灯案例实验 。 实验框图 实验说明:设备终端不断采集光强数据并上传至云端进行监控,同时也会把当前LED(路灯)的状态上传。LED的状态会根据光照值进行打开、关闭。 比如当光照值低于(夜晚)我们设置的光照阈值时就会打开LED,当光照高于(白天)光照阈值时就会熄灭LED灯。除此之外,云端可以远程控制LED的亮灭,达到一个远程控制的作用。 创建RTT工程 硬件:小熊派开发板。 软件:基于RT-Thread操作系统的应用开发。 开发工具:RT-Thread Studio V1.1.0。 本实验我们需要用到RT-Thread的BH1750软件包、OneNet软件包及at_device软件包等。这些软件包的使用已经在前两篇笔记中有写到: 【RT-Thread笔记】BH1750软件包的使用 【RT-Thread笔记】OneNet软件包的使用 本次实验也只是把它们融合在一起来使用。 1、添加相关软件包、配置:

【快问快答】RT-Thread Smart之混合微内核是什么?

混江龙づ霸主 提交于 2020-10-29 05:22:05
RT-Thread之前写过好几篇文章介绍微内核,然而不少开发者依然不清楚到底微内核操作系统是什么。为此,我们特别整理了5期快问快答,来为大家答疑解惑! RT-Thread Smart称作是混合微内核操作系统,为什么叫混合微内核操作系统呢? RT-Thread Smart和当前的版本及Linux有什么区别? 有什么特色呢,用于什么场景? 资源占用情况如何呢? 效率又是怎么样呢? 且待我们一一解答,今天先来解释RT-Thread Smart混合微内核操作系统是什么。 <插播一句:9月1日RT-Thread将在北京举行发布会发布RT-Thread Smart混合微内核操作系统,欢迎报名来现场交流了解更多信息,观看微内核应用Demo>> 首先来看看这几个概念 PART ONE 什么是宏内核操作系统? 操作系统的特性组件均以内核态运行,而用户程序在用户态运行。比如 Linux 是一种典型的宏内核操作系统,不仅仅内核组件、驱动程序、网络协议栈、文件系统等等均在内核态运行。宏内核操作系统要求在内核态运行的程序代码具备极高的健壮性,否则任何一部分的错误或异常非常容易扩散到整个操作系统,引发系统崩溃等严重问题。 PART TWO 什么是微内核操作系统? 操作系统的内核模块运行在内核态,网络协议栈、文件系统等和用户程序一样运行在用户态。这种操作系统的内核可以做的很小,功能单一简练

基于事件型表驱动法菜单框架之小熊派简易气体探测器实战项目开发(中)

匆匆过客 提交于 2020-10-28 13:58:28
上次我们分享了事件驱动型的菜单框架,也实现了一个基本的小项目,如下: 基于事件型表驱动法菜单框架之小熊派简易气体探测器实战项目开发(上) 但是怎么看怎么都觉得界面不爽,单纯显示文字的方式实在是太单调了,如果想要显示颜色丰富的图片,MCU资源受限又很难直接在程序中直接定义图片大数组。 于是,我选择在SD卡中放图片,通过Fatfs去读取SD卡中的图片来进行显示,图片都是我自己在阿里图库上找的开源素材,然后用PS自己P的: 废话不多说,来看看实际效果吧!演示视频如下: 这样看起来效果就舒服一点啦。 1、新增功能项 本节分享的内容相较于上篇文章修改/增加了如下功能: 底层配置 修改LCD寄存器,提升LCD刷屏速度 增加Fatfs、SD卡读写功能 应用逻辑 增加模拟长按开机识别 增加开机LOGO以及其它UI的显示 增加菜单(阈值设置、设置、调试模式、仪器信息) 1.1、关于底层配置 1.1.1、提升屏刷新速度 由于要刷图,所以只能想办法尽量提升屏的刷新速度,于是在LCD手册里有这么一个寄存器,可以提升屏的刷新速度: 在LCD驱动初始化代码里,这个寄存器默认配置的是60Hz,也就是0x0F这个值 /* Frame Rate Control in Normal Mode */ LCD_Write_Cmd(0xC6); // LCD_Write_Data(0x0F); //60HZ LCD