多路模拟电压采集_第1页
多路模拟电压采集_第2页
多路模拟电压采集_第3页
多路模拟电压采集_第4页
多路模拟电压采集_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

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

文档简介

1、摘要本次设计是建立一个多路模拟信号采集系统, 能处理模拟信号,同时对信号进行循环采样并通过键盘控制输出。它主要由 a/d 转换模块、单片机、显示模块、键盘控制器模块组成。其中最主要的部分是单片机和 a/d 转换器,首先被测模拟信号通过 a/d 转换器转换成数字信号,然后通过单片机的处理,在显示器上不停的显示所采样的数据, 通过键盘给一个控制信号, 可以选择的任意一路信号在1602 上面输出显示。本设计将介绍一种以单片机为核心的数据采集系统, 它能测量直流电压及光敏阻值, 并且测量结果能通过1602 显示器显示出来, 从而具有一定的智能性。 本设计将对硬件电路部分和软件程序部分分别作介绍。在硬件

2、部分,本文就系统的各个组成模块的原理做了详细的介绍。在软件部分,详细阐述了各个模块电路的软件设计方法和设计中的细节。随着计算机技术的飞速发展和普及,数据采集系统在多个领域有着广泛的应用。 本次的课程设计研究对以后生活及工业应用将会有主要的意义。关键词:pcf8591 at89c51 lcd1602示屏一、设计内容及要求 11.1 设计内容 11.2 设计要求 1二、系统总体设计方案 12.1 主控芯片设计 12.2 显示方案设计 2三、系统硬件设计 23.1 单片机控制模块设计 33.1.1 主要性能参数 33.1.2 功能特性 43.1.3 引脚功能说明 43.1.4 at89s51 复位模

3、式 63.2 电源设计 73.3 模拟与数字信号采集模块设计 73.4 键盘输入模块的设计93.4.1 矩阵键盘工作原理 93.4.2 单片机键盘扫描法 93.5 lcd 显示模块的设计 10四、系统软件设计 114.1 系统工作流程 114.2 编程软件( keil) 114.3 a/d 转换程序流程图 12五、焊接与调试 135.1 调试方案 135.2 调试条件与仪器 13六、总结 14七、参考文献 15附录1 16附录2 17模拟信号采集器设计一、 设计内容及要求1.1 设计内容本课题要求以单片机为控制器, 对多通道模拟信号作数据采集并进行8 位转换,采集到的数据以中断方式接入内存加以

4、显示,并送到显示模块进行处理。由于信号比较多,单片机不可能把这些信号同时接收,因此需要由多路开关进行通道转换,分时地把信号送到采样/ 保持器(s/h) 、 a/d 转换器,把模拟量转换成数字量,然后通过显示器显示所选择的通道以及所采集的数据。1.2 设计要求1) 采集至少两路模拟信号,用数码管显示出来。2 )用键盘选择多路模拟信号的任意一路来进行数据的采集、显示与切换。3 )使用protues真软件,完成上述题目要求。二 、 系统总体设计方案2.1 主控芯片设计方案一:选用专用电压转换芯片inc7107实现电压的测量和现实。缺点是精度 比较低,且内部电压转换和控制部分不可控制,优点是价格低廉。

5、方案二:选用单片机at89s5才口 a/d转换芯片pcf5891实现电压的转换和控制, 用四位数码管显示出最后的转换电压结果。缺点是价格稍贵,优点是转换精度高,且转换的过程和控制、显示部分可以控制。终上所述: 方案二所需元件少、 成本低且易于实现, 可选此方案。 系统方案图如下:21模拟信号a/d转换模块单片机显示模块控制器图2.1系统方案图2.2 显示方案设计方案一:选用4个单体的共阴数码管,将ah全部连接起来,然后接到单片机 口的i/o上进行控制。缺点是焊接时比较麻烦,容易出错,优点是价格比较便宜。方案二:选用一个1602液晶显示器。lcd16021晶显示容量:16x2个字符,芯 片工作电

6、压:4.5 -5.5v,工作电流20ma(5.0v),模块最佳工作电压 50v ,字符尺 寸:2.95 x4.35(wx h)mm 1602液晶模块的读写操作、屏幕和光标的操作都是通过 指令编程来实现的。这个电路几乎没有缺点,优点是便于控制,且价格低廉,焊接 简单。终上所述:由于两个方案都可以实现同样的功能,但方案二设计简单、系统开 销小、反应速度较快,因此选择此方案。三、系统硬件设计这个设计的核心我们采用的是 stc89c525片,p0 口作为数据总线和地址总线, 首先,当模拟信号输入时,p0 口作为数据总线对数据进行输入,其后在把数据传给 8255时此时p0口作为一个地址总线。p2作为ad

7、c0809勺控制端口。p1作为流水灯 控制口。如图3.1所示:图3.1单片机引脚图p1j0/t2vccpi.l/t2ekpojo/adof0.1/ad1poi/adipui-03/ad3pij/mosip04xad4p1j5/msop0j/ad5p1.7sckpoj6/ad6rstp0j/ad7p3flffi3o/ea/vppps.imale/proop3 mmojpesnp33/ihtips.77a15p3.4/top2jwa14p3j/t1p25/a13dsjwau5ctal2p2 2/a10etal1p2.ua9gnip2jwa8uiu33.1 单片机控制模块设计对于整个数据采集系统而言

8、,起到控制和枢纽作用的单片机模块无疑是其中最 为重要的部分。at89s52是美国atme公司生产的低电压,高性能cmos8:单片机, 片内含8k bytes的可反复擦写的只读程序存储器 (perom和256bytes的随机存取 数据存储器(ram,器件采用atme公司的高密度,非易失存储技术生产,兼容标 准mcs-51指令系统,片内置通用8位中央处理器(cpu和flash存储单元,功能 强大at89s52是此系统的最佳选择。单片机控制模块的作用是控制各单元电路的运 行并完成数据的换算或处理,主要由单片机、时钟电路、复位电路组成。3.1.1 主要性能参数 与mcs-51产品指令系统完全兼容 4k

9、字节可重擦写flash闪速存储器 1000次擦写周期 全静态操作:0hz-24mhz 三级机密程序存储器 128x8字节内部 ram 32个可编程i/o 口线 2个16位定时/计数器 5个中断源 可编程串行uart!道 低功耗空闲和掉电模式3.1.2 功能特性at89s52提供一下标准功能:8k字节flash闪速存储器,256字节内部ram,32 个i/o 口线,两个16位定时/计数器,一个5向量两级中断机构,一个全双工串行 通信口,片内振荡及时钟电路。同时,at89s52可降至0hz的静态逻辑操作,并支持两种软件可选的节电工作模式。空闲方式停止cpu勺工作,只允许ram定时/计数器,串行通信

10、口及中断系统继续工作。掉电方式保存raw的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位。图3.2单片机最小系统.01,234/5b7 pt曰 eptmptple3.1.3 引脚功能说明(1) vcc电源电压。(2) gnd1。(3) p0 口: p0 口是一组 8位漏极开路型双向 i/o 口, 即地址 /数据总线复用口。 作 为输出口用时,每位能吸收电流的方式驱动8个ttl逻辑门电路,对端口写“1”可 使其成为高阻抗输入端。在访问外部数据存储器或程序存储器时,这组口线分别被地址 (低 8 位) 和数据总线使用, 在访问期间激活内部上拉电阻。 在 flash 编程时,p0 口接

11、受指令字节, 而在程序校验时, 输出指令字节, 校验时, 要求外接上拉电阻。(4) 4) p1 口: p1 是一个带内部上拉电阻的 8 位双向 i/o 口, p1 的输出缓冲级可驱动(吸收或输出电流)4个ttl逻辑门电路。对端口写“ 1”,通过内部的上拉电阻把 端口拉到高电平,此时可作输入口,做输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流。 flash 编程和程序校验期间, p1 接受低 8 位地址。(5) p2 口: p2是一个带有内部上拉电阻的8位双向i/o 口,p2的输出缓冲级可驱动(吸收或输出电流) 4 个 ttl 逻辑门电路。对端口写“1” ,通过内部的

12、上拉电阻把端口拉到高电平,此时可作输入口,做输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流。 在访问外部程序存储器或16 位地址的外部数据存储器(例如执行 movxdptr)时,p2 口送出高8位地址数据。在访 问8位地址的外部数据存储器(如执行 movxi令)时,p2 口线上的内容(也即 特殊功能寄存器(sfr区中r2寄存器的内容),在整个访问期间不改变。flash编 程时, p2 亦接受高位地址和其他控制信号。(6) p3 口: p3是一个带有内部上拉电阻的8位双向i/o 口,p3的输出缓冲级可驱 动(吸收或输出电流)4个ttl逻辑门电路。对p3口写“1”,它们

13、被内部的上拉电 阻拉高, 此时可作输入口, 做输入口使用时, 被外部拉低的 p3 口将用上拉电阻输出 电流。(7) rst复位输入。当振荡器工作时,rst引脚出现两个机器周期以上高电平将 使单片机复位。(8) ale/prog当访问外部程序存储器或数据存储器时,ale(地址锁存允许)输出脉冲用于锁存地址的低8位字节。即使不访问外部存储器,ale仍以时钟振荡频率 的1/6输出拱顶的正脉冲信号,因此它可对外输出时钟或用于定时。要注意的是:每当访问外部数据存储器时将跳过一个 ale脉冲。对flash存储器编程期间,该引 脚还用于输入编程脉冲(prog如有必要,可通过对特殊功能寄存器(sfr区中的 8

14、eh单元的d0位置位,可禁止ale操作。禁止后,只有一条 mov沏mov的令可激 活ale止匕外,该引脚会被微弱拉高,单片机执行外部程序时,应设置ale无效。(9) ea/vpp:外部访问允许。欲使cpu仅访问外部程序存储器(地址为 0000h-ffffh。ea端必须保持低电平(接地)。需注意的是:如果加密位ib1被编 程,复位时内部会锁存e端状态。如ea端为高电平(接vcc端),cpu则执行内部 程序存储器中的指令。flash存储器编程时,该引脚要加上+12v的编程允许电源vpp, 当然这必须是该器件是使用12v编程电压vppo(10) xtal1:振荡器反相放大器的及内部时钟发生器的输入端

15、。(11) xtal2:振荡器反相放大器的输出端。3.1.4 at89s51复位模式复位电路单片机的rst管脚为主机提供了一个外部复位信号输入口。复位信号是高电平有效,高电平有效的持续时间为 2个机器周期以上。单片机的复位方式可 由手动复位方式完成。电阻、电容器的参考值1r=10、1c=10uf hc=0.01uf复位 电路如图所示。图3.1复位电路3.2 电源设计电源由变压部分、滤波部分、稳压部分组成。为整个系统提供5v或者12v电压,确保电路的正常稳定工作。采用l7805稳压块,输出为5v。电子组件要正常运作都需要电源电压供电,一 般常用的电源电压为+5v或+12v,因为数字ic (ing

16、egrated circuit :集成电路) 所供给的电压为+5v,而cmos io供给的电压为+12v, 7805是一个稳压块。7805 稳压管把高电压转换到低电压,7805稳压管具有保护单片机的作用。l7805输出端 要并联上一个电解电容,滤除交流电干扰,防止损坏单片机系统。本设计采用只采 用了稳压电源。黄色发光二极管表示保温,红色的表示加热状态。图3.2电源电路图3.3 模拟与数字信号采集模块设计模拟信号采集主要采用逐次逼近型 a/d转换器,它属于直接型 a/d转换器,它 能把输入的模拟电压直接转换为输出的数字代码,而不需要经过中间变量。主要由 比较器、环形分配器、控制门、寄存器与 d/

17、a转换器组成。在数字信号方面我们采 用的是光电耦合的方式使采集的信号与我们的系统互不影响。pcf8951模数转换芯片简介:pcf8591是一种具有i2c 总线接口的8位a/d d/a 转换芯片,在与cpu的信息 传输过程中仅靠时钟线scl和数据线sda就可以实现。i2c总线是philips (飞 利浦)公司推出的申行总线,它与传统的通信方式相比具有读写方便,结构简单, 可维护性好,易实现系统扩展,易实现模块化标准化设计,可靠性高等优点。pcf8591 为单一电源供电(2.5-6 v 典型值为5 v, cmost艺pcf8591有4路8位a/d 输入,属逐次比较型,内含采样保持电路;1路8位d/

18、a输出,内含有dac的数据寄存器a/d d/a的最大转换速率约为11 khz ,但是转换的基准电源需由外部提供pcf8591的引脚功能如表3.3 :表3.3 pcf8591的引脚功能功能描述引脚序号 引脚名称1t模拟伯号输入南(t5-7七器件硬件地址输入端.由便件电路决定1c8i)d-,ss 电源、地9、。sdascl总线的数据线、时钟线osc外部时钟输入端.内部时钟输出痂12ext时钟选择线,ext=(h使用内部时钟:ex1上i,使用外部时钟 agm)模拟信号地15 a(h ti)八转换输出端尸址内产2565基准电源端.6-5 ),取值大小影响d/a转换输出电压.u*阳 当取值等于为 dd时

19、,输出电压为05 .pcf8591是单片、单电源低功耗8位cmo激据采集器件,具有4个模拟输入、 一个输出和一个串行i2c总线接口。3个地址引脚ar a1和a2用于编程硬件地 址,允许将最多8个器件连接至i2c总线而不需要额外硬件。器件的地址、控制和 数据通过两线双向i2c总线传输。器件功能包括多路复用模拟输入、片上跟踪和保 持功能、8位模数转换和8位数模拟转换。最大转换速率取决于i2c总线的最高速 率。a/d转换器采用逐次逼近转换技术。在 a/d转换周期将临时使用片上 d/a转 换器和高增益比较器。一个a/d转换周期总是开始于发送一个有效读模式地址给 pcf8591之后。a/d 转换周期在应

20、答时钟脉冲的后沿被触发,并在传输前一次转换结果时执行。一个转 换周期被触发,所选通道的输入电压采样将保存到芯片并被转换为8位二进制码。取自差分输入的采样将被转换为 8位二进制补码。转换结果被保存在adc数据寄存 器等待传输。如果自动增量标志被置 1,将选择下一个通道。在读周期传输的第一 个字节包含前一次读周期的转换结果代码。以上电复位之后读取的第一个字节是 0x80。i2c总线协议的读周期。最高 a/d转换速率取决于实际的i2c总线速度。3.4 键盘输入模块的设计3.4.1 矩阵键盘工作原理矩阵键盘又称为行列式键盘,它是用 4条i/o线作为行线,4条i/o线作为列 线,组成键盘的。在行线和列线

21、的每一个交叉点上,设置一个按键。这样键盘中按 键的个数是4x4个。这种行列式键盘结构能够有效地提高单片机系统中i/o 口的利用率。行列式键盘的工作方式是先利用列线发送扫描字,然后读取行线的状态,查 看是否有按键按下。键盘部分提供一种扫描的工作方式能对键盘不断扫描、自动消 抖、自动识别按下的键,并给出编码。在显示部分,它可以为发光二极管、荧光管 及其他显示器提供按扫描方式工作的显示接口,而且为显示器提供多路复用信号, 可以显示多达16位的字符或数字。键盘中有无按键按下是由列线送入全扫描字、行线读入行线状态来判断的,其 方法是由列线逐列置低电平后,检查行输入状态来判断,其方法是依次给列线送低 电平

22、,然后检查所有行线状态,如果全为1,则所按下的键不在此列,如果不全为1, 则所按下的键必在此列,而且是在与 0电平线相交的交点上的那个键。3.4.2 单片机键盘扫描法扫描法是在判定有键按下后逐列果行 (或列)的状态出现非全1状态,如果(或 列)的状态出现非全1状态,这时0状态的行、列交点的键就是所按下的键。扫描 法的特点是逐行(或逐列)扫描查询,这时相应行(或列)应有上拉电阻接高电平。 行列式键盘扫描程序就是采用扫描法来确定哪个键按下的。确定矩阵式键盘上哪个键被按下时运用扫描法,又称为逐行(或列)扫描查询 法,是一种最常用的按键识别方法。其连接图如下如下:1m 0 p1 1除历中ki的hp3

23、3*311-pi.4p3w0r.5pssfflpl恳ptflj标h 7pil3l *24ui. * q_lle7 baw1图3.4矩阵键盘电路与单片机连接图3.5 lcd显示模块的设计单片机通过a/d转换芯片采集到的俩路数据,经过按键的选择,在lcd16021显示不同的通道。1602 液晶也叫1602字符型液晶它是一种专门用来显示字母、数字、符号等的 点阵型液晶模块它有若干个5x7或者5x11等点阵字符位组成,每个点阵字符位都可 以显示一个字符。每位之间有一个点距的间隔每行之间也有间隔起到了字符间距和 行间距的作用,正因为如此所以他不能显示图形。1602lcd1指显示白内容为16x2, 即可以

24、显示两行,每行16个字符液晶模块(显示字符和数字)。4rp1p2.19pl1okdd juw1pdajmd4 pq&ods paj&md& 。口 tad7图4.5lcd显示模块连接图四、系统软件设计4.1 系统工作流程程序开始运行时,我们先将它进行初始化,当数据输入后对4个通道的模拟量进行巡回采样,再将采集的数据进行工程量转换,在数码管管上显示出来,通过外 部的中断实现信号的切换。图4.1系统流程图4.2 编程软件(keil)keil c介绍:keil c51是美国keil software公司出品的51系列兼容单片机 c语言软件开发系统,与汇编相比,c语言在功能上、结构性、可读性、可维护性上

25、 有明显的优势,因而易学易用,单片机开发中除必要的硬件外,同样离不开软件, 我们写的汇编语言源程序要变为 cpk以执行的机器码有两方法,一种是手工汇编, 另一种是机器汇编,目前已极少使用手工汇编的方法了。机器汇编是通过汇编软件 将源程序变为机器码,用于mcs-5俾片机的汇编软件有早期的 a51,随着单片机开 发技术的不断发展,从普遍使用汇编语言到逐渐使用高级语言开发,单片机的开发 软件也在不断发展,keil软件是目前最流行开发 mcs-51系列单片机的软件,这从近年来各仿真机厂商纷纷宣布全面支持 keil即可看出。keil提供了包括c编译器、 宏汇编、连接器、库管理和一个功能强大的仿真调试器等

26、在内的完整开发方案,通 过一个集成开发环境(uvision )将这些部份组合在一起。运行keil软件需要pentium 或以上的cpu i6mb1e更多ram 20m以上空闲的硬盘空间、 win98 nt win2000 winx可操作系统。keil c51软件提供丰富的库函数和功能强大的集成开发调试工 具,全windows界面。另外重要的一点,只要看一下编译后生成的汇编代码,就能 体会到keil c51生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑, 容易理解。在开发大型软件时更能体现高级语言的优势。根据需要,可将系统软件 按照功能划分为5个模块,分别是主程序模块、a/d转换模块、

27、数码管显示模块、 中断服务程序模块、按键输入模块,各模块的功能关系如图3.1所示。编写系统软件时,可首先编写各模块的底层驱动程序,而后是系统联机调试,编写上层主程序。4.3 a/d转换程序流程图a/d 转换程序的功能是采集数据,在整个系统设计中占有很高的地位。本设计 中采用中断的方式来读取转换完成的数据,这样能节省cpuw资源,当系统设置好后,一旦数据转换完成,当便会进入外部中断0,然后在中断中读取转换的数值,处理数据并送数码管显示输出程序流程图如图4.2所示。开始设置模拟入口启动4专换转换完?输山数值处理图4.2 a/d转换程序流程图五、焊接与调试5.1 调试方案:( 1)硬件调试仔细检查所

28、接电路,按照硬件原理图接线,理论上是能实现的,如果液晶不显示,则应该检查线路是否正确,或是因为单片机没有工作,还有集电极和发射极是否接对。如果只显示八,则可能是采集芯片没有接正确,检查上拉电路是否接好。另外要注意的是,由单片机输出的控制信号比较小,需要进行放大才能驱动继电器工作,蜂鸣器是低电平有效。如果能注意这些问题,电路基本不会出错。( 2)软件仿真调试如果硬件电路检查后,没有问题却实现不了设计要求,则可能是软件编程的问题, 首先应检查初始化程序, 然后是读采集的数据值, 显示程序, 对这些分段程序,要注意逻辑顺序,调用关系,以及涉及到了标号,有时会因为一个标号而影响程序的执行,除此之外,还

29、要熟悉各指令的用法,以免出错。还有一个容易忽略的问题就是,源程序生成的代码是否烧入到单片机中,如果这一过程出错,那不能实现设计要求也是情理之中的事。本人在设计的时候在protues 仿真软中进行调试,通过此软件进行调试可以很方便的观察单片机的工作及输出情况。( 3)硬件软件联调硬件与软件调试相结合,仔细检查各个模块的设计,旧能顺利完成任务,实现设计要求,在调试过程中必须认真耐心,不能有一点马虎,否则遗漏一个小的问题就会导致整个设计的失败。5.2 调试条件与仪器测试条件:检查多次,硬件电路必须与系统原理图完全相同,并且检查无误,硬件电路保证无虚焊。测试仪器:protues仿真软件,单片机最小系统

30、实验板,1602液晶显示器。六、总结在此次的模拟信号采集器设计设计过程中,我更进一步地熟悉了at89c5仰片机、pcf859假数转换等芯片的结构及掌握了各芯片的工作原理和其具体的使用方 法。虽然跟实验室用得芯片不一样,但原理一样,我也得出了正确的结论,不同的 电路可以实现同样的功能,我们应该设计最简单,最经济,最实用的电路。当然这 个不一定所有条件都符合,找到一个最大限度满足各种条件的方案是我们设计的目 标。在这次课程设计,我还更加深了理论知识的学习。这次的设计电路我用到了很多电子工具及仿真软件等,通过自己分析和设计更好地运用了它们,而且还学会了它们更多的功能,发现它们的功能远比书上说的多很多

31、,只有通过亲自动过手做,才能深刻地了解芯片的工作原理,可以利用不同的接法设计出各种各样不同的电路出来。当然,在设计与仿真中会遇到很多问题,碰到的问题越让人绝望,解决问题之后的喜悦程度就越高。作为工科类的学生,动手能力很重要,以后工作了难免要碰到许许多多的问题,遇到问题不能逃避,要冷静对待,找到问题的关键点,针对性的取解决,然后再总结经验才能在工作中游刃有余。通过本次课程设计,我还深刻的体会到,理论很重要,但是实践更重要,只有理论只会一叶障目,实践才能真正考验你的能力,所以以后我会多多动手,锻炼自己的动手能力,将理论与实践相结合,做一个更加优秀的大学生。同时非常感谢老师给我们这次学习的机会,使我

32、们小组每个人都在本次设计中都有了极大的提高,希望以后能有更多这样的机会。七、参考文献1151单片机c语言教程郭天祥 编著电子工业出版社,2008.11.2【 2】 全国大学生电子设计竞赛系统设计黄智伟编著,北京:北京航空航天大学出版社, 2006.12【 3】 模拟电子技术基础 童诗白, 华成英著, 北京: 高等教育出版社, 2000.41新型at89s52系列单片机及其应用孙育才,北京:清华大学出版社, 2005【 5】 全国大学生电子设计竞赛单片机应用技能精解 蓝和慧等著, 北京:电子工业出版社, 2009.4附录1:系统原理图:密衰”- -一曲阳后四向鬲呼ak总口向网产匕9行fffi产产

33、同:臂c 噎ed usc 穹e ulmd 屋口 d 昌百d 售cwi学 口直 三者之 口喜a. 里曰 兽安疵杀 坦h研 =当e=id 口否 目禽之 5备 tt,1- ol口:- -i - 01 or: i l.:丁川匚? if 2恪 mil星 圈mixi.ul: to - 0l 匚:- iil*ju-. w一4i0u口1 :x - 0l -11: l 1 .t1 o-:10 - 0l -o- 一- l - 一-p- 一: |-0 . l : ju-1 0l - s - - - iji 交旧附录 2:部分源程序 :#include#includei2c.h#includelcd.h/-定义使用的

34、 io 口 -/#define gpio_key p1/- 定义全局变量-/uchar code dis1 = pcf-8591 key is: ;unsigned char keyvalue;/ 用来存放读取到的键值/- 声明全局函数-/void keyscan(void);void delay10ms(unsigned int c); /误差 0usuchar m;uchar i;/-定义pcf8591的读写地址一#define writeaddr 0x90 / 写地址#define readaddr 0x91/ 读地址/- 声明全局函数-/ void pcf8591sendbyte(un

35、signed char channel);unsigned char pcf8591readbyte();void pcf8591daconversion(unsigned char value);/* */* lcdwritedata(a);lcdwritedata(:);lcdwritecom(0x80 + 0x48);lcdwritecom(0x80+0x48);lcdwritedata(0+adnum0%1000/100);lcdwritedata(.);lcdwritedata(0+adnum0%100/10);lcdwritedata(0+adnum0%10);lcdwriteda

36、ta(v);pcf8591sendbyte(2);/ 发送光敏转换命令adnum1=pcf8591readbyte()*2; /adc1 读取热敏 else lcdwritedata(b );lcdwritecom(0x80+0x48);adnum2=pcf8591readbyte()*2;lcdwritedata(0+adnum1/1000);lcdwritedata(0+adnum1%1000/100);lcdwritedata(0+adnum1%100/10);lcdwritedata(0+adnum1%10);lcdwritedata(0);adnum2=pcf8591readbyte()*2; /adc2 读取光敏adnum4=adnum0;pcf8591daconversion(adnum4/2); /dac数模转换 */void

温馨提示

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

评论

0/150

提交评论