多功能电子计价秤难点.doc_第1页
多功能电子计价秤难点.doc_第2页
多功能电子计价秤难点.doc_第3页
多功能电子计价秤难点.doc_第4页
多功能电子计价秤难点.doc_第5页
已阅读5页,还剩27页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

2008年山东省“ZLG杯”大学生电子设计竞赛编号:A甲2901参赛学校: 山东轻工业学院指导教师: 王佐勋 李庆华 王晓芳 汪宁设计者: 王延政 徐美艳 黄亮亮 2008年9月15日摘 要该多功能电子计价秤是以PhilipsLPC2103为控制核心,实现了电子秤的基本功能。系统的硬件部分包括最小系统板,数据采集,人机交互界面三大部分。最小系统部分主要是扩展了外部数据存储器,数据采集部分由压力传感器、信号的前级处理和A/D转换部分组成。人机界面部分为键盘输入 ,128*64点阵式液晶显示,可以直观的显示商品单价、商品重量、总价、实时时钟等信息,打印机可以打印输出最近100次的交易信息。系统扩展了实时时钟、温度显示等外围设备。软件部分应用单片机C语言实现了本设计的全部控制功能,包括基本的称重功能,和发挥部分的显示购物清单的功能,可以设置日期和重新设定10种商品的单价,具有超重报警功能,由于系统资源丰富,还可以方便的扩展其应用。关键词:电子计价秤 PhilipsLPC2103 C语言Abstract The multi-function electronic scale is PhilipsLPC2103 for the control of the core, achieved the basic functions of electronic scale. The hardware of the system board, including the smallest, data collection, most of the three man-machine interface. Minimum system are some of the major expansion of the external data storage, data acquisition in part by pressure sensors, signal processing and the first-class A/D converter parts. Some human-computer interface for keyboard input, 128 * 64 dot-matrix liquid crystal display, visual display unit price of goods, commodities weight, lump-sum, real-time clock, and other information, the printer can print out the last 100 trading information. System expansion of the real-time clock and temperature display and other peripherals. Application of SCM software part of the C language of the design of all control functions, including basic weighing functions, and play a part of the shopping list shows that the function can set the date and re-setting 10 kinds of commodities are priced, with overweight alarm Function, due to system is rich in resources, can also facilitate the expansion of its application.Keywords:electronic scale PhilipsLPC2103 C language 一 设计要求1.1设计任务本题目最好采用广州周立功单片机发展有限公司赞助提供EasyARM2103主机板为主控器,设计并制作一个多功能电子计价秤。显示器其它功能测量控制器EasyARM2103主机板称重传感器及变换电路 (0-2V)键盘 图1.1 系统框图1.2制作要求1.2.1基本部分:(1)能用键盘设置单价,称重后能同时显示重量、单价和总额;电子计价秤:最大称重为15.000公斤,重量误差不大于0.1;(2)具有数码显示,显示重量、单价、总额等信息。a.重量显示为5位数码,单位为公斤,最大重量显示值为99.999公斤;b.单价金额显示为5位数码,单位为元,最大单价金额显示值值为999.99元;c.总价金额显示为6位数码,单位为元,最大总价金额显示值值为9999.99元,总价金额误差不大于0.01元;(3)具有去皮功能和总额累加计算功能;(4)能预存10种商品的单价;可以随意调出使用;(5)测量并显示环境温度,温度测量误差不大于1;(6)自制可以连续可调高稳定度0-2V直流电源,用于模拟称重传感器输出的称重信号源。采用0-2V模拟0-20kg称重;(7)制作工艺。1.2.2 发挥部分:(1)具有实时时钟显示并具有掉电保护,可显示日历时钟(年、月、日、时、分、秒);(2)扩展高精度A/D转换器,提高电子计价秤测量精度,测量误差不大于0.01;(3)采用称重传感器及相应信号处理电路与自制电子计价秤实测物品(1kg,5kg,10kg),重量测量误差小;称重数据稳定,数据稳定时间不小于2秒;(4)能预存10种商品的名称(或代号)和商品的单价;能存储100组购物清单并显示,数据具有掉电保护,清单内容包括:购货日期、收银员编号、商品名称、数量、单价、金额、本次购物总金额。购物清单可以打印输出;(5)商品名称可以中文输入和显示; (6)其它特色发挥功能。1.3 评分标准项 目满分设计报告设计与总结报告:方案比较、设计与论证,分析与计算,电路图及有关设计文件,测试方法与仪器,测试数据及误差分析。50实际制作基本部分完成第(1)项10完成第(2)项5完成第(3)项10完成第(4)项5完成第(5)项10完成第(6)项5完成第(7)项5实际制作发挥部分完成第(1)项5完成第(2)项10完成第(3)项10完成第(4)项10完成第(5)项5完成第(6)项101.4 说明1. 不采用中文显示和打印时,相关内容可采用代号、拼音或英文显示。2. 测试基本要求功能时,使用自制可以连续可调高稳定度0-2V直流电源模拟称重传感器及相应变换电路的输出电压信号(0-2V)。3. 测试发挥功能时,第(3)项需要配接称重传感器及相应变换电路实测物品重量。4. 本科生需要完成所有项(基本要求7项,发挥部分6项,作品完成制作满分100分。5. 专科生需要完成以下各项:基本要求部分中(1)、(2)、(3)、(6)和(7)项,满分35分;发挥部分中(1)、(2)、(3) 和(6)项,满分35分;6. 专科生若完成基本要求部分中(4)和(5)项,发挥部分中(4)和(5)项,可获相应项目的加分。二 系统设计根据题目要求,该多功能电子计价秤,包括控制模块、键盘模块、显示模块、打印模块、实时时钟模块、温度测量报警模块和存储模块、AD转换模块。系统的总体结构框图如图2.1所示。 图2.1 系统总体布局框图 系统的各模块中,除了微控制器模块已经确定用周立功公司赞助的PHILIPSLPC2103外其余模块还需要我们论证比较不同的设计方案。2.1称重传感器的原理及选用 题目要求称重范围15.000Kg,重量误差不大于0.015Kg,考虑到秤台自重、振动和冲击分量,还要避免超重损坏传感器,所以传感器量程必须大于额定称重15Kg。我们选择的是L-PSIII型传感器,量程20Kg,精度为,满量程时误差0.002Kg。可以满足本系统的精度要求。其原理如图2.2所示: 图 2.2 称重传感器原理图称重传感器主要由弹性体、电阻应变片电缆线等组成,内部线路采用惠更斯电桥。当弹性体(弹性元件,敏感梁)在外力作用下产生弹性变形,使粘贴在他表面的电阻应变片(转换元件)也随同产生变形,电阻应变片变形后,它的阻值将发生变化(增大或减小),再经相应的测量电路把这一电阻变化转换为电信号(电压或电流),从而完成了将外力变换为电信号的过程,输出信号电压可由下式给出:,各组成部分的原理如下:(1)电阻应变片电阻应变片是把一根电阻丝机械的分布在一块有机材料制成的基底上,即成为一片应变片。他的一个重要参数是灵敏系数K。下面介绍的是它的意义。设有一个金属电阻丝,其长度为L,横截面是半径为r的圆形,其面积记作S,其电阻率记作,这种材料的泊松系数是。当这根电阻丝未受外力作用时,它的电阻值为R:R = L/S() (21)当他的两端受F力作用时,将会伸长,也就是说产生变形。设其伸长L,其横截面积则缩小,即它的截面圆半径减少r。此外,还可用实验证明,此金属电阻丝在变形后,电阻率也会有所改变,记作,对式(2-1)求全微分,即求出电阻丝伸长后,他的电阻值改变了多少。我们有:R = L/S + L/S SL/S2 (22)用式(2-1)去除式(2-2)得到R/R = / + L/L S/S (23)另外,我们知道导线的横截面积S = r2,则 s = 2r*r,所以S/S = 2r/r (24)从材料力学我们知道r/r = -L/L (25)其中,负号表示伸长时,半径方向是缩小的。是表示材料横向效应泊松系数。把式(24)(25)代入(2-3),有R/R = / + L/L + 2L/L =(1 + 2(/)/(L/L)*L/L = K *L/L (2-6) 其中K = 1 + 2 +(/)/(L/L) (2-7)式(26)说明了电阻应变片的电阻变化率(电阻相对变化)和电阻丝伸长率(长度相对变化)之间的关系。需要说明的是:灵敏度系数K值的大小是由制作金属电阻丝材料的性质决定的一个常数,它和应变片的形状、尺寸大小无关,不同的材料的K值一般在1.73.6之间;其次K值是一个无因次量,即它没有量纲。(2)弹性体弹性体是一个有特殊形状的结构件。它的功能有两个,首先是它承受称重传感器所受的外力,对外力产生反作用力,达到相对静平衡;其次,它要产生一个高品质的应变场(区),使粘贴在此区的电阻应变片比较理想的完成应变电信号的转换任务。以SB系列称重传感器的弹性体为例,来介绍一下其中的应力分布。设有一带有肓孔的长方体悬臂梁。肓孔底部中心是承受纯剪应力,但其上、下部分将会出现拉伸和压缩应力。主应力方向一为拉神,一为压缩,若把应变片贴在这里,则应变片上半部将受拉伸而阻值增加,而应变片的下半部将受压缩,阻值减少。下面列出肓孔底部中心点的应变表达式 = (3Q(1+)/2Eb)*(B(H2-h2)+bh2)/ (B(H3-h3)+bh3) (2-8)其中:Q-截面上的剪力;E-扬氏模量:泊松系数;B、b、H、h为梁的几何尺寸。(3)检测电路检测电路的功能是把电阻应变片的电阻变化转变为电压输出。因为惠斯登电桥具有很多优点,如可以抑制温度变化的影响,可以抑制侧向力干扰,可以比较方便的解决称重传感器的补偿问题等,所以惠斯登电桥在称重传感器中得到了广泛的应用。因为全桥式等臂电桥的灵敏度最高,各臂参数一致,各种干扰的影响容易相互抵销,所以称重传感器均采用全桥式等臂电桥。2.2 前级放大器部分的选择压力传感器输出的电压信号为毫伏级,所以对运算放大器要求很高。我们有以下几种方案可以采用:方案一:利用普通低温漂运算放大器构成多级放大器普通低温漂运算放大器构成多级放大器会引入大量噪声。由于A/D转换器需要很高的精度,所以几毫伏的干扰信号就会直接影响最后的测量精度。所以,此种方案不宜采用。方案二:由高精度低漂移运算放大器构成差动放大器差动放大器具有高输入阻抗,增益高的特点,可以利用普通运放(如OP07)做成一个差动放大器,如图2.3: 图2.3 差动放大电路图电阻R1、R2电容C1、C2、C3、C4用于滤除前级的噪声,C1、C2为普通小电容,可以滤除高频干扰,C3、C4为大的电解电容,主要用于滤除低频噪声。优点:输入级加入射随放大器,增大了输入阻抗,中间级为差动放大电路,滑动变阻器R6可以调节输出零点,最后一级可以用于微调放大倍数,使输出满足满量程要求。输出级为反向放大器,所以输出电阻不是很大,比较符合应用要求。缺点:此电路要求R3、R4相等,误差将会影响输出精度,难度较大。实际测量,每一级运放都会引入较大噪声。对精度影响较大。方案三:采用专用仪表放大器(如:INA126,INA121等)此类芯片内部采用差动输入,共模抑制比高,差模输入阻抗大,增益高,精度也非常好,且外部接口简单。以INA126为例,其接口如图2.4所示: 图2.4 INA126放大电路图放大器增益,通过改变的大小来改变放大器的增益。结合本题对精度的要求,对比以上方案,我们决定采用方案二由高精度低漂移运算放大器构成差动放大器。 2.3 AD转换模块当前市场上卖的AD转换芯片品种较多,可供我们选择的方案也较多。方案一:采用双积分型A/D转换器(如:ICL7135、ICL7109等)双积分型A/D转换器精度高,但速度较慢(如:ICL7135),具有精确的差分输入,输入阻抗高(大于),可自动调零,超量程信号,全部输出于TTL电平兼容。双积分型A/D转换器具有很强的抗干扰能力。对正负对称的工频干扰信号积分为零,所以对50HZ的工频干扰抑制能力较强,对高于工频干扰(例如噪声电压)已有良好的滤波作用。只要干扰电压的平均值为零,对输出就不产生影响。尤其对本系统,缓慢变化的压力信号,很容易受到工频信号的影响。故而采用双积分型A/D转换器可大大降低对滤波电路的要求。方案二:逐次逼近型A/D转换器 逐次逼近型A/D转换,一般具有采样/保持功能。采样频率高,功耗比较低,是理想的高速、高精度、省电型A/D转换器件。高精度逐次逼近型A/D转换器一般都带有内部基准源和内部时钟,基于ARM2103构成的系统设计时仅需要外接几个电阻、电容。但考虑到所转换的信号为一慢变信号,逐次逼近型A/D转换器的快速的优点不能很好的发挥,所以此方案并不是理想的选择。方案三:选用美国CRYSTAL公司生产的一种20bit串行模/数转换器CS5531。它的线性误差仅为0.0007%FS,无噪声分辨率最大可达到23 位,其校准后可选输入范围为- 5mV 5V,操作时只使用简单三线串行接口,简单易行,容易短时间内掌握其用法。题目的基本要求为最大称重为15.000公斤,重量误差不大于0.1;如采用10位A/D转换模块其精度为:15Kg/1024=14.6g,如采用20位A/D转换模块其精度为:15Kg/1048575=0.01g。作为电子秤,系统对AD的转换速度要求并不很高,满足基本的测量要求即可。另外考虑到作品成本、抗干扰性能等诸多方面的因素我们最终选择了CS5531A/D转换器。2.4键盘模块键盘模块是实现多功能电子计价秤多种功能的重要模块,由于该项技术的发展成熟,可供我们采用的键盘方案也很多。方案一:用一块74LS138译码器输出8路扫描信号,4路扫描返回信号线接I/O口输入(我们设计是4*8的键盘)。这种设计方案电路设计非常的简单,但是软件的编程要考虑软件的去抖等,会比较复杂而且占用大量的CPU资源。方案二:采用技术成熟的PS/2键盘,读键盘程序相对简单,仅占用2个I/O口,符合国际标准,可实现键盘接口,且替换性好,价格低。但键盘接口与ARM2103连接不便,键盘管理协议不统一,需要熟悉标准键盘的协议,短时间内难以熟练使用。 方案三:采用并行键盘控制芯片8279。8279是总线型数码管和键盘管理芯片,编程比较麻烦,而且是并行工作方式,占用相当多的GPIO。方案四:选用自备键盘。采用ZLG7290可扩展64个按键,64 只按键中,前56 个按键是普通按键K1K56,最后8 个为功能键F0F7。键盘电阻R86R93 的典型值是3.3K。在多数应用当中可能不需要太多的按键,这时可以按行或按列裁减键盘。ZLG7290B 可以扫描管理多达64 个按键,s1s16 为普通按键,普通按键还有连击检测功能。ZLG7290B 的I2C 总线器件地址是70H(写操作)和71H(读操作)。访问内部寄存器要通过“子地址”来实现。在本设计中要用到大量按键,但按键数目太多显得系统庞杂不美观。综合以上各方案我们采用ZLG7290的16个按键并采用按键功能复用技术即方案四。 2.5显示模块方案一:只应用LED显示管。LED数码管显示器,显示数字直观,成本低廉,但其只能显示少量字符和数字,且消耗功率大,不适用于该多功能电子计价秤的大量信息显示。方案二:采用金鹏OCMJ48C字符型液晶显示屏。OCMJ48C液晶显示模块是12864点阵的汉字图形型液晶显示模块,可显示汉字及其图形,可与CPU直接接口,提供两种界面来连接微处理机:8位并行及串行两种连接方式。而且具有多种功能:光标显示,画面移位,睡眠模式等,可在系统中作为显示屏。方案三:采用LCM240128ZK点阵图形型液晶作为主液晶显示屏。LCM240128ZK液晶显示模块是240128点阵的汉字图形型液晶显示模块,可显示汉字及图形,内容158行,内含7602个简体中文字型,支持4/8位6800/8080MPU接口,提供中英文文字对齐功能,内建粗体字形与行距设定,对比度软件调节,用户可自建字库,但其设计复杂,造价较高,不适宜选用。显示模块是多供能电子计价秤的重要组成部分。考虑到ZLG7290可驱动8为LED数码显示、显示功耗、大量实时信息的显示等因素,在本系统中我们选用金鹏OCMJ48C液晶屏显示商品单价、品种、重量、实时时钟和温度等信息;选用ZLG7290驱动的8段LED数码管显示金额信息。这种显示组合方式能够很好的降低系统的功耗且能够充分利用已有资源,是最优的显示方案。2.6打印模块题目要求可打印最近存储的100组购物清单,包括:购货日期、收银员编号、商品名称、数量、单价、金额、本次购物总金额等信息。因此需要扩展打印机模块可供选用的方案如下:方案一:直接使用微型打印机的机芯,微控制器直接控制机芯工作。采用这种方案可以减少设备的体积,也可以降低成本但开发难度很大,同时因为各种打印机的机芯不统一,带来一定的采购风险。方案二:使用针式微型打印机。可选用并行、串行多种接口,可选用内置汉字库的打印机打印。设备体积较小,打印机的选用范围比较大,各种打印机接口也比较统一。但是噪音比较大,打印的质量不是很理想。方案三:采用扩展喷墨打印机,打印机效果较好,且接口简单,但控制命令未知。短时间内很难熟练掌握。从实用和价格等多方面考虑,我们选用方案二使用针式微型打印机。2.7实时时钟模块方案一:选用低功耗实时时钟/日历CMOS PCF8563芯片,与采用并行总线的实时时钟芯片相比,虽然PCF8563节省了CPU资源,外围电路简洁,但LPC2103的I2C采用中断发送和接收数据,与键盘模块的外部中断会产生影响,降低了系统可靠性。方案二:选用实时时钟芯片DS1032。DS1302 是美国DALLAS公司推出的一种高性能、低功耗、带RAM的实时时钟电路,它可以对年、月、日、周日、时、分、秒进行计时,具有闰年补偿功能,工作电压为2.5V5.5V。采用三线接口与CPU进行同步通信,并可采用突发方式一次传送多个字节的时钟信号或RAM数据,通过I/O口与ARM2103进行通信,操作方便,简单易行,且具有掉电保护功能,稳定可靠,是实现各种时钟功能的理想选择。方案三:选用ARM2103内置RTC,它的秒、分、小时、日、月、年和星期及其定时报警寄存器可以直接被CPU读写,降低了系统开销。而且它的功耗超低,具有独立的电源和时钟源,支持电池或其他的3.3V电源供电,特别适用于不需要连续工作的系统。时钟源灵活,指定的32.768HZ的振荡器和可编程VPB时钟预分频器均可作为时钟源。 比较以上三种方案,最初我们选择的是方案二,但程序调了好长时间始终没能够调通,后来我们才发现方案三其实是实现这一功能的最佳方案。最终我们选择了方案三。 2.8温度测量报警模块方案一:1.采用PT100作为测温电路的温度传感器。PT100传感器是利用铂电阻的阻值随温度变化而变化,并呈一定函数关系的特性来进行测温的,具有抗震动,稳定性好,准确度高,耐高压等优点。但使用起来比较复杂。方案二:采用DS18B20作为测温电路的温度传感器。DS18B20的数字温度输出通过“一线”总线这种独特的方式,可以使多个DS18B20方便的组建成传感器网络,为整个测量系统的建立和组网提供了更大可能性。它在测温精度,转换时间,传输距离,分辨率等方面比其它温度传感器有了很大的进步,给用户带来了更方便的使用和更令人满意的效果。方案三:采用LM35温度传感器。LM35温度传感器是NS公司生产的,他具有很高的工作精度和较宽的线性工作范围,他的输出电压与摄氏温度线性成比例,即0时输出为0 V,每升高1,输出电压增加10 mV。且无需外部校准或微调,可以提供14的常用的室温精度。其电源供应模式有单电源与正负双电源两种,正负双电源的供电模式可提供负温度的测量,单电源模式在25下电流约为50 mA,非常省电。LM35电压与温度转换公式如下:由于该多功能电子计价秤要求的测温显示误差不大于1,选择LM35已能够满足测温的需要,且LM35的电路结构、与ARM接口方式及编程方式都较简单。所以我们选用方案三,用LM35作为温度传感器和温度监控器(温度超限报警),并使用单电源供电。2.9存储模块电子计价秤系统包含着大量的商品数据,因此一个大的存储空间和一个好的存取算法对整个系统的功能和速度都会产生举足轻重的影响。所以存储器的选用至关种重要。方案一:采用256K位的非易失性铁电随机存储器。该存储器有256K位的非易失性铁电随机存储器,32768*8位的结构容量,100亿次的读写次数,掉电数据保持10年,且写数据无延时。,相对于EEPROM或其他非易失性存储器,该存储器具有系统可靠性更高,结构更简单等诸多优点方案二:采用ARM2103最小系统板自带的存储器CAT1025。它是具有256字节存储空间、I2C接口的专用电源监控复位芯片,容量大,足够用来存储大量商品的单价信息了。另外, Vcc电压监控电路提供了硬件数据保护功能,防止在Vcc降到低于复位阈值电压或上电时Vcc上升到复位阈值电压之前对存储器执行写操作。运用ARM2103实验板自带的存储器还可以节省资源,实现资源的合理利用。题目要求能够存储100组购物清单并显示,数据具有掉电保护,清单内容包括:购货日期、收银员编号、商品名称、数量、单价、金额、本次购物总金额等信息。因此需要进行大量数据的存储,且具有掉电保护,综合考虑100组购物清单存储所需要的容量等因素我们选择了方案案一,扩展256K位的非易失性铁电随机存储器FM24C256来存储最近100种商品的销售信息。三 主要单元电路设计3.1电源及电池充电模块电路该多功能电子计价秤采用双电源供电:220V市电和蓄电池。由于该电子计价秤正常工作所需要的电源为5伏直流电源,在220V市电的供电电路的设计中我们采用逐次降压的方法将220伏市电转换为5V直流电。在电池供电电路的设计中考虑到电池电压随着使用时间的延长而降低,在电路设计时我们采用7805将电池电压稳定在5V上。在设计时我们还设计了蓄电池的充电电路,在使用市电供电时系统自动对蓄电池充电。该模块电路原理图如图3.1所示。 图3.1 电源及掉电保护原理图 3.2可调高稳定度0-2V直流电源该电源主要用来模拟称重传感器输出的称重信号源,要求具有较高的稳定度且电压在0-2V连续可调。我们采用LM35产生2.5V的基准电压。然后用2.5K欧高精度电阻和10K欧的高精度电位器进行分压,电位器两端的电压即为连续可调高稳定度0-2V直流电源。其电路原理图如图3.2所示: 图3.2 0-2V的可调高稳定电源3.3 AD采样转换电路本系统中时刻须采样压力并通过AD进行转换,得到可应用的数字信号。电路如图3.3所示: 图3.3 AD采样电路3.4 显示电路本系统中采用金鹏OCMJ48C字符型液晶显示屏,可实现显示汉字,图形等多种功能,七管脚连接如图3.4所示: 图3.4 液晶显示电路3.5 7290键盘电路 ZLG7290是具有I2C串行接口功能的,可同时驱动8位共阳式数码管或64只独立LED的智能显示驱动芯片,该芯片同时还可以连接多达64键的键盘矩阵,单片即可完成LED显示、键盘接口的全部功能,并且内含去抖电路,按键比较稳定。考虑到在电子称中无需用全部的按键,我们仅用ZLG7290的16个键来控制电子称的各种功能电路图如图3.5所示: 图3.5 7290键盘电路原理图3.6 打印机驱动电路 本系统中采用RD系列微型打印机,此种打印机应用了与RS232C标准兼容的串行接口,可由ARM主机板直接控制,操作方便,连线简单,命令易懂。 打印机采用串行的DB-9芯孔座,接口电路如图3.6所示: 图3.6 打印机串口电路连接3.7 温度测量报警模块电路 本电路采用LM35来测试电子秤系统的过温保护,防止室温超过电子称所能承受的温度范围。温度测量系统电路连接原理图如图3.7: 图3.7 温度测量电路原理图3.8 前级放大器模块电路 称重传感器输出信号的幅值在毫伏级无法驱动CPU进行数据处理,必须经过前级放大将信号幅值放大到0-2V的标准信号才能输入到CPU进行数据处理。因此在该系统的设计中必须设计前级放大电路,其电路原理图3.8所示: 图3.8 前几放大电路原理图 四 系统软件设计及流程图4.1 系统主程序流程图本系统采用LPC2103微处理器作为主控制单元系统复位后首先对各功能部件初始化,然后在主程序中不断循环读键值,并作相应处理,控制显示内容,显示方式,几个键所对应的不同操作。流程图如图4.1: 图4.1 系统流程图4.2 I2C总线协议ZLG7290和24C256存储器与ARM2103的接口形式都是I2C 串行总线,因此有必要简要地介绍一下I2C 总线协议标准。(1)I2C 总线简介飞利浦(Philips)于20 多年前发明了一种简单的双向二线制串行通信总线,这个总线被称为Inter-IC 或者I2C 总线。目前I2C 总线已经成为业界嵌入式应用的标准解决方案,被广泛地应用在各式各样基于微控器的专业、消费与电信产品中,作为控制、诊断与电源管理总线。多个符合I2C 总线标准的器件都可以通过同一条I2C 总线进行通信,而不需要额外的地址译码器。由于I2C 是一种两线式串行总线,因此简单的操作特性成为它快速崛起成为业界标准的关键因素。I2C 总线只需要由两根信号线组成,一根是串行数据线SDA,另一根是串行时钟线SCL。一般具有I2C 总线的器件其SDA 和SCL 引脚都是漏极开路(或集电极开路)输出结构。因此实际使用时,SDA 和SCL 信号线都必须要加上拉电阻(Rp,Pull-Up Resistor)(图4.3)。上拉电阻一般取值310K。开漏结构的好处是:当总线空闲时,这两条信号线都保持高电平,几乎不消耗电流;电气兼容性好,上拉电阻接5V 电源就能与5V 逻辑器件接口,上拉电阻接3V 电源又能与3V 逻辑器件接口;因为是开漏结构,所以不同器件的SDA 与SDA 之间、SCL 与SCL 之间可以直接相连,不需要额外的转换电路。发送器(Transmitter):发送数据到总线的器件;接收器(Receiver):从总线接收数据的器件;主机(Master):初始化发送、产生时钟信号和终止发送的器件;从机(Slave):被主机寻址的器件。I2C 总线是双向传输的总线,因此主机和从机都可能成为发送器和接收器。如果主机向从机发送数据,则主机是发送器,而从机是接收器;如果主机从从机读取数据,则主机是接收器,而从机是发送器。I2C 总线的通信速率受主机控制,能快能慢。但是最高速率是有限制的,I2C 总线上数据的传输速率在标准模式(Standard-mode)下最快可达100Kb/s。I2C 总线上数据的有效性(Data validity)(图4.4)数据线SDA 的电平状态必须在时钟线SCL 处于高电平期间保持稳定不变。SDA 的电平状态只有在SCL 处于低电平期间才允许改变。但是在I2C 总线的起始和结束时例外。某些其它的串行总线协议可能规定数据在时钟信号的边沿(上升沿或下降沿)有效,而I2C 总线则是电平有效(2)起始条件和停止条件(START and STOP conditions)起始条件:当SCL 处于高电平期间时,SDA 从高电平向低电平跳变时产生起始条件。总线在起始条件产生后便处于忙的状态。起始条件常常简记为S。图4.2 I2C总线电路图 图4.3 I2C总线数据有效性示意图停止条件:当SCL 处于高电平期间时,SDA 从低电平向高电平跳变时产生停止条件。总线在停止条件产生后处于空闲状态。停止条件简记为P。图4.4 I2C总线数据起始条件和停止条件示意图4.3 UART协议 LPC2103微控制器包含有两个符合16C550工业标准的异步串行口(UART)UART0和UART1。其中,UART0仅提供TXD和RXD信号引脚,UART1增加了一个调制解调器(Modem)接口。UART1仅仅比UART0多了一个Modem接口,其余方面两者都是完全相同的。 Uart协议特点包含:(1)16字节收发FIFO;(2)寄存器位置符合16C550工业标准; (3)接收器FIFO触发点可为1、4、8和14字节; (4)内置带波特率功能的波特率发生器; (5)包含使能实现软件和硬件流控制的机制; (6)UART1含有标准调制解调器接口信号,且硬件完全支持流控制(auto-CTS/RTS)。UART管脚描述如图所示: 图4.5 UART管脚描述ARM2103与其他设备的通信原理如下: 图4.6 UART通信原理图2008年山东省“ZLG杯”大学生电子设计竞赛4.2 AD采样转换及程序流程图 在本系统中AD采样速度较快且所采数据不是很稳定,所以采样后的数据处理,即滤波算法,在本系统中有着举足轻重的作用,常用滤波方法及其精度计算如下: (1) 防脉冲干扰平均值滤波 此种算法是最常使用的基本算法之一,即采集一定个数的数据后,将其最大的和最小的数去掉后求剩余数的平均值。这是最简单的、最易实现的方法,也是最常用的方法,但其精度不高,在本系统中使用很难达到题目的精度要求。 (2)加权递推平均滤波法具体方法是对递推平均滤波法的改进,即不同时刻的数据加以不同的权通常是,越接近现时刻的数据,权取得越大。给予新采样值的权系数越大,则灵敏度越高,但信号平滑度越低。此种方法的优点是适用于有较大纯滞后时间常数的对象和采样周期较短的系统。其缺点是对于纯滞后时间常数较小,采样周期较长,变化缓慢的信号不能迅速反应系统当前所受干扰的严重程度,滤波效果差。AD模块结构流程图如图4.7: 图4.7 AD模块结构流程图4.3 存储子程序流程图 在本系统中存储器主要用来存储商品信息的,对它的操作主要是进行读写功能,在本系统中我们设计了对其进行随时擦除的功能,程序流程如图4.8: 图4.8 存储流程图4.4 显示子程序流程图 显示器件我们选用的是金鹏液晶屏,可以很方便的显示各种商品信息,操作简单,其时序图如图4.9: 图4.9 LCD时序图流程图如下图4.10: 图4.10 LCD显示流程图4.5 键盘处理子程序流程图 在电子秤的功能设计中,键盘也是设计的关键之一,按键键值的处理是软件的难点之一,我们采用的是16键的7290,为了使之实现比较多的功能,我们在程序中采用了按键的功能复用,其程序流程图如4.11: 图4.11 键盘处理流程图五 系统测试与调试5.1 开机屏测试本设计中要用到日期和时间系统内部嵌入ARM2103自带RTC时钟模块。掉电的时候由掉电保护电路提供电源维持时钟的运行,以确保任何时候开机,都可以知道当前的时间而不用每次上电时更改。在本屏,操作员可以清楚地了解到当前的时间包括年、月、日、星期、时、分、秒 以及当前环境温度且这部分显示内容是以1s为周期不断刷新的,不受当前系统工作状态的影响,开机后提示输入操作密码,输入密码且密码正确后提示输入操作员编号。操作者输入编号后显示操作员姓名确认正确后显示欢迎界面系统进入待机状态,屏幕刷新一次可对该多功能电子计价秤进行操作。测试内容:键盘切换实现实现开机时屏幕的显示和操作密码及操作员编号的输入。开机屏幕显示测试操作过程请输入操作密码:2008-09-15 2414:30:25 星期:一请输入操作密码: *2008-09-15 2414:30:55 星期:一密码输入正确!请输入操作员编号2008-09-15 2414:31:20 星期:一(1)开机上电屏幕显示(2)输入操作密码(3)确认密码并输入编号请输入操作员编号 *2008-09-15 2414:32:15 星期:一山轻爱心超市1号柜台 徐美 2008-09-15 2414:32:58 星期:一欢迎光临山轻爱心超市2008-09-15 2414:33:09 星期:一(4)输入操作员编号(5)确认输入(6)待机界面5.2零点校验重量:00.075公斤2008-09-15 2414:34:23 星期:一重量:00.000公斤2008-09-15 2414:35:08 星期:一(1)轻触托盘激活称重功能(2)连按5次功能键校零5.3单价输入存储及金额计算功能测试请按数字键选择商品 2008-09-15 2414:35:29 星期:一编号:1 苹果单价: 000.00元 2008-09-15 2414:36:13 星期:一编号:1 苹果单价: 123.45元 2008-09-15 2414:36:25 星期:一按一次功能键切换至商品单价存储模式按下数字“1”键选择商品1按数字键输入商品单价编号:1 苹果单价: 123.45元 2008-09-15 2414:36:58 星期:一请按数字键选择商品 2008-09-15 2414:38:19 星期:一1 苹果 123.45元重量:00.000公斤2008-09-15 2414:39:25 星期:一按确认键确认输入按两次功能键按下数字“1”键选择商品11 苹果 123.45元重量:00.200公斤2008-09-15 2414:40:20 星期:一1 苹果 123.45元重量:02.520公斤2008-09-15 2414:41:18 星期:一1 苹果 123.45元重量:12.450公斤2008-09-15 2414:42:05 星期:一往托盘上放2KG砝码数码管显示:024.690元往托盘上放2.520KG砝码数码管显示:0311.09元往托盘上放12.450KG砝码数码管显示:1536.95元5.4计价秤测重性能测试5.4.1基本制作部分性能测试表一:基本制作部分性能测试数据模拟电压(mV)理论重量(公斤)实测重量1(公斤)实测重量2(公斤)实测重量3(公斤)稳定时间(S)实测均值(公斤)绝对误差(公斤)相 对 误 差(%)00.000 0.000 0.001 0.00000.0003-0.000320.020 0.020 0.020 0.02010.02000.00000.000050.050 0.050 0.050 0.05110.0503-0.0003-0.6667100.100 0.101 0.099 0.09920.09970.00030.3333200.200 0.200 0.199 0.20030.19970.00030.1667500.500 0.499 0.500 0.50010.49970.00030.06671001.000 0.999 0.998 1.00441.0003-0.0003-0.03332002.000 1.998 1.997 2.00071.99830.00170.08335005.000 4.989 5.005 4.99734.99700.00300.0600100010.000 10.002 9.985 9.99449.99370.00630.0633150015.000 14.992 15.006 15.002515.00000.00000.0000175017.500 17.504 17.489 17.502417.49830.00170.0095200020.000 19.997 19.970 20.0091019.99200.00800.0400平均值0.00160.0095从上表中我们可以看出用模拟电压进行模拟时,实测重量和理论重量几乎一样,没出现太大的误差,但稳定时间有时符合标准,有时达不到标准,说明此时模拟系统不稳定,需要进一步的改进;从绝对误差和相对误差方面看,当模拟重量处于偏小范围时,产生的相对误差较大,根据理论分析和实际观察,可能的原因是测量时电路自身的布局导致信号不稳,也可能是所选电容或电阻不太适合,我们改变了线路的部分器件后,所测结果有所改进。5.4.2发挥部分性能测试在采用压力传感器时,经

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论