基于c8051f330的单片机温度计设计论文内容摘要:

原理框图 [3],其内容如下图 22 所示: 图 22 电路原理框图 如上图 22 所示,选用 C8051F330 通用 I/O 端口中的 、 分别输 入第一、二路电压,采集到的模拟数据经单片机内部 A/D 转换和内核处理后变为段码,再送到段码驱动器驱动 LED 实现显示。 需要注意的是:作为单片机模拟输出的端口工作时电压都在 ,同时单片机数 据、时钟输出端口都需要上拉电阻到 5V电源,保证输出的正常。 段码驱动器 也需要接到 5V 电源上。 温度计系统的工作步骤 ( 1) 接好电源,调节两个电位计使其分别输出为一个确定值 ( 2) 程序使数码管显示 “ 8051” , 按下开关 SW2,数码管再次显示 “ F330” ( 3) 再按一下开关 SW2,开始对片内温度 值的采集 ,采集到的数据(电压值)放在 ADC0 的寄存器 ADC0H: ADC0L 中 ( 4) 程序 将采集的电压值转换为温度值 ( 5) 程序利用 8051 内核对数据进行转 BCD 码和段码处理 ( 6) 使能 C8051F330 内部的增强型 SPI 串行输出端口,使转换好的数据从此处输出到外部移位寄存器 ( 7) 通过软件查询语句判断数据输出是否结束,结束后送移位寄存器驱动显 RET C8051 F330 单 片 机 电位计 第一路测压 第二路测压 复位控制 电压 段码 驱动器 4 位 LED 温度显示 时钟 输出 数据 输出 上拉 电阻 5V 电压 西安石油大学本科毕业设计(论文) 5 示 ( 8) 按一下开关 SW1,开始对 端口电压值的采集 ,采集到的数据放在ADC0 的寄存器 ADC0H: ADC0L 中,重复步骤( 4)、( 5)、( 6)、 ( 7) ( 9) 再按一下开关 SW1,开始对 端口电压值的采集 ,采集到的数据放在ADC0 的寄存器 ADC0H: ADC0L 中,重复步骤( 4)、( 5)、( 6)、 ( 7) ( 10) 若想停止对数据的测量,可按一下复位开关 SW3,系统回到初始状态,就可重新进行对数据的采集 明确上述的工作步骤之后,温度计系统的设计思路就进一步清晰了。 温度计系统 电路原理图 及 说明 该系统完成对两路 0~。 整个系统硬件可分为电源部分、控制部分 、显示部分、按键部分。 各部分紧密连接形成一套完善的测压、测温系统。 系统电路原理图如图 23所示 : 系统工作时,由外部电源提供 5V 电压,供 74LS164 使用,单片机的工作电压在~ 之间,所以选用一低压转换器件 AMS1117 实现 5V 电压 向 电压 的转换,为单片机提供工作电压。 经过调节电位计后,按下开关,模拟电压信息可从 、 输入,经单片机内部 ADC 采集、量化、编码后由 口输出到移位寄存器。 等待 4 字节数据传输结束时,串行输出口 SPI0 的控制寄存器 SPI0CN 位 7 “ SPIF”变为 “ 1”,这个“ 1”便可允许 74LS164 输出上一组数据,送 4 位 LED 显示,同时允许下一组数据输入 74LS164。 由于 、 端口工作电压在 ,所以需要上拉 的电阻到 5V,保证单片机数据输出正常。 LED 后接一个 510Ω的电阻到地端,起到限流保护数码管的作用。 电源 部分设计 C8051F330的工作 电压 范围 在 ~。 AMS1117是一个低压差电压调节器。 作为供电装置, AMS1117可以将输入的 5V电压转化为 ,正好 满足C8051F330的 工作 电压 要求。 需要注意的是:电路的外接电源选 5V,这样在经过AMS1117转换后的 C8051F330,同时 5V电压满足 74LS164以及单片机输出上拉的要求。 西安石油大学本科毕业设计(论文) 6 图 23 电路原理图 西安石油大学本科毕业设计(论文) 7 AMS1117输出端需要一个 10uF的钽电容来改善瞬态响应和稳定性。 电源部分设计如下图 24所示 : 图 24 电源设计 如上图 24所示, 输入 电容 起滤波作用, 10uF的 输出 电容 则起到 稳定 输出电压为。 AMS1117的 管脚图如下 图 25: 顶视图 侧视图 图 25 AMS117 管脚图 从图 25 可看出, AMS1117 是平贴的外形设计,用 Protel99SE 设计原理图时,器件库中应选用对应 AMS1117 实物的封装形式,即 SOT223,保证 AMS1117 与其它器件的正确连接关系。 控制部分说明 控制部分选用 C8051F330 单片机, 将 采集到的 模拟信号送 入 C8051F330 单片机内部 的 10 位 ADC 模块,使用内核模块完成数字信息的处理, 将 ADC 寄存器中转换出的数字信息处理为段码, 即 完 成了数据的采集、量化和编码, 然后调用查表程序,使用 SPI0 将转换好的段码送给 LED 显示。 显示部分设计 显示部分包括 74LS164 移位寄存器和 LED 数码显示管。 74LS164 移位寄存器接收从 8051 内核转换出的 4 字节段码, 当单片机发出传输结束的信号后,四个移位寄存器将送出的 4 个字节串行数据转化为 32 位并行数据,分别送往各个 LED, 采用静态显示的方式,驱动 4 位 LED 实现显示。 ( 1) 74LS164 移位寄存器 74LS164移位寄存器 功能是将外部输入的串行数据转化为 8位的并行数据输出,+5V供电,串行数据的频率由外部时钟控制,其数据输出具有锁存功能。 74LS164封装图 如图 26: 电压输出 西安石油大学本科毕业设计(论文) 8 图 26 74LS164封装图 各引脚说明如下: A﹑ B:信号输入端 CLEAR: 同步清除输入端(低电平有效) CLOCK:时钟输入端,作为串行数据接收同步信号,由单片机内部时钟提供,片内系统时钟选择了 SYSCLK/4,即 QA~ QH:输出端 其功能如下 表 22所示: 表 22 74LS164真值表 输入 输出 Clear Clock A B QA QB „„ QH L H H H H X L ↑ ↑ ↑ X X X X H H L X X L L L „„ L QA0 QB0 „„ QH0 H QAn „„ QGn L QAn „„ QGn L QAn „„ QGn H-高电平 L-低电平 X-任意电平 ↑-低到高电平跳变 QA0,QB0,QH0 -规定的稳态条件建立前的电平 QAn,QGn -时钟最近的 ↑前的电平 当清除端 ( CLEAR) 为低电平时,输出端 ( QA- QH) 均为低电平。 串行数据输入端 ( A, B) 可控制数据。 当 A、 B任意一个为低电平,则禁止新数据 的 输入,在时钟端 ( CLOCK) 脉冲上升沿作用下 QA为低电平。 当 A、 B有一个为高电平,则另一个就允许输入数据,并在 CLOCK上升沿作用下决定 输出 的状态。 ( 2) LED数码显示管 LED数码管分为共阴极和共阳极两种。 本设计中所采用的是共阴极 LED显示块。 所谓共 阴极 方式是指各段发光管的 阴 极 ( 即 N区 ) 是公共的,而 阳 极互相隔离 ,图( b)西安石油大学本科毕业设计(论文) 9 为共阴极的 LED,图( c)为共阳极的 LED。 其管脚排列如图 27所示 : ( a) LED 管脚图 ( b) 共阴极 LED ( c) 共阳极 LED 图 27 LED 管脚及内部结构 LED 显示是用发光二极管显示字段的显示器件,由图 27 可见它由 8 个发光二极管构成,通过不同的组合可用来显示 0~ A~ F 及小数点。 LED 的显示分式分为静态和动态两种。 静态显示时将各位的共阴极连接在一起并接地,每位的显示段( a~ dp)分别与一个 8 位锁存器(如前面介绍的 74LS164)输出连接。 由于显示器的各位可以独立显示,所以只要在该位的段选线上保持段选码电平,该位就能保持相应的显示字符。 并且由于各位分别由一个 8 位锁存器控制段选线,故在同一时间里,每一位显示的字符就可以各不相同。 动态显示时将所有位的段选码相应的并联在一起,由一个 8 位 I/O 口控制,形成段选线的多路复用。 而各位阴极分别由相应的 I/O 口线控制来实现各位的分时选通。 独立保持的显示可以满足设计中的要求,所以选择静态显示就可以。 表 23 共 阴 极 LED 段码表 a b c d e f g dp 段码 D0 D1 D2 D3 D4 D5 D6 D7 0 1 1 1 1 1 1 0 0 3FH 1 01100000 0FCH 2 1 1 0 1 1 0 1 0 0DAH 3 1 1 1 1 0 0 1 0 0F2H 4 01100101 66H 5 1 0 1 1 0 1 1 0 0B6H 6 1 0 1 1 1 1 1 0 0BEH 7 1 1 1 0 0 0 0 0 0E0H 8 1 1 1 1 1 1 1 0 0FEH 9 1 1 1 1 0 1 1 0 0F6H 西安石油大学本科毕业设计(论文) 10 显示出相应的十进制数码。 共有七段笔划,每一段为一发光二极管,分别用 a~g 的 7 个字母表示。 七段 LED 显示的 0~ 9 这十个数字的字型。 采用共 阴 极数码管,则七段显示译码器的段码表如下表 23 所示。 显示部分的电路设计如图 29 所示,单片机 作串行数据输出口,与 74LS164的信号输入端 A、 B 相连; 口与 74LS164 的 CLK 端相接,为其提供同步时钟。 移位寄存器的 QA~ QH分别与 LED 的 a~ dp 相连。 数码管的公共端 GND 通过一个510 的电阻 接地以限制数码管上的电流 过 大 , 起到保护数码管的作用。 移位寄存器每传输完四字节信息,数码管就显示出相应数据。 图 28 按键电路 图 29 显示电路 按键部分设计 设计中按键部分的电路如上图 28 所示。 按键设计的思路是:按下开关 SW3 时单片机复位;按下开关 SW2 时,采集片内温度传感器的值;按下 SW1 时,采集单片机的 端口到 GND 之间的电压值。 再按西安石油大学本科毕业设计(论文) 11 下 SW1 时,采集单片机的 端口到 GND 之间的电压值。 编写程序时,可以先进行复 位,然后判断哪路开关按下,在第一路开关没按下时就跳到下一路开关处再进行判断,这样一直循环下去,直到判断有开关按下后,便对这个开关对应的一路开始模拟数据的采集。 温度计系统电路板的制作过程 硬件的电路设计由 Protel99SE软件完成。 设计生成的 PCB图见附录所示。 在完成对电路的整体方案设计后,进入电路的制作阶段。 Protel99SE软件是一个较好的专业性的电路制图工具软件,电路的绘制主要是用 Prote99SE软件来制作完成。 在本次设计中,电路板的设计制作过程如下: ( 1) 在启动软件界面 后首先按照设计方案画好电路原理图。 在此设计过程中,由于 元器件库中没 有现成的 C8051F330的器件图 ,因此 需要在 Schematic Library中自定义元器件库中 自己设计 C8051F330元器件图。 ( 2) 进行电气化规则检查。 在此过程中 ERC开始 报告管脚没有接入信号, 分析原因有: 创建元件或放置元件时修改了不一致的 Gri。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。