基于单片机的便携式电子秤

[09-12 17:54:31]   来源:http://www.88dzw.com  单片机学习   阅读:8632

文章摘要: 图4系统主程序流程图 中断服务程序设计 系统程序设计中,键盘检测产生外部中断,采样通道产生内部定时中断。在中断优先级的问题上,因为PIC16F628单片机只有一个中断入口地址0004h,每种中断都要由此进入中断程序,所以中断程序开始现场保护后,要进行各种中断标志位的顺序检测和判断。当判断到中断标志位时,转到相应的中断服务子程序中,根据检测标志位的顺序,定义中断优先级,先判断定时中断优先级最高,其次是键盘检测中断。中断服务程序流程图如图5所示。

基于单片机的便携式电子秤,标签:单片机开发,单片机原理,单片机教程,http://www.88dzw.com

图4 系统主程序流程图

中断服务程序设计

系统程序设计中,键盘检测产生外部中断,采样通道产生内部定时中断。在中断优先级的问题上,因为PIC16F628单片机只有一个中断入口地址0004h,每种中断都要由此进入中断程序,所以中断程序开始现场保护后,要进行各种中断标志位的顺序检测和判断。当判断到中断标志位时,转到相应的中断服务子程序中,根据检测标志位的顺序,定义中断优先级,先判断定时中断优先级最高,其次是键盘检测中断。中断服务程序流程图如图5所示。

图5中断服务程序流程

采样通道切换模块,系统传感器单元含有两个电容-频率转换电路,两个电路输出信号的获取均通过单片机PIC16F628的计数器1实现。利用定时器0的定时中断功能,每隔0.1s切换一次振荡工作电路及模拟开关MAX325通道。定时器0中断服务程序流程图如图6所示。

定时器0中断服务程序流程图

图6 定时器0中断服务程序流程图 图7 键盘中断服务程序流程图

键盘检测模块,系统中按键组合成键盘后排列成3 5矩阵形式,采用RB口中断的方式检测键盘中有无按键。对各列线都送以低电平(称为"全扫描"),若有键按下,则产生中断。进入中断程序后,通过"逐列扫描"(逐列送低电平),查看各行线电平值来鉴别被按下的键,返回键值。对按键的具体处理由主程序中键盘处理子程序完成。键盘检测中断服务程序流程图如图7所示。

软件抗干扰设计

测量算法采用数字滤波、曲线拟合两种数据处理方法。数字滤波(软件滤波)复用性好、可实现超低频滤波且修改方便。因此,在硬件滤波设计基础上,系统通过软件滤波进一步滤除有害干扰信号。同时,曲线拟合使系统对测量曲线进行不失真跟踪处理,也保证了测量计算的准确性。

PIC16F628片内带有看门狗定时器(WDT),它是一个拥有独立的RC 时钟信号源、计时周期约为18ms的CPU片内自激式RC振荡计时器。在烧写程序时借助程序烧写器启用WDT,一旦程序跑飞,WDT将立即强迫程序返回到复位向量处(在复位向量处安排了一段出错程序),即可将系统纳入正轨。

软件低功耗设计

因为系统功耗正比于CPU的工作时间,所以尽量缩短CPU的运行时间应是低功耗软件设计的一条重要准则。

(1) 使用单片机睡眠方式

PIC16F628设有低功耗模式,即睡眠方式(SLEEP)。便携式电子秤作为随身携带的手持式称量器具,一定不是常处在工作状态。在未关断电源的情况下,当器具闲置了预定的一段时间后,单片机将自动进入SLEEP模式,在"睡眠"方式,耗电小于1 A。

(2) 使用单片机的中断功能

系统软件设计应用了三个中断:RB口中断(用于检测键盘输入)、外部中断(用于低电压检测)、定时器0中断(用于切换频率量输入通道)。中断的使用有效地减少了CPU的运行时间,从而降低功耗。

本系统中,严格选用低功耗的CMOS器件,硬件上的配合简单而有效,软件上的设计周密而层次分明,整个系统能真正的实现低功耗工作。
结束语

本文设计研究的准确度等级Ⅲ级、最大称量15kg并集多种智能功能于一体的便携式电子秤,技术指标参考了目前国内市场上使用最多、国内外产量最大的电子衡器的技术指标,由此可预见产品投放市场后将有极大的竞争力。


上一页  [1] [2] [3] 


Tag:单片机学习单片机开发,单片机原理,单片机教程单片机学习
分类导航
最新更新
热门排行