多功能电子秤设计_第1页
多功能电子秤设计_第2页
多功能电子秤设计_第3页
多功能电子秤设计_第4页
多功能电子秤设计_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

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

文档简介

1、本科生毕业设计多功能电子秤设计The design of multi-function electronic scale学生姓名朱华玲所在专业自动化所在班级1112申请学位工学学士指导教师职称副教授副指导教师职称答辩时间目 录设计总说明IINTRODUCTIONII绪论11主要元件的选用方案和简介2控制芯片的选择及其介绍2PWM模块2通信模块(SCI、SPI)2A/D转换模块3称重传感器的选择及其介绍3HX711转换器的介绍6LCD显示屏的介绍64*4键盘的介绍72硬件电路的设计8MC9S12XS128芯片8传感器模块的设计8人机交界的设计9电源模块11报警电路123软件部分设计13单片机控制

2、设计13设计总程序框图13主程序设计流程图14AD转换程序设计14键盘程序设计16LCD显示程序设计164软件调试18软件介绍18调试过程18数据的线性化18键盘扫描调试194.2.3 LCD显示调式19键盘功能与显示调试19结束语20鸣谢21参考文献22附录123附录224设计总说明该多功能电子秤设计系统以MC9S12XS128单片机芯片作为控制核心,用c语言进行软件设计,实现了电子秤的基本功能。本设计的总思路是通过传感器的应变效应原理,将重力信号变为电信号,再经过AD转换被CPU接收,CPU进行数据处理,然后扫描键盘输入,最后显示输出。电子秤硬件设计部分主要由控制模块、电源模块、人机通信模

3、块、数据转换模块四大部分构成。控制模块主要是MC9S12XS128(16位)单片机芯片,用于复杂的数据处理,运行速度比较快,控制启动AD转换、键盘输入、LCD显示输出、报警等功能。人机通信模块包括4*4键盘输入、LCD12864点阵显示屏和蜂鸣器,实现数据输入、数据显示、超重报警等功能。数据转换模块主要是称重传感器和HX711数字(24位A/D)转换芯片,称重传感器是由四个电阻式应变片对称安装在钢体悬梁臂上构成全桥差动测量电路的组合体,是单片机感知重量的桥梁。HX711的作用是模拟量转换成单片机可以处理的数字量。电源模块。软件部分是用c语言进行编译代码,比较简单易懂,是实现电子秤基本的控制功能

4、主要方法,通过Code Warrior软件进行调试,调节计算出最佳的参数,使称重功能更精准。电子称的的整个系统结构简单,实现了主要的称重功能,使用方便,在实际生活中具有比较高的使用价值。电子称在现实生活中有比较大的作用,是交易最重要的手段。但在很多市场交易中,电子秤还是不能普及,偶尔还有商人在秤上作假,因此制作多功能电子秤,在为人们提供便利上有一定的意义。制作电子秤,选择MC9S12XS128单片机,是设计任务要求,是我没有接触过的芯片,这要求利用旧知识去拓展去学习新事物,对如何吸取新知识有很好的帮助。本设计的标准基于如何正确使用MC9S12XS128单片机,如何设计硬件电路和实现称重功能,使

5、数据精度提到最高。该设计的原则是先写出总的程序流程图,在写各个模块的程序流程图,最后通过一定的关系将所有程序连接起来,编程也根据流程图来写,整个程序简单、有条理性、易懂,方便程序员理解。本人在设计中不断学习,从实际上做出了可以实现称重功能的电子秤实物。但本次设计还有地方可以创新,进一步完善和提高,有非常大的发展空间。电子称设计还可以深入研究,可以把人们平常更多繁琐的事通过单片机控制变为得更加方便。秤不再是以前的杆秤,现在的称更趋向智能化,多功能化。关键词:单片机;称重传感器 ;HX711转换器 ; 12864显示屏;键盘INTRODUCTIONThe design system of the

6、multifunctional electronic scale bases on MC9S12XS128 single-chip as control core, using c language to make software design, realized the basic function of electronic scale came true. The total train of thought of the design is that , firstly making use of the strain effect principle of sensor, tran

7、sforming gravity signal to electrical signal, and after AD transform the signal is received by the CPU, CPU deal withreceived data and then scan the keyboard, the last output to display screen. Electronic balances hardware design part mainly consists of control module, power supply module, man-machi

8、ne communication module, data conversion module. The control moduleIs mainly MC9S12XS128 (16bits) microcontroller chips, used for complex data processing, the operation speed is faster, which control to functions that include start the AD conversion, keyboard input, LCD display output, alarm and so

9、on. Man-machine communication module includes 4 * 4 keyboard input, LCD12864 display screen without matrix and a buzzer, accordingly realizing the of data input, data display and overweight alarm. Data conversion module mainly weighing sensor and HX711 digital (24 bits A/D) conversion chip, weighing

10、 sensor is made up of four resistive strain gauge which aresymmetrically installed on the steelbracket arm and Constitute the whole bridge differential measurement circuit, that is the bridge of microcontroller's perception of the weight. HX711 role is to make analog convert into digital quantit

11、y single chip can handle. Power module is mainly providing stable working voltage to the single chip microcomputer, display and sensors, the function is converting 6 V to 12 V to 5 V and 3.3 V two stable voltages. Software part is compilingcode with the c language, and the procedure is easy to under

12、stand, is the main method of realizing base control functions of electronic scale, using the software Code Warrior to debug and adjust the parameters of calculate the best, make the weighing function more accurate. Design realizes the function of the main weighing and electronic the whole system of

13、scaleis simple,easy to use, has higher use value in real life.Electronic scale plays greater role in real life, is the most important means of trade. But in a lot of market transactions, electronic balances are still not popularize, and occasionally businessmen cheat on scales, thus making multifunc

14、tional electronic scale has certain significance on provide convenience for people. In electronic scale design, choosing MC9S12XS128 single chip microcomputer, is a design task requirement, that is chip I have no contact with.This requires using the old knowledge to expand to learn new things, to ab

15、sorb new knowledge ,which have very good help for me. This design standard is based on how to correctly use MC9S12XS128 single-chip, how to design the hardware circuit and the function of weighing which make data precision more high. The principle of this design is to first draw the general program

16、flow chart and paint flow chart of the various modules, at last, all the procedures connects through a certain relationship, programming according to the flow chart and the whole program will be simple, organized, and easy to understand, easier to understand for programmers.I keep on learning in the

17、 design, I made out the scale that can realize electronic weighing function. Anywhere but the design still has more space to innovation and can be further perfect and improved, have the very big development space. Electronic scale design can make a in-depth study, it can make usual trval things more

18、 easier by single chip microcomputer control. That is no longer a previous steelyardscale ,and now,it tend to be more intelligent, more functional.KEYWORDS: singlechip ;weighing sensor;HX711 transverter;12864displaye screen;keyboard绪论秤,是一种测量物体质量的衡器。自古以来,随着秤的出现,解决了交易中出现的量的问题,使卖家和买家之间交易更加和谐,使卖家的商品得到最大

19、利益化,使买家的所买的量得到保证。秤在人们生活交易中已经是一种非常重要的衡量工具,进一步促进商业的发展,秤在交易中起到了很大的促进作用,其作用地位很大。世界上最早最原始的秤使古埃及人发明的,当时的秤使悬挂式的双盘秤,就是有两个秤盘别分挂在称梁的两端,主要用来称麦子的。中国发明称的人是范蠡,他发明了如今还在使用的杆秤,一边挂物品,另一边移动秤砣,称杆平衡后观察秤砣所处在位置的标号,便可知道物品的重量。随着社会的进步,科技不断发展,随着单片机的出现,电子产品也接着开始出现,电子秤是其中的一种发明。随着技术的提高,材料元件也逐渐越廉价,电子秤慢慢开始取代了杆秤,成为现在交易中首选工具,基本在商业交易

20、场所随处可见。随着电子秤的智能化,电子秤不只是单单显示重量,还更多的参与到数据处理和过程控制。随着称重传感器的精度的提高,电子秤的精度也不断提升,其功能也越来越多,应用方面也很广泛。因此,称重技术和称重传感器的研究受到世界各国的重视,是决定电子秤的量程精度。称量产品技术的高低,将直接影响到各领域的经济效益。所以,研究电子秤的设计有非常重要的意义。多功能电子秤的目的在于学习单片机系统的应用,使所学的知识得到体现,其设计意义是在学习研究设计过程中有所创新,学习利用单片机实现更多的功能,为人民生活创造更多的方便。多功能电子秤设计1 主要元件的选用方案和简介1.1 控制芯片的选择及其介绍单片机是整个硬

21、件控制系统的核心,对于单片的选择也有很大的要求。单片机体积小,运算功能强大,在科技发达的社会上,很多电子产品都有单片机作为控制核心,如今大部分电子产品都离不开单片机了。其中c51系列的单片机价格低廉,且在生活中使用很普遍,以C51系列为主的产品都是比较小型的控制设计。(1)、C51系列单片是一款美国Intel公司在MCS-48系列8位单片机基础上研发的高档8位单片机,是我国目前使用最广的单片机系列。该单片机主要部分有算术逻辑部件、寄存器、定时控制部件、程序存储器等等。其指令简单易懂,能实现大部分的简单常见的功能。(2)、Mc9s12xs128单片机是Freescale公司的HCS12X系列的一

22、种主要产品,是制作智能车的首选芯片。MC9S12XS128是16位的单片机,其中央处理单元是十六位,运算速度比C51系列的单片快;其片内储存器包括128KB程序Flash、8KB数据Flash和8KB RAM,可以装下较长的程序。该单片机内部有EPPROM模块,不需要外加掉电保存电路,自带可调的时钟源,无需外加时钟电路。该单片机主要功能模块有PWM模块、通信模块(SCI、SPI)、定时模块、AD转换模块、EEPROM模块、FLASH模块。对于设计电子秤,C51单片机基本能把电子称的所有功能实现,但随着社会科技的发展,数据也会越来越复杂庞大,8位C51单片机会逐渐被淘汰,现在16位、32位的单片

23、机开始慢慢取代它。因此,选择使用Mc9s12xs128芯片,目的是在C51单片机的基础上学习新的知识,拓展新视野。下面是Mc9s12xs128芯片主要模块的介绍。1.1.1 PWM模块PWM模块主要是输出特定占空比从0100%变化的程序脉冲波,主要应用于电机转速的PWM控制。PWM模块有8个输出通道,引脚号为M7M0八个端口,每一个输出通道都可以独立的进行输出,互不影响,达到可以同时控制多个目标。1.1.2 通信模块(SCI、SPI)SCI是一种采用NRZ格式的异步串行通信接口,是CPU与外设之间进行的数据交换的一种通信,它内置独立的波特率产生电路,可以设置多种波特率;它还内置SCI收发器,接

24、受发送数据程序,发送的程序数据一般是9个位的,其中一位是奇或偶校验位,方可保证数据在传送的过程中没有丢失。在两个通信模块设定好波特率后,导入传输驱动程序便可实现通信。SCI模块是全双工异步串行通信接口模块,主要用于不同类型设备之间的通信,比如蓝牙传送,其特点是局限性广,传输准确率高,但效率低。SPI主要用于同步串行通信。同步串行通信,通常先发12个字符作为数据传送的开始,称为同步字符,检测到该字符后紧接着连续按顺序传送数据,中间没有空闲位,没有停止位和开始位,传输速度很快。SPI通信主要用于单片机与单片机之间的通信,同类型设备的通信,其优点传输速率快,效率高,但局限性小。1.1.3 A/D转换

25、模块A/D转换模块是C51系列所没有的模块,Mc9s12xs128内置A/D转换电路,AD转换是不需要注意引脚之间的电路状态,只要将该模块初始化,设置好其内寄存器就能进行A/D转换。该模块共有两个方块,每个方块各有8个输入通道,引脚号是D0D15。A/D转换精度有8到10 位;每个转换通道都有转换完成中断,用于采集数据。1.2 称重传感器的选择及其介绍称重传感器一个十分重要的元件,是整个电子秤功能是否能实现的基础,决定一个电子称质量的高低程度。称重传感器相当于人的五官,将外界的信息传达给大脑芯片进行处理。称重传感器主要是把重力信号转换为电信号,能实现这功能的传感器有电容式传感器、压电传感器、电

26、阻式应变传感器。电容式传感器是建立在电磁感应原理基础上,具有工作可靠、寿命长、灵敏度高、精度高、性能稳定等优点,但做工复杂,价钱高。压电传感器是由有压电效应的材料制作而成,其结构简单、体积小、精度高,一般平常生活很少使用。电阻式传感器的基本原理是将被测量的变化转化为电阻的变化,再经过测量电路将电阻变化转变成电信号,再经过滤波放大等处理得到测量结果。其结构简单,价格低,在生活中的应用普遍。由于考虑到其设计的电路难易程度和其性价比等因素,选用电阻式应变传感器是最适合的。电阻式应变传感器的核心是电阻式应变片,本设计采用的应变片的格式为,灵敏系数:2.0±1%,其精度高、稳定性好、使用方便。

27、应变片是一片电阻值随着受到压力或拉力的影响从而发生有规律变化的弹性元件。但由于应变片比较小,其电阻变化容易受到外界多种因素影响使其产生误差,比如电阻温度系数的影响、电阻材料的线膨胀系数的影响等等。因此为了减少误差,提高其灵敏度,采用电桥测量电路进行误差补偿。电桥测量有单电桥、半桥差动电桥、全桥差动电桥。全桥差动电桥灵敏度最好,误差最小。单电桥电路图如下: 图11电桥电路E为电源电压,R1、R2、R3及R4为桥臂电阻,RL为负载电阻。当电桥平衡时,Uo=0,则有R1R4=R2R3当电桥电路只有一个应变电阻时,其灵敏度为:E当R1=R2=R3=R4时,电桥电压灵敏度最高,此时有半桥差动和全桥差动电

28、路如下图1-2,图1-3:图12半桥差动电路 图1-3全桥差动电路其灵敏度分别为经过电阻变化公式转换可以清楚地体现出全桥差动测量电路的优势,因此本设计中采用全桥差动测量电路可以更好的保证电子称的精度,减少应变片内部和外界误差。1.3 HX711转换器的介绍Mc9s12sx128单片机内集成了AD转换模块,其分辨率最大只有10位,这对于电子秤来说是不够的,因此外加了HX711转换器。HX711是一款A/D转换精度为24位的芯片,采用了海芯科技集成电路专利技术,对于数据精度要求高的是个很好的选择,也是称重传感器AD转换的最佳选择。该芯片内置稳压电源和自带时钟,其输入引脚可以接差分输入,两种模拟输入

29、通道,内置可编程放大器,无需外接放大电路。其特点是响应速度快、抗干扰性强精度高等优点。引脚功能如图:图1-4HX711引脚1.4 LCD显示屏的介绍从显示屏起源与七段显示数码管,从LED发展到LCD,显示屏给人类带来了视觉新体验,给人们传送丰富的信息。显示屏的数据显示是单片机给人提供的最直观的通信,根据不同要求选择适合的显示屏。要求要显示中文和字符的选择点阵式LCD显示屏,LCD显示屏有LCD1602、LCD12864等等规格。根据实际情况,选择YAOXY12864为最佳。YAOXY12864液晶显示模块,显示屏是蓝屏,外观尺寸有93*70*12.5mm视域有73*39mm,一共有20个引脚,

30、8个并行数据引脚,两对电源引脚(需要同时通5V电显示屏才亮),一个读写信号引脚,一个片选引脚,一个使能引脚,一个串口并口选择引脚。该显示屏可以通过编译点亮不同的点显示不同的图案、字符和文字,这是最基本最原始的显示方法,同时也是复杂工程量很多的方法。该显示屏内部包含了16*16和16*8点阵的基本的中文汉字(8192个)、8*16点阵的字符(128个)的字库,其优点就是不用对要显示的字符文字进行相应的编字模数据,可以直接向LCD芯片直接发送相应字符文字的字符数据就可以将其显示。一般的LCD都是并行数据线,该芯片还有串口方式和并口方式传输数据,可以根据与MCU数据接口的实际情况进行选用。串行方式编

31、程比较复杂点,无需接八个数据线引脚,往显示芯片写数据要将数据进行特定处理,才能将数据一位一位的随着串行链接时钟时序传输;并行串口不需要将数据处理,在写好命令字给写信号方可向LCD写数据,程序简单易懂。1.5 4*4键盘的介绍如今键盘在以单片机设计的产品中是几乎不可缺少的,键盘在人与单片机交接的过程中有着非常重要的作用,基本是所有单片机数据输入的首选工具。它们是计算机应用系统必不可少的输入、输出设备,是控制系统与操作人员之间交互信息的窗口、键盘并不陌生,电脑专用的键盘、计算器的按键等等其最终目的是一样的。用于单片机的键盘设计有很多格式,根据不同的要求,按键数也不同,比如有最简单的每个I/O口只有

32、一个按键的键盘,有4*4矩阵键盘、8*4矩阵32按键键盘等等。按照电子秤功能要求,提高I/O端口的利用率,选择4*4矩阵键盘。4*4键盘一共有16个按键,8个引脚。按键的闭合与否,取决于按键开关的通断状态,因此通过给一定的电信号检测各引脚的高低电平状态便可确定是否有按键按下和按键的位置。键盘输入要注意重键、按键连击、按键抖动等问题。这些问题需要设计者在编程时作特殊处理,比如按键程序采取单键按下有效多键按下无效原则,软件程序采取程序滤波防抖动等。2 硬件电路的设计2.1 MC9S12XS128芯片 MC9S12XS128芯片是整个系统的核心,其运算功能很强大,处理数据很强。其引脚比较多,多用于设

33、计输入输出比较复杂的作品。其芯片如下图图2-1 MC9S12XS128芯片2.2 传感器模块的设计称重传感器部分由电子称托盘、悬臂横梁、应变片、HX711转换器构成。为了提高重力测量的灵敏度,采取全桥差动测量电路;为了提高测量数据精度,采用HX711芯片提高24位AD转换。使得到的数据更准确,使误差最小,在安装4片应变片时,要两片在悬梁上,两片在悬梁下,上面两两位置对称,上下两片也要对称,且相邻两片应变片要两两受力方向相反,如图图2-2应变片安装图HX711芯片与电桥的连接设计电路如下图2-3 HX711接线图2.3 人机交界的设计LCD12864显示屏引脚功能如下:引脚1:GND,显示屏的电

34、源地引脚2:VCC,接工作电源+5V引脚3:V0,LCD驱动电压输入引脚4:RS(CS),并行指令、数据选择信号;串行的片选信号引脚5:R/W(SID),并行的读写信号;串口的数据串行传输口引脚6:E(CLK),并行使能信号;串行的同步时钟引脚714:DB0DB7并行的数据口引脚15:PSB,并行/串行选择:H并行,L串行引脚16:NC,空引脚引脚17:RST,复位,低电平有效引脚18:VOUT,倍压输出口,可悬空引脚19:LED_A,背光源正极+5V(点亮屏幕)引脚20:LED_K,背光源负极根据引脚的功能,和结合单片机的引脚用法,采用并行传输数据方式,程序简洁易懂且CPU运算速度也比较快。

35、用单片机的引脚M0M7作为数据口,K0K3作为LCD的信号口,设计LCD12864芯片引脚端口接线如下:图2-4 LCD接线图4*4键盘设计使用单片机的A0A7引脚作为键盘输入的I/O口,让每一个按键有规律连接在两个I/O引脚上,方便软件编程,为了使电路简单,没有加硬件防抖动电路,在程序加滤波去抖动。如图:图2-5键盘原理图2.4 电源模块根据设计中元件的要求,单片机的工作电压是5V,传感器所需电压5V,LCD显示需要提供两个5V电压。一共需要四个电源端口,一种电压。设计电源电路5V稳压电压是主要核心,使用稳压芯片设计DC-DC减压电路,如图图2-6 电源电路2.5 报警电路超重报警相对来说是

36、最简单的,只需要一个蜂鸣器就能实现。在硬件设计中,为了能让蜂鸣器响但又不能影响芯片工作电压,其电路设计如下:图2-7报警电路3 软件部分设计3.1 单片机控制设计3.1.1 设计总程序框图称重传感器HX711MC9S12XS1284*4键盘输入LCD显示报警图3-1程序总设计3.1.2 主程序设计流程图开始初始化按键开去皮调零接受AD转换数据键盘输入键盘程序数据处理超重报警报警程序显示按键关结束凋零程序YYYNNNYNNY图3-2主程序流程图3.2 AD转换程序设计 HX711转换芯片有固定的工作方式,转换数据需要按照特定的时序进行,因此转换程序必须严格按照时序图来写,才能得到正确的数据。其时

37、序图如下:图3-3 HX711AD转换时序图根据时序图,其软件流程图设计如下:储存数据DOUT引脚输入使能DOUT是否为低电平写时钟脉冲时序DOUT是否为1数据左移+1是否到第24个时序第25个时序数据处理数据左移+0YNYNYN图3-4 AD转换流程图3.3 键盘程序设计判断键盘是否有按键按下和识别按键的方法有程控扫描法、定时扫描法、中断扫描法。由于该设计的程序量不是很大,CPU的运算时间短,因此采用程序扫描法。图3-5键盘设计流程图3.4 LCD显示程序设计该设计的LCD显示屏自带中文字库,不需要对要显示的文字和字符进行计算字模点阵,直接向显示屏发送相应字符即可。显示程序采用串行行传输,写

38、入数据需要严格根据时序来写,其串行时序图如下图3-6 LCD串行时序LCD流程图如下:C开始显示初始化选择地址返回写指令程序显示字符写数据程序图3-7 LCD设计流程图4软件调试CodeWarrior是MC9S12XS128单片的专用程序编程软件。Codewarrior development studio是比较完整的编程开发环境,包括构建平台和应用所必需的所有主要工具 - IDE、编译器、调试器、编辑器、链接器、汇编程序等。另外,CodeWarrior IDE支持开发人员插入他们所喜爱的工具,使他们可以自由地以希望的方式工作。CodeWarrior开发工作室将尖端的调试技术与健全开发环境的简

39、易性结合在一起,将C/C+源级别调试和嵌入式应用开发带入新的水平。开发工作室提供高度可视且自动化的框架,可以加速甚至是最复杂应用的开发,因此对于各种水平的开发人员来说,创建应用都是简单而便捷的。它是一个单一的开发环境,在所有所支持的工作站和个人电脑之间保持一致。在每个所支持的平台上,性能及使用均是相同的。无需担心主机至主机的不兼容。CodeWarrior开发工作室包括完成大多数嵌入式开发项目所需的所有工具。4.2调试过程调试过程主要的方面有:调节传感器使AD转换的数据趋向线性化,计算出线性参数;键盘输入是否能实现各个按键所要求的功能;显示屏是否能正常显示。遇到问题:AD数据线性度低解决方案:使

40、随着重量的不同得到一组线性变化的AD转换数据,首先要检查数据转换程序是否能够正常的接收数据。确定AD转换正常后,稍微改动应变片的安装位置使四个应变片受力更加平衡,使得到的数据在量程范围内呈线性分布。得到一组数据后,为了算出更加符合实际更精准的线性比例从而提高电子称的测量精度,使用最小二乘法来求出其拟合直线。最小二乘法是一种数学优化算法,是通过最小误差的平方和寻找到与数据匹配的最佳函数。其公式为结果:经过调节,得到了一条比较直的重量-数据的线性曲线。扫描调试遇到问题:按键无效。解决方案:触按下4*4矩阵键盘按键,用万用表检查按键是否好连通,确定键盘是否完好;在code warrior软件调试中检

41、查键盘输入程序部分,检查是否有正确的数据状态变化,确定是否有键盘信号输入,同时观察显示屏的数据是否显示正确、是否能实现键值功能。通过不断修改扫描程序减少程序误操作;修改按键查询调用程序完善各个键值的功能。结果:全部按键输入有效。4.2.3 LCD显示调式遇到问题:1、不能显示字符2、不能正确显示字符。解决方案:1、 硬件部分:检查LCD12864显示屏的功能引脚是否连接正确,检查数据线有没有与单片机相应的IO口正确连接;软件部分:检查LCD的写命令字和写数据代码是否正确,检查写数据时是否按照串行行的时序来传送数据。2、 检查字符字模是否正确和向LCD传送数据的程序是否有差错。结果:正确显示汉字

42、,数字,符号。遇到问题:1、 键盘输入数据显示不对。2、 动态数据显示乱码。解决方案:1、 检查键值子程序,动态输入显示地址,注意多次按键的显示数据之间的正确处理。2、 AD转换的数据经过正确的处理,将每一位数(带小数点)转变为一组字符串进行输出显示。结束语经过长时间的努力,最终制作出了实物。经过这次设计,我学到了很多新知识,得到了不少实践的经验,这对我来说是一笔非常重要的财富。在设计中,遇到了不少困难和挫折,首先没有接触过MC9S12XS128系列16位的芯片,这需要花一段时间是学习和探索;其次是制作和编程调式过程是最重要的,特别是在写程序时涉及到时序问题的程序,这让我知道了解时序的重要性。

43、在调试过程必须要保持多方面思考和要有耐心,最后才能成功。本设计让我受益匪浅,让我学会了如何独立自主去学习,让我知道在遇到困难时要保持冷静,这对我以后面向社会有很大的帮我。学习了16位的单片机,让我知道了所有的单片机其实是建立在C51系列基础上的,加上编程软件的出现,让人们更加容易去应用单片机。学会使用MC9S12XS128单片机,这在电子时代的社会对我在电子业发展有重大帮助。鸣谢本次课题设计在选题中得到徐今强老师的建议,在制作过程中遇到问题也能得到老师的指导。在设计期间,徐今强老师多次询问我们的设计的进度,监督我们的进程,并向我们指导正确的方向,为我们的设计和论文着想。老师教我们的东西使我终身

44、受益,在此表达我对徐今强老师的感激之情。老师的解惑之道,是我们一生的财富。老师的辛勤付出,只为莘莘学子的学成归来。在此致敬我们所有伟大可爱的老师!同时在制作过程中免不了请教同学,我也感谢同学的帮助,才能使设计更加完美。最后,感谢大学四年来的所有老师们,和同窗四年的同学们,还有在身边默默付出的家人,有了你们的指导和帮助,才有今天的我,正因为有你们的陪伴,我的生活才如此多姿多彩。谢谢参考文献1 陈万忠.MCS12单片机原理及嵌入式应用开发技术M.机械工业出版社,2012.92周美娟,肖来胜.单片机技术及系统设计M.3胡向东,刘京诚,余成波等.传感器与检测技术M,机械工业出版社 2009.1M,清华

45、大学出版社,5罗先觉.电路M,高等教育出版社M,MMM9MM11Microchip.Microchip ECHB VPDATEIM.1995/1996.12Multi-scale investigation of electronic transport and electromechanical behavior in carbon nanotube materials.Volume 42,issue8,december2011附录1主要元件列表元件数量元件数量MC9S12XS128单片机1YAOXY12864显示屏1键盘按钮16HX711转换器1应变片4蜂鸣器1钢铁块1电池1电子称托盘25

46、V稳压芯片48电容100uF8附录2#include <hidef.h> #include "derivative.h"#include<MC9S12XS128.h>#include"math.h"#include"getad.h"#include"keyboard.h"#include"Diplay.h"#include”LCD”#include uchar unsigned char#include uint unsigned intunchar price=&quo

47、t;单价:"uchar sum="总价:"uchar weight ="重量:"uchar yuan ="元"uchar number="0 ","1 ","2 ","3 ""4 ","5 ""6 ","7 ","8 ","9 ","."/*主程序*/void SetBusCLK_48M(void);void

48、 IO_Int(void);void delay_100us(uint t);void sendbyte(uchar data);void write_com(uchar cmd);void write_data(uchar displaydata);void lcd_init(void);void LCD_displaytring(uchar x,uchar y,uchar *s);void display(void);unsigned long Read_AD(void);float Get_AD_data(void);float deal_data(void);float qupi(vo

49、id);float data_convert_string(uchar data);void keyscan(void);void Keyboard_data(int ab )void SetBusCLK_48M(void) CLKSEL=0x00; PLLCTL_PLLON=1; SYNR=0XC0 | 0X05; REFDV=0X80 | 0X01; POSTDIV=0X00; _asm(nop); _asm(nop); while(0=CRGFLG_LOCK);/锁相环锁定 CLKSEL_PLLSEL=1;/选定外部时钟void DDRA(void)DDRA=0X1F;DDRK=0X12

50、;void main(void) SetBusCLK_48M();IO_Int();for(; ; )keyscan();display( );if(kg>10.00)PORTK_PK4=1;/超重报警else PORTK_PK4=0;/*LCD显示*/#define DATA 0xfa#define CMD 0xf8#define CS PORTA_PA0#define SID PORTA_PA1#define SCLK PORTA_PA2#define RST PORTA_PA3#define PSBPORTA_PA4void delay_100us(uint t);uint i,j

51、;for(i=0; i<t; i+) for(j=0; j<10; j+);void sendbyte(uchar data)/按照串口传输时序,数据按八位来传输uint i;for(i=0; i<8; i+)if(data << i) & 0x80)SID=1;else SID = 0;SCLK = 0;SCLK = 1;void write_com(uchar cmd)/写指令CS = 1;sendbyte(CMD);sendbyte(cmd)& 0xf0);sendbyte(cmd << 4) & 0xf0);delay_

52、100us(2);void write_data(uchar displaydata)/写数据CS = 1;sendbyte(DATA);sendbyte(displaydata)& 0xf0);sendbyte(displaydata << 4) & 0xf0);delay_100us(2);void lcdinit(void) RST = 0;delay_100us(100);RST = 1;Delay_100us(20000);write_com(0x30);/选择8bit数据流delay(50);write_com(0x0c);/开显示(无游标、不反白)de

53、lay_100us(50);write_com(0x01);/清屏delay(50);void LCD_displaytring(uchar x,uchar y,uchar *s)uchar ListLength,X2; ListLength = 0; X2=x; if(y<1)y=1; if(y>4)y=4; x &= 0x0F; /限制x不能大于16,y在1-4之内 switch(y)case 1:X2|=0X80;break;/根据行数来选择相应地址case 2:X2|=0X90;break;case 3:X2|=0X88;break;case 4:X2|=0X98;

54、break;Write_com(X2); /发送地址码 while (sListLength>=0x20) /若到达字串尾则退出 if (x <= 0x0F) /X坐标应小于0xF write_data(sListLength); / ListLength+;x+; delay_100us(50); void display(void)if(open=1)lcdinit();LCD_displaytring(3,1,“电子称设计”);LCD_displaytring(0,2,“重量:”);Get_AD_data( );data_convert_string(weigh);LCD_displaytring(4,2,s);LCD_displaytring(14,2

温馨提示

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

评论

0/150

提交评论