近期要学习一款RTOS,让裸机不再孤单。 此次系统学习RTOS是国产RTthread(rtthread官网 )。官网中其实有很全面的介绍,还有相关入门视频讲解。RT-Thread 简介作为一名 RTOS 初学者,也许你对 RT-Thread 还比较陌生。然而,随着你深入接触,你会逐渐发现 RT-Thread 魅力和它相较于其他同类型 RTOS 种种优越之处。RT-Thread 是一款完
转载 11月前
119阅读
前言RT-Thread是一个嵌入式实时多线程操作系统,系统完全开源,它不仅仅是一个实时内核,还具备丰富中间层组件,包括如文件系统、图形库等较为完整中间件组件,具备低功耗、安全、通信协议支持和云端连接能力软件平台。我们可以结合rtthread提供组件和服务,制作软件包,丰富rt-thread软件生态。让更多开发者做到开箱即用,不用重复造轮子。必备知识熟悉rt-thread 了解Kconf
1. 序言今天跟大家简单分享 LWIP + RTThread 移植注意事项,记得以前刚接触 LWIP 那会,是跟着野火教程一起走,而大部分 LWIP 移植教程都是以 freeRTOS 为主,本着支持 RTThread 想法,在当时就想着移植 LWIP 到 RTThread 上,没想到翻车了,sockets 连接总是连接不上而 netconn 就可以,后面就放弃了…………,直到现在,把它捡起来
转载 2024-10-12 08:24:22
266阅读
时钟节拍RT_TICK_PER_SECOND:操作系统中最小时间单位是时钟节拍 (OS Tick)。周期性中断,这个中断可以看做是系统心跳,是系统延时(OS Tick(10ms)最新倍),超时,时间片轮转调度基础。中断之间时间间隔取决于不同应用,一般是 1ms–100ms,由​​ SysTick​​硬件定时器中断产生。精准延时:用其它硬件定时器或基于os tick精准硬件阻塞方法如下:
转载 2020-05-01 16:31:00
491阅读
2评论
邮箱与消息队列:邮箱:开销小,效率高(每次4字节,32位任意值或指向缓冲区指针),相当于MQTT中代理,函数调用过程中传地址(指针,浅拷贝)。一(发)对多(收)关系;因为一个邮箱可以有多封邮件,所以接收者可以通过地址(指针==数组名)判断是哪个邮箱发过来。使用邮箱前提是保证邮箱接收完成前内容不能改变,或者用邮箱等待发送(设定超时),否则就用消息队列。   分阻塞(邮箱不存在或超时参数不
转载 2020-05-01 16:00:00
222阅读
2评论
nona版本为精简版本,只保留FISH(选配)最小内核,可以适配STMSTD.HAL/LL库,需要手动进行移植;现在可以在KEIL MDK/CUBEMX中进行集成,也可以RT-Thread Nano 离线安装包下载手动下载源码(安装在 )自己搭建。keil mdk在实时运行环境中打开,通过RT_CONFIG.H进行配置。 中断处理:原3个中断需要注释掉避免重复定义HardFault_Handle
转载 2019-12-04 17:53:00
369阅读
2评论
  目前主流嵌入式GUI开发技术中,RT-Thread/Persimmon、TouchGFX和emWin是最受人瞩目的。     RT-Thread/ Persimmon是国内主导开发实时线程操作系统RT-Thread图形用户界面,是一款面向嵌入式系统,具备多窗口、多线程,类似Android界面
转载 11月前
40阅读
一,Cortex-M内核MCU都有NVIC  1,中断是由硬件产生。  2,与中断有关寄存器都在NVIC和SCB中。只能在特权级下访问。  3,Cortex-M3和M4NVIC最多支持240个IRQ、1个NMI、一个SysTick定时器中断和多个系统异常。  4,在STM32F407软件工程启动文件中,有中断向量表。(可从其看出有多少个中断和中断类型)  5,在使用FreeRTOS,需
转载 5天前
325阅读
CmBacktrace (Cortex Microcontroller Backtrace)是一款针对 ARM Cortex-M 系列 MCU 错误代码自动追踪、定位,错误原因自动分析开源库。支持裸机、ucos  rh-thread,freertos.适配 Cortex-M0/M3/M4/M7 MCU;支持中英文输出。  ulog:与开源easy log很像,可将程序运行过程中一些状态信息分
转载 2019-12-05 00:33:00
492阅读
2评论
0. 介绍1. 消息队列消息队列(Message Queue)是一种应用间通信方式,消息发送后可以立即返回,由消息系统来确保消息可靠传递。消息发布者只管把消息发布到 MQ 中而不用管谁来取,消息使用者只管从 MQ 中取消息而不管是谁发布。这样发布者和使用者都不用知道对方存在。1. 三个角色队列服务端队列生产者队列消费者2. 队列产品RabbitMQ:Erlang编写消息队列产品,企业级消
马上解决:1.每一帧前后必须有延迟时间(T1-T2-T3-T4) ,为什么不直接是个T ? 具体参考Modbus本身协议。2.P3,"通过DIII发送什么意思" ,P1,一个HA I/F适配器最多可以连接64台室内机和10台室外机,室内和室外意思?空调本身分为室内机和室外机,DIII-net 是室内机室外机和适配器之间网络体系,一台室外机可以对应多台室内机;且适配机最多支持64台室
前言关于DMA(Direct Memory Access)功能,前面关注我微信的人应该知道,其实我已经在F1芯片上简单讲了一下。有网友要求在F0讲解一下使用DMA收发串口数据。今天就应网友要求总结一下在F0芯片上,使用DMA方式传输(收发)USART数据功能。在多种芯片上(F0、F1、F2、F3、F4)了解过DMA模块功能朋友可能会发现一个特点,就是DMA功能有很多相似的地方,甚至是一样。
Tornado是一个Python web框架和异步网络库,最初是在FriendFeed开发。通过使用非阻塞网络I/O, Tornado可以扩展到数以万计开放连接,非常适合长轮询、WebSockets和其他需要与每个用户进行长时间连接应用程序。我们知道tornado是一个异步网络库而且是非阻塞网络IO模型,那, 什么是异步,同步, 什么又是阻塞非阻塞呢?(来自知乎上面严肃大牛解答~)1.同步
     unix早期通信机制中信号能够传送信息量有限,管道则只能传送无格式字节流,这远远是不够。     消息队列(也叫报文队列)客服了这些缺点:     消息队列就是一个消息链表。     可以把消息看作一个记录,具有特定格式。    &nbsp
RT-Thread零基础快速入门第8讲——软件包使用 目录RT-Thread零基础快速入门第8讲——软件包使用前言一、准备一个完整工程二、打开配置页面三、下载软件包四、编译运行五、总结 前言RT-thread有很多实用软件包,包含网络、IOT、外设、系统等多个方面,对于项目的快速开发或者评估来说是非常方便。但不是所有软件包都是友好,因为有些软件包是第三方贡献,软件质量参差不齐,即使
转载 2024-07-30 16:35:29
205阅读
一 线程同步:信号量,互斥量,事件集 信号量:(任何线程都可释放,已经不存在实例,线程递归持有会发生主动挂起(最终形成死锁),优先级反转) 生成者(线程1)-共享数据(临界区)-消费者(线程2)模型中对共享数据操作;对SPI总线占有操作要互斥;对临界区保护rt_hw_interrupt_disable/enable();rt_enter/exit_critical()。           
转载 2020-05-01 14:50:00
187阅读
2评论
原因是卡在了事件接收哪儿解决方法是在eMBMasterEnable这个函数中加入xMBMasterPortEventPost( EV_
原创 2022-12-14 10:31:59
234阅读
大家好本人大三菜鸟一枚,第一次写教程多有不足,敬请原谅。主要是记录一下自己学习过程tep1:选择新建RT_Thread
转载 2022-04-13 16:25:11
420阅读
1 ENV中配置后不能下载,原因是将pkge --update 写成了pkge --upgrade 2 RTThread中falut定位方法 3将原来工程拷贝后该文件夹名导入时出错“某些项目因为已在工作空间中而不能被导入 “原因和解决办法:   原因:导致这个错误原因是工程重名bai了,并不是du仅仅指文件夹重名,关键是修zhi改工程里面“.project"这个文件。用记事本打开,修改工程名字
转载 2020-04-23 10:39:00
637阅读
2评论
捷米JM-DPM-TCP网关。这款产品在Profibus总线侧实现了功能,在以太网侧实现了ModbusTcp服务器功能,为我们工业自动化网络带来了全新可能。 捷米JM-DPM-TCP网关是如何实现这些功能呢?首先,让我们来看看它Profibus总线侧功能。通过高效通信协议和稳定硬件设计,这款网关能够轻松地管理Profibus DP从,并将
  • 1
  • 2
  • 3
  • 4
  • 5