智能仪器》课程设计基于STC89C52的电子秤设计(LCD显示).doc

上传人:文库蛋蛋多 文档编号:4149276 上传时间:2023-04-07 格式:DOC 页数:16 大小:269.50KB
返回 下载 相关 举报
智能仪器》课程设计基于STC89C52的电子秤设计(LCD显示).doc_第1页
第1页 / 共16页
智能仪器》课程设计基于STC89C52的电子秤设计(LCD显示).doc_第2页
第2页 / 共16页
智能仪器》课程设计基于STC89C52的电子秤设计(LCD显示).doc_第3页
第3页 / 共16页
智能仪器》课程设计基于STC89C52的电子秤设计(LCD显示).doc_第4页
第4页 / 共16页
智能仪器》课程设计基于STC89C52的电子秤设计(LCD显示).doc_第5页
第5页 / 共16页
点击查看更多>>
资源描述

《智能仪器》课程设计基于STC89C52的电子秤设计(LCD显示).doc》由会员分享,可在线阅读,更多相关《智能仪器》课程设计基于STC89C52的电子秤设计(LCD显示).doc(16页珍藏版)》请在三一办公上搜索。

1、福建电力职业技术学院课 程 设 计课程名称: 智能仪器 题目: 基于STC89C52的电子秤设计(LCD显示) 专业班次: 姓 名: 学 号: 指导教师: 学 期: 2011-2012学年第2学期 日 期: 2012.2 目录1、引言11.1 本设计意义11.2 本设计任务和主要内容12、硬件设计22.1 系统总体框图22.2 最小系统22.3 AD接口电路32.4 液晶显示电路43、软件设计53.1 AD总流程53.2 LCD12864软件设计63.3 系统流程设计73.4 源程序:如附录83.5 调试结果84、设计小结94.1 取得收获94.2 存在不足95、参考文献9附录:课程设计程序清

2、单91、引言1.1 本设计意义本设计的研究内容是基于STC89C52的电子秤设计LCD灯显示。物品称量是市场交易中很基本的活动,是商业领域最基本的衡具。传统的量具是杆称或盘称,20 世纪 70 年代开始出现了电子称。早期的电子称多通过模拟电路实现,随着电子技术的不断发展,数字芯片的价格逐渐下降,模拟控制已逐步被数字控制所替代,电子称的设计模式也大都以微处理器为核心,使精度和可靠性都有了明显得提高。因为小型商用电子称对适时性要求不高,运算也不太复杂,所以用 8 位微处理器足可满足要求。如:荣秀玲、何毅、孙莹等人设计的电子称由于以MSC-8031为核心,A/D转换用V/F方式,所选芯片为LM331

3、,因为8031内部没有ROM,因此必须外扩,增加了电路的复杂度。凌有铸用 8751 为核心设计,A/D 则是通过自行设计的双积分电路实现的等等。在以上的设计方法中,都采用了LED 显示方式,优点是成本低,但缺点是无法显示汉字。本设计的主要内容是应用电阻应变式传感器、OP07放大电路、TLC549A/D转换器、单片机和LCD12864液晶显示来实现设计的。信号的输入经过放大器并在AD转换中进行模数转换,通过单片机在LCD上显示出来。本论文包括四个部分:设计任务、硬件设计、软件设计、设计小结。大学生通过学习及实践制作电子秤,可以培养对科技的兴趣,增强动手能力,巩固所学知识,扩展课外知识,丰富课余生

4、活。我认为研究制作电子秤有其价值所在。此外本次设计对我还有以下意义:(1)通过本次设计,加深对单片机理论方面的理解,同时也对电子秤及控制原理有了一定程度的了解。(2)丰富校园生活,充分利用时间来扩展课外实践知识、增强自己的编程运用能力。(3)了解了AD转换功能及液晶显示的显示原理,并综合运用所学知识解决实际问题的目的。1.2 本设计任务和主要内容 本设计的任务:基于STC89C52单片机设计的电子秤原理及实现方法。该系统由52单片机控制,通过液晶屏自动显示所称物体的重量、电压及AD转换比例。其电路构成主要有测量电路,放大电路,A/D转换电路,单片机控制电路、液晶显示电路。测量电路利用电阻式应变

5、器件将物体的重量信号转化成相应大小的电信号,通过差动放大电路将电信号放大到AD芯片能够识别的范围内从而能将电信号转换成对应的数字信号送给单片机处理,最终在液晶上显示所称物体的重量,系统通过软件实现自动换挡。经调试和测试,系统各项性能参数基本达到设计要求。(1)查阅相关资料:了解AD转换器工作原理、单片机工作原理、LCD液晶显示工作原理,并运用C语言进行设计、编程、调试。(2)硬件设计:根据设计任务选合适的单片机;根据控制对象设计接口电路;设计合理的单元电路。(3)软件设计:根据各电路工作原理,画出软件流程图,根据流程图编写相应的C语言程序进行调试。(4)原理图设计:根据所确定的设计电路利用VI

6、SIO等相关软件绘制系统方框图及各个芯片、零件组成图。(5)调试:根据所编程的程序烧入控制运行的单片机内,并进行相应的调试,通过运算,LCD的显示,实现对重量信号的采集利用。(6)结轮:根据各步骤写好论文,经格式刷新最终形成目录,以完成整编论文。2、硬件设计2.1 系统总体框图本文所设计的电子秤显示系统由电阻应变片传感电路、OP07放大处理电路、TLC549A/D转换电路、STC89C52单片机控制电路及LCD12864液晶显示电路等部分组成。其系统总体框图如图2.1所示图2.1 系统总体框图2.2 最小系统STC89C52具有如下特点:40个引脚,8k Bytes Flash片内程序存储器,

7、256 bytes的随机存取数据存储器(RAM),32个外部双向输入/输出(I/O)口,5个中断优先级2层中断嵌套中断,2个16位可编程定时计数器,2个 全双工串行通信口,看门狗(WDT)电路,片内时钟振荡器。( 单片机共有40个引脚:其中有32个IO口。接地占1个,电源占1个,晶振电路占2个,EA引脚占1个,复位电路占1个,剩余2个没用)。(1)单片机供电电路:STC89C52需要5V供电,在电路图中的VCC和GND为供电网络标识符;(2)晶振电路:STC89C52需要一个稳定的振荡电路才能正常工作,在该电路中采用24MHZ晶振作为STC89C52的时钟源;(3)复位电路:复位电路是单片机正

8、常运行的一个必要部分,复位电路应该保证单片机在上电瞬间进行一次有效的复位,在单片机正常工作时将RST引脚置低。此外通过一个按键进行手动复位,在单片机运行不正常时使用;最小系统具体如图2.2图2.2 STC89C52最小系统电路2.3 AD接口电路2.3.1 TLC549的简介A/D转换器大致有三类:一是双积分A/D转换器,优点是精度高,抗干扰性能好,价格便宜但速度慢;二是逐次逼近A/D转换器,精度、速度和价格都适中;三是并行A/D转换器,速度快,但价格昂贵。本实验用A/D转换器TLC549属于第二类,是八位逐次逼近型A/D转换器。TLC549是美国德州仪器公司生产的8位串行A/D转换器芯片,可

9、与通用微处理器、控制器通过CLK、CS、DA、OUT三条口线进行串行接口。具有4MHz片内系统时钟和软、硬件控制电路,转换时间最长17us, TLC549为40000次/s。总失调误差最大为+0.5LSB典型功耗值为6mw。采用差分参考电压高阻输入,抗干扰,可按比例量程校准转换范围,也可用于较小信号的采样。 每转换一次一般需100s。TLC549的极限参数如下:电源电压:6.5V;输入电压范围:0.3VVCC+0.3V;输出电压范围:0.3VVCC+0.3V;峰值输入电流(任一输入端):+10Ma;总峰值输入电流(所有输入端):+30Ma;工作温度:TLC549C:070摄氏度,TLC549I

10、:-4085摄氏度。2.3.2 TLC549与单片机的接口电路TLC549可方便地与具有串行外围接口(SPI)的单片机或微处理器配合使用,也可与52系列通用单片机连接使用。与52系列单片机的接口如图2.3所示:图2.3 TLC549与单片机的接口电路2.4 液晶显示电路(1)LCD12864液晶简介LCD12864液晶显示模块共有20个引脚,包括8位双向数据线、6条控制线及电源线等。12864分左右两屏,像素点为128*64个像素点,行有128个像素点,列有64个像素点,行又设置为8页,在12864默认状态下中文字体都是16*16的大小,每个页包含8个像素行,所以要显示一个中文就需要2页;初始

11、行的设定可以使得你要显示的字出现在任意你想要的位置。对液晶显示器的编程就是向DDRAM中写数据。在写DDRAM之前,需要先清除RAM,且左屏和右屏要分别进行清除。方法就是向RAM的所有单元写入0值。12864写驱动程序的时候需要写七个指令分别是:“检忙”,“写指令”,“写数据”,“写显示开关”,“写页”,“写列”,“写初始行”。LCD12864的引脚功能如表2.1表2.1 引线号符号名称功能1ROM-IN字库IC接口串行数据输出2ROM-OUT字库IC接口串行数据输入3ROM-SCK字库IC接口串行时钟输入4ROM-CS字库IC接口片选输入5LEDA背光电源背光电源正极,同VDD电压6VSS接

12、地OV7VDD电路电源5V或3.3V可选8SCKI/O串行时钟9SDAI/O串行数据10RS寄存器选择信号H:数据寄存 O:指令寄存11RST复位低电平复位,复位完成后回到高电平,液晶模块开始工作12CS片选低电平片选(2)LCD12864与单片机的接口电路通过前面对12864显示屏引脚功能的分析可以知道,该模块有一个整体的片选信号“E”,只有当该信号为高电平时,所有的电路才会有效。另外左右半屏各有一个选择信号CS1和CS2,CS1和CS2各自为低电平时,分别选中左半屏和右半屏。为了区分读写的是数据还是指令,还设置了一个数据/指令控制线D/I。根据这些原则,设计出接口电路如图2.4所示。图2.

13、4 LCD12864与单片机的接口电路3、软件设计3.1 AD总流程 TLC549工作流程图,如图3.1图3.1 TLC549工作流程图(1)当要读取AD值时, CS被拉至低电平,直到经历了 tSU(CS)时间时,其集成电路仍不识别跳变则 DATA OUT 也将在 tdis 之内变为高阻状态。前次转换结果的最高有效位(MSB)开始出现在DATA OUT端。(2)前4个I/O CLOCK周期的下降沿输出前次转换结果的第2、3、4和第5个最高有效位。在第 4 个高电平至低电平的跳变之后,片内采样和保持电路开始对模拟输入采样。(3) 其后再把三个I/O CLOCK周期加至I/O CLOCK端,在这些

14、时钟周期的下降沿,第6、第7和第8个转换位被移出。(4)最后时钟周期被加至I/O CLOCK。此时钟周期高电平至低电平的跳变使片内采样和保持电路开始保持功能。在第8个I/O CLOCK周期之后,CS必须变为高电平,否则 I/O CLOCK 必须保持低电平达至少 36个系统时钟周期以供保持和转换功能的完成。在多个转换周期内CS可保持低电平。如果 CS 变为高电平,那么它必须保持高电平直至转换结束为止。否则CS 的有效高电平至低电平跳变将引起复位,它使正在进行的转换失败。在 36 个系统时钟周期发生之前,通过完成步骤 1 至 4 可以启动新的转换,同时正在进行的转换中止。3.2 LCD12864软

15、件设计1)RS,RW的配合选择决定控制面的4中模式,如表3.1所示:表3.12)E信号如表3.2所示表3.23)忙标志:BF用于记录“忙”信号标志位(BF),当BF=1时表示模块在进行内部操作,此时模块不接受外部指令和数据;当BF=0时模块为准备状态,随时可接受外部指令和数据.(1)写操作时序如图3.2图3.2(2)读操作时序如图3.3图3.3(3)指令说明如表3.3表3.33.3 系统流程设计1)TLC549A/D转换流程图如图3.42)LCD12864液晶显示流程图如图3.5、3.63)系统总程序流程图如图3.7图 3.4 AD转换流程图图 3.5 液晶显示流程图 图3.6 液晶显示流程图

16、?8次将起始页地址存入BL设置页地址设置列地址LCD工作忙写显示RAM已显示64页地址加1页地址已设置结束NOYESNOYESNO YES开始系统初始化清左屏RAM清右屏RAM写左、右屏数据左右屏显示图 3.7 总程序流程图3.4 源程序:如附录3.5 调试结果将电阻式应变传感器与电路相连,经过重量与电压的变化关系,可得出A/D转换的比例值。由此可知,在程序设计中根据A/D转换的比例变化,可由显示电压值求得重量的大小,或由重量的大小可求得显示电压值,并且所求得的数据均能在LCD液晶上显示出来。由此A/D转换比例的变化,可知物体的重量而求得物体所占的电压(或可知物体所占的电压而求得物体的重量),

17、一举两得。4、设计小结4.1 取得收获通过这次课设,我能较好地把理论运用到实际生活中,既复习了已学过的理论知识,又强化了动手实践能力,通过查阅资料了解了许多课外知识,为今后的学习打下基础。在此设计过程中,我也遇到了很多问题,例如所编写的程序无法实现相关编程要求、对于自己做的实物器件工作原理不是很了解、论文不知从何处下手等问题,但经过老师的辅导、以及通过图书馆及网上查阅的相关资料,从而得出了想要的答案,并开始着手编程及撰写论文。编程过程也是困难重重经过多次调试及老师的讲解后终于解决了编程问题。也终于明白了“世上无难事,只怕有心人”的意义所在。虽然一路上困难重重,但确是人生中最大的宝藏,是对意志的

18、磨练,使我的实践能力进一步提升,这对将来的工作学习很有益处。俗话说“万事开头难”,在经历并克服困难并解决实际问题后,感觉到一种如释重负的感觉,同时体会到一句话:实践是检验真理的唯一标准,只有理论与实践结合才能达到最好应用的效果。4.2 存在不足在本次课设中,虽然我学到了很多课外知识,加强了动手能力,但还是存在一些问题,例如专业论文写作功底不足,对许多资料,不知如何进行整合分析,需麻烦指导老师帮忙改进,才能更加完善。另外编程、调试过程中也缺乏耐心,导致自己编程问题停滞不前。今后我将尽自己最大努力来改善自己的不足,使自己更加完善。同时此次的作品还存在这许多不足,还有许多功能有待改善。为适应当今高科

19、技化的社会,我们应不断学习和工作,在学习和工作中能不断对此进行改进,从而改善并完善该作品。5、参考文献1来清明编, 传感器与单片机接口及实例M, 北京航天航空大学出版社J 20082楼然苗、李光飞编,单片机课程设计指导M, 北京航天航空大学出版社J 20073兰吉昌编,51单片机应用设计百例M,化学工业出版社J 20094刘迎春编,MCS51单片机原理及应用教程M, 清华大学出版社J 20105冯铁成编,单片机应用技术M,人民邮电出版社 20096吴戈,李玉峰编,案例学单片机C语言开发M,人民邮电出版社 20087网站; 8 网站a href= 附录:课程设计程序清单电子秤显示源程序#incl

20、ude#include #include #define uchar unsigned char#define uint unsigned int#define nop() _nop_() #define PD 65 /PD:64-65 20120302sbit CLK= P35; /* AD时钟信号 */sbit CS= P37; /* AD片选信号 */sbitDOUT= P36; /* 数据输出 */sbit RS=P27; sbit RW=P26; sbit EN=P25; sbit CS1=P24; sbit CS2=P23; sbit BUSY=P17;uint weight;ui

21、nt pressure;uint AD;uint bai,shi,ge,wb,ws,wg,pq,pb,ps,pg; uchar code EETAB16=0x00,0xE0,0x10,0x08,0x08,0x10,0xE0,0x00,0x00,0x0F,0x10,0x20,0x20,0x10,0x0F,0x00,/00x00,0x10,0x10,0xF8,0x00,0x00,0x00,0x00,0x00,0x20,0x20,0x3F,0x20,0x20,0x00,0x00,/10x00,0x70,0x08,0x08,0x08,0x88,0x70,0x00,0x00,0x30,0x28,0x24

22、,0x22,0x21,0x30,0x00,/20x00,0x30,0x08,0x88,0x88,0x48,0x30,0x00,0x00,0x18,0x20,0x20,0x20,0x11,0x0E,0x00,0x00,0x00,0xC0,0x20,0x10,0xF8,0x00,0x00,0x00,0x07,0x04,0x24,0x24,0x3F,0x24,0x00,0x00,0xF8,0x08,0x88,0x88,0x08,0x08,0x00,0x00,0x19,0x21,0x20,0x20,0x11,0x0E,0x00,0x00,0xE0,0x10,0x88,0x88,0x18,0x00,0x

23、00,0x00,0x0F,0x11,0x20,0x20,0x11,0x0E,0x00,0x00,0x38,0x08,0x08,0xC8,0x38,0x08,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x70,0x88,0x08,0x08,0x88,0x70,0x00,0x00,0x1C,0x22,0x21,0x21,0x22,0x1C,0x00,0x00,0xE0,0x10,0x08,0x08,0x10,0xE0,0x00,0x00,0x00,0x31,0x22,0x22,0x11,0x0F,0x00, /90x00,0x00,0x00

24、,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x30,0x00,0x00,0x00,0x00,0x00, /.;uchar code CCTAB32=0x00,0x00,0xF8,0x48,0x48,0x48,0x48,0xFF,0x48,0x48,0x48,0x48,0xF8,0x00,0x00,0x00,0x00,0x00,0x0F,0x04,0x04,0x04,0x04,0x3F,0x44,0x44,0x44,0x44,0x4F,0x40,0x70,0x00,/电0x00,0x00,0x02,0x02,0x02,0x02,0x02,0xE2,0x12,0x0A

25、,0x06,0x02,0x00,0x80,0x00,0x00,0x01,0x01,0x01,0x01,0x01,0x41,0x81,0x7F,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x00,/子0x10,0x92,0x72,0xFE,0x91,0x11,0x40,0x30,0x8F,0x04,0xF4,0x84,0x04,0x14,0x0C,0x00,0x02,0x01,0x00,0xFF,0x00,0x11,0x08,0x06,0x43,0x80,0x7F,0x00,0x01,0x06,0x18,0x00,/称0x00,0x00,0xF8,0x48,0x48,

26、0x48,0x48,0xFF,0x48,0x48,0x48,0x48,0xF8,0x00,0x00,0x00,0x00,0x00,0x0F,0x04,0x04,0x04,0x04,0x3F,0x44,0x44,0x44,0x44,0x4F,0x40,0x70,0x00,/电0x00,0x00,0xFE,0x02,0x42,0x42,0x42,0x42,0xFA,0x42,0x42,0x42,0x62,0x42,0x02,0x00,0x20,0x18,0x27,0x20,0x20,0x20,0x20,0x20,0x3F,0x20,0x21,0x2E,0x24,0x20,0x20,0x00,/压0

27、x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x36,0x36,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/:0x08,0x78,0x88,0x00,0x00,0xC8,0x38,0x08,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x07,0x38,0x0E,0x01,0x00,0x00,0x00,0x00,0x00,0x00

28、,0x00,0x00,0x00,0x00,/V0x08,0x08,0x0A,0xEA,0xAA,0xAA,0xAA,0xFF,0xA9,0xA9,0xA9,0xE9,0x08,0x08,0x08,0x00,0x40,0x40,0x48,0x4B,0x4A,0x4A,0x4A,0x7F,0x4A,0x4A,0x4A,0x4B,0x48,0x40,0x40,0x00,/重0x40,0x40,0x40,0xDF,0x55,0x55,0x55,0xD5,0x55,0x55,0x55,0xDF,0x40,0x40,0x40,0x00,0x40,0x40,0x40,0x57,0x55,0x55,0x55,

29、0x7F,0x55,0x55,0x55,0x57,0x50,0x40,0x40,0x00,/量0x00,0x00,0x80,0x80,0x80,0x80,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x6B,0x94,0x94,0x94,0x93,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/g0x00,0x00,0xC0,0x38,0xE0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x3C,0

30、x23,0x02,0x02,0x27,0x38,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/A0x08,0xF8,0x08,0x08,0x08,0x10,0xE0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x3F,0x20,0x20,0x20,0x10,0x0F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/D0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x

31、00,0x00,0x00,0x20,0x3F,0x20,0x00,0x3F,0x20,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/m;void busy_check(uchar chip) /液晶检测忙状态 bit state; while(1) if(chip=1) CS1=1;CS2=0; else CS1=0;CS2=1; RS=0; RW=1; EN=1; state=BUSY; nop(); EN=0; if(!state) break; nop(); nop(); void WriteCommand(uchar com,uc

32、har chip) /对液晶写指令 busy_check(chip); if(chip=1) CS1=1;CS2=0; else CS1=0;CS2=1; RW=0; RS=0; nop(); P1=com; EN=1; nop(); EN=0; void WriteData(uchar dat,uchar chip) /对液晶写数据 busy_check(chip); if(chip=1) CS1=1;CS2=0; else CS1=0;CS2=1; RW=0; RS=1; nop(); P1=dat; EN=1; nop(); EN=0; void DispENG(uchar line,u

33、char col,uchar asc)/显示字符 uchar n,chip,colnew; if(colPD) chip=1; else chip=2; col-=PD; WriteCommand(0x40+col,chip); WriteCommand(line+0xb8,chip); colnew=col; for(n=0;n=PD) colnew=0; chip+; WriteCommand(0x40+colnew,chip); WriteCommand(0x40+col,chip); WriteCommand(line+0xb9,chip); colnew=col; for(n=0;n

34、=PD) colnew=0; chip+; WriteCommand(0x40+colnew,chip); void DispCHN(uchar page,uchar col,uchar chn) /显示汉字 uchar n,chip,colnew; if(colPD) chip=1; else chip=2;col-=PD; WriteCommand(page+0xb8,chip); WriteCommand(0xc0,chip); colnew=col; for(n=0;n=PD) colnew=0;chip+; WriteCommand(page+0xb9,chip); WriteCom

35、mand(0xc0,chip); colnew=col; for(n=0;n=PD) colnew=0;chip+; void Init() /液晶初始化 /WriteCommand(0xc0,1);WriteCommand(0xc0,2); WriteCommand(0x3f,1);WriteCommand(0x3f,2); /WriteCommand(0x40,1);WriteCommand(0x40,2);void Clear() /清屏 uchar i; for(i=0;i8;i+) uchar n; WriteCommand(i+0xb8,1); WriteCommand(i+0xb

36、8,2); WriteCommand(0x00,1); WriteCommand(0x00,2); for(n=0;n64;n+) WriteData(0x00,1); WriteData(0x00,2); /*/void delay(uint us) while(us-);/*/函 数 名:adc_549()功 能:读取AD输出的10bit数据 说 明:调 用:入口参数:返 回 值:设 计: /*/uchar adc_549(void) uint data_out=0; uchar i; CS = 1; _nop_(); CS = 0; for (i=0; i8; i+) /* 读取10位数

37、据 */ CLK = 0; data_out = (data_out1)|DOUT; CLK = 1; _nop_(); CLK = 0; CS = 1; delay(3); /* 延时21us以上 */ return(data_out);void Disp_Temperature() bai=AD%1000/100; /百位 shi=AD%100/10; /十位 ge=AD%10; /个位/*/ wb=weight%1000/100; ws=weight%100/10; /十位 wg=weight%10; /个位/*/ pq=pressure%10000/1000; pb=pressure%

38、1000/100; ps=pressure%100/10; /十位 pg=pressure%10; /个位/*/DispENG(2,72,pq); DispENG(2,80,pb); DispENG(2,88,ps); DispENG(2,96,pg); /*/ DispENG(4,72,wb); DispENG(4,80,ws); DispENG(4,88,wg);/*/ DispENG(6,72,bai); DispENG(6,80,shi); DispENG(6,88,ge); void main(void) /*/ Init(); Clear(); /DS18B20_Init(); /

39、DS18B20_Read_Temp(); /temp_value=50; DispCHN(0,0,0); DispCHN(0,16,1); DispCHN(0,32,2); DispCHN(2,0,3); DispCHN(2,16,4); DispCHN(2,32,5); DispCHN(4,0,7); DispCHN(4,16,8); DispCHN(4,32,5); DispCHN(6,0,10); DispCHN(6,16,11); DispCHN(6,32,5); DispCHN(2,104,12); DispCHN(2,112,6); DispCHN(4,112,9); while(1) AD=adc_549(); pressure=AD*196/10; weight = pressure-20; weight=weight/101*10; ; Disp_Temperature(); /Disp_Temperature();

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号