基于单片机定时器软件消抖C51程序研究

来源 :科学与财富 | 被引量 : 0次 | 上传用户:wxj1234567
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘 要:随着电子技术的发展,单片機的应用在教学及科技开发中越来越普遍,而针对单片机的开发环境而言,大多采用C51语法进行设计。按键的使用在大多数硬件设计里相当频繁,而按键的干扰处理可以使用硬件消抖,也可使用软件消抖。这两种方法可根据总体设计需求而选择,以高效的方式处理所有任务。本文采用51单片机的其中一个定时器作为全局时钟来定位处理任务,以不影响、不打断其他正常工作的前提为标准,可大大提高处理器工作效率。
  关键词:单片机;按键;消抖;定时器
  一、软件消抖现状
  通常,我们会在程序中自定义一段延时程序命名为类似于delayms(unsigned int i)格式,然后在程序处理过程中判断按键状态达到要求后调用此函数来进行消抖。此方法在程序运行时,一旦按键状态符合,需要进行延时等待二次判断,任务较小的情况下能够达到预期要求,若处理器任务较多,使用delayms函数进行延时会极大降低程序处理效率,且总体效果不佳。本文介绍的消抖方式是利用单片机定时器记录全局时间,在每一次进入中断后时钟变量加1,在主要任务处理时循环判断按键状态变化时间,来达到类似于分时操作的效果。
  二、程序初始化步骤
  首先认为系统上电后按键状态为高电平1,定义一个位变量:bit key_last_state=1,用来存储程序运行过程中按键最后保持的状态。我们将按键接在单片机P2.0引脚上,用变量key_current_state来表示P2.0引脚的电平,故定义:sbit key_current_state,此变量是由按键按下或松开之后的真实状态变化。其次定义全局时钟变量,将每一次进入中断后总体时间变化量保存在其中,故有:unsigned int globle_time=0。本文中采用51单片机定时器0工作方式1产生1ms的时间间隔,即每1ms进入一次中断服务程序。最后,定义按键变化时保存的临时时间变量,故有:unsigned int key_last_time = 0。
  至此,程序进入主函数后,首先应设置好定时器的工作模式及其方式,并赋予初始值。随后配置好定时器0中断,启动定时器计时。
  三、按键状态识别及消抖
  六、小结
  本文采用单片机定时器作为时间基准,将全局时间保存在变量globle_time中,作为时间记录值,消抖过程中可分时进行其他任务的操作,这样,无需消耗多余的等待时间而降低程序效率。在消抖后进行当前按键状态判断时,可辨别出按键正常按下及松开两种情况,分别做相应的程序处理及外围控制。
  参考文献:
  [1] 乔之勇等.单片机应用系统设计项目化教程[M].北京:电子工业出版社.2014.9
  [2] 王静霞.单片机基础与应用[M].高等教育出版社.2016.3
  [3]赵勇等.单片机原理与接口技术[M].电子科技大学出版社.2016.12
  [4] 陈希球等.单片机应用.高等教育出版社[M].2017.4
  作者简介:
  向兵(1990.10~),男,汉,四川南充人,助教,硕士研究生,从事单片机原理与应用、电子产品分析与制作等课程研究及项目开发。
  杨述凯(1998.10~),男,汉,四川巴中人,绵阳职业技术学院信息工程系2017级,电子信息工程技术专业专科在读,擅长单片机开发、程序设计。
  课题项目:绵阳职业技术学院,校级精品在线开放课程-《电子产品分析与 制作》
其他文献
摘 要:新媒体时代不断向我们走近,从而逼近了高校对学生干部培养机制研究的脚步。与过去不同的是当代大学生是伴随着新媒体一起成长起来的人群,二者是相依相随、形影不离,成为学生日常生活中不可或缺的一部分,新媒体的广泛应用从而也带动了对高校学生干部的培养, 而培养一支素质高、能力强的学生干部队伍才是高校学生工作顺利开展的有力保障。  关键词:新媒体; 学生干部;五进培养  一、新媒体大环境下学生干部有哪些
期刊
摘 要:成品件烟分拣线过渡段卡烟问题是比较严重的问题。随着设备的老化,这个问题原来越凸显出来。分拣线过渡段卡烟会导致整条件烟输送线停止运行,大大降低件烟输送效率。为了解决这个问题,通过多方案的对比,最终采用将过渡段无动力滚筒该为电动滚筒的方法,增加件烟过渡段的受力,解决件烟分拣过渡阶段动力不足的问题。改造结束后,我们通过对不同牌号的烟箱测试得出,采用电动滚筒取代无动力滚筒后,烟箱过渡段卡烟现象几乎
期刊
摘 要:本文从预算管理、收支管理、资产管理、财务监督等方面分析了A事业单位财务管理存在的问题,有针对性的提出了改进措施。  关键词:事业单位;财务管理;预算管理  一、A事业单位财务管理现状  A事业单位是由国家统计局实行垂直管理的政府统计调查机构,是参照国家公务员制度管理的正处级事业单位。A事业单位自成立之初就采用的是会计电算化进行账务处理,以收付实现制为基础,通过设置会计科目和会计账户,采用借
期刊
摘 要:当前大学生存在学习倦怠问题,为此,通过查找问题根源,加强对学生进行学习教育、学习促进、学习管理,实施一系列提升学习成效对策,开展学习氛围营造,增强学习热情等工作,提升了大学生学习实效。  关键词:学习倦怠;大学生思想教育;应对对策  随着高等学校招生数量逐年扩大,大众化教育时代来临,但也因此造成了大学生良莠不齐。大一学生经过一段时间学习,就产生了学习倦怠等问题,导致他们学习落后,甚至个别同
期刊
摘 要:变压器在变电运行中发挥着重要的作用,所以要将变压器的故障分析工组落实到位,同时有效的处理变压器的故障,进而确保变压器的运行质量,从而为变电运行的质量奠定基础。  关键词:变电运行;变压器;故障处理  在科学技术支持下,变压器的性能也相应地得到了提升,内部结构更加复杂,运行模式更加先进,同时也增加了维修难度,需要维修人员快速地掌握变压器的运行性能,不断学习专业技能,提高维修水平,切实保障变压
期刊
摘 要:志愿服务是志愿者所从事的志愿活动的总称,指任何人志愿贡献个人的时间及精力,在不为任何物质报酬的情况下,为改善社会,促进社会进步而提供的服务。志愿服务是校园文化的一个重要组成部分,已成为经济社会发展的关键环节。但是,当前的志愿服务缺乏统一的组织和规划,特别是在职业院校中,将志愿服务与学生职业素养培养相结合,进行研究十分有必要。本文旨在校园文化建设中形成高效的志愿服务体系,并在体系中,提高志愿
期刊
摘 要:金融类高职院校如果想突出自己的实践教学成果,就需要有相当完善扎实的相关课程作为支持,这就要求我国的金融类高职院校能够通过学生自身对专业实践的需求,结合社会上金融类职业的发展状况,建立健全自身的金融课程教学体系,向学生提供更加全面丰富的实践课程,进一步提升学生的金融类专业实践能力,能够更好的完成各方面的实践活动,从而使得高职院校的学生能够在根本上提升自己的综合实践能力。金融专业的课程不仅仅要
期刊
摘 要:伴随着二十世纪以来我国软件行业的迅猛发展和不断成熟,市场对于软件测试人员的岗位需求与日俱增,特别是高端的软测人才更是炙手可热。为了确保高职院校的学生能够进入到顺利进入到软件测试相关工作岗位,职业院校需要抓住当下契机,紧跟市场上企业的用人需求,结合自身的实际办学情况,不断对软件测试方向的专业课程进行改革和变更,以提高软件测试人才的专业能力和质量【1】。  关键词:高职;软件测试;培养;课程设
期刊
摘 要:企业思政工作的开展是企业文化建设的前提。加强对企业员工的思想工作开展,能够有效的增强他们的责任感,使得他们在工作过程中更加的全力以赴。同时,把企业思政工作与企业文化建设进行整合,还是提高企业工作效率的重要环节,让企业在发展的潮流中有一席之地。  关键词:企业;思政工作;文化;探究  企业文化最开始是由国外引进的概念,同传统的管理型文化不一样,企业文化能够有效的管理企业的生产经营,而且对于思
期刊
摘 要:阿奇霉素为新一代大环内酯类抗生素,应用范围道炎症的作用。所以,阿奇霉素广泛应用于呼吸道、广,特别对敏感菌所引起的呼吸道感染效果显著,也是皮肤软组织及泌尿生殖系统感染。为研究临床应用中阿奇霉素的不良反应,随机选取住院时间在2013年~2017年期间的符合研究标准的204例患者为研究对象,将其随机的分为实验组和对照组,各102例,在实验组和对照组的204例患者住院后均进行常规性的护理治疗,对实
期刊