基于AT89C51芯片的多任务驱动设计

来源 :数字化用户 | 被引量 : 0次 | 上传用户:OMG168
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  【摘 要】文章以单片机芯片AT89C51为依托,利用高级编程C语言设计出8位单片机的多任务处理的方法。介绍了其设计的原理,从单任务入手逐步分析多任务处理的具体过程,从而实现多任务并发执行的功能。
  【关键词】AT89C51;C语言;多任务
  传统的单片机程序一般采用单任务机制。所谓"单任务机制"是指该系统不能支持多任务并发操作,宏观串行地执行一个任务。由于程序只能按顺序依次执行,缺乏灵活性。多任务机制则可以宏观并行(微观上是串行)地"同時"执行多个任务。笔者设计的这种多任务机制,不需使用汇编,采用常用的C语言编写,按照所给出的参数,添加自己的任务代码,就可以实现多任务的并发执行。
  1、单片机多任务机制的工作流程
  本文采用美国 ATMEL 公司生产的 MCS51 系列兼容芯片,在通常的单片 AT89C51应用情况下,程序被设计成一段无限循环的代码while(1),即构成一个连续执行的单任务系统。
  2、多任务并发设计
  假设要控制一个LED灯的闪烁,其实现过程为:点亮LED,延时,关闭LED,延时,依次循环下去。但是,如果需要控制两个LED灯的闪烁,一个是每一秒闪烁一次,另一个没0.5秒闪烁一次,这就需要考虑将处理器的时间进行分割,不同的任务获得一定时间片段来执行程序,当这个时间片到期了,就中断转而由另外任务来获得处理器的资源。本文所设计的方法为:采用一个自定义的进程控制器(变量stp)将其分成四个部分。在LEDLight()函数中实现的伪代码如下。
  void LEDLight(vopid){
  switch(stp)
  {case 0:亮灯;stp++;break;
  case 1:延时;stp++;break;
  case 2:灭灯;stp++;break;
  case 3:延时;stp=0;break;}}
  每次进入LEDLight这个函数只执行了其中的一个小部分。接下来,对其中的每个小部分进行改进为某个小的任务,而每个小任务又分成多个小部分。这样,就形成了如下图1所示的多任务机制。
  图1 多任务结构程序流程图
  由于每个任务的执行时间不尽相同,因此引入定时器来处理不同的延时。其工作原理是程序判定任务的记时器是否满足条件而决定任务是否继续执行。因此上面的程序就改为:
  void LEDLight(void){
  static unsigned int stp=0;
  switch(stp)
  {case 0:亮灯;stp++;定时器初始化;break;
  case 1:if(定时器未到)break;stp++;break;
  case 2:灭灯;stp++;定时器初始化;break;
  case 3: if(定时器未到)break;;stp=0;break;}}
  定时器就是用变量做累加或者递减,当所设定的值自增或自减到了一定数量后(即消耗掉一定的时间)则作为一种程序的判定,如果定时器未到,则转为下一个任务执行,如果定时器到了,就开始执行本地的任务。为了使软件定时器更精准,就可以对硬件定时器的溢出次数计数。那软件定时器的定时时间就是硬件定时器溢出时间的整数倍。因此程序改为:
  unsigned char Timer[2]; /*两个软件定时器*/
  void Timere0Irq(void) interrupt 1
  {Timer[0]++;Timer[1]++;}
  void LEDLight(void){
  static unsigned int stp=0;
  switch(stp)
  {case 0:亮灯;stp++;Timer [i]=0;break;
  case 1:if(Timer[i]  case 2:灭灯;stp++;Timer[i]=0;break;
  case 3: if(Timer[i]  3、结束语
  实现多任务操作除了本文中所介绍的方法之外还有其他的方法,如ARM开发常用的?C/OS-II、RTX-51TINY等。但是RTX-51TINY必须采用Keil公司的C51编译器,?C/OS-II则对芯片的RAM空间要求比较高,51系列的芯片内存空间有限无法装入此?C/OS-II系统。
  文章所采用的方法其结构清晰,不需使用汇编语言,所用代码较少,易于理解有效的提高了单片机处理器的效率。
  作者简介:
  文辉(1979-),男,汉族,江西萍乡人,江西信息应用职业技术学院计算机技术系网络教研室教师,研究方向:嵌入式系统。
  余丽萍(1985-),女,汉族,江西进贤人,南昌航空大学自动化学院06级信号与信息处理硕士研究生,研究方向:图像处理与模式识别。
  参考文献:
  [1] 阿占文等.单片机多任务操作的多功能采集卡设计[J].自动化仪表.2014(1).
  [2]郭天祥.新概念 51 单片机 C 语言教程: 入门、提高、开发、拓展全攻略[M]. 北京: 电子工业出版社.2009.
  [3] 钱宜平.基于单片机应用系统的多任务程序结构设计[J].无锡职业技术学院学报.2014(3).
其他文献
【摘 要】《计算机网络》是一门实践性很强的课程,通过改进计算机网络实训教学的方式,不仅可以提高学生的实践能力,还可以建立起理论与实践相协调的教学体系,从而提高课程的教学质量。本文介绍了计算机网络实训教学的现状,并为该课程的实训教学提出一些改进方法以作参考。  【关键词】计算机网络 高职院校 实训 教学  0 前言  为了达到向社会输送更多应用型高素质人才的目的,高职院校的教育一般都比较重视培养学生
期刊
【摘 要】在信息技术飞速发展的今天,计算机已经普遍应用到了社会的各个领域。它不仅为中职教育的发展提供了良好的机遇,也对我们的教学提出了更高的要求。实践性强、发展快是中职院校学生计算机基础知识的主要特点,打破了以往的传统教育模式,所以,中职院校计算机基础教学方式改革势不可挡。  【关键词】中职院校;计算机;教学;改革  计算机基础作为中职院校的基础教学科目,对提高学生的基本素质有着非常大的帮助。由于
期刊
【摘 要】计算机语言是中等职业教育计算机专业学生必须学习的程序设计语言课程。本文就该课程的一体化教学方法及激发学生学习兴趣等几个方面进行探讨。以达到一体化教学质量的目的。  【关键字】一体化 教学方法 激发学习兴趣  计算机语言是一门可视化、面向对象的计算机程序设计语言,功能强大,应用广泛,是计算机专业的一门专业基础课。如何搞好计算机语言语言的教学,对于顺利完成计算机专业的人才培养具有重要意义。 
期刊
【摘 要】随着信息技术和网络技术的飞速发展,以多媒体为核心的现代网络技术已经非常广泛的应用到教学当中。微课作为信息化教学改革的成果在教学领域得到广泛关注和快速发展应用。本文对微课在计算机应用基础课的应用进行研究,分析了微课对课堂教学的作用,为信息化教学改革提供了理论依据和实践指导的意义。  【关键字】微课;计算机;应用基础课;多媒体  一、引言  微课是指围绕着一个主题或者一个知识点的一段简短的教
期刊
【摘 要】本文首先对人事档案管理由传统档案管理向信息化档案管理的转变进行了阐述;其次分析了人事档案传统化管理向现代人事档案信息化管理转变的优势,及信息化管理体现着人事档案管理社会化得程度。符合人事档案管理的正确发展方向;从而进一步论证了档案信息化管理不是对传统档案管理的否定,而是对传统档案管理的继承和发展。  【关键词】档案管理;传统;信息化  随着科学技术的飞速发展,计算机应用已经渗透到社会的各
期刊
【摘 要】电子方面的理论知识内容比较深奥,对学习者的要求比较高。学习难度较大。如何激发学生的学习兴趣,提高教学质量是关键。作者通过在具体的电子专业课程———《电子线路》中运用电子制作这一辅助工具达到良好的教学效果证明电子制作能够起到激发学生学习兴趣,提高学生综合素质的作用。  【关键词】电子制作 电子教学 影响  电子技术应用专业课程的特点是实践教学少、理论课程多、原理抽象及内容繁杂,学生初学电子
期刊
教师是一门课程的二次设计者,所以当今大学教师的基本要求具有比较系统的教学方案设计能力。教师需要注重以学生为中心,并具备灵活运用多媒体手段的能力,在备课时将各教学要素进行有效整合,优化资源配置,在课堂中教师根据上课的主题,采用或媒体互动式教学模式,将相关信息进行拓展。如此一来,既培养了学生的学习意识,又让学生学会了如何主动学习和思考,并通过主动学习和思考更全面深入的理解所学知识,以达到更好地教学效果
期刊
【摘 要】随着我国无纸化办公的普及,我国电子档案的安全保护措施的完善工作日益重要,然而,由于尚缺乏正确的认识,也尚未有健全的保护制度来保障电子档案的安全,我国电子档案安全保护工作还有一条很长的路要走,本文在分析我国电子档案安全保护工作在实践当中的缺陷之处,有针对性的提出了解决对策,以期促进我国电子档案安全保护工作的完善。  【关键词】电子档案 安全保护 对策  自我国进入21世纪后,信息技术的应用
期刊
【摘 要】本文介绍了智慧城市云目前的发展和今后的趋势,以及如何在绍兴更好的发挥和建设智慧城市云。提出了应用城市智慧云的一些想法和建设智慧城市云的总体架构。  【关键字】智慧城市 云计算 架构 服务体系  随着城市智慧云服务体系的加快建设,如何建设智慧城市云计算中心,如何促进信息化基础设施集约建设,如何引进和培育一批云计算服务企业,带动全市信息产业全面升级,已经成为当前各个城市信息化建设的当务之急,
期刊
【摘 要】电力稽查以营销为根基.营销以稽查为延伸。伴随市场经济的不断增长与社会科学技术的不断创新与发展,甘肃省的电力营销稽查工作,也取得一定的成绩。本文主要针对电力营销稽查中关于两部制电价稽查遇到的问题及相关解决措施等进行了探讨与分析,并对其仍然存在的问题做出深入分析。  【关键词】电力营销稽查系统;两部制电价;基本电费;电费风险。  营销稽查监控是依据国家有关政策、法律、法规和电力企业营销相关的
期刊