课程设计(论文)基于单片机的电子秤设计_第1页
课程设计(论文)基于单片机的电子秤设计_第2页
课程设计(论文)基于单片机的电子秤设计_第3页
课程设计(论文)基于单片机的电子秤设计_第4页
课程设计(论文)基于单片机的电子秤设计_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

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

文档简介

1、基于单片机的电子秤设计1系统方案论证与选型11.1 电子秤组成部分及设计思路11.2 数据采集部分21.2.1传感器的选择21.2.2放大电路选择31.2.3a/d转换器的选择31.2.3键盘处理部分方案论证42硬件电路设计42.1 at89s52的最小系统电路52.1.1单片机芯片at89s52介绍52.1.2.单片机管脚说明62.2 电源电路设计62.3 数据采集部分电路设计72.3.1 传感器和其外围电路设计72.3.2 a/d转换芯片与at89s52单片机接口电路设计82.3.3 测量算法82.4显示电路与at89s52单片机接口电路设计92.5键盘电路与at89s52单片机接口电路设

2、计93系统软件设计103.1 子程序设计113.2.1 a/d转换启动及数据读取程序设计113.2.2显示子程序设计113.2.3键盘扫描子程序的设计123.2 主程序设计13一系统方案论证与选型按照本设计功能的要求,系统由6个部分组成:控制器部分、测量部分、报警部分、数据显示部分、键盘部分、和电路电源部分,系统设计总体方案框图如图2.1所示。压力传感器a/d转换器放大电路at89s52单片机键盘lcd显示语音显示图2-1设计思路框图测量部分是利用称重传感器检测压力信号,得到微弱的电信号(本设计为电压信号),而后经处理电路(如滤波电路,差动放大电路,)处理后,送a/d转换器,将模拟量转化为数字

3、量输出。控制器部分接受来自a/d转换器输出的数字信号,经过复杂的运算,将数字信号转换为物体的实际重量信号,并将其存储到存储单元中。控制器还可以通过对扩展i/o的控制,对键盘进行扫描,而后通过键盘散转程序,对整个系统进行控制。数据显示部分根据需要实现显示功能。1.1 电子秤的组成部分及设计思路电子秤是利用物体的重力作用来确定物体质量(重量)的测量仪器,也可用来确定与质量相关的其它量大小、参数、或特性。不管根据什么原理制成的电子秤均由以下三部分组成:(1)承重、传力复位系统 它是被称物体与转换元件之间的机械、传力复位系统,又称电子秤的秤体,一般包括接受被称物体载荷的承载器、秤桥结构、吊挂连接部件和

4、限位减振机构等。(2)称重传感器即由非电量(质量或重量)转换成电量的转换元件,它是把支承力变换成电的或其它形式的适合于计量求值的信号所用的一种辅助手段。按照称重传感器的结构型式不同,可以分直接位移传感器(电容式、电感式、电位计式、振弦式、空腔谐振器式等)和应变传感器(电阻应变式、声表面谐振式)或是利用磁弹性、压电和压阻等物理效应的传感器。对称重传感器的基本要求是:输出电量与输入重量保持单值对应,并有良好的线性关系;有较高的灵敏度;对被称物体的状态的影响要小;能在较差的工作条件下工作;有较好的频响特性;稳定可靠。(3)测量显示和数据输出的载荷测量装置即处理称重传感器信号的电子线路(包括放大器、模

5、数转换、电流源或电压源、调节器、补尝元件、保护线路等)和指示部件(如显示、打印、数据传输和存贮器件等)。这部分习惯上称载荷测量装置或二次仪表。在数字式的测量电路中,通常包括前置放大、滤滤、运算、变换、计数、寄存、控制和驱动显示等环节。设计思路 当被称物体放置在秤体的秤台上时,其重量便通过秤体传递到称重传感器,传感器随之产生力电效应,将物体的重量转换成与被称物体重量成一定函数关系(一般成正比关系)的电信号(电压或电流等)。此信号由放大电路进行放大、经滤波后再由模/数(a/d)器进行转换,数字信号再送到微处器的cpu处理,cpu不断扫描键盘和各种功能开关,根据键盘输入内容和各种功能开关的状态进行必

6、要的判断、分析、由仪表的软件来控制各种运算。运算结果送到内存贮器,需要显示时,cpu发出指令,从内存贮器中读出送到显示器显示。一般地信号的放大、滤波、a/d转换以及信号各种运算处理都在仪表中完成。1.2 数据采集部分电子秤的数据采集部分主要包括称重传感器、处理电路和a/d转换电路,因此对于这部分的论证主要分三方面1.2.1 传感器的选择 在设计中,传感器是一个十分重要的元件,因此对传感器的选择也显的特别的重要,不仅要注意其量程和参数,还有考虑到与其相配置的各种电路的设计的难以程度和设计性价比等等.传感器量程的选择可依据秤的最大称量值、选用传感器的个数、秤体的自重、可能产生的最大偏载及动载等因素

7、综合评价来确定。最先开始我准备用mpx4250自带集成放大芯片和零点校正的压力传感器并且proteus中有仿真模型:摩托罗拉mpx4250系列歧管绝对压力传感器进行涡轮(map)提高发动机控制的设计是为了感觉绝对气压内的摄入量在静听着的松林之间。mpx4250系列传感器集成运算放大器、双极电路与薄膜电阻器网络提供一个高水平的模拟输出信号与温度补偿。小的形式因素和可靠性的要求,单片集成使摩托罗拉地图传感器有逻辑、经济实惠的选择为汽车系统设计师。特征最大误差超过01.5%至85c完美地适合直接微处理器的接口专利硅剪切应力应变计在- 40温度补偿到+ 125c提供减少重量、体积比现有的混合模块但去了

8、电子市场才知道真正买的压力传感器只有普通应变式压力传感器,于是放弃了选择实验室有的压力传感器,该传感器是航天科技集团公司7ol所的bk-2f型高精度s形测力/称重传感器。其测量作用力的最大范围可达20n,精度为005。输出经过ts-2型放大器放大后,输出流范围为4-20ma。1.2.2放大电路选择称重传感器输出电压振幅范围420mv。而a/d转换的输入电压要求为05v,因此放大环节要有312倍左右的增益。对放大环节的要求是增益可调的(70150倍),根据本设计的实际情况增益设为100倍即可,零点和增益的温度漂移和时间漂移极小。电阻变化率很小,这样小的电阻变化既难以直接精确测量,又不便直接处理。

9、因此,必须采用转换电路,把应变计的r/r变化转换成电压或电流变化,但是这个电压或电流信号很小,需要增加增益放大电路来把这个电压或电流信号转换成可以被a/d转换芯片接收的信号。在前级处理电路部分,我考虑过以下几种方案:方案(一):采用专用仪表放大器,如:ina126,ina121等构成前级处理电路。下面举例用ina128仪用仪表放大器来实现。图2.2利用普通运放设计的差动放大器一般说来,集成化仪用放大器具有很高的共模抑制比和输入阻抗,因而在传统的电路设计中都是把集成化仪器放大器作为前置放大器。然而,绝大多数的集成化仪器放大器,特别是集成化仪器放大器,它们的共模抑制比与增益相关:增益越高,共模抑制

10、比越大。而集成化仪器放大器作为心电前置放大器时,由于极化电压的存在,前置放大器的增益只能在几十倍以内,这就使得集成化仪器放大器作为前置放大器时的共模抑制比不可能很高。有学者试图在前置放大器的输入端加上隔直电容(高通网络)来避免极化电压使高增益的前置放大器进入饱和状态,但由于信号源的内阻高,且两输入端不平衡,隔直电容(高通网络)使等共模干扰转变为差模干扰,结果适得其反,严重地损害了放大器的性能。1. 前级采用运放a1和a2组成并联型差动放大器。理论上不难证明,在运算放大器为理想的情况下,并联型差动放大器的输入阻抗为无穷大,共模抑制比也为无穷大。更值得一提的是,在理论上并联型差动放大器的共模抑制比

11、与电路的外围电阻的精度和阻值无关。 2 阻容耦合电路放在由并联型差动放大器构成的前级放大器和由仪器放大器构成的后级放大器之间,这样可为后级仪器放大器提高增益,进而提高电路的共模抑制比提供了条件。同时,由于前置放大器的输出阻抗很低,同时又采用共模驱动技术,避免了阻容耦合电路中的阻、容元件参数不对称(匹配)导致的共模干扰转换成差模干扰的情况发生。 3. 后级电路采用廉价的仪器放大器,将双端信号转换为单端信号输出。由于阻容耦合电路的隔直作用,后级的仪器放大器可以做到很高的增益,进而得到很高的共模抑制比。 从理论上计算整个电路的共模抑制比为: 式中:cmrtotal或cmrrtotal放大器的总共模抑

12、制比;cmr1第一级放大器的共模抑制比;cmr2或cmrr2第二级放大器的共模抑制比;a1d、a1c、a2d和a2c分别为第一级放大器和第二级放大器的差模增益和共模增益。但市场只能买到简易运放tlo72cp,但我所选压力传感器是自带放大也就不用做放大电路但i/v变送有相应放大电路:1.2.3 a/d转换器的选择a/d转换部分是整个设计的关键,这一部分处理不好,会使得整个设计毫无意义。目前,世界上有多种类型的adc,有传统的并行、逐次逼近型、积分型adc,也有近年来新发展起来的-型和流水线型adc,多种类型的adc各有其优缺点并能满足不同的具体应用要求。并行比较a/d转换器:如adc0808、

13、adc0809等 。并行比较adc是现今速度最快的模/数转换器,采样速率在1gsps以上,通常称为“闪烁式”adc。它由电阻分压器、比较器、缓冲器及编码器四种分组成。这种结构的adc所有位的转换同时完成,其转换时间主取决于比较器的开关速度、编码器的传输时间延迟等。缺点是:并行比较式a/d转换的抗干扰能力差,但编程比较熟悉,就选用adc0809。1.2.3显示电路部分的选择数据显示是电子秤的一项重要功能,是人机交换的主要组成部分,它可以将测量电路测得的数据经过微处理器处理后直观的显示出来。数据显示部分可以有以下两种方案供选择。的组成有以下两种方案可供选择:一是 led数码管显示,二是lcd液晶显

14、示两种选择. lcd液晶显示器是一种极低功耗显示器,从电子表到计算器,从袖珍时仪表到便携式微型计算机以及一些文字处理机都广泛利用了液晶显示器。1.2.4 键盘处理部分方案论证由于电子秤需要设置单价(十个数字键),还具有确认、输出等功能,总共需设置13个键(包括一个复位键)。键盘的扩展有使用以下方案:采用矩阵式键盘:矩阵式键盘的特点是把检测线分成两组,一组为行线,一组列线,按键放在行线和列线的交叉点上。图2.6给出了一个34的矩阵键盘结构的键盘接口电路,图中的每一个按键都通过不同的行线和列线与主机相连这。34矩阵式键盘共可以安装12个键,但只需要7条测试线。当键盘的数量大于7时,一般都采用矩阵式

15、键盘,处理方法线选法。结合本设计的实际要求,12个按键使用34矩阵式键盘,另外一个复位键使用独立式按键实现。二.硬件电路设计根据设计要求与设计思路,此电路由一块at89s52、按键输入电路、时钟电路、复位电路、lcd显示段码驱动电路、lcd显示位码驱动电路、lcd显示器电路。在本系统中用于称量的主要器件是称重传感器(一次变换元件),称重传感器在受到压力或拉力时会产生电信号,受到不同压力或拉力是产生的电信号也随着变化,而且力与电信号的关系一般为线性关系。由于称重传感器一般的输出范围为420mv,对a/d转换或单片机的工作参数来说不能使a/d转换和单片机正常工作,所以需要对输出的信号进行放大。由于

16、传感器输出的为模拟信号,所以需要对其进行a/d转换为数字信号以便单片机接收。单片机根据称重传感器输出的电信号和速度传感器输出的速度信号计算出物体的重量。由于称重传感器一般的输出范围为020mv,对a/d转换或单片机的工作参数来说不能使a/d转换和单片机正常工作,所以需要对输出的信号进行放大。由于传感器输出的为模拟信号,所以需要对其进行a/d转换为数字信号以便单片机接收。单片机根据称重传感器输出的电信号和速度传感器输出的速度信号计算出物体的重量。在本系统中,硬件电路的构成主要有以下几部分: at89c52的最小系统构成、电源电路、数据采集电路等。单片机16个按键输入电路lcd显示器位码驱动电路时

17、钟电路复位电路lcd显示器段码驱动电路10位lcd显示器电路2.1 at89s52的最小系统电路2.1.1单片机芯片at89s52介绍单片机采用mcs-52系列单片机。由atmel公司生产的at89s52是一种低功耗、高性能cmos8位微控制器,具有8k 在系统可编程flash 存储器。at89s52具有以下标准功能: 8k字节flash,256字节ram,32 位i/o 口线,看门狗定时器,2 个数据指针,三个16 位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。空闲模式下,cpu停止工作,允许ram、定时器/计数器、串口、中断继续工作。掉电保护方式下,ram内容

18、被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。而且,它还具有一个看门狗(wdt)定时/计数器,如果程序没有正常工作,就会强制整个系统复位,还可以在程序陷入死循环的时候,让单片机复位而不用整个系统断电,从而保护你的硬件电路。at89s52有40个引脚,32个外部双向输入/输出(i/o)端口,同时内含2个外中断口,2个16位可编程定时计数器,2个全双工串行通信口,片上flash允许程序存储器在系统可编程,亦适于常规编程器。其将通用的微处理器和flash存储器结合在一起,特别是可反复擦写的flash存储器可有效地降低开发成本。2.1.3 at89s52的最小系统电路构成at

19、89s52单片机的最小系统由时钟电路、复位电路、电源电路及单片机构成。单片机的时钟信号用来提供单片机片内各种操作的时间基准,复位操作则使单片机的片内电路初始化,使单片机从一种确定的初态开始运行。单片机的时钟信号通常用两种电路形式得到:内部振荡方式和外部振荡方式。在引脚xtal1和xtal2外接晶体振荡器(简称晶振)或陶瓷谐振器,就构成了内部振荡方式。由于单片机内部有一个高增益反相放大器,当外接晶振后,就构成了自激振荡器并产生振荡时钟脉冲。当mcs-5l系列单片机的复位引脚rst(全称reset)出现2个机器周期以上的高电平时,单片机就执行复位操作。如果rst持续为高电平,单片机就处于循环复位状

20、态。根据应用的要求,复位操作通常有两种基本形式:上电复位和上电或开关复位。上电复位要求接通电源后,自动实现复位操作。上电或开关复位要求电源接通后,单片机自动复位,并且在单片机运行期间,用开关操作也能使单片机复位。单片机的复位操作使单片机进入初始化状态,其中包括使程序计数器pc0000h,这表明程序从0000h地址单元开始执行。系统复位是任何微机系统执行的第一步,使整个控制芯片回到默认的硬件状态下。51单片机的复位是由reset引脚来控制的,此引脚与高电平相接超过24个振荡周期后,51单片机即进入芯片内部复位状态,而且一直在此状态下等待,直到reset引脚转为低电平后,才检查ea引脚是高电平或低

21、电平,若为高电平则执行芯片内部的程序代码,若为低电平便会执行外部程序。2.3 数据采集部分电路设计数据采集部分电路包括传感器输出信号放大电路、a/d转换器与单片机接口电路。2.3.1 传感器和其外围以及放大电路设计传感器实际上是一种将质量信号转变为可测量的电信号输出的装置。用传感器首先要考虑传感器所处的实际工作环境,这点对正确使用传感器至关重要,它关系到传感器能否正常工作以及它的安全和使用寿命,乃至整个衡器的可靠性和安全性。因此传感器外围电路的抗干扰能力是数据采集部分电路设计的关键环节。传感器检测电路的功能是把电阻应变片的电阻变化转变为电压输出,由于惠斯登电桥具有很多优点,如可以抑制温度变化的

22、影响,可以抑制侧向力干扰,可以比较方便的解决称重传感器的补偿问题等。由于传感器输出的电流信号很小,是ma级的电压信号,因此为了提高系统的抗干扰能力,在传感器外围电路的设计过程中,增加了由普通运放设计的差动放大器增益调节电阻,是为了满足系统抗干扰的要求而设计。其电路图如3.2所示。 这是一个电阻应变片式称重传感器,将电阻应变片贴在金属的弹性体(即力敏感器)上,并连接成一差动全桥电路。电阻应变片实心轴沿轴向线应变为: (3-1)实心轴沿圆周向线应变为: (3-2)金属材料的电阻相对变化公式为: (3-3)把3-1、3-1代入3-3可以得到其输出电压为: (3-4)其中f为压力(即重物重量)a为受力

23、面积e为弹性材料的弹性模量。如果在电阻的两侧都加入应变片,则其输出为 (3-5)2.3.2 a/d转换芯片与at89s52单片机接口电路设计2.4 显示电路与at89s52单片机接口电路设计本设计采用是lcd显示。在lcd驱动时,需在段电极和公共电极上施加交流电压。若只在电极上施加dc电压时,液晶本身发生劣化。液晶驱动方式包括静态驱动、动态驱动等驱动方式。(1)静态驱动 所有的段都有独立的驱动电路,表示段电极与公共电极之间连续施加电压。它适合于简单控制的lcd。(2)多路驱动方式 构成矩阵电极,公共端数为n,按照1/n的时序分别依次驱动公共端,与该驱动时序相对应,对所有的段信号电极作选择驱动。

24、这种方式适合于比较复杂控制的lcd。在多路驱动方式中,像素可分为选择点、半选择点和非选择点。为了提高显示的对比度和降低串扰,应合理选择占空比(duty)和偏压(bias)。施加在lcd上所表示的on和off时的电压有效值与占空比和偏压的关系如下:vo:lcd驱动电压 n:占空比(1/n) a:偏压(1/a)多路驱动方式可分为点反转驱动和帧反转驱动。点反转驱动适合于低占空比应用,它在各段数据输出时,将数据反转。帧反转驱动适合于高占空比应用,它在各帧输出时,将数据反转。对于多灰度和彩色显示的控制方法,通常采用帧频控制(frc)和脉宽调制(pwm)方法。帧频控制是通过减少帧输出次数,控制输出信号的有

25、效值,来实现多灰度和彩色控制。而脉宽调制是通过改变段输出信号脉宽,控制输出信号的有效值,来实现多灰度和彩色控制。2.5 键盘电路与at89s52单片机接口电路设计矩阵式键盘的结构与工作原理: 在键盘中按键数量较多时,为了减少i/o口的占用,通常将按键排列成矩阵形式。在矩阵式键盘中,每条水平线和垂直线在交叉处不直接连通,而是通过一个按键加以连接。这样,一个端口(如p1口)就可以构成3*4=16个按键,比之直接将端口线用于键盘多出了一倍,而且线数越多,区别越明显,比如再多加一条线就可以构成20键的键盘,而直接用端口线则只能多出一键(9键)。由此可见,在需要的键数比较多时,采用矩阵法来做键盘是合理的

26、。矩阵式键盘的按键识别方法 :确定矩阵式键盘上何键被按下介绍一种“行扫描法”。行扫描法 行扫描法又称为逐行(或列)扫描查询法,是一种最常用的按键识别方法,如上图所示键盘,介绍过程如下。判断键盘中有无键按下 将全部行线y0-y3置低电平,然后检测列线的状态。只要有一列的电平为低,则表示键盘中有键被按下,而且闭合的键位于低电平线与4根行线相交叉的4个按键之中。若所有列线均为高电平,则键盘中无键按下。 判断闭合键所在的位置 在确认有键按下后,即可进入确定具体闭合键的过程。其方法是:依次将行线置为低电平,即在置某根行线为低电平时,其它线为高电平。在确定某根行线位置为低电平后,再逐行检测各列线的电平状态

27、。若某列为低,则该列线与置为低电平的行线交叉处的按键就是闭合的按键。 三.系统软件设计程序设计是一件复杂的工作,为了把复杂的工作条理化,就要有相应的步骤和方法。其步骤可概括为以下三点: 分析系统控制要求,确定算法:对复杂的问题进行具体的分析,找出合理的计算方法及适当的数据结构,从而确定编写程序的步骤。这是能否编制出高质量程序的关键。 根据算法画流程图:画程序框图可以把算法和解题步骤逐步具体化,以减少出错的可能性。编写程序:根据程序框图所表示的算法和步骤,选用适当的指令排列起来,构成一个有机的整体,即程序。程序数据的一种理想方法是结构化程序设计方法。结构化程序设计是对利用到的控制结构类程序做适当

28、的限制,特别是限制转向语句(或指令)的使用,从而控制了程序的复杂性,力求程序的上、下文顺序与执行流程保持一致性,使程序易读易理解,减少逻辑错误和易于修改、调试。根据系统的控制任务,本系统的软件设计主要由主程序、初始化程序、显示子程序、数据采集子程序和延时程序等组成。3.2.1显示子程序设计显示子程序主要是来判断是否需要显示,以及如何去显示,也是十分重要的程序之一。而显示子程序是其他程序所需要调用的程序之一,因此,显示子程序的设计就显得举足轻重,设计的时候也要十分的小心和卖力。设计显示子程序的流程图如下图4-4所示:图4.4显示子程序流程图3.2.2 a/d转换启动及数据读取程序设计a/d转换子

29、程序主要是指在系统开始运行时,把称重传感器传递过来的模拟信号转换成数字信号并传递到单片机所涉及到的程序设计。设计流程图如图4-2所示。4.2 a/d转换启动及数据读取程序流程图3.2.3 键盘扫描子程序的设计如图3.4.1所示:键盘电路设计成4x4矩阵式,由键盘编码方式可以得出0,1,2,3,4,5,6,7,8,9,a,b,c,d,e各键对应的键值: 0d8h,0d0h,0d1h,0d2h,0c8h,0c9h,0cah,0c0h,0c1h, 0c2h, 0c3h,0cbh,0d3h,0dbh,0dah,0d9h 。键盘是否按下是否功能键显示数字lcd初始化显示总价查找对应字符lcd显示返回在程

30、序中可以先判断按键编码,然后根据编码将键盘代表的数值送到相应的存储单元,再进行功能选择或数据处理。 查询方式自循环 3.2主程序设计#include #include #define uint unsigned int#define uchar unsigned char#define in0 xbyte0xfef8 /选择adc0809的通道0int dis05 = 0,0,0,0,0;int dis35 = 0,0,0,0,0;uchar code num11=0,1,2,3,4,5,6,7,8,9,.; int keyboard=0;int data1,data2; uchar temp

31、;int key; /键顺序码sbit lcd_rs = p35; /显示使能 sbit lcd_rw = p36;sbit lcd_ep = p37; uchar code dis1 = totalprice:000.0;uchar code dis2 = weg: pr:00.0; /开始显示code uchar price13=1,2,3, 4,5,6, 7,8,9, 0,.;void lcd_wcmd(uchar cmd); / 写入指令数据到lcdvoid lcd_pos(uchar pos); /设定显示位置void lcd_wdat(uchar dat); /写入字符显示数据到l

32、cdvoid lcd_init(); /lcd初始化设定 void keyscan(void); /键盘扫描void keydown(void);void keybordshow(); /键盘显示void countsum();/*名称:adc0809数模转换与显示说明:adc0809采样通道0输入的模拟量,转换后的结果显示在lcd上。*/sbit st=p30;/启动信号sbit oe=p31;/输出使能sbit eoc=p32;sbit clock=p33;void adc0809();void delay() int m=0,j=0; for(m=0;m2;m+) for(j=0;j10

33、0;j+); void delay1() int m=0,j=0; for(m=0;m20;m+) for(j=0;j500;j+); void display()/显示转换结果 int wz; for(wz=0;wz4)|0xf0); if(temp=1) / p1.4 被拉低 key=1; else if(temp=2) / p1.5 被拉低 key=2; else if(temp=4) / p1.6 被拉低 key=3; /行扫描 p1=0x0f; /低四位输入 行为高电平 列为低电平 temp=p1; /读p1口 temp=temp&0x0f; temp=(temp|0xf0); if

34、(temp=1) / p1.0 被拉低 key=key; else if(temp=2) / p1.1 被拉低 key=key+3; else if(temp=4) / p1.2 被拉低 key=key+6; else if(temp=8) / p1.3 被拉低 key=key+9;if(key=0&key=10) keyboard=keyboard*10+key; if(key=12) countsum(); /*/*计算总和 */*/ void countsum() int xh; data1=keyboard*data1/10; dis30=data1/1000; / 2500/1000

35、=2 data1=data1%1000; / data1=2500%1000=500 dis31=data1/100; / 500/100=5 data1=data1%100; / data1=500%100=0 dis32=data1/10;data1=data1%10; dis33=10; dis34=data1; for(xh=0;xh=0x4b&n=0x50) /键盘显示条件 delay1(); keydown(); delay1(); lcd_pos(n); lcd_wdat(pricekey-1); /用数组控制输出 n+; /右移地址 if(n=0x4d) n=n+1; /*/*lcd显示部分 */*/void lcd_wcmd(uchar cmd) / 写入指令数据到lcdlcd_rs = 0;lcd_rw = 0;lcd_ep = 0;delay(); p0 = cmd;delay();lcd_ep = 1;delay();lcd_ep = 0; void lcd_pos(uchar pos) /设定显示位置lcd_wcmd(pos | 0x80);void lcd_wdat(uchar dat) /写入字符显示数据到lc

温馨提示

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

评论

0/150

提交评论