月亮棋牌www。a9602。com是一款非常棒的热门棋牌类手游,这里的棋牌玩法有着与众不同的换角色玩法,玩家的角色可以自由的更换,超级多的装扮可以进行随意的选择,打造属于自己的完美人物角色,这里的玩法当中玩家可以体验到多种棋牌的乐趣,还有组合规则模式,难ò
月亮棋牌游戏中心—官网注册

控制器基于AVR微控制器的时间触发多任务调度器

作者:月亮棋牌    来源:未知    发布时间:2020-01-31 04:47    浏览量:
近年来,嵌入式发展迅速,采用51单片机死循环的事件触发编程方式已逐渐不能满足企业对产品稳定性和安全性的要求。目前,嵌入式系统软件有VxWork、Linux、WinCE、μC/OS-II等,可出于成本和技术上的考虑,微控制器往往不会选取其进行设计。在实际应用中,往往会面临同时应付多外设、多任务的情况,则对它们的相互调度必不可少。时间触发嵌入式系统就是这样的简单实用的操作系统   本文设计了基于AVR微控制器的时间触发多任务调度器并应用于实际。该调度器使用传递消息(message)的方式使得微控制器在多个任务及设备间切换   AVR是目前使用以该系列的ATmega128为例说明,它采用哈佛结构,RISC指令集、低功耗、片上资源丰富的特点,极大简化了外围电路,使系统更加稳定可靠。其特点为嵌入式系统设计提供了良好的硬件保证   在嵌入式系统中,通常采用两种本质上不同的调度方式:事件触发和时间触发。事件触发方式往往使用多级中断来实现,其发生时间具有随机性;而时间触发方式由一个全局时钟驱动,系统的行为在功能与时间上都是确定的,即具有可预测性   嵌入式系统开发人员有一种中断事件绝不会丢失的错误观念,这往往给开发的产品带来灾难性的后果。中断事件丢失在实际应用中是一个不争的事实,产生的原因有多方面,但无外乎内因和外因两种。外因指嵌入式系统外产生的原因,这里主要指中断源信号丢失或过于频繁;而内因又可分为硬件原因和软件原因,硬件原因主要由所用嵌入式器件的中断嵌套能力所致,软件原因主要由开发者编程时对任务中断优先级设置错误以及任务处理不当所致   例如,中断0是一个高优先级中断,而中断1是一个低优先级中断,则由高优先级中断激活的中断服务程序不能被低优先级的中断打断。于是,对第二个中断的响应将被延迟,甚至在一些情况下它有被完全忽略的可能   如果多个中断源可能在“随机的”时间间隔产生中断,则中断响应可能被遗漏。实际上,在同时有几个有效的中断源的情况下,几乎不可能创建程序代码来正确地处理所有可能的中断组合。并且同时处理多个事件不但增加了系统复杂性,而且降低了系统在所有情况下的行为预测能力。至于使用效率,Metzner讨论并得出结论:一个包含27个任务、采用RM调度算法的事件触发系统,CPU的实际利用率仅为18%   在该系统中,设计人员能够通过仔细安排可控的顺序,保证一次只处理一个事件。它的可预测性使其成为安全相关的系统的首选   Kopetz首先提出:使用基于时间触发的合作式调度器会使得系统有非常好的可预测性。除可提高可靠性之外,使用该方式有助于减轻CPU的负荷及存储器的使用量   在该调度器中,定时器的设置被分离出来,并使之不依赖于编译器的数据类型以及处理器的位数,通过修改该部分可以轻松移植到多种硬件平台。系统整体方框图如图1所示   消息队列是调度器的核心,它是用户自定义的数据类型,包括了每个任务所需要的信息。尽量将其存储在DATA区,以供快速存取   对于基于时间触发的混合式调度器,使用如下的数据结构,对于每个任务存储器的开销仅为8个字节。即使是使用32位处理器,每个任务的开销也仅为14个字节   本文所选用AVR系列的ATmega128微控制器具有四个定时器(两个8位,两个16位),任一个都能用来驱动调度器,权衡考虑选用定时器0   void SCH_Init_T0(void){逐个删除各个任务;停止定时器0;设置时间大小函数;使能定时器0方式;启动定时器0;}   SREG=080或SEI();调度器必须先设定一个默认的时间片,这并不是件简单的事。时间片过长会导致系统对交互行为的响应表现欠佳;时间片太短又会明显地增大调度器处理耗时,而留给任务运行的时间却很短   根据笔者经验,一个较为可取的时间片是略大于一次典型的交互所需要的时间,使大多数进程在一个时间片内完成。经反复尝试,时间片选择在1~5ms之间执行效率较高,这样既可满足响应速度的要求又能把任务执行的时间降到最低。该时间与任务个数和任务运行时间均有关,具体大小视情况而定   建议该函数由CTC方式激活,当某任务需要运行时,使之处于就绪态等待被执行。该函数内容由具体任务而定   本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失   原理图ADC的快速回顾大多数人认为模拟领域已经落后于他们,但事实是模拟领域从未如此强大!随着物联网的兴起和传感器的生产,全球每秒都在进行数十亿的模拟读数。这只是微控制器生产商将ADC外设直接集成到其器件中的众多原因之一。ADC将模拟信号转换为数字信号通常测量ADC由于ADC是数字的,模拟信号被量化为离散的步骤这意味着ADC只能准确无误地实现它们的位宽(即10位ADC)测量特定电压电平最大数字值等于ADC 正参考电压(通常为VCC)最小数字值等于ADC 负参考(通常为GND)ADC需要时间来转换信号在ATmega168中,ADC具有以下特性:10位分辨率(+Vref和-Vref之间的1024个离散电压电平)精度为2LSB   本设计采用AVR单片机Mega16L作为核心,可同时控制两块539CH-1型蓄电池的充、放电过程。Mega16L通过串行总线接收上位机的命令,然后通过SPI总线。单片机通过多路模拟开关CD4053将TLV5638的两路D/A输出送入信号调整电路,从而完成对充放电电流的控制。放电过程中,Mega16L通过控制8D锁存器74LS573和复合管阵列ULN2081控制放电电阻接入。系统框图如图1所示。 图1 系统原理框图硬件设计 硬件系统包括串行通信电路、充电和放电控制电路、继电器驱动电路等模块。 通信电路 单片机通过串口与上位机通信。Mega16L端口为TTL电平,而上   本设计采用AVR单片机Mega16L作为核心,可同时控制两块539CH-1型蓄电池的充、放电过程。Mega16L通过串行总线接收上位机的命令,然后通过SPI总线。单片机通过多路模拟开关CD4053将TLV5638的两路D/A输出送入信号调整电路,从而完成对充放电电流的控制。放电过程中,Mega16L通过控制8D锁存器74LS573和复合管阵列ULN2081控制放电电阻接入。系统框图如图1所示。 图1 系统原理框图硬件设计 硬件系统包括串行通信电路、充电和放电控制电路、继电器驱动电路等模块。 通信电路 单片机通过串口与上位机通信。Mega16L端口为TTL电平,而上   Jaunty)。ATmega拥有一个硬件SPI模块,但无论出于何种原因,它工作的不是十分顺畅,因此我将这个接口进行位拆裂。它仍然足够块——大约200KBps。这对项目来说还非常有意义——它能够在有足够管脚的任何微控制器上实现,而不用使用其他硬件模块。 CPU(中央处理单元) 所有剩下的就是那个32位CPU和MMU需求。不过AVR没有MMU,并且它是8位的。为了克服这一困难,我编写了一款ARM仿真器。ARM是我最熟悉的架构,并且它足够简单,可以让我很舒服的为它编写出一个仿真器。为什么要编写一个,而不是移植一个   Atmel基于ARM和AVR微控制器助力Secret Labs智能手表   爱特梅尔公司(Atmel® Corporation)宣布Secret Labs最近发布的 “AGENT” 智能手表使用了爱特梅尔的SAM4S 和 tinyAVR®微控制器。 “AGENT” 智能手表结合使用SAM4S和tinyAVR 微控制器,为用户提供更长的电池寿命,其功耗比竞争解决方案减少一半以上。通过使用爱特梅尔tinyAVR微控制器中的专利picoPower® 技术,并且结合SAM4S微控制器的低功率RAM保持功能,实现了极低的功耗。tinyAVR MCU处理维护任务和事件,而SAM4S 基于ARM® MCU则处理操作系统和手表应用。这种组合优化了功率使用,并且使得较大的SAM4S微控制器尽可能长时间保持在睡眠模式   实时故障检测的各故障持续的延时时间可以根据实际情况进行相应调整,但不影响系统功能。 1.2 系统的设计思想 以高档微控制器为核心构成智能化辅保系统,符合电力机车发展的方向,既可充分发挥软件的功能,又能简化硬件构成,无论在功能上还是在可靠性及安全性上,都可完全替代目前广泛使用的模拟电路辅保装置。 1.2.1 系统的微控制器芯片AT90S8535 美国ATMEL公司推出的90系列单片机是增强RISC内载Flash的高性能八位单片机,通称为AVR单片要同[1~2],设计上采用低功耗CMOS技术,而且在软件上有效支持C高级(用IAR系统的ICC90C编译器编译)及汇编语言(用AVR汇编器编译   OReilly.Arduino.A.Technical.Reference.2016   简易多任务OS设计-ARM9上运行的简单多任务调度器(源码+详细设计文档)   STM32MP1系列通用型MPU, 集成双 Arm® Cortex®-A7和 Cortex®-M4 内核   STM32MP1系列通用型MPU, 集成双 Arm® Cortex®-A7和 Cortex®-M4 内核   站点相关:综合资讯51单片机PIC单片机AVR单片机ARM单片机嵌入式系统汽车电子消费电子数据处理视频教程电子百科其他技术STM32MSP430单片机资源下载单片机习题与教程月亮棋牌 月亮棋牌app 月亮棋牌手机版官网 月亮棋牌游戏大厅 月亮棋牌官方下载 月亮棋牌安卓免费下载 月亮棋牌手机版 月亮棋牌大全下载安装 月亮棋牌手机免费下载 月亮棋牌官网免费下载 手机版月亮棋牌 月亮棋牌安卓版下载安装 月亮棋牌官方正版下载 月亮棋牌app官网下载 月亮棋牌安卓版 月亮棋牌app最新版 月亮棋牌旧版本 月亮棋牌官网ios 月亮棋牌我下载过的 月亮棋牌官方最新 月亮棋牌安卓 月亮棋牌每个版本 月亮棋牌下载app 月亮棋牌手游官网下载 老版月亮棋牌下载app 月亮棋牌真人下载 月亮棋牌软件大全 月亮棋牌ios下载 月亮棋牌ios苹果版 月亮棋牌官网下载 月亮棋牌下载老版本 最新版月亮棋牌 月亮棋牌二维码 老版月亮棋牌 月亮棋牌推荐 月亮棋牌苹果版官方下载 月亮棋牌苹果手机版下载安装 月亮棋牌手机版 月亮棋牌怎么下载

相关推荐:



相关新闻推荐

关注官方微信

月亮棋牌游戏中心—官网注册
Copyright © 月亮电子元件有限公司 版权所有 Power by DeDe58网站Sitemap|导航地图