深圳鼎盛合科技系芯海一代理芯海级代理商,代理芯海高精度ADC芯片,SOC芯片,wifi及蓝牙模块
目录摘要. 5第一章绪论. 71.1研究课题背景. 71.2 国内外发展概况. 91.3 课题研究的目的. 101.4 课题的研究内容及章节安排. 11第二章智能电子秤控制系统的设计方案. 122.1 设计任务代理芯海及要求
. 122.2 方案选择. 122.3 方案的论证与分析. 132.4 对设计方案进行对比分析. 14第三章系统硬件部分设计. 143.1总体设计. 143.2主控制器设计. 153.2.1芯片介绍
. 153.2.2时钟电路设计. 173.2.3复代理芯海位电路设计. 183.3 信号采集模块. 193.4数据转换模块. 203.4.1 A/D 转换器的选择. 203.4.2 ADC0832 的介绍. 21
3.4.3 单片机对 ADC0832 的控制原理的介绍. 213.5声光报警电路. 223.6显示电路. 233.7整机电代理芯海路. 24第四章系统硬件部分设计. 244.1主程序流程图. 244.2主程序流程图
. 264.3报警程序设计. 274.4报警程序设计. 27第五章系统软件设计部分. 295.1 软件研发的背景. 295.2 软件程序设计. 305.3 基于Proteus电路图绘制. 代理芯海31第六章
结束语. 33参考文献. 34致 谢. 35附录. 36摘要随着我国微型电子技术和嵌入式系统的发展,目前行业内相对比较传统的电子称重器无法满足客户的需求为了改进传统电子秤在称重计量上得短板问题,在本次毕业设计中,将使用相对先进、快捷、智能的控制机制。
该系统的控制大脑为核心部件51系列嵌入式开发系统,采用51单片机作为主要控制核心,在使用电子秤称重过程中主要通过电阻应变式压力传感器采集信号,通过数模转换将对称重电压信号进行数模转换和测量,最终将信号传送给显示器部分,蜂鸣报警等。
该电子秤设计具有智能称重、数字显示、报代理芯海警等功能,而且性价比高、度准确、能耗较低、制作简易、称重方便快捷等特点,给人民生活带来了很大的影响,在市场上很受欢迎该智能控制系统设计主要从国内外发展状况,硬件控制部件选择,根据控制原理绘制硬件电路,控制系统软件程序设计开发,软硬件联调仿真,焊接主板电路五个方面进行详细讲解。
该控制系统使用AT89C51嵌入式开发系统、传感器信号采集电路、声光报警模块、电路显示部分、数据转换电路等组成智能电子秤系统智能控制系统使用的数模转换电路是市场上专用的ADC0832芯片,将传感器采集到的模拟信号转换成单片机能够识别的数字信号,并且将数字信号在单片机上进行相应的处理,LM016L液代理芯海晶显示器将将信号稳定的显示出来,并且无闪烁现象。
关键词:单片机;传感器采集;液晶屏显示;信号转换AbstractWith the development of micro-electronic technology and embedded system in China, the traditio代理芯海nal electronic weighers in the industry are unable to meet the needs of customers. In order to improve the shortboard problem of the traditional elect代理芯海ronic scale in the weighing and metering, in this graduation project, will use the relatively advanced, fast, intelligent control mechanism.Control th代理芯海e brain of the system as the core component of 51 series embedded development system, using 51 single chip microcomputer as main control core, in the 代理芯海process of using electronic weighing mainly by resistance strain type pressure sensor to collect signals, weighing signal through A/D conversion to di代理芯海gital to analog conversion and measurement, will eventually signal transmitted to the display part, buzzer alarm, etc.The electronic scale design with代理芯海 intelligent weighing, digital display, alarm and other functions, but also cost-effective, accurate, low energy consumption, easy to make, weighing c代理芯海onvenient and fast characteristics, has brought a great impact on peoples life, in the market is very popular.
The system design from the hardware comp代理芯海onents selection, hardware circuit schematic drawing, system software design, hardware and software simulation, welding motherboard circuit five aspec代理芯海ts in detail. The intelligent electronic balance system is composed of AT89C51 microcontroller, sensor acquisition circuit, sound-light alarm module, 代理芯海circuit display part and data conversion circuit. The digital to analog conversion circuit used by the intelligent control system is a special ADC0832代理芯海 chip on the market. The analog signal collected by the sensor is converted into a digital signal that can be recognized by the MCU, and the digital s代理芯海ignal is processed on the MCU accordingly. The LM016L LCD will display the signal stably without flicker.
Key words: SCM; Sensor acquisition; LCD displ代理芯海ay; Signal conversion第一章 绪论1.1研究课题背景随着科学技术和社会的发展进步,家家户户都有电子秤,成为当今时代特别的景观。
然而,随着市场对电子秤的需求急剧增加,电子秤的智能化、快捷化、人性化越来越受人们的关注因此,只依靠电子称其自身的结构来提高产品功能是完全不够的,更是不现实代理芯海的,因此我们必须加强微电子学和计算机等现代电子技术的学习,给电子测量和仪器仪表届带来革命性的影响,而且要以一定的技术指标来考核目前的技术状况,用实验室各种高精度的仪器设备测试出数据,定量而又科学地判断电子测量仪器的技术状况,给予正确的评价。
然而,电子秤在使用过程中出现故障的几率是非常高的,液晶显示屏代理芯海等部件一旦出现故障,就不能够及时准确地测量出真实的数据,从而给用户带来不必要的麻烦作为二十一世纪的我们,对微电子行业有自己独特的见解和好奇心,更希望能够探索智能电子测量行业,为其尽一份自己的绵薄之力。
从古到今,微电子行业拥有悠久的历史,并且现如今蓬勃发展,微电子技术是基于智能开发的快捷技术,目前主要代理芯海在电子设计和电路原理上使用,同时朝着微型的最小系统方向不断革新起初,由于各国军队对电子设备的需求极高,对微电子控制设备给予了很多优秀的设想和建议,而且研究出了很多至关重要的新技术。
后来由于晶体管的发明,科学家在印刷电路轻量化、智能化方面取得了很大的进步,最终成功设计出以该组件为基础的复杂组件如今,由代理芯海于加工工艺水平的不断改进,可以将嵌入式开发系统、传感器、二极管等控件与电阻、电容、电感等器件,按照电路原理图互联,最终集成到一块板子上,具有一定的控制系统功能。
因为世界科学技术和人类文明的不断发展和创新,电子技术不管是在功能上还是在销量上都得到了前所未有的的发展和提高,逐渐变成当今社会人们必不可缺的代理芯海日常工具,从而改善了人们的生活方式但是伴随着人们的生活条件和经济水平不断改善,人们拥有智能电子秤的总量也在急剧增加,特别是大中及沿海城市,各种商业街和工厂随处可见的电子秤。
智能电子秤是一种高效快捷的测量方式,让我们更加快速的得出被测物体的质量,但不利的一面也是存在的,由于电子产品的质量存在很多问题,代理芯海比如我们常见的液晶显示屏黑屏和传感器精度丢失等现如今我国大多数城市,伴随着人口数量和人口流动量也在不断提升,对电子秤的智能化要求更高,智能测量、智能显示、智能报警等功能成为行业的发展趋势。
智能控制系统就是一个关键的因素,我们一般常见的秤都是用人来操作的,但随着微电子技术的提高,智能电子秤的控制方式也代理芯海越来越多,人们在测量过程中可能由于各种原因的不正确使用,从而导致电子秤损坏因此智能显示是非常重要的,能让用户清楚的知道智能电子秤的状况。
然而现在市场上一般的秤都需要人为去控制,但这样很难保证及时性和标准性,由于如今的一线大城市需求量较多,电子称的数量也越发增多,做到电子称的智能化、快捷化成为如今的发代理芯海展趋势现在我国的微电子技术已经得到了前所未有的进步,微处理器的智能化越来越好,性能也趋向完美,以目前的技术来达到对电子称的控制是完全可以实现的,随着国外处理器开发性能上的提高,而且性价比很高,不需用花费很大的成本,在我们的消费范围内增强控制电子称的智能化和准确度,这个是很重要的。
随着电子技术的发展和代理芯海微处理器的革新,电子产品越来越智能化,我们要逐步实现电子秤控制系统的智能化是当今社会的发展方向,引领电子秤新的航向随着这几年称重工具技术的不断革新,电子秤更加智能化,经过有效的数据转化和处理,并且在过程中增加控制,现如今称重计数和数据转化存储逐渐成为各大物流公司、转运公司、包装公司、销售公司的重要一代理芯海员。
同时电阻式称重传感器的技术和功能一直在发展,这也为电子秤随着称重传感器性能的不断突破,这也为电子秤行业的引领了方向1.2 国内外发展概况回顾以往,在19世纪末,当工业化迅速革命时,许多快速称重的成分出现了自动秤。
大约在1880年,第一个定量自动秤以型式被批准,并由斜象的垂直秤开发但是最多测量50代理芯海0公斤左右称重这一自动称重由以下几个步骤组成:a、掀开装有香料的称重桶;b、将散射引入称重桶;c、当重量到达平衡点后关掉进气口;d、智能卸载料具;e、秤和气动联轴器返回原位,自主恢复称重刻度。
展望过去的几年时光,微电子称重器具在数据转换和智能控制中起到了举足轻重的作用现如今智能称重和信息数据也逐渐成代理芯海为各大公司技术、生产、运输、销售过程中的重要测量工具 早在20世纪40年代我国的称重技术还很落后,主要以机械杠杆式为主,由于逐渐意识到落后和精度的缺失,渐渐开始向机电混合式的方向发展。
直到50年代左右,市场上开始涌现出一批压力传感器,慢慢的市场上的秤主要以电子类为主但由于国内外各类称重压力传感器的代理芯海功能和性能方面有了重大的革新,这也为我国智能电子秤的革新奠定了坚实的基础而国外的水平相对比较先进,一些欧洲国家在20世纪六七十年代电子秤技术已经有了先进的水平,精度可达0.1%,到了70年代中期市场上大多数的机械式杠杆秤被机电一体化的电子秤多取代。
现如今,智能电子秤的发展方向掌握在我们新一代青年中,代理芯海要朝着智能控制、程序控制、人性化的方向迅猛向前 我们的电子秤技术在20世纪70年代中期也取得了前所未有的进步,因为称重传感器技术的革新不同的电子秤,如春季雨后的青笋,逐渐应用于国家的所有部门。
作为生产过程冶金从事材料称重和钢水包灌溉铸件的混合物称重、轻纺期间从事生产技术称重和测量、包装,其中煤炭能代理芯海源行业连续称重核算材料和能源、称重测量消耗品行业材料称重,自动检查和分离从食物从事饲料原料称重,权衡产品组件中的电子被称重,在计数测量的日常生活在没有电子技术人员的情况下变成了一片区域。
此外,运输部门也离不开使用电子技术、轴和设备过载来提升建筑在医学领域,如果没有电子测量装置来研究新陈代谢和调节体内代理芯海的热量,身体连续减重曲线,如汗水和心跳,也无法获得这只是在国家经济中应用电子秤技术的几个方面,从这些事例中我们能够看出智能电子秤的使用和发展至关重要。
欧美等发达国家在智能电子秤制造方面有先进的水平,他们在20世纪60年代开始对智能电子秤控制系统方面展开深入的研究,在1980年之后,研究人员就基本实现代理芯海了对电子秤的智能控制,在20世纪末期,开始对智能电子秤的控制模块进行批量生产,但因为生产成本过高,这种最新的研发项目只用在了少数专用电子秤上,其他电子秤仍然需要依靠人为去操作电子秤控制系统。
然而现如今,智能电子秤控制系统已经成功地与电子技术相结合,而且逐渐走向成熟,由于购买成本有所减少,越来越多的人代理芯海开始购买智能电子秤控制系统我国在智能电子秤控制系统方向的研发力度不够,而且很晚,然而随着近几年来我国电子秤行业的蓬勃发展,电子秤数量也在快速增加,同样的对电子秤智能化的需求量也急剧增加。
即使国外在智能电子秤控制方面研究比较突出,但我国的实际需求情况比较复杂,并不能完全的应用此项技术,电子秤种类较多,代理芯海没有一致规范,而且消费习惯也不一样,达到智能电子秤控制还有一定的距离,但是智能电子秤控制系统在国内的还是有宽广的未来。
1.3 课题研究的目的在本次毕设研究当中,主要是针对智能电子秤控制系统这一方向进行学习的本次智能电子秤控制系统主要控制器是使用Flash存储器的AT89C51单片机,使用几种传感器来代理芯海收集数据,进而传输给单片机,单片机对数据进行分析和处理,让电子秤能够智能测量重量、制定价格、数据归零、自动去皮、显示数据等功能,同时增加报警电路,达到超重报警的需求为最终目标,能够做到控制电子秤的智能化和准确化。
电路中主要的控制部分主要由时钟电路、数据转换电路、复位电路、报警电路、信号采集电路、显示代理芯海电路等组成,从而达到设计要求,在方便操作人员的基础上,还提高了操作人员的快捷性电子秤是目前市场上至关重要的测量设备,准确性、快速性逐渐成为智能电子秤的显示要求,更要方便用户实时监控和实时测量,从而有效的将市场上比较落后的机械式测量装置,同时逐步成为电子秤行业的佼佼者。
在此次智能电子秤设计开发工程中主代理芯海要用编程为主进行软件开发,以嵌入式开发系统为核心,硬件电路主要采用电阻式称重传感器,该传感器精度较高,测量范围为0~10千克,同时可依据设计要求来手动修改智能电子秤的最高限值,当测量物体的重量超过所设置的上限值,蜂鸣电路就会报警,来提醒用户,方便智能。
但因为传感器输出的信号是模拟值,并且电量值很小,代理芯海不能满足数模转换电路接收的电压范围因此需要对信号通过滤波电路滤波,放大器放大处理,然后将转换的数据发送给单片机进行相关的处理,并通过LCD显示屏将数据呈现出来,设计成本相对较低,并且可以满足实际的需求。
该智能电子秤设计的优势主要体现在以下几点: 1、满足对数据的实时测量存储;2、对上限值可进行修改或代理芯海者重新设置;3、当测量数据超过限制值电路会发出报警提醒;4、测量精度比较高、5、数据传输显示速率高,准确性高。
本文设计的电子秤虽然是一个极其简单的智能仪器,但是通过它可以更深入的了解 智能仪器的工作原理以及其优异的性能1.4 课题的研究内容及章节安排此次课题研究是针对当前电子秤行业电子技术的发展和状代理芯海况进行一个初步的了解而确立的,它的总体设计思路符合目前的社会需求,将微控制器技术和智能电子秤控制系统紧密的结合在一起,做成了一系列成本低、性价比高、实用性高的智能电子秤控制系统。
本文一共分为五个章节:第1章是绪论部分,就是简明的表述了这次设计的研究背景、研究条件以及研究它的目的第2章是智能电子秤控制代理芯海系统的设计方案,对设计任务与目标的详细表述和系统控制模块设计思路的论证与分析第3章是系统硬件设计部分,简明的陈述了AT89C51嵌入式开发系统控制电子秤的硬件电路模块设计方案,其中就包括单片机控制的各类传感器也有相关的介绍。
第4章是系统软件设计部分,编写主程序流程图、数模转换子程序流程图、报警子程序代理芯海流程图等,使用C语言编程的方法将各种数据和系统控制模块以程序的形式编写出来,从而能够做到控制电子秤的目的,同时根据硬件要求去调试,在相对准确的前提下,达到对智能电子秤控制系统的完美控制。
第5章是系统仿真调试部分, 采用keil软件对集成代码进行调试,用Proteus绘制电路图并通过程序进行仿真第6章代理芯海是总结部分,这次设计本人认真的总结了在做这个课题研究时碰到的各种困难以及自己去克服它的方法,并且证明了我的设计方案的可行性和实用性。
第二章 智能电子秤控制系统的设计方案2.1 设计任务及要求通过智能电子秤控制系统,利用单片机设计一个电子秤重平台,通过传感器将重量转换成电信号,转换器采集后由单片机处理代理芯海具有称重、定价、归零、累加、去皮、显示的功能,同时还具有超载报警功能为目的。
智能电子秤的工作原理:当被测对象放置在秤盘上时,将检测到的重力传给传感器,传感器内部因受压而发生变形,同时传感器内部电路的阻抗也会随之改变,七通过激励电压方式给数模转换电路一路模拟值,数模转换电路将模拟值转换成数字量传送给嵌代理芯海入式开发系统,经过其内部处理逻辑将测量的数据通过显示器显示出来,使用户方便的看到被测对象的重量。
2.2 方案选择 在设计开发该控制系统时,有两种方案可达到智能电子秤的设计要求:方案一:此控制系统主要由数据采集电路、时钟控制电路、数据显示电路、功能复位电路、嵌入式开发系统及超限报警装置等五部分构成,是代理芯海在该控制系统工作原理的基础上对单片机数据进行了扩展,同时引入外界设备对嵌入式开发系统的内部数据进行标定,能够让电子秤达到智能测量的功能。
这种方案,硬件设计电路比较简易,同时接口设计电路比较容易实现,并且在代码量上很大程度减少了代码具体设计框图如图2-1所示:
图2.1:方案一框图方案二:该方案一共由七代理芯海部分组成,控制系统主要由时钟控制电路、功能复位电路、数据采集电路、数据显示电路、数模转换电路、嵌入式开发系统以及超限报警电路组成而且在控制系统的前部加入了数据采集处理、数模转换等设计方案,尤其是在显示电路部分使用了LCD液晶显示器,它具有字符、文字、图像显示的功能。
这种方案不仅加强了人机交换的能力,代理芯海而且显示位数全面其方框图如图2-2 所示:
图2.2:方案二框图2.3 方案的论证与分析方案一:该方案设计的智能电子秤,可以达到智能称重的目标,但由于电子数码管有一定的局限性,在数据显示方面不能达到足够的精度在称重过程中,若数码管的位数较低,不能达到要求,则测量的物体重量在精度方面不够准确,从而需要很代理芯海多的数码管集成到电路中去。
这样也要求系统的输入输出端口时增加更多的I/O接口,才能满足数码管的需求,相对较繁琐方案二:我们所用的单片机其实就是一个具有集成电路的微型计算机芯片,它用集成电路的方法将处理器、I/O端口、RAM和ROM和许多种存储器合并到一个硅片上。
并且单片机的作用比较全,原理简易、操作代理芯海便捷、控制电路速率快、可靠性高、芯片处理机制快、效率高、成本相对较低、使用比较灵活等优势并且采用LCD液晶显示器能够很大程度上节省I/O接口的运使用,可以现实的位比较多,足够使用,同时测量精度也达到需求,符合本次设计。
2.4 对设计方案进行对比分析针对这次毕业设计,我想设计出一个智能电子秤控制系统的代理芯海相关实物方案二可靠性强,容易编程,运行较快,成本相对较低,结构简单,可靠性高,处理性能强,并且单片机的功能不断升级,在使用时只要考虑周到,也能很好的满足要求。
另一方面,方案一在前端信号处理不足,而方案二在前端信号处理时,增加了数模转换方案,能够有效地处理信号,常符合设计要求经过我和老师的考虑,最后我代理芯海们选择了用方案二作为该系统的控制器在制作中,本人使用的是一款AT89C51系列芯片,后面会讲解详细的的芯片种类和相关介绍。
第三章 系统硬件部分设计3.1总体设计在本次设计过程中,本人打算在选择系统控制模块时使用AT89C51系列的单片机,通过自己和老师的努力,完成智能电子秤控制系统,用自己的程序实现代理芯海对它的智能控制该设计以AT89C51嵌入式开发系统为控制大脑,主要作用是进行实时数据分析,并且控制电子秤装置;单片机和它所连接的设备是由电源模块供电的,同时也使用了时钟电路,它用来控制系统的时序,保证各电路同步工作;众所周知复位电路用来复位单片机或系统中部件处于某种初始状态;压力传感器便是用在秤盘上代理芯海,采集压力,输出模拟信号。
智能电子秤系统是由嵌入式开发最小系统、数据处理电路、数据采集电路、超限报警电路、数据显示电路等构成,智能电子秤控制系统硬件电路原理图见附录1所示3.2主控制器设计本次智能电子秤控制系统的设计中所用到的控制芯片是AT89C51嵌入式开发系统,AT89C51的最小系统组成该系统代理芯海的主控制模块,该最小系统有3部分基本电路组成,其中有AT89C51嵌入式开发系统的微处理器、时钟电路模块、复位电路模块等。
它是控制系统中最为基础的控制模块,所有基于单片机的控制系统都需要它3.2.1 芯片介绍这次毕业设计中所用到的AT89C51嵌入式开发系统是一种性能高、成本低、电压低、利用价值高的代理芯海开发系统,而且功能方面也很丰富。
这种嵌入式开发系统起始于51系列单片机,随后单片机技术的发展,最后形成了较为先进的AT89C51系列单片机AT89C51具有很多优势的地方:性能较高;运行速度较快;集成度较高,一块芯片能当几块芯片使用;功耗较低,能够使用很长时间;相比其他同种系列单片机成本较低、外部设代理芯海备足够使用,不用在电路中安装其他的外部设备;它很好开发利用,因为有自己的专用数据库等。
而且我们做的很多产品都是在51的基础上完成,对51系列的单片机相对来说较为熟悉上述所说的AT89C51嵌入式开发系统各种优点足能够实现对智能电子秤的控制在本次设计中用到的嵌入式开发系统主要由七大部分组成,分别是中央代理芯海控制单元、定时器、计数器、程序代码存储单元、信号存储单元、串并行端口和断点控制单元等;总线主要包含三种,信号数据总线、控制信号总线、地址存储总线等,总线、接口和控制单元能够实现设计需求。
设计中用到的控制系统中央控制单元是嵌入式开发系统的核心控制大脑,满足对控制策略及算法的计算和控制功能中央控制单元主代理芯海要由两大部分组成,一个是运算器,另一个是控制电路,而且完全达到8位信号长度的中央控制单元,同时可以进行8位二进制信号的计算和程序运算,中央控制单元完全控制、协调和调度整个控制系统得完美运行,最终通过计算和控制系统的输入输出功能等操作。
嵌入式最小开发系统的接口定义和引脚介绍: 89C51系列嵌入式开发代理芯海系统的引脚主要使用40Pin封装结构的双列直接DIP,该单片机的引脚介绍见下图,一共拥有40个引脚,电源正和接地两路,外部配有石英振荡器的时钟接口两路,一共拥有32个I/O引脚,都是8位数据宽度的,中断接口和P3接口主要以复用为主。
该单片机的引脚介绍如图3-1 所示:图3.1:方案二框图控制引脚介绍代理芯海:(1)ALE:当控制系统扩展时,P0接口是8位信号接口和低8位地址先复用引脚,ALE主要将P0接口的低8位地址输出锁存,以实现低八位地址和数据的隔离。
(2)PSEN:主要对单片机内的ROM模块进行读取,前提是输入信号为低电平时,才会读取信号(3)EA:主要用于当输入信号为低电平时,限制对ROM模块代理芯海的读取外设的代码存储器;当输入信号为高电平时,限制对ROM模块的读取单片机内部的代码存储器,而且能够延伸到外设的代码存储器。
(4)RST:当输入的复位信号延续两个机器周期以上的高电平时即为有效,主要用来实现嵌入式开发系统的初始化(5)XTAL1和XTAL2:主要用于将晶振电路接入系统中控制系统中并行代理芯海的I/O接口是重要部分,P0接口的[P0.0-P0.7]是一种八位的双向I/O接口,当接口输入置为1时,当做高阻抗接口实用。
用来控制8个TTL输出P1端口[P1.0-P1.7]P1是一个带有内部上拉电阻的8位双向I/0端口输出时可驱动4个TTL而且接口置为1时,电路输入端上拉电阻将输出为高电平当单片代理芯海机内部的Flash代码存储器编译时,接收低8位地址信息。
P2接口的[P2.0-P2.7]是一种带有上拉电阻的八位的双向I/O接口,输出时可驱动4个TTL端口置1时,内部上拉电阻将端口拉到高电平,作输入用对内部Flash程序存储器编程时,接收高8位地址和控制信息。
在访问外部程序和16位外部数据存储器时代理芯海,P2口送出高8位地址而在访问8位地址的外部数据存储器时其引脚上的内容在此期间不会改变P3端口[P3.0-P3.7]是一个带有内部上拉电阻的8位双向I/0端口输出时可驱动4个TTL。
端口置1时,内部上拉电阻将端口拉到高电平,作输入用除此之外P3端口还用于一些专门功能,如表3-1所示:表 3-1 P3代理芯海 引脚的第二功能说明
3.2.2 时钟电路设计嵌入式开发系统是相对繁琐的同时序控制电路,同时满足电路的同步工作,控制系统必须在同一个时钟电路信号下进行有序的控制下按时序进行执行时钟电路主要在嵌入式开发系统工作时生成需要的时钟信号。
同时时钟能够由内部或者外部任意一方产生89C51系列嵌入式开发系统内部形代理芯海式的时钟电路,是在XTAL1和XTAL2两个引脚接口接一个定时器件,这也就组成了自激振荡控制电路定时器件一般使用石英晶体和电容构成的并联谐振电路。
电路中的电容器C1和C2主要起频率微调作用,电容值一般使用30pF或者40pF的89C51 嵌入式开发系统外部方式的时钟电路是XTAL1接外部振荡器,XT代理芯海AL2悬空而外部的振荡电路输出信号并无要求,目前能够满足脉冲宽度,主要使用方波信号,频率要尽量低于12MHz。
在此次设计中所使用的内部时钟电路是石英晶体的,具体如图3-2所示图3.2:方案二框图3.2.3 复位电路设计复位是使单片机或系统中的其他部件处于某种确定的初始状态单片机的工作就是 从复位开始代理芯海的,当在单片机的RST引脚引入高电平并保持2个机器周期时,单片机内部就执复位操作。
实际应用中,复位操作有两种基本的形式:一种是上电复位,另一种是按键复位由于本次设计采用的是上电复位,这里只介绍上电复位,如图3-3 所示图3.3:方案二框图上电复位上电瞬间,电容充电电流最大,电容相当于短路,RST端为代理芯海高电平,自动复位;电容俩端的电压达到电源电压时,电容充电电流为零,电容相当于开路,RST 端为低电平,程序正常运行。
RST引脚的高电平只要能保持足够的时间(2个机器周期),单片机就可以进行复位操作该电路典型的电阻和电容参数为:晶振为 12MHz时,C1为10uF,R1为8.2kΩ,晶振为6MHz时,代理芯海C1为 22uF, R1为1kΩ。
3.3 信号采集模块当被测对象放置在电子秤上,重量迫使出啊干起发生形变,也使得其内部的阻值时刻改变,激励电压也会随之改变,最终输出给数模转换电路一个变化的模拟值数据,最终将该信号传送给嵌入式开发系统进行相关逻辑处理。
MPX411系列为压阻传感器是国家的最先进的单片硅代理芯海压力传感器设计用于广泛的应用范围,特别是那些采用微控制器或微处理器与A/D输入这种传感器结合先进的微机械加工技术,薄膜金属化和两极处理,以提供成比例的一个准确的,高层次的模拟输出信号所施加的压力。
小型化和片上集成的高可靠性是工程师最合适的打算MPX411系列为压阻传感器提供差分和仪表应用;最大误差为代理芯海1.4%;温度补偿在-40°到+125°C;是优惠减少重量和体积比现有混合动力模块;有耐用的环氧Unibody的元素、专利的硅剪应力应变计。
其管脚说明如表2-2所示:表 3-2 P3 引脚的第二功能说明
如图3-4所示,该设计中将压阻传感器的前两个引脚连接到ADC0832芯片的CH0与CH1引脚,主要代理芯海来采集电路中的模拟信号,4、5引脚连接到电路中数字端的地端,3引脚连接电源+5V电当我们在控制过程中改变传感器输入的模拟电压值时,它相应的传送给嵌入式开发系统的数字量信号也会发生改变,最终在LCD显示器中显示出来给用户观看。
图3.4:信号采集电路3.4数据转换模块信号采集转换电路在整个系统中的作用是代理芯海至关重要的,主要把输入端的模拟电压信号转换成单片机能够识别处理的数字信号,然后传输给单片机系统进行相关操作3.4.1 A/D 。
转换器的选择根据系统的精度要求以及综合的分析其优点和缺点,本设计采用了12位 A/D转换器ADC0832ADC0832为8位分辨率A/D转换芯片,其最高分辨可达256 级,代理芯海可以适应一般的模拟量转换要求其内部电源输入与参考电压的复用,使得芯片的模拟电压输入在0~5V之间。
芯片转换时间仅为32μS,据有双数据输出可作为数据校验,以减少数据误差,转换速度快且稳定性能强3.4.2 ADC0832 的介绍ADC0832为8位分辨率A/D转换芯片,其最高分辩可达256级,可以适应代理芯海一般的模拟量转换要求。
芯片转换时间仅为32US,据有双数据输出可作为数据校验,以减少数据误差,转换速度快且稳定性能强其独立的芯片使能输入,使处理器控制更加方便通过DI数据输入端,可轻易实现通道功能的选择其引脚功能如表 3-3所示:。
表 3-3 P3 ADC0832引脚功能
3.4.3 单片机对 ADC代理芯海0832 的控制原理的介绍正常情况下ADC0832与单片机的接口应为4条数据线,分别是CS、CLK/DO/DI,但由于DO端DI端在通信时并未同时有效并与单片机的接口是双向的,所以电路设计时我们将DO和DI并联在一根数据线上使用。
当ADC0832未工作时其CS输入端应为高电平,此时芯片禁用,CLK和代理芯海DO/DI 的电平可任意当要进行A/D转换时,须先将CS使能端置于低电平直到转换完全结束此时芯片开始转换工作,同时由处理器向芯片时钟输入端CLK输入时钟脉冲,DO/DI端则使用DI端输入通道功能选择的数据信号。
在第1个时钟脉冲的下沉之前DI端必须是高电平,表示启始信号在第2、3个脉冲下沉之前DI 端代理芯海应输入2位数据用于选择通道功能其通道控制表3-4所示:表 3-4 P3 ADC0832引脚功能
到第3个脉冲的下沉之后DI端的输入电平就失去输入作用,此后DO/DI 端则开始利用数据输出DO进行转换数据的读取从第4个脉冲下沉开始由DO端输出转换数据最高位DATA7,随后每一个脉冲下沉DO端输出下一位数代理芯海据。
直到第11个脉冲时发出最低位数据DATA0,一个字节的数据输出完成也正是从此位开始输出下一个相反字节的数据,即从第 11 个字节的下沉输出DATA0 随后输出8位数据,到第19个脉冲时数据输出完成,也标志着一次A/D转换的结束。
最后将CS置高电平禁用芯片,直接将转换后的数据进行处理就可以了其接口代理芯海电路如图3-5 所示:图3.5:ADC0832的接口电路3.5声光报警电路智能仪器一般都有报警功能,报警主要用于系统运行出错、当测量的数据超过仪表量程或者是超过用户设置的上下限时为提醒用户而设置。
本系统中,设置报警的目的是在超出电子秤测量范围不能正常显示时,发出声光报警信号,提示用户,防止损坏仪器声代理芯海光报警电路是由单片机的I/O口来控制的,当称重物体重量超过系统设计所允许的重量,通过程序使单片机的I/O值为低电平,则发光二极管导通,二极管发光,蜂鸣器LS1发出报警声。
声光报警电路如图3-6所示:图3.6:声光报警电路3.6显示电路显示电路的作用是显示被称物体的重量通过第一章方案论证讨论得出本设计代理芯海采用LM016L液晶显示,其优点是显示位数更多,精度也更高其接口电路如图3-7所示:。
图3.7: LM016L液晶接口电路LM016L模块采用HD44780控制器,hd44780具有简单而功能较强的指令集,可以实现字符移动,闪烁等功能,LM016L与单片机MCU通讯可采用8位或4位并行传输两种方式,代理芯海hd44780控制器由两个8位寄存器,指令寄存器(IR)和数据寄存器(DR)忙标志(BF),显示数RAM(DDRAM),字符发生器ROMA(CGOROM)字符发生器RAM(CGRAM),地址计数器RAM(AC)。
其引脚功能表如所示表3-5所示:表 3-4 P3 ADC0832引脚功能
3.7整机电路电代理芯海子秤系统原理是:当物体放在秤盘上,压力施给传感器产生传感器内部平行四边形形变,由这4片应变片接成的惠斯通(Wheatstone)电桥在供桥电压的激励下随重量不同而输出不同的电压信号后送给A/D转换电路,转换成便于处理的数字信号输出至单片机;单片机进行处理、运算后将结果送至显示器进行显示。
深圳鼎盛合科代理芯海技系芯海一级代理商,代理芯海高精度ADC芯片,SOC芯片,wifi及蓝牙模块
整机电路图详见附录1第四章 系统硬件部分设计本次设计软件系统采用模块化设计方法,不仅易于编程和调试,也可减小软件故障率和提高软件的可靠性本设计主要包括主程序模块、LCD显示模块、超量程报警模块、AD转换模块等。
4.1主程序流代理芯海程图当单片机上电复位后,系统电路开始运行程序,首先利用压力传感器检测所称物体重量,之后启动AD转换,将转换完成的数字信号送入单片机进行处理,之后判断其值是否达到设定值,若达到设定值,则使P3.0为0,从而启动报警,同时显示重量;若小于设定值,则使P3.0为1,并显示重量。
其流程图如图4-1所示:
Y
图代理芯海4.1: 主程序设计流程图4.2主程序流程图A/D 转换子程序主要是指在系统开始运行时,把称重传感器传递过来的模拟信号转换成单片机易于处理的数字信号,并将数字信号传递到单片机,便于单片机进行处理的程序设计。
当主程序调用AD转换子程序时,AD转换便开始初始化,等待初始化完成后, MCU便通过拉低CS、代理芯海拉高CLK来启动ADC0832进行外部压力传感转换后的电压信号进行采样,每产生8个CLK脉冲,DATA 就获得一位完整的8bit数据,所以我们需要判断DATA右移8位是否完成,若未完成则继续转换,若完成,则拉高CS、拉低 CLK,返回数据DATA,将数据存储并送入单片机。
其流程图如图4-2 所示:
N代理芯海
图4.2: AD转换子程序设计流程图4.3报警程序设计报警子程序主要是指在称重过程中,为了防止所称物过重导致仪器损坏设置的超量程报警电路,一但所称物体超过设定量程,则启动报警,否则不启动当单片机接收到采集的重量值后,立即与程序所设量程值进行比较,若采样值大于设定量程,则启动报警,也就是将P3.0置为代理芯海0,从而使发光二极管点亮,蜂鸣器发声;若采样值小于设定量程,则关闭报警或者不报警,也就是将P3.0 置为1,从而使发光二极管灭,蜂鸣器停止发声。
其流程图如图4-3 所示
N
图4.3: 报警子程序设计流程图4.4报警程序设计显示子程序主要是来判断是否需要显示 ,以及如何去显示,也是十分重要的程序之一通过代理芯海其他主程序会调用显示子程序,所以,该程序在计开发过程中是很重要的,因此编写过程中一定要细心。
本次设计采用的LCD显示器是M016L液晶显示屏,M016L液晶能够显示比较复杂的汉字和图形对它的操作主要将一些固定的字符写入寄存器中,当需要显示时调用即可,以达到在液晶屏上显示的效果显示子程序包括显示液晶显代理芯海示初始化、字符定位函数、输出字符函数、显示函数、转换函数、写数据函数、写命令函数等组成。
当主程序调用液晶显示函数时,首先调用延时子程序,然后LCD开始初始化,等待初始化完成后便对其写入控制操作字,包括图形的显示方式,字体的模式等,然后, 写入数据,再在其内部输出字符函数最后将字符显示出来,也就是显示代理芯海出所称物体的重量,之后调用延时显示重量。
最后其流程图如图4-4 所示:
图4.4: 显示子程序流程图第五章 系统软件设计部分 5.1 软件研发的背景本人这次设计的智能电子秤控制系统用软件程序来控制控制器从而达到自己的设计目的,并且在所做的实物模型上运行编写的程序来实现的本次设计所用到的软件程序集成开发代理芯海环境是由Keil软件公司发布的Keil uVision4。
的Keil MDK-ARM版,简称MDK4MDK4是与ARM公司合作研发的集成开发软件,其中包括编辑器、编译器和调试跟踪器等,与ARM相关器件和ARM-Cortex内核处理器是十分匹配的本人做好实物后,先进行检测硬件模块,然后依据自己的要求和代理芯海目的编写自己的程序。
把程序编写好后进行相关测试生成文件,然后下载到实物模型中进行测试Keil软件在当前嵌入式软件开发过程中很普遍,它是集成代码测试环境,可提供软件在线模拟,提供整个项目实时观察窗口,目前的数据类型基本都可实现,功能十分强大。
左侧的树状结构目录,很方便用户观察该软件支持ASM (汇编)代理芯海、C语言,并且可以将多种语言或多种模块源程序进行混合,在Keil中进行调试,支持在线实时修改、编译、调试源程序,对一些错误指令进行精准定位,功能很强大,目前主要用在对代码的调试和编辑。
Keil软件调试情况如图 5-1 所示:图5.1: keil软件调试图5.2 软件程序设计在本次设计开发中,本人所调代理芯海用的函数都是固件库中已经编写好的,相应的就能设置AT89C51嵌入式开发系统中的相对应的外部设备和相应的管脚了。
在MDK4的开发环境中添加相应的固件库,以便于我们快捷的使用这些固件函数在明确自己这次毕业设计需要用到的方案和需要完成的功能之后,就要依据自己所要达到的详细功能来设计软件程序,然后经过软件代理芯海程序对硬件电路的控制来完成智能电子秤控制系统设计。
本次设计本人需要对压力传感器等进行数据信息的收集和处理,并且完成对电子称的智能控制,本次所需要的软件函数程序包含很多,其中主要有主程序、ADC数据收集与程序转换、GPIO端口初始化程序和延时程序等完成相关数据收集和电子秤控制和AT89C51嵌入式开发代理芯海系统的GPIO管脚进行设置,在本次设计中所用到的主要GPIO引脚设置以及它的功能介绍如表5-1所。
表5-1 GPIO引脚设置及功能
本人明确了自己所使用的的引脚,学习使用的相关函数程序,然后进行相关程序编写和设计设计软件程序主要分为4个步骤:第一步就是要明确自己软件设计的目的和详细的实现功能;第二步是代理芯海挑选适合的软件开发环境,然后依据自己实际所需要的嵌入式开发系统型号进行相应的设置,本次设计用到的软件开发环境是MDK4;第三步就开始编写自己的程序来完成详细的控制功能;第四步把编写好的程序先进性编译,然后下载到实物模型中并进行相关调试。
我们的程序设计在初始化结束后,会把把各传感器收集到的数据进行分析代理芯海和处理,看是否达到规定要求,然后控制各种被控对象我们在这就不表述详细的程序源代码了5.3 基于Proteus电路图绘制用Proteus绘制电路仿真图主要分为以下步骤:。
(1)根据设计原理查找此次设计所需要的电路元器件,并根据需求罗列出电器元器件清单;(2)根据设计要求和工作原理绘制电路图;(3)将写代理芯海完的程序下载下来;(4)将下载的C程序进行仿真通过以上操作,达到对智能电子秤的仿真测试。
状态一:如图5-2所示,该控制电路属于正常工作状态,电阻式称重传感器的测量值小于104.8,由于没有超出限制蜂鸣器不报警,同时发光二极管处于灭的状态,LCD液晶显示屏显示出测量数据,精度0.5g图5.2: 电路仿代理芯海真调试图。
状态二:如图5-2所示,该控制电路属于正常工作状态,电阻式称重传感器的测量值大于104.8,由于超出限制蜂鸣器报警,同时发光二极管处于亮的状态,LCD液晶显示屏显示出测量数据,精度0.5g图5.3: 电路仿真调试图。
第六章 结束语近年来随着科技的进步,各行各业都向智能控制方向发展,人们越来代理芯海越离不开智能电子秤,制作智能电子秤控制系统成为这个时代的发展方向目前市场上的主控制器还比较先进,功能很丰富,各种传感器收集数据的能力很强,实现电子秤智能控制系统是完全可行的。
本设计中我们以AT89C51单片机系统为控制核心,连接相关的传感器和数模转换器和显示器等,成功制作一个简易的智能电子秤控制系统代理芯海这次毕业设计不是那么复杂,因此我们使用Proteus软件制作详细的电路图和PCB板图,并且从网上查找了相关元器件的控制原理和设计要求。
该智能控制系统主要包含:AT89C51嵌入式开发系统的最小系统、供电模块、各种传感器和报警器等然后将编译好的程序下载到单片机中,进而达到智能电子秤控制系统设计同时由于代理芯海自身的能力有限和各种现实因素的不允许,在这次毕业设计制作中,有很多缺点和粗心的地方,方方面面不能够完全的考虑,和现实中的还是没法比的,但是本人的设计思路是十分清楚的,总的来说与智能电子秤控制系统的设计方案基本一致。
如今很多电子秤已经达到了对自身的自动控制,但仍然有一些电子秤由于各种因素还不能达到对自代理芯海身的自动控制,未来还需要很长的路需要我们去发掘,去实现同时,通过本次毕业设计,本人学到了很多书本以外的知识,只有在实际动手操作过程中才会发现,这也磨练了我遇到问题独立思考的习惯,最后自己通过设计结果拥有了自信,这对我以后的学习和工作又会有很大的启发会帮助。
虽然毕业设计仍然有不足的地方,但在设计制作过代理芯海程中所学习到的知识和经验,使我终身受益参考文献[1]谢兴红,林凡强,吴雄英.MSP430单片机基础与实践[M].北京航空航天大学出版社,2008:84-85.
[2]靳达.单片机应用系统开发实例导航[M].北京:人民邮电出版社,2013:110-112.[3]沈建华.MSP430系列16位超低功耗单片代理芯海机原理与实践[M].北京航空航天大学出版社,2008:202-208.
[4]余妍熹,吴颖.分析电子秤自动检定装置机械结构设计[J].科学与财富,2019(5):270.[5]张天宇..计量检定电子秤的误差及改进措施[J].科学与财富,2019(14):69.[6]童菲.电子秤检定中存在的问题及应对的代理芯海措施[J].科技风,2019(12):239+244.
[7]葛笑寒.基于单片机的电子秤硬件系统设计[J].湖南农机,2019(2):109-110+115.[8]黄晟.动态电子秤误差及改进研究[J].黑龙江冶金,2019,39(2):74-75.[9]江天亮.基于单片机和传感器的电子秤系统教学设计与代理芯海实现[J].电子测试,2019(10):8-9+15.
[10]王佳.多功能电子秤设计[J].电子质量,2019(4):24-29.[11]徐燕燕,黄磊,戴姣丽.基于单片机的商用电子秤设计与仿真[J].电电子制作,2019(11):75-76+30.[12]张波,王晨阳,徐传旭等.基于STC89C52代理芯海和HX711的电子秤设计[J].现代信息科技,2019,3(8):42-43+46.
致 谢经过这几个月的努力设计,这次的毕业论文终于完成了,在这圆满完成之际,我首先要向我的指导老师表示最真挚的谢意,感谢您这几个月来的精心辅导和陪伴在论文写作期间,老师给予了本人细心的讲解和热情帮助,并且进行了详细认真代理芯海的审阅。
在我撰写论文的过程中,从选题报告到最终的论文定稿,教授给本人提出了许多珍贵的意见和建议,并且在学校实验室为本人提供了很好的学习环境和条件,在这里再次向他表示衷心的感谢;与此同时,还要十分感谢我的所有同学和组员,在论文的编写期间,每当本人遇到任何技术上或经验上的困难时,他们都会及时的帮助和指导代理芯海我。
正是因为在老师和同学们的精心帮助和热心鼓励下,我才能够顺利的完成这次论文的设计工作在论文的编写过程中,本人参考学习了许多作者编写的国内外著作、期刊杂志和自己所学的相关书籍,在这里我想对他们说一声谢谢因为本人学识资源的限制,再加上设计时间较短,论文中可能会有一些错误的地方和需要改善的地方,热情的希代理芯海望各位老师、学长给与本人珍贵的建议。
附录附录1 整机电路图附录2 程序清单#include#include#include #include #define uchar unsigned char
#define uint unsigned int#define BUSY 0x80 //常量定义#de代理芯海fine DATAPORT P0sbit ADCS =P3^5;
sbit ADDI =P3^7;sbit ADDO =P3^7;sbit ADCLK =P3^6;sbit LCM_RS=P2^0;sbit LCM_RW=P2^1;sbit LCM_EN=P2^2;uint x1,y1,z1=0,w1代理芯海,temp1;
uchar ad_data,k,n,m,e,num,s; //采样值存储sbit beep =P3^0;char press_data; //标度变换存储单元
unsigned char ad_alarm; //报警值存储单元unsigned char press_ge=0;unsign代理芯海ed char press_shifen=0;unsigned char press_baifen=0;
unsigned char press_qianfen=0;uchar code str0[]={"Weight:Kg"};void delay(uint);void lcd_wait(void)代理芯海;void delay_LCM(uint); //LCD 延时子程序
void init_LCM(void); //LCD 初始化子程序void lcd_wait(void); //LCD 检测忙子程序void WriteCommandLCM(uchar WCLCM,uchar BusyC); //写代理芯海指令到 ICM 子函数
void WriteDataLCM(uchar WDLCM); //写数据到 LCM 子函数void DisplayOneChar(uchar X,uchar Y,uchar DData); //显示指定坐标的一个字符子函数
void DisplayListChar(uchar 代理芯海X,uchar Y,uchar code *DData); //显示指定坐标的一串字符子函数void weishu(uint m);void weishu1(uint m);
void display(void);uchar Adc0832(unsigned char channel);void al代理芯海arm(void);void data_pro(void);/**********main funcation************/
void main(void){delay(500); //ad_data=0;initLCM( );WriteCommandLCM(0x01,1);
Display代理芯海ListChar(0,0,str0);while(1){ad_data =Adc0832(0); //采样值存储单元初始化为0alarm();data_pro();display();
DisplayListChar(0,0,str0);}/*** 延 K*1ms,12.000mhz*********代理芯海*/void delay(uint k){uint i,j;for(i=0;i
for(j=0;j<100;j++);}/****** 写指令到 ICM 子函数 *****/void WriteCommandLCM(ucharWCLCM,uchar BusyC){
if(BusyC);lcd_wait(代理芯海);DATAPORT=WCLCM;LCM_RS=0; //选中指令寄存器LCM_RW=0;
LCM_RW=0; //写模式LCM_EN=1;_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();
_nop_();LCM_EN=0;}/***** 写数据到 LCM代理芯海 子函数 ******/void WriteDataLCM(uchar WDLCM){lcd_wait( );DATAPORT=WDLCM;
LCM_RS=1;LCM_RW=0;LCM_EN=1;_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_代理芯海();_nop_();LCM_EN=0;}
/*****LCM 内部等待函数********/void lcd_wait(void){DATAPORT=0xff;LCM_EN=1;LCM_RS=0;LCM_RW=0; LCM_RW=1;_nop_();
_nop_();_nop_();_nop_();_代理芯海nop_();_nop_();_nop_(); while(DATAPORT&BUSY){LCM_EN=0;_nop_();_nop_();_nop_();
_nop_();_nop_();_nop_();_nop_();_nop_();LCM_EN=1;_nop_();_nop_();_nop_()代理芯海;_nop_();_nop_();_nop_();_nop_();
}LCM_EN=0;}/*****LCM初始化子函数 *********/void initLCM( ){LCM_EN=0;DATAPORT=0;delay(15);WriteCommandLCM(0x38,0);
delay(5);W代理芯海riteCommandLCM(0x38,0);delay(5);WriteCommandLCM(0x38,0);delay(5);WriteCommandLCM(0x38,1);WriteCommandLCM(0x08,1);
WriteCommandLCM(0x01,1);WriteCommandL代理芯海CM(0x06,1);WriteCommandLCM(0x0c,1);TMOD=0x11;EA=1;ET1=1;TR1=1;k=0;
x1=0;y1=0;z1=0;}/****显示指定坐标的一个字符子函数****/void DisplayOneChar(uchar X,uchar Y,uchar DD代理芯海ata){Y&=0x01;X&=0x0f;
if(Y)X|=0x40; // 若 y为1(显示第二行),地址码 +0X40X|=0x80; //指令码为地址码 +0X80
WriteCommandLCM(X,1);WriteDataLCM(DData);}/******* 显示指定坐标的一串字符子 函数代理芯海*****/void DisplayListChar(uchar X,uchar Y,uchar code *DData)
{uchar ListLength=0;Y&=0x01;X&=0x0f;while(X<16){DisplayOneChar(X,Y,DData[ListLength]);Lis代理芯海tLength++; X++;
}}/***************** 系统 显示 子 函 数*****************/void display(void){WriteCommandLCM(0x0c,1);DisplayListChar(0,0,str0); //DisplayListCh代理芯海ar(0,1,str2);
DisplayOneChar(8,0,press_ge+0x30);DisplayOneChar(10,0,press_shifen+0x30);DisplayOneChar(11,0,press_baifen+0x30);
DisplayOneChar(12,0,press代理芯海_qianfen+0x30);delay(1000);}/************读 ADC0832 函数************///采集并返回uchar Adc0832(unsigned char channel) //AD 转换,返回结果
{uchar i=0;uchar j;uint dat=代理芯海0;uchar ndat=0;if(channel==0)channel=2;if(channel==1)channel=3;ADDI=1;_nop_();
_nop_();ADCS=0; // 拉低 CS 端_nop_();_nop_();ADCLK=1; // 拉高 CLK 端脉冲
_nop_();代理芯海_nop_();ADCLK=0; // 拉低 CLK 端,形成下降沿1_nop_();_nop_();ADCLK=1;ADDI=channel&0x1;
_nop_();_nop_();ADCLK=0; // 拉低 CLK 端,形成下降沿2_nop_();_nop_();ADCLK=1; // 拉高 代理芯海CLK 端
ADDI=(channel>>1)&0x1;_nop_();_nop_();ADCLK=0; // 拉低 CLK 端,形成下降沿 3ADDI=1; // 控制命令结束
_nop_();_nop_();dat=0;for(i=0;i<8;i++){dat|=ADDO; // 收数据ADCLK=代理芯海1;_nop_();
_nop_();ADCLK=0; //形成一次时钟脉冲_nop_();_nop_();dat<<=1;if(i==7)dat|=ADDO;}
for(i=0;i<8;i++){j=0;j=j|ADDO; // 收数据ADCLK=1;_nop_();_nop_();ADCLK=0; 代理芯海// 形成一次时钟脉冲
_nop_();_nop_();j=j<<7;ndat=ndat|j;if(i>=1;}ADCS=1; // 拉低 CS 端
ADCLK=0; // 拉低 CLK 端ADDO=1; // 拉高数据端, 回到初始状态
dat<<=8;dat|=ndat;return(dat); //代理芯海return ad k}void data_pro(void)
{unsigned int;float press;if(0
press_ge=temp1/1000; // 取压力值百位press_shifen=(temp1%1000)/100; //取压力值十位
press_baifen=((temp1代理芯海%1000)%100)/10; //取压力值个位press_qianfen=((temp1%1000)%100)% 10; //取压力值十分位
}}/***************** 报 警 子 函 数*******************/void alarm(void){if(ad_data>=代理芯海220)beep=0; // 则启动报警
elsebeep=1;}附录3 元器件清单
举报/反馈
深圳鼎盛合科技系芯海一级代理商,代理芯海高精度ADC芯片,SOC芯片,wifi及蓝牙模块