SI24R1技术支持--程序,发送,接收,双向通信等多个程序组合。
上传时间: 2018-12-25
上传用户:jacycle
参考 FreeRTOs,orq怎样工作小节获取多任务的基本概念任务和联合程序文档提供了怎样判断何时适合以及何时不适合使用联合程序的方法,下面是简单的总结。注意一个系统可以只使用任务、或者只使用联合程序、或混合使用-但是任务和联合程序使用不同的API函数,因此一个队列(或者信号)不能用于从任务传递数据到联合程序,反之亦然。任务"的特性FreeRTOS低于V4.0.0.0的版本只允许实时系统的结构以一组任务的方式组成,这是RTOS调度的传统模式。简评 In brief:一个使用RTos的实时应用系统可以由一组独立的任务组成,每个任务执行它自己的内容而不依赖于其他任务或者调度器。在任何时候只有个任务可以被执行,调度器负责决定哪个任务应当被执行。调度器反复启动和停止任务(切换任务),因为个任务不清楚调度器的活动,所以在任务切换时保证处理器内容不变(寄存器值、堆栈等)就是实时内核调度器的工作。要做到这点每个任务都需要使用自己的堆栈,当任务切换时运行的参数保存到堆栈中任务再次运行时就可以从堆栈中恢复参数。参考 FreeRTOs怎样工作小节获得更多内容。就绪的任务是那些可以执行(没有被阻塞或暂停),但是因为其他相同或更高优先级任务正在运行造成还没有运行的任务。阻塞当一个任务等待临时事件或外部事件时它就是处于阻塞状态。例如,任务调用 VAsk Delay(),它将被阻塞(置为阻塞状态)直到超过延时时间个临时事件。任务也可以阻塞等待队列和信号事件。阻塞状态的任务般有一个超时时间,超时后任务将解锁。阻塞的任务不会参与调度。
标签: freertos
上传时间: 2022-03-19
上传用户:kingwide
桌面电脑的输入处理可以归类为实时”为了保证用户的最佳体验,计算机对每个输入的响应应当限定在一个恰当的时间范围—但是如果响应时间超出了限定范围并不会让人觉得这台电脑无法使用。比如说,键盘操作必须在键按下后的某个时间内作出明显的提示但如果按键提示超出了这个时间,会使得这个系统看起来响应太慢,而不致于说这台电脑不能使用。仅仅从单处理器运行多线程这一点来说,实时嵌入式系统中的多任务与桌面电脑的多任务从概念上来讲是相似的。但实时嵌入式系统的侧重点却不同于桌面电脑—特别是当嵌入式系统期望提供使实时听为的时候硬实时功能必须在给定的时间限制之内完成——如果无法做到即意味着整个系统的绝对失败。汽车的安全气囊触发机制就是一个硬实时功能的例子。安全气囊在撞击发生后给定时间限制内必须弹出。如果响应时间超出了这个时间限制,会使得驾驶员受到伤害,而这原本是可以避免的。大多数嵌入式系统不仅能满足硬实时要求,也能满足软实时要求术语说明在F田 eRTo s中,每个执行线程都被称为务”在嵌入式社区中,对此并没有个公允的术语,但我更喜欢用务响不是嗖线程”因为从以前的经验来看,线程具有更多的特定含义。本章的日的是让读者充分了解:·在应用程序中,FeR TO S如何为各任务分配处理时间·在任意给定时刻,FIPeR To s如何选择任务投入运行任务优先级如何影响系统行为。·任务存在哪些状态
标签: freertos
上传时间: 2022-03-19
上传用户:zhanglei193
这篇文章的英文原版我是在www.Freertos.net上下载得到的。其实我并没有决定是否要在系统中使用 FreeRTOS,虽然我想要的也仅仅是一个实时内核,当然更重要的是免费。之所以翻译这篇文章倒不是因为 FreeRTOS有多么优秀,完全是因为这篇文章还不算太长。而且 FreeRTOS.net仿佛致力于这个内核在国内的推广,也做了不少中文化的工作。所以我是打算利用工作之余,边看边译,到读完这篇文档,也就有个中文版了。如果 FreeRTOS.net不弃的话,我倒是情愿放到这个网站上与大家共享另外,我本人很懒,没有翻译附录,而且译完正文后也没有做过任何检査。所以如果有任何问题,请不要骂我.小型多任务嵌入式系统简介不同的多任务系统有不同的侧重点。以工作站和桌面电脑为例早期的处理器非常昂贵,所以那时的多任务用于实现在单处理器上支持多用户。这类系统中的调度算法侧重于让每个用户”公平共享处理器时间随着处理器功能越来越强大,价格却更偏宣,所以每个用户都可以独占一个或多个处理器。这类系统的调度算法则设计为让用户可以同时运行多个应用程序,而计算机也不会显得反应迟钝。例如某个用户可能同时运行了一个字处理程序,一个电子表格,一个邮件客户端和一个WEB浏览器,并且期望每个应用程序任何时候都能对输入有足够快的响应时间
标签: freertos
上传时间: 2022-03-20
上传用户:kent
本指南介绍如何安装、配置和使用用于嵌入式应用程序的 emWin 图形用户界面。还介绍了软件的内部结构和 emWin 提供的且用于直接使用的所有函数(API,应用编程接口)。在实际使用 emWin 之前,应阅读或至少浏览一遍本手册以便对软件有所了解。然后建议按以下步骤进行操作:• 将 emWin 文件复制到计算机中。• 通读“入门指南”(第 43 页)。• 使用模拟器以便更熟悉软件的功能(请参阅“模拟”(第 53 页))。• 参考手册的其它内容,对程序进行扩展。emWin 设计用于提供高效且独立于处理器和显示控制器的图形用户界面,用于任何使用图形显示进行操作的应用。它与单任务和多任务环境、专用操作系统或具有任何商业 RTOS 兼容,emWin 的发货形式为 C 语言源代码。它可适用于任何尺寸的、具有任何显示控制器和 CPU 的物理和虚拟显示器。为了让您更好地了解emWin 的功能,我们准备了各种不同演示,其形式为“即时可用”的模拟可执行程序,www.segger.com/emwin-samples.html.示例程序的源代码位于 Sample 文件夹中。文件夹 Sample\GUIDemo 包含一个显示 emWin 许多特性的应用程序。所有示例也可从 www.segger.com 获得。本文档的示例代码以代码段提供,这可能需要进一步的修改。
标签: emwin
上传时间: 2022-05-23
上传用户:
经济的发展与技术的进步带动着人们更加渴望高品质的生活质量,作为当今产业大热门的智能家居逐渐成为市场关注的焦点,很多科技公司纷纷开发出自己的产品。不过由于浮夸的宣传,不合理的定位和高昂的价格,导致了消费者纷纷对智能家居产品望而却步,行业呈现出叫好不叫卖的现象。鉴于此种情况,本文定位于智能家居中低端产业,开发设计出一款简单实用、价格低廉的智能家居控制网关系统,目的是在于让普通人也可以享受科技发展的成果。 该网关系统综合了电子技术、计算机技术、通信技术等多种技术,从硬件和软件两个方面对控制网关进行深入研究,最终实现对家居环境远程监测的目的。 在硬件方面,该控制网关系统采用以单片机为硬件控制平台,以供电模块、时钟模块、EEPROM模块等众多外围电路模块为辅助,结合ZigBee与WiFi无线通讯技术,完成对智能家居网关系统的搭建工作。该网关系统的单片机采用功能强大、价格低廉基于ARM32位CortexTM-M3的STM32F103RCT6,它主要负责对家居环境的任务调度,智能控制;ZigBee部分采用主芯片为CC2530的无线通信模块,该模块主要包括两个部分:协调器和终端节点,终端节点除了通信部分,还包括温湿度传感器、光线传感器、烟感传感器等部分,它负责完成对数据的采集、打包和发送工作,协调器则负责把终端节点发送的数据进行重新打包然后通过串口传送给主控模块;WiFi部分采用的是价格低廉、功能实用的ESP8266WiFi通信模块,该模块有三种工作模式:STA、AP和STA/AP,使得WiFi部分兼具连接热点和发送热点两种功能,该模块负责智能家居控制单元和外界通信的工作,它通过串口和控制单元通信,然后通过WiFi网络发送接收信息。 在软件方面,控制网关采用以Keil和IAR为开发环境,以uC/OS-Ⅱ操作系统为程序运行环境,结合C语言及少量汇编语言,共同完成系统的软件控制工作。Keil和IAR作为开发环境可以进行程序检测、烧录等辅助工作,大大减轻了工作量;uC/OS-Ⅱ操作系统短小精炼、功能强大的特点,使得硬件资源可以更加合理的利用,有助于节约成本,同时也让控制网关系统可以实时多任务执行,增强了系统功能;此外充分合理利用了网络库函数资源,大大节约了学习与开发进度。...
上传时间: 2022-05-30
上传用户:
针对目前我国已经存在的温室控制系统成本高、网络化不足以及测量环境因子单一等问题,文中开发了一套基于STM32的温室远程控制系统。该系统通过利用STM32单片机作为温室内的控制器以及MFC编写的控制软件实现对温室内空气温度、空气湿度、光照强度和CO2浓度多个环境因子的远程监测和控制。 系统的硬件电路设计包括STM32控制器、数据采集模块、设备控制模块、网络接口模块、实时显示模块以及数据存储模块等。其中数据采集模块采用DHT11、MG811以及BH1750传感器进行环境因子的测量,设备控制模块通过控制继电器通断来控制温室内的加热系统和光照系统等执行设备,STM32通过ENC28J60接入网络实现远程控制,显示模块实现各个环境因子的实时显示,数据存储模块采用外接SD卡的方式进行数据的存储。在STM32的程序设计中采用了库函数的开发方式设计了测量程序、显示程序以及控制程序。通过在STM32中移植μC/OS-Ⅱ操作系统实现多任务的运行,移植LwIP协议使STM32可以接入网络,实现控制的网络化。在VC6.0平台下利用MFC设计了控制软件,控制软件和STM32之间通过TCP/IP协议进行数据和命令的传输。控制软件的主要功能是对温室内的多个环境因子进行远程监测和对执行设备进行远程控制。在控制软件设计中,采用面向对象的方法将相关的操作函数封装到类中,便于对系统进行升级,采用多线程的方法解决了多个任务同时运行的状况。将控制过程中产生的数据保存到数据库中,可以对系统运行产生的数据进行分析和利用。 为了对系统进行测试,在文中搭建了一个小型的温室并将控制器安装在温室内。经过测试,文中设计的温室控制系统可以实现对温室内空气温度、空气湿度、光照强度和CO2浓度的远程实时监测,数据每秒更新一次。当上述的环境因子超过控制软件上设置的上下限范围时,系统会报警,此时可以在控制软件上控制执行设备的通断来调节该因子使其到达设置的范围内。
上传时间: 2022-06-09
上传用户:qingfengchizhu
线程(thread)技术早在60年代就被提出,但真正应用线程到操作系统中去,是在80年代中期。为什么有了进程的概念后,还要再引入线程呢?使用多线程到底有哪些好处?使用多线程的理由之一是和进程相比,它是一种非常”节俭”的多任务操作方式。在Linux系统下,启动一个新的进程必须分配独立的地址空间,建立众多的数据表来维护它的代码段、堆栈段和数据段。而运行于一个进程中的多个线程,它们之间使用相同的地址空间,共享大部分数据,启动一个线程所花费的空间远远小于进程所花费的空间,而且,线程间彼此切换所需的时间也远远小于进程间所需要的时间。使用多线程的理由之二是线程间方便的通信机制。对不同进程来说,它们具有独立的数据空间,要进行数据的传递只能通过通信的方式进行,这种方式费时且很不方便。由于同,进程下的线程之间共享数据空间,所以一个线程的数据可以直接为其它线程所用,这样快且方便。在计算机中,凡是提供服务的一方我们称为服务端(Server),而接受服务的另一方我们称作客户端(Client)。不过客户端及伺服端的关系不见得一定建立在两台分开的机器上,提供服务的伺服端及接受服务的客户端也有可能都在同一台机器上,这样在同一台机器上就同时扮演伺服端及客户端。线程间方便的通信机制可以使得在我们在服务端和客户端方便的进行通信传输与各种操作,可以通过运用多线程机制方便实现上传、下载文件:增加、删除用户:以及在服务端进行文件的管理。
上传时间: 2022-06-20
上传用户:
本书详细介绍了KeilCx5]V7.0版本单片机C语言编译器和全新Windows集成开发环境uVision2的强大功能和具体使用方法。全面介继了最新版本Cx51编译器新增加的控制命令,给出了全部Cx51运行库函数及其应用范例,对KeilCx5l软件包中各种应用工具,如BL51/Lx5]连接定位器、A51/Ax51宏剂编器、LIB51库管理程序以及OH51符号转换程序等都作了详细介绍,还介绍了单片机实时多任务操作系统RTX51及其了集RTX51TINY的具体功能与应用方法。uVision2已经将调试器功能集成于其中,用户可以在单一环境下完成从源程序编写、编译、链接定位一直到目标文件的仿真调试等全部工作,书中详细介绍了uVision2各种功能和应用,包括软件模拟调试和硬件目标板实时在线仿真。本书的特点是强调先进性和实用性,给出了大量程序实例,并带有一张由Keil公司提供的配套CD-ROM光盘,其中包括Keil Cx51V7.0版本全功能评估软件包,本书各章中列出的全部程序代码,以及Keil Cx51源程序仿真硬件目标板的照片和使用说明。本书适合于从事单片机应用系统开发研制的广大工程技术人员阅读,也可以作为高等院校相关专业大学生或研究牛的教学参考书。
上传时间: 2022-06-23
上传用户:xsr1983
直流系统是给变电站各类信号设备、保护、自动装置、事故照明、应急电源及断路器分合闸操作提供直流电源的电源设备。直流系统的可靠与否,对变电站的安全运行起着至关重要的作用。直流系统主监控是整个直流系统的控制、管理核心。主监控单元的主要任务是:对直流系统中各功能单元和蓄电池进行长期自动监测、获取直流系统中的各种运行参数和状态、根据测量数据及运行状态实时进行处理,并以此为依据对直流系统进行控制,实现系统的全自动精确管理,从而优化直流系统的运行状况,保证其工作的连续性、安全性和可靠性。嵌入式软硬件技术已广泛用于变电站自动化、配电网自动化、新能源发电控制等智能电网的各个应用领域。主监控单元运行时处理任务十分繁杂,包括MMI人机交互、电池充放电管理算法、开入开出控制、系统内部通信、后合通讯等任务,并且对任务的实时性要求较高。因此,主监控单元的软件设计是多任务、实时性和复杂程序较高的工作。嵌人式实时操作系统(RToS)的出现为开发复杂多任务提供了很好的解决方案。FreeRTOS操作系统是一个源码公开的嵌入式实时操作系统,具有可移植、可裁减、调度策略灵活的特点,可以方便地移植到各种体系结构的微处理器上运行。
上传时间: 2022-06-24
上传用户:slq1234567890