单片机综合设计
单片机综合设计(精选9篇)
单片机综合设计 第1篇
超外差结构在射频前端中有着广泛的应用, 这种结构的接收机需要提供本地振荡信号。实际应用中, 超外差接收机的本地振荡器通常使用锁相环 (PLL) 频率综合器。这种形式的频率综合器具有高稳定度和高精度, 并且便于控制, 在几乎所有手机以及各种无线设备中都有应用。
最初, 锁相环电路的各个子电路都需要分别搭建;随着集成度的提高, 出现了集成了除环路滤波器部分之外的锁相环其他部分的芯片, 之后压控振荡器也被集成到芯片中, 从而大大减小了整个频率综合器的体积。这类芯片通常还可以调节输出频率的, 由外部提供控制信号来改变芯片的某些参数, 得到所需的输出信号;这一控制信号通常由单片机发出。
PLL电路设计的重点在于环路滤波器[1], 包括其结构、带宽等特性, 这些特性直接影响PLL电路的性能。因此设计该频率综合器, 重点在于设计外围电路特别是环路滤波器, 以及设置可编程芯片的参数。
1 设计方案
1.1 方案选择
频率综合器是一个PLL电路, 以集成化的PLL芯片为核心来搭建。较早的集成化PLL芯片, 如74HC4046等, 并不包含压控振荡器 (VCO) 。在芯片外搭建电路增加了不小的体积, 而集成了VCO的芯片更利于减少体积和功耗。
本设计要求高可靠性, 输出频率为1.9GHz, 选择ADI公司的ADF4360-3芯片, 它的输出频率范围为1.6GHz~1.95GHz, 供电电压为3.0V~3.6V, 输出功率的可调范围为-13dBm~-3dBm, 两路差分输出, 鉴相鉴频器的最高频率为8 MHz。这款芯片性能良好, 虽然与一些高端芯片相比, 相位噪声等性能方面的表现有所不如, 但该芯片管脚少、易操作、体积小, 便于维护和后续改进电路。
单片机则采用PIC18F4550的44脚贴片封装。该单片机资源丰富, 且具有内部USB收发器, 可以与电脑用USB连接, 提供电源和通信。支持ICSP在线编程。
1.2 工作原理
ADF4360-3集成了PLL电路的主要部分, 原理框图如图1所示。外部的晶体振荡器提供输入基准频率, 经过R计数器分频后得到PLL的参考频率。压控振荡器的输出经过N分频后送入鉴频鉴相器与参考频率比较, 结果由电荷泵输出, 经过外部的环路滤波器滤波, 控制压控振荡器的输出。压控振荡器的输出经过芯片内部的输出级输出为一对差分信号, 可由外部输出级处理得到需要的信号。其中N分频由P/P+1前置分频器、A计数器、B计数器完成, 分频比N = P*B+A。R计数器、A计数器、B计数器的计数值可编程控制, P/P+1前置分频器则有8/9、16/17、32/33三种可编程选择。编程控制信号由芯片的SPI输入, 由单片机提供。
1.3 电路和PCB设计
设计的电路原理图如图2所示。该电路设计参考了ADF4360-3和PIC18F4550的芯片数据手册中提供的说明和实例。
PLL频率综合器的环路低通滤波器是设计的重点。实际电路中的噪声和异常因素的影响需要在电路调试中改善。不同参考资料提供了不同的设计方法, 参考文献[1,2]给出了不尽相同的设计方案, 文献[3]也有不少设计实例。本文采用的是两个电阻三个电容组成的“2R3C”结构, 图示滤波器的3dB带宽约为100kHz。
ADF4360-3芯片提供差分对输出, 而本设计中所需的是单端信号。芯片数据手册中给出的Balun输出级在实际制作出来测试后, 效果并不理想, 因此最终采用的是图2中所示的谐振输出级, 得到两路信号输出。接电源处一般采用较大的电感, 一方面避免信号进入电源, 另一方面可以提高输出的动态范围。图示参数使用ADS仿真得到, 传递参数在1.9GHz处有峰值。
多路复用输出接发光二极管作为锁定指示灯, 实际采用的是接10kΩ上拉电阻到高电平的方式。锁定时该管脚输出高电平, 二极管导通发光。
单片机使用24MHz晶振作为外部时钟输入, 方便USB收发器的时钟设置。使用默认的ICSP接口引脚undefined、RB6、RB7与编程器连接, 额外的ICSP接口不用。编程电压脚同时也是复位脚, 为此将其通过上拉电阻接电源, 可以在编程时通过该引脚复位, 也可以在正常工作时维持高电平。USB为系统提供5V电源, ADF4360-3的电源由3.3V稳压芯片LM3760转换得到。单片机与ADF4360-3的通信经由主同步串口进行, 单片机只发送数据, 不接收数据。由于单片机工作于5V, ADF4360-3工作于3.3V, 该数据接口又是单向传输数据的, 简单地采用反接稳压二极管的方法进行电平匹配。
PCB设计采用单层双面板, 单面焊接元器件, 双面走线。由于频率综合器射频输出的走线是微带线, 采用0.8mm的板厚, 以减小微带线宽度。输出本振信号接口用偏脚卡板的SMA-KE转换器, USB连接用卧式A口母座, 其它的连接用双排座。单片机和频率综合器分别制板便于调试修改。
1.4 控制程序和参数设计
在USB的通信功能并未使用的情况下, 单片机的控制程序相对简单, 初始化完成后, 控制频率综合器上电, 发送预先设置好的配置字即可得到所需频率的本振信号。给频率综合器上电后, 需要等待一段时间, 立即发送数据可能会导致ADF4360-3接收的数据有误。
ADF4360-3需要配置的锁存器有三个, 需要发送3个24比特的配置字。PIC18F4550的主同步串口SPI模式只能一次发送一个字节, 需要发送三次才能发完一个配置字。配置字的最低两个比特是识别地址的位。采用的配置字如下:
(1) R计数器锁存器0x300041。压控振荡器电压-频率曲线为锯齿状, 需选择频带, 上电时会根据N分频比自动选择, 需要提供输入基准频率的分频信号作为时钟, 该时钟频率不能超过1 MHz, 频带选择时钟预分频设置为8分频, 输入基准频率经过8分频后再R分频, 不超过1MHz。R计数值设置为16, 即参考频率为500 kHz。
(2) 控制锁存器0x003128。P/P+1前置分频为8/9。电荷泵电流选用最小值, 减少环路滤波器中串接电阻上的压降, 可以在较高的参考频率下锁定, 否则只能选用较低参考频率和较大的N分频比。选择最大芯片输出功率。多路复用输出选择输出数字锁定指示。核心电流选择建议值15mA, 过大过小都对输出本振信号的性能有不利影响。
(3) N计数器锁存器0x01db02。参考频率500kHz, P/P+1选择为8/9, 需要输出1.9GHz, 设置A计数值为0, B计数值为475。
R计数值和A、B计数值根据选择参考频率不同而不同, 例如也可设置为R计数值2, A计数值3, B计数值59, 这样参考频率是4MHz, N分频比是475, 输出1.9GHz。需要注意的是, 必须按上述顺序发送配置字, 且发送N计数器锁存器之前需要等待5ms以上。
2 实际电路设计结果
设计完成的频率综合器和单片机控制电路之间用6根导线连接提供控制信号和电源, 共地。使用Agilent N9320B频谱分析仪测试。在单片机程序中改变SPI通信的内容, 测试设置不同的ADF4360-3参数带来的影响。并且对两种不同带宽的环路滤波器的频率综合器, 分别进行测试。
2.1 输出功率和频率偏差
设置输出频率1.9GHz, 芯片输出功率选择输出功率-3dBm。芯片核心电流选择15mA时, 测量单路输出功率达到+2.2dBm。调高芯片的核心电流会在偏离中心频率800kHz处出现较明显的寄生成分;降低芯片的核心电流则会降低输出功率。在+2.2dBm的输出功率下, 发热量较大, 明显感受到电路温度较高。输出频率的实测值比设定值偏低43kHz。
2.2 相位噪声
输出频率1.9GHz, 芯片核心电流15mA。使用频谱仪的相位噪声测试功能, 分别测量不同的环路带宽和参考频率, 输出本振信号的相位噪声如表1所示。
20kHz处有较强寄生振荡, 影响了10kHz偏移处的相位噪声性能。但可以看出增大环路滤波器带宽有利于降低相位噪声, 而增大参考频率对相位噪声的影响相对较小。另一方面, 增大参考频率会增加寄生成分, 在某些频点上有功率峰值, 影响相位噪声;在不需要较快的锁定速度时, 无需增大参考频率。
3 结束语
文中设计制作了以ADF4360-3为核心的PLL频率合成器电路, 用作1.95GHz射频接收机的1.9GHz本地振荡器模块, 并设计了单片机控制电路, 编写了相应程序, 在实际测试中研究了相关因素对电路性能的影响。制作的电路使用USB供电, 可在1.6GHz~1.95GHz范围内以0.5MHz为步长输出本振信号, 在1.9GHz时最大输出功率为+2.2dBm, 相位噪声在偏移中心频率1kHz、10kHz、100kHz、1MHz时分别为-68dBc/Hz、-71dBc/Hz、-110dBc/Hz、-115dBc/Hz。该系统电路简单, 功耗小、体积小, 调试和维护方便, 并且在单片机部分留下可以扩展的余地。
参考文献
[1][日]远坂俊昭.锁相环 (PLL) 电路设计与应用[M].何希才, 译.北京:科学出版社, 2006.
[2][美]Floyd M Gardner.锁相环技术[M].姚剑清, 译.3版.北京:人民邮电出版社, 2007.
单片机交通灯综合实验报告 第2篇
实
验
报
告
学
院:
专
业:
班
级:
姓
名:
学
号:
实验课程:单片机应用系统设计开发入门 指导教师:
实验名称:
交通信号灯控制实验
实验时间:
2019 年
月 23 日
2019 年 5 月 23 日
一
实验要求
实验目的及实验内容要求 实验目的:1.熟悉外部中断源的扩展方法。
2.初步掌握单片机综合应用系统设计。
3.掌握用 Proteus 调试汇编源程序的方法。
实验内容要求:
用发光二极管模拟交通信号灯,用逻辑电平开关模拟控制开关,设计一个交通信号灯控制系统。设计要求如下:
(1)A 车道与 B 车道交叉组成十字路口,A 是主道,B 是支道;正常情况下,A、B 两车道轮流放行。具体放行时间和要求如下:
(2)A 车道放行 50s,其中绿灯常亮 44s,绿灯闪烁 3s(用于警告),黄灯常亮 3s(用于警告)。
(3)B 车道放行 30s,其中绿灯常亮 24s,绿灯闪烁 3s(用于警告),黄灯常亮 3s(用于警告)。
在交通繁忙时,交通信号灯控制系统应有手控开关,可人为地改变信号灯的状态,以缓解交通拥挤状况。控制要求如下:
(1)在 B 车道放行期间,若 A 车道有车而 B 车道无车,按下开关使 A 车道放行 15s。
(2)在 A 车道放行期间,若 B 车道有车而 A 车道无车,按下开关使 B 车道放行 15s。
(3)有紧急车辆通过时,按下开关使 A、B 车道均为红灯,禁行 15s。
实验设备或运行软件平台 完成本实验需要使用到单片机仿真软件 Proteus8,该软件是英国 Lab Center Electronics 公司出版的 EDA 工具软件,是目前比较好的仿真单片机及外围器件的工具。从原理图布图、代码调试到单片机与外围电路协同仿真,一键切换到 PCB 设计,真正实现了从概念到产品的完整设计。是目前世界上唯一将电路仿真软件、PCB 设计软件和虚拟模型仿真软件三合一的设计平台。在编译方面,它也支持 IAR、Keil、MATLAB 等多种编译器。其具有的基本功能特点为:1.原理布图。2.PCB 自动或人工布线。3.SPICE 电路仿真。革命性的特点是 1.互动的电路仿真。
2.仿真处理器及其外围电路。
二
实验内容及过程
实验设计及分析(或者实验程序)
实验原理图如下所示:
交通信号灯模拟控制系统程序流程图如下图所示:
主程序
一道有车另一道无车时
紧急车辆通过时 的中断服务程序的中断服务程序
A
绿灯闪、B
红灯延时
s
A
红灯、B
绿灯闪动延
s
A
红灯、B
绿灯延时
s
A
绿灯、B
红灯延时
s
A
红灯、B
黄灯延时
s
A
黄灯、B
红灯延时
s
初始化
开中断
保护现场
关中断
A
道有车
B
道有车
A
红灯、B
绿灯延时
s
A
绿灯、B
红灯延时
s
关中断
恢复现场
开中断
返回
中断响应
保护现场
A
红灯、B
红灯延时
s
恢复现场
返回
N
N
Y
Y
中断响应
开始
实验程序及程序分析如下:
ORG
0000H LJMP
MAIN ;LJMP,转向主程序 ORG
0003H LJMP
INT00 ;转向紧急车辆中断服务程序 ORG
0013H LJMP
INT11 ;转向有车车道放行中断服务 ORG
0030H MAIN : SETB
PX0
;置外部中断 0 为高优先级中断 MOV
TCON,#00H ;置外部中断 0、1 为电平触发 MOV
IE,#85H ;开 CPU 中断、外部中断 0、1 中断 LOOP:
;A 道绿灯亮;B 红灯亮 MOV
P1,#0F3H MOV
R1,#88 ;44s 延时循环次数 AP1:
;调用 0.5s 延时子程序 DELAY LCALL
DELAY DJNZ
R1,AP1 ;44s 不到,继续循环(DJNZ RN,REL 是一条件转移指令,先将工作寄存器Rn 中的数减“1”,判断结果是否为“0”,不为“0”程序就跳转到行标为REL 的地方执行,否则,为“0”就不转移,继续执行下一条指令。)
MOV
R1,#6 ;3s 延时的循环次数(循环一次延时 0.5 秒。)
AP2:
;A 道绿灯闪烁 CPL
P1.2 LCALL
DELAY ;参考程序中缺少此句,若缺失会导致无法延时。
DJNZ
R1,AP2 ;3s 未到,继续循环 MOV
P1,#0F5H ;A 道黄灯亮,B 道红灯亮 MOV
R1,#6
AP3: LCALL
DELAY DJNZ
R1,AP3
;3s 未到,继续循环 MOV
P1,#0DEH ;A 道红灯亮,B 道绿灯亮 MOV
R1,#48
;延时循环 48 次
BP1: LCALL
DELAY
DJNZ
R1,BP1 ;24s 未到继续循环 MOV
R1,#6 BP2: CPL
P1.5 ;B 道绿灯闪烁 LCALL
DELAY DJNZ
R1,BP2 ;3s 未到,继续循环 MOV
P1,#0EEH;A 道红灯亮,B 道黄灯亮 MOV
R1,#6 BP3: LCALL
DELAY DJNZ
R1,BP3 ;3s 未到,继续循环 SJMP
LOOP ORG
0200H INT00:
保护 P1 口数据 PUSH
P1
;PUSH 入栈指令 MOV
P1,#0F6H
;A 道红灯亮;B 道红灯亮 MOV
R2,#30
;15 秒延时的循环次数 DELAY0: LCALL
DELAY DJNZ
R2,DELAY0
POP
P1
;恢复 P1 口数据 POP 是出栈指令 RETI
;返回主程序 ORG
0300H INT11: CLR
EA
;关中断 EA 为总中断 PUSH
P1
;保护现场 PUSH
04H PUSH
05H PUSH
06H SETB
EA
;开中断 JNB
P3.0,AP0 ;A 道无车,转向判断 B 道(JNB 比较转移指令。当 P3.0 是 0 时就转移执行 AP0,否则就顺序执行。)
MOV
P1,#0F3H;A 道绿灯亮,B 道红灯亮 SJMP
DEL1
;转向 15 秒延时程序 AP0: JNB
P3.1,EXIT ;B 道无车,退出中断
MOV
P1,#0DEH;A 道红灯亮,B 道绿灯亮 DEL1 : MOV
R3,#30 ;15s 延时的循环次数 NEXT : LCALL
DELAY DJNZ
R3,NEXT ;15 秒未到循环继续 EXIT : CLR
EA POP
06H
;恢复现场 POP
05H POP
04H POP
P1 SETB
EA RETI
;返回原程序 ORG
0350H DELAY : MOV
R4,#20;0.5 秒延时子程序参考程序中为#10,经实验发现只能延时 0.25s 故改为#20,以达到实验目的。
LP1 : MOV
R5,#50 LP2 : MOV
R6,#248 NOP LP3: DJNZ
R6,LP3 DJNZ
R5,LP2 DJNZ
R4,LP1 RET END
交通信号灯与控制管脚的对应关系如下:
控制状态
P1 口控制码
P1.7
P1.6
P1.5
P1.4
P1.3
P1.2
P1.1
P1.0
未用
未用
B 道
绿灯
B 道
黄灯
B 道
红灯
A 道
绿灯
A 道
黄灯
A 道
红灯
A 绿灯亮、B 红灯亮
F3H
0
0
A 黄灯亮、B 红灯亮
F5H
0
0
A 红灯亮、B 绿灯亮
DEH
0
0
A 红灯亮、B 黄灯亮
EEH
0
0
A 红灯亮、B 红灯亮
F6H
0
0
实验步骤及实验数据记 录 1.先接线按下表所示的管脚与 LED 或逻辑开关的对应关系接线。在 Proteus8 中原理图绘制界面中将接线接好。
管脚
P1.0
P1.1
P1.2
P1.3
P1.4
P1.5
P3.0
P3.1
P3.3
P3.2
LED 或逻辑开关
L3
L1
L2
L7
L5
L6
K1
K2
K3
K8
控制对象
A 红灯
A 黄灯
A 绿灯
B 红灯
B 黄灯
B 绿灯
A 道
B 道
使有车车道放行低电平有效
紧急车辆放行低电平有效
高电平表示有车低电平表示无车
接线完成后如图所示:
2.输入程序,在 Proteus8 中 SourceCode 界面将程序输入完成后试运行保证程序正确。
出现编译成功后进行下一步。运行程序。
4.观察六只发光二极管的亮灭规律。
实验中六只发光二极管亮灭规律:(0 代表灭,1 代表亮,2 代表闪)
运行时间(s)
A 绿 A 黄 A 红 B 绿 B 黄 B 红 0 1 0 0 0 0 1 44 2 0 0 0 0 1 47 0 1 0 0 0 1 50 0 0 1 1 0 0 74 0 0 1 2 0 0 77 0 0 1 0 1 0 80 1 0 0 0 0 1 八十秒后开始重复 0-80 秒内的亮灭规律。
5.
部分连接图如图所示。
1)
在 A 红灯、B 绿灯亮时,先将 K1 拨至高电平(表示 A 道有车)、K2 拨至低电平(表示 B 道无车),再将 K3 拨至低电平使有车车道(A 道)放行,A 绿灯、B 红灯同时亮 5s 后返回原先状态。
对逻辑开关 K1、K2、K3 的操作对应于 SW2 开关,闭合 SW2 后,A 红灯灭,绿灯亮,B 绿灯灭,红灯亮。15s 后恢复回闭合开关前的的亮灯状态。
2)
在 A 绿灯、B 红灯亮时,先将 K1 拨至低电平(表示 A 道无车)、K2 拨至高电平(表示 B 道有车),再将 K3 拨至低电平使有车车道(B 道)放行,A 红灯、B 绿灯同时亮 5s 后返
回原先状态。
对逻辑开关 K1、K2、K3 的操作对应于 SW1 开关,闭合 SW1 后,A 绿灯灭,红灯亮,B 红灯灭,绿灯亮。15s 后恢复回闭合开关前的的亮灯状态。
(提示:K3 拨至低电平后,应在 5s 内改为高电平,否则,单片机可能将再一次响应中断。)
6.不论 A 道、B 道的信号灯处于什么状态,将 K8 拨至低电平后,A 红灯、B 红灯同时亮 20s后返回原先状态。(提示:K8 拨至低电平后,应在 20s 内改为高电平,否则,单片机可能将再一次响应中断。)
对逻辑开关 K8 的操作对应于 JINJI 开关,闭合 JINJI 后,A 只有红灯亮,B也只有红灯亮。20s 后恢复回闭合开关前的的亮灯状态。
实验数据分析 1.一道有车而另一道无车时,K3 拨至低电平即向单片机发出中断请求(低优先级别);若此时单片机正在执行主程序,会响应中断转入到相应的中断服务程序,先依次查询 A、B 车道的空闲状态,再去控制 A、B 车道的信号灯;若此时单片机正在执行紧急车辆通过时中断服务程序,单片机不会响应中断。
2.紧急车辆通过时,K8 拨至低电平即向单片机发出中断请求(高优先级别),不论单片机正在执行主程序还是一道有车而另一道无车时的中断服务程序,会响应中断转入到相应的中断服务程序。
3.在进行步骤 5 1)或 2)操作时,若在闭合开关后没有在 5s 内断开开关,则在 15 秒时无法按时恢复回闭合开关时的亮灯状态。
4.操作过程中发现,若操作 SW1 开关后亮灯状态已经发生改变,则在 15 秒内再操作 SW2开关则无法继续使亮灯状态改变。
三
总结与体会
实验任务完成情况 本实验完成情况良好。通过老师的精心指导、本人的不懈努力和同学的热心帮助,能够基本上完成所有实验内容,且在实验过程中对单片机的了解更加深入了。但也无法避免地遇到一些问题,比如对实验程序代码的理解不够深入,只停留在表面,且对 51 单片机的 111 条指令仍比较陌生,只能记住一些特别常用的。对于此我的做法是,在分析实验程序的过程中,一遇到不熟悉的指令就百度搜索一下加深印象。在反复的搜索过程中我也记住了不少指令。通过课程的学习,目前达到的水平是能够基本看懂实验程序,能够绘制简单原理图,但仍无法做到独立编写实验程序。
实验体会、收获、建议回答问题
单片机综合性实验电路板的设计 第3篇
单片机实验电路板,无论对单片机初学人员还是开发人员都具有十分重要的意义,初学人员可以利用实验电路板逐渐了解单片机的设计原理与功能,开发人员可以进行编程实现工业控制。利用单片机实验电路板,能够让初学者迅速掌握单片机的应用技术特点与实际要求。学生及单片机爱好者可以根据自己的爱好兴趣,结合实验电路板的各功能模块,设计实现单片机作品,从而提高学生的动手能力和综合设计能力。
1实验电路板设计原理
本实验板可分为多个子模块,包括单片机最小系统模块、键盘模块、A/D模块、D/A模块、DS1302时钟模块、测温模块、串口通信模块、电机模块、红外发送接收模块、LCD1602液晶模块、流水灯模块和蜂鸣器模块。实实验验电电路路板板设设计计原原理理框框图图如如图图11所所示示。
2各硬件模块的设计
2.1单片机最小系统模块
AT89C51是一种低 功耗、高性能CMOS(Complementary Metal Oxide Semiconductor,互补金属氧化物半导体)的8位微控制器,具有4kB系统可编程Flash存储器。使用Atmel公司高密度非易失性存储器技术制 造,与工业80C51产品指令 和引脚完 全兼容。片上Flash允许程序存储器在系统可编程,亦适于常规编程器。
2.2A/D模块
转换器芯片ADC0809适用于8路模拟信号的分时采集,片内有8路模拟选通开关以及相应的通道抵制锁存用译码电路,其转换时间为100μs左右,A/D转换后得到的数据应及时传送给单片机处理。数据传送的关键问题是如何确认A/D转换的完成,因为只有确认完成后才能进行传送,为此可采用下述3种方式, 分别为定时方式、查询方式和中断方式。
2.3 D/A模块
D/A转换器品种繁多,如有权电阻DAC、变形权电阻DAC、T型电阻DAC、电容型DAC和权电流DAC等。DAC0832是采样频率为8位的D/A转换芯片,其集成电 路内部有 两极输入 寄存器,使DAC0832芯片具备双缓冲、单缓冲和直通3种输入方式,适用于各种电路的需要(如要求多路D/A异步输入、同步转换等),所以该芯片的应用很广泛。本实验开发板中利用DAC0832可以实现各种波形的输出。
2.4温控模块
温控模块采用目前广泛应用的数字温 度传感器DS18B20,它采用1-wire总线接口 的数字温 度传感器,测试温度 范围为 -55 ℃ ~ +125 ℃,精度可达0.067 5 ℃,最大转换时间为200 ms。1-wire总线支持一主多从通信,所以支持该总线的器件在交互数据过程中需要完成器件寻址(ROM匹配),以确认是哪个从机接收数据,器件内部ROM包含了该器件的唯一ID,对一主一从结构,ROM匹配过程可以省略。采集的数据是数字信号,不需要经过ADC的转换[1,2]。 该模块同时还可以实现温度的多点测控。
2.5红外模块
红外线遥控信息码由AT89C51单片机的定时器1中断产生38kHz红外线方波信号,由P1.4引脚输出,经过三极管9013放大,由红外线发送管发送。若改变电阻R3的大小则可以改变发射距离[3]。
红外线接收处理采用通用的集成模块三管脚红外接收器,输出为检波整形过的方波信号。
2.6串口通信模块
RS-232C是最早的串行通信接口的电气标准,该标准定义了数据终端(DTE)和数据通信设备(DCE) 间按位串行传输的接口信息,合理安排了接口的电气信号和机械要求,在世界范围内得到了广泛的应用。 串行通信接口可与PC机超级终端进行通信实验,也是程序下载时必需的,学生在进行调试时,可随时进行程序的下载。
2.7时钟模块
DS1302是DALLAS公司推出 的涓流充 电时钟芯片,内含有一 个实时时 钟/日历和31字节静态RAM,通过简单的串行接口与单片机进行通信。实时时钟/日历电路提供秒、分、时、日、月、年的信息,每月的天数和 闰年的天 数可自动 调整,时钟操作 可通过AM/PM指示决定采用24h或12h格式。DS1302与单片机之间能简单地采用同步串行的方式进行通信, 仅需用到RES复位、I/O数据线、SCLK串行时钟3个口线。对时钟、RAM的读/写数据以一个字节或多达31个字节的字符组方式进行,DS1302工作时功耗很低,保持数据和时钟信息时功率小于1mW[4]。
2.8电机模块
通过对每相圈中电流的顺序切换来使电机作步进式旋转。驱动电路由脉冲信号来控制,所以调节脉冲信号的频率便可改变步进电机的转速。本次设计的步进电机采用直流+5V电压,每相电流为0.3A,电机线圈由四相组成。
3实验开发板可以进行的实验项目
(1)温度控制器实验:利用DS18B20设计一个温度控制器,在液晶显示器上显示温度值,并对温度进行测试和设定,当检测温度达到温度上限时开风扇(即开启电动机),低于下限时关闭风扇并加热,LED上显示十进制温度值。
(2)实时时钟编程实验:可以在液晶显示屏上显示年、月、日、时、分、秒,可以对时间进行调整,24h实现多次定时功能。
(3)遥控发送和接收实验:遥控信息通过按键发送,接收信息可以通过小灯、蜂鸣器等演示。
(4)函数发生器实验:利用D/A设计一个函数发生器,并利用按键选择输出波形,能分别产生三角波、 阶梯波(每阶梯1 V)、正向锯齿波、负向锯齿波和方波。还可利用键盘改变其输出波形的幅值和频率。
(5)串行通信实验:能与PC机通信,在PC机的超级终端上显示中文字符或其他字符,能用PC机发命令控制单片机功能操作。
(6)音乐编程实验:能用蜂鸣器演奏自编歌曲。
(7)十字路口交通灯实验:按照时间控制原则,利用并行接口和定时器,采用时间中断方式设计一套十字路口的交通灯管理系统,可用流水灯模拟路口交通灯。
(8)步进电机实验:通过按键实现步进电机正转和反转控制及其速度的控制,同时实现步数的控制,可以通过按键实现速度的控制。
4部分实验项目的仿真结果
4.1温度控制器实验的仿真结果
温度控制 器实验的 仿真结果 如图2所示。 LCD1602液晶显示器显示了当前DS18B20采集的温度值。温度数据送单片机处理,由液晶LCD1602实时显显示示温温度度值值为为2288°°。
4.2实时时钟编程实验的仿真结果
实时时钟编程实验的仿真结果如图3所示,液晶显示器显示了时钟的年、月、日、时、分、秒。DS1302时钟芯片的数据能够由单片机处理,并由液晶LCD1602实时显示。同时,可通过按键进行相应调节。
5小结
单片机课程设计秒表系统设计 第4篇
学院:信息工程专业:
——秒表系统设计
一,设计目的:
1,熟悉51单片机的内部结构,计数器,中断控制器等的用法,来实现简单的控制应用系统。
2,通过简单系统的设计了解单片机应用系统的设计与开发过程及其相应的调试程序过程。
二,设计任务:
实验通过单片机的定时器/计数器定时和计数原理,设计简单的计时器系统,拥有正确的计时、暂停、清零、快加功能,并同时可以用数码管显示,在现实生活中应用广泛,具有现实意义。
三,设计题目:
秒表系统设计——用AT89C51设计一个2位LED数码显示“秒表”,显示时间为00~99秒,每秒自动加一。另设计一个“开始”按键和一个“复位”按键。调用子程序:暂停键子程序,计时键子程序,清0键子程序,加一子程序,显示子程序,定时子程序,所用特殊寄存器:寄存器A,寄存器C,所用中断:外部中断INT0、INT1,定时器T0、T1
四,设计的硬件接线图:
五,设计思路及描述
要求进行计时并在数码管上显示时间,则可利用DVCC系列单片机微机仿真实验系统中的芯片8032(芯片的功能类似于芯片AT89C51,其管脚功能也和AT89C51的管脚功能类似)中的P3.2管脚做为外部中断0的入口地址,并实现“开始”按键的功能;将P3.3做为外部中断1的入口地址,并实现“清零”按键的功能;将P3.0做为数据信号DATA输入的入口地址;将P3.1做为时钟信号CLK输入的入口地址。定时器T0作为每秒加一的定时器;定时器T1作为“快加”键的定时器。其中“开始”按键当开关由1拨向0(由上向下拨)时开始计时;“清零”按键当开关由1拨向0(由上向下拨)时数码管清零,此时若再拨“开始”按键则又可重新开始计时。
六,流程图
七,程序 源程序: ORG
0000H AJMP
MIAN;主程序入口地址 ORG
0003H
AJMP
ZHONGDUAN0;中断0入口地址
ORG
000BH
AJMP YANSHI;定时器T0入口地址
ORG
0013H
AJMP
ZHONGDUAN1;中断1入口地址
ORG
001BH
AJMP
DINGSHI1;定时器T1入口地址
ORG
0030H
;主程序
;***********************************************************
MAIN: MOV
TCON,#05H;主程序开始 外部中断跳变模式
MOV
TMOD,#11H;定时器0,1模式1 MOV
IE,#8FH;开总中断,中断0,1,定时器0,1 MOV
DPTR,#TAB MOV
R1,#00H MOV
R2,#00h MOV
R3,#40;循环次数40 MOV
TL0#2CH;置初值,定时25MS
MOV
TH0,#0CFH
MOV
TL1#78H;置初值,定时10MS
MOV
TH1,#0ECH CLR TR0;关定时器
CLR
TR1;***********************************************************;暂停键K3,快加键K4程序
;*********************************************************** HERE:JB P1.0,HERE SHOW:
CLR
TR1 CLR
TR0 ACALL
XIANSHI KUAIJIA
:JB P1.2,KUAIJIA;等待P1.2为0 快加 CLR
TR0 SETB
TR1
HERE 3JNB
P1.2,HERE 3 AJMP
HERE;***********************************************************;外部中断INT0子程序-----计时按键K1子程序
;***********************************************************
ZHONGDUAN 0:
SETB TR0;计时按键 RETI;***********************************************************;外部中断INT1子程序----复位按键K2子程序
;***********************************************************
ZHONGDUAN 1: CLR TR0;复位按键
CLR
TR1
MOV
12H,#00H
MOV
11H,#00H ACALL
XIANSHI;调用显示子程序
MOV
R1,#00H
MOV
R2,#00H RETI;***********************************************************;加一子程序
;***********************************************************
JIA1:
INC
R1;加1子程序
CJNE R1,#0AH ,LOOP;判断是否到表尾
MOV
R1,#00H INC
R2
CJNE
R2,#0AH,LOOP
MOV
R2,#00H
LOOP: MOV
12H,R1;重新赋值
MOV
11H,R2
RET;***********************************************************;显示子程序
;*********************************************************** XIANSHI: MOV R7,#02H;2个数码管显示子程序 MOV R0,#12H LOOP5: MOV R6,#08H;8位2进制数 MOV A,@R0 MOVC A,@A+DPTR LOOP6: RLC A;循环左移 CLR P3.1 MOV P3.0,c SETB P3.1 DJNZ R6,LOOP6 DEC R0 DJNZ R7,LOOP5 RET;***********************************************************;定时器T0子程序;*********************************************************** YANSHI: MOV Tl0,#2CH;定时子程序 MOV TH0,#0CFH DJNZ R3,LOOP7 ACALL JIA1;调用加1子程序 ACALL XIANSHI;调用显示子程序 MOV R3,#40 LOOP7: RETI;***********************************************************;定时器T1子程序
;*********************************************************** DINGSHI1:MOV Tl1,#78H;置初值,定时10MS MOV TH1,#0ECH CLR TR0 SETB TR1 MOV 12H ,R1 MOV 11H,R2 JNB p1.0,SHOW ACALL JIA1 ACALL XIANSHI LOP7:TETI;*********************************************************** TAB:DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH END
八,内容提要
利用单片机的定时器/计数器定时和记数的原理,结合dvcc实验箱上的集成电路芯片8032、LED数码管以及实验箱上的按键来设计计时器。将软、硬件有机地结合起来,使得系统能够正确地进行计时,数码管能够正确地显示时间。其中本设计了四个开关按键:其中一个按键按下去时以1秒加一开始计时,即秒表开始键(本实验中当开关从1变为0时开始计时),另一个按键按下去时暂停计时,使秒表停留在原先的计时(本实验中当相应开关从1变为0时即停止计时),第三个按键按下去时清0(本实验中当相应开关从1变为0时即停止计时),第四按键按下去则是以每10ms秒快速加一计时(本实验中当开关从1变为0时开始计时)。本设计中开始时都要使各按键回到各初始位置,即都处于1状态。
九,课程设计心得体会
选择适当的课题,不益太简单或者太难。做到既能把课题完成又能锻炼自己的能力!根据课题要求,复习相关的知识,查询相关的资料。根据实验条件,找到适合的方案,找到需要的元器件及工具,准备实验。根据课程设计的要求和自己所要增加的功能写好程序流程图,在程序流程图的基础上,根据芯片的功能写出相应的程序。然后再进行程序调试和相应的修改,以达到能够实现所要求的功能的目的。还要根据实验的实际情况,添加些额外程序来使系统更加的稳定,如开关的消震荡(采用延迟)。程序要尽量做到由各个子程序组成,在有些程序后面最好加注释,这样在程序出错的检查过程中可以更容易查找的到,也更简洁,更明白易懂。该设计的程序可以参考DVCC系列单片机微机仿真实验系统实验指导书中的串并转换实验,也可自己根据自己熟悉的方法来编程。在设计控制开关时,注意2个中断的打开和关闭的先后顺序,否则就会出错。这次的单片机课程设计重点是理论与实际的相结合。不再只读书了。该设计从头到尾都要自己参与,熟悉了对整个设计的过程,更系统的锻炼了自己。
十、参考文献
苏家健等编的《单片机原理及应用技术》 高等教育出版社 2004年11月 余锡存等,《单片机原理及接口技术》 西安电子科技大学出版社 2004
孙涵芳等 《单片机原理及应用》 北京航空航天大学出版社 1990
单片机综合设计 第5篇
CDIO工程教育模式,是近年来国际高等工程教育改革的最新研究成果。从200 0年起由麻省理工学院联合瑞典皇家技术学院等三所顶尖工科院校共同开发的一整套工程教育理念和实施体系。能够为学生提供一种在实际系统和产品的构思(conceive)、设计(design)、实施(implement)、运行(operate)的背景环境下强调工程基础的工程教育[1],可以归纳成为3个方面:首先,工程教育培养能够在当前复杂环境下解决工程实际问题的工程师,工程教育的结果应该培养出符合社会经济发展需要的、具有系统性思维的、有社会责任心的工程师。其次,工程教育必须面向真实的工程背景[2]。现代工程活动离不开“构思、设计、实现、运行”,四个阶段是相互联系生命周期,所以基于CDIO教学模式给工程教育一个系统性学习背景。第三,工程教育体系必须达到具有预期的学习效果:个人能力、人际交往能力,学科知识、以及产品,过程和系统的建造能力和维护能力。
1 改革前课程现状
在2013年之前单片机原理实践教学模式采用理论授课与相关的一些简单实训相结合的教学模式进行教学,注重教学内容的系统性和完整性[3]。一些按照教学参考书的内容按部就班的进行授课,这种教学模式虽然可以让学生能够掌握单片机系统设计的各种理论知识,加强大学生的学科理论水平。但也存在一些不足。一是理论与实践相脱节。传统教学过程中系统软硬件设计比较单一,针对性不强。没有针对性的开发一个实际产品或给出一个较明确实际可行的案例或应用,学生也不了解所学理论知识在具体应用项目开发过程当中是如何应用的。二是缺乏典型的单片机工程系统概念的培养。自动化专业学生毕业后大部分都从事于系统开发相关的工作,具体产品设计是一个整体模型设计的过程,即使可以了解并掌握每一个技术细节,仍需要较强的综合设计以及规划能力,而传统的教学方法很难达到工程训练的要求[4]。学生的主动性和创造性无法达到培养。
2 课程前期建设情况
2.1 课程建设理念
课程改革前期,此类实践应用类课程需要具有一流的师资队伍、一流的教学环境、一流的教学资源最终获得一流的教学成果[5]。
课程负责人通过大量理论知识的学习,学习汕头大学CDIO教学经验及和课程组成员交流,一致决定单片机课程综合设计与实践课程以CDIO工程教育理念为课程的教学理念的基础[6],教学大纲和培养目标都参考CDIO的大纲和标准撰写,采用基于项目式的教学方法如图2.1所示,以学生为中心,以学生的知识需求为导向,以提高学生自主学习意识,培养学生动手能力、创新能力及团队合作能力等为课程的教学目标。
2.2 课程师资队伍
按照一流的师资队伍指导思想,单片机原理综合设计与实践课程依托于我院在机电一体化的科研优势,配置了三名在读博士及副教授、一名高级工程师,四名讲师,同时配置了一名骨干实验技术人员协助指导教师进行项目的指导,骨干实验技术人员为硕士研究生学历,每个项目组安排一名课程指导教师以及一名实验技术人员,这样可以保证每个项目的顺利进行,以达到预计的教学效果。
2.3 课程教学环境及教学资源
学院有良好的实验室环境,包括广东省实验教学示范中心工程训练中心、广东省粤北现代机电工程技术开发中心、自动化人才培养模式创新实验区,电气与自动化实验教学示范中心以及STC高性能单片机联合实验室。实验室每天从早上8点到晚上10点全天候开放。实验室35套AVR实验箱、35套MCS-51实验箱以及STC15系列开发板20套,学生可以根据自己的时间及项目需求随时在实验室进行项目讨论与学习,极大的提高了学生主动学习的积极性。
教学经费上,在已经开设的两年里学院每年为该课程专门划拨实验材料费3000元课程耗材经费,除了课程总体的一些建设经费,每个项目组的项目经费是300元。除了课程提供的项目经费,项目组也可以申请学校的大学生创新创业项目基金,创新项目一般有2000元,这些经费一般情况下足够支持项目完成实物样机。
3. 基于CDIO工程教育模式的课程实施
CDIO工程教育以归纳式教学方式为主,强调综合性,让学生参与问题探究、参与项目过程、自主解决问题,在“做中学”中学会知识应用,并加深对知识的理解,具有从具体到一般的教学特征。归纳式学习方法以学生为中心为学生提供足够的学习场地和学习实践,以保证学生的学习体验;而综合课程设计与实践注重培养学生的整体系统概念以及动手实践能力,培养学生初步的探索和创新能力。在实际的教学过程中,单片机综合设计与实践课程以项目为载体,课程可以分为构思、设计、实现和操作四个阶段,每个阶段实施过程如图3.1所示。
3.1 项目构思(Conceive)
教师先组织学生自由分组,组长带领下自己选题、确定项目的实施方案。项目选题和设计内容的自主权交给学生。在电子技术综合设计与实践开展的第1周,要求学生根据自己的知识水平知识结构和能力进行自由组合,4-5人一组,实现优势互补。先集体讨论并明确拟定构思项目的目标范围;再通过图书馆、中国知网、专业网站查阅资料,收集相关信息,并对收集的信息进行提炼加工处理,初步确定具体设计项目并要求学生自行写项目设计任务书,包括项目设计题目、设计内容以及需要实现的功能以及要达到的性能指标等。
教师对学生提交的项目设计题目和设计内容进行综合检查,根据学生选择的题目以及需要实现的功能与学生进行沟通讨论,确定项目设计以及实施的可行性。
学生选择的项目题目和项目设计内容不符合大纲要求,由教师指导学生对选择的项目以及学生填写的设计任务书修改完善。最后,指导老师根据每个组的项目不同制定出相应完善的项目设计任务书,内容包括项目设计要求、性能指标要求等,项目在设计过程中的各个阶段要明确每个学生在项目中的任务。
3.2 设计(Design)
根据项目的设计要求和已定的总体设计方案原理图,明确对各个模块电路的设计要求以及性能指标,模块电路与前后级之间的融合关系,分析电路的构成形式。注意各模块电路输入部分的信号、输出信号和控制信号的关系。尽量简化电路结构,降低项目设计成本。拟订好各模块电路的要求之后,全面核查,确定后就按照信号流程顺序分别设计各模块电路。选择模块电路的结构形式以及典型电路。积极查阅相关的资料,进行电路设计方案的比较、论证、电路参数计算。从设计的方案中选择合适的电路。利用电路仿真软件进行电路仿真,仿真电路确定无误之后,交由老师检查。老师通过之后然后根据需要用Altium Designer进行原理图和PCB印制电路板的设计。
3.3 实现(Implement)
学生在完成电路设计、仿真,设计好原理图以及印制电路板,经老师检查通过之后,小组组长向老师列出电路元器件详细的清单,在教学实践经费中支出并采购元器件,学生并对元器件进行测试。硬件电路是在经过学生自己腐蚀加工制作之后,焊接组装起来,完成电路焊装后,各个组对各单元电路进行调试。实现项目需要完成的功能。图3.2为某两组学生在实施过程中的实验掠影。
3.4 运行(Operate)
项目硬件部分完成焊装、硬件电路调试通过之后根据任务书中拟定的性能指标总体测试,测试是否能达到设计要求;教师根据测试结果以及软硬件系统的完成情况给出相应的意见;最后要求学生撰写课程设计说明书,制作课程设计答辩PPT,以小组为单位组织答辩,检验学生对整个设计项目的和掌握情况。图3.3为图3.3作品以及答辩掠影。
在以上四个阶段的过程中,指导老师每周固定时间定期辅导,组长把整个项目中遇到的问题集中起来找指导老师进行沟通。除了固定时间答疑辅导之外,老师平时利用业余时间在利用邮箱,QQ群,微信等网络工具对学生的问题进行答疑。每个阶段都体现以学生为中心,以需求为导向的教学理念。
4 教学改革与实践的意义
基于CDIO工程教育模式的教学改革,充分体现了以学生为中心、学生自主实践、合作学习完成的教学模式,实践证明这种教学模式能够很好的提高学生的自主性。学生在项目过程中觉得自己是主动的学习知识而不是被动的接受知识。发挥了学生的创新设计能力。经过这样的工程教育模式训练。提高了学生的工程实践能力,增强了学生的团队协作精神。每组5名学生在设计过程中通过组长协调。合理分工,发挥自己的特长,通过交流讨论、团结协作完成设计任务,培养了学生的团队协作能力和交流沟通能力。
5 结语
通过引入CDIO工程教育模式,培养了学生工程实践能力和团队协作的能力,通过查阅资料获取知识,即扩展了学生的知识面,又让学生学会在浩瀚的知识海洋中提炼出对自己有用的知识点。提高了学生运用知识的能力,解决实际问题的能力。经调查,学生非常喜欢这种教学模式,锻炼了学生的综合实践与创新能力,将在今后的教学实践中进一步创新、完善。
摘要:在CDIO工程教育理念的指导下,针对单片机综合课程设计的教学模式进行研究与改革,详细介绍了单片机综合设计课程的建设目标。建设理念以及具体的教学改革措施。改革中主要体现以学生为中心,以需求为导向的教学理念。教学实践结果表明,教学改革拓展学生的思路,激发学生的学习兴趣,提高了学生的工程实践能力,增强了学生的团队协作精神。该课程组织形式新颖,理念先进,成果突出。
关键词:CDIO工程教育模式,教学改革,单片机综合设计
参考文献
[1]帅春江,王少华,聂翔.基于CDIO模式的西部地方高校电子技术课程教学改革探究[J]高教学刊,2015.
[2]叶民.工程教育CDIO模式适应性转换平台的研究[D]杭州:浙江大学.2014
[3]张英.基于CDIO理念我国机械设计制造及其自动化专业本科课程体系研究[D]杭州:浙江大学.2014
[4]李庚英,熊光晶.基于“三阶段”的CDIO探究式团队项目教学改革[J].高等建筑教育,2012,21(3):84-86.
[5]王香婷,李明,石超.深化实验教学改革培养创新型人才[J].实验室研究与探索,2011,30(9):124-126.
单片机综合设计 第6篇
开伞器是一种为保障安全性而与降落伞配套使用的一种延时控制结构,并且可以实现高度控制,可用于空投和驾驶员逃生。将开伞器装在空投的人或物体上,跳离飞机后,开伞器可以控制在延迟一定时间或达到特定的安全高度后自动将降落伞打开,以保证空投的精度。目前在航空航天、飞行器回收系统、物资空投、空降兵部队的伞降作战以及体育运动休闲等领域得到了广泛应用[1]。
开伞器由高控机构、时控机构组成。由于开伞器直接关系到人们的生命安全,故对时控及高控机构的精度要求较高,且要求安全稳定。故研制一台测试开伞器的高控及时控的仪器是十分必要的。
1 主要技术参数
本测试仪适用于某几系列的开伞器的高度、升降速度、时间参数的测量。
1.1 高度测试
(1)高度测量范围:(0~25000)m。
(2)常温下高度测量精度如表一所示。
1.2 时间测试
(1)时间测量范围:(0~99)s。
(2)常温下时间测试精度如表二所示。
2 硬件机构设计
系统采用52系列单片机,配合相应的电路由数字绝对压力传感器的采样电路、片外存储器扩展电路、8255片外接口扩展电路以及LED数码管、键盘扫描部分、电源模块等组成。其电路原理如图一所示。
2.1 系统电路
根据设计要求,本项目的单片机系统选择AT-MEL公司的89S52芯片。该芯片上共有P0~P3个输入输出口,其中P0口用做8位数据总线和低8位地址总线,并使用一片74LS373锁存器芯片实现数据总线和地址总线的分离;P1口用于A/D采样芯片ICL7135位码输出和数据码输入;P2口用做高8位地址总线,其中高3位地址线经74LS138译码器后产生8路片选信号,用于片选寻址外围扩展接口电路;P3口使用INT1外中断信号响应高度输入,INT0外中断信号响应高度停止,两路定时器中断用于响应计时信号的启停[2,3]。
2.2 采样电路
ICL7135芯片是四位半、双斜率积分单片A/D转换器,带有数字驱动和多路BCD输出。数字驱动输出端D1至D4以及多路复用的BCD码输出端B1、B2、B4和B8,提供了适用于LED(或LCD)译码器/驱动器和微处理器的接口,具有高输入阻抗、差动输入、差动线性等特点。
2.3 片外接口扩展部分
片外共扩展两片8255芯片,用于外部接口。其中一片8255芯片为三个8位输出口,分别用于数码管段选和位选显示高度及时间。另一片8255芯片为两个8位输出口、一个4位输出口和一个4位输入口,分别用于位选显示升降速度和信号灯的显示;PC0~PC3为输入口,PC4~PC7为输出口,均用于扫描按键,可用于后期的仪器校准。
2.4 电源电路
电源部分包括了线性变压器、全波整流电路、滤波电路和7805集成稳压块等部分。其中第一路输出+5V,给单片机系统供电;第二路输出-5V,给A/D转换器使用;第三路输出+24V,给传感器CYG1003供电。
2.5 辅助电路
(1)时钟电路:采用频率为6MHz的片式石英晶体振荡器产生系统时钟。
(2)复位电路:使用1/2片74LS123芯片实现上电和按键复位。
3 系统软件设计
软件采用模块化设计方法,主要包括系统初始化、气压高度数据处理、时间数据处理及显示等子程序。主程序以循环方式工作,完成初始化及子程序的调用。首先,MCU复位后,开始初始化MCU,包括MCU系统时钟设置、I/O端口设置、中断系统及定时器设置、8255端口设置。根据功能按键检测结果,进入相应的子程序。软件流程如图二所示。
3.1 高度测试程序
高度复位键按下后,由芯片第26引脚ST输出脉冲信号引起单片机中断,在A/D转换器ICL7135位选通信号(D5~D1)的控制下绝压传感器CYG1003输出的电流信号转换为数字信号与单片机通信。相应位的B8、B4、B2、B1端发出的BCD码取出储存,得到相应的气压值,根据气压和高度的近似关系[4],得出对应的公式如下。
(1)11000mm以下空间范围:
(2)11000m至20000m的空间范围:
(3)20000m至32000m的空间范围:
根据以上公式得出高度结果,最后通过显示程序将结果显示在LED显示屏上。
3.2 时间控制测试
时间数据处理子程序在时间复位键按下之后进行,由光耦三极管的通断控制单片机定时器中断。单片机通过引脚与外部的控制信号相连,当单片机接收到外部的定时器中断信号后,定时器便在晶振的作用下开始计时;当产生溢出后,返回中断。因为测试仪的测量范围要求为(0~99)s,单使用定时器中断难以精确定时,故需使用定时器定时和软件循环相结合的方法[5]才可实现,并实时显示结果。
4 运行测试结果
样机设计、安装、调试完成后通过跟计量标准进行数据比对测试、重复性测试及稳定性考核等方法,获得了大量实验测量数据。
4.1 高度测试结果
高度测试结果如表三所示。
4.2 时间测试结果
时间测试结果如表四所示。实验数据表明,科研样机实测指标均优于任务书规定指标,科研样机重复性和稳定性良好。
5 结束语
基于单片机控制,传感器数据采集及C语言软件编程等技术,我们设计生产了一套开伞器综合测试仪。经调试使用,测试精度满足技术参数要求,且重复性及一致性良好,符合使用要求。
参考文献
[1]王院生,路桂英,彭又新.自动开伞器的设计与实践[J].哈尔滨工业大学学报,2005,37(04):571-573.
[2]袁捷,韩波,李平.基于89C52的气压高度计系统的设计和应用[J].机电工程,2005,22(10):30-34.
[3]王志刚,唐飞,王晓浩,等.基于MS5534B的气压高度计系统的设计[J].微纳电子技术,2008,45(06):351-355.
[4]孙凯,张中平,秦明,等.基于C8051F310的智能便携式气压高度测量系统[J].电子器件,2005,28(03):577-580.
[5]郭天祥.新概念51单片机C语言教程——入门、提高、开发、拓展全攻略[M].北京:电子工业出版社,2009.
单片机综合设计 第7篇
1 称重系统的硬件设计
1.1 电源电路设计
根据设计需要, 本系统中需要设计两种不同级别的电源, 即传感器需要+12V的电源, 而系统其他芯片使用的是+5V电源。考虑本次设计的实际要求, 为使系统稳定工作, 提高产品的性价比, 电源电路的设计决定采用如下方案:
220V的交流电经过变压器后输出15V的电压, 经整流滤波电路后, 通过7812和LM7905进行DC/DC变换得到+12V和+5V、-5V供传感器和系统的其他芯片使用。在变压器的原边加入熔断保护装置和MFC网络, 使得系统获得的电源更稳定, 效果更好, 且电路短路时, 熔断装置会迅速切断电源, 保护其他电路元件不被损坏。
1.2 数据采集部分电路设计
1.2.1 传感器外围以及放大电路设计
传感器实际上是一种将质量信号转变为可测量的电信号输出的装置。使用传感器首先要考虑传感器所处的实际工作环境, 这对正确使用传感器至关重要, 它关系到传感器能否正常工作以及它的安全和使用寿命, 乃至整个衡器的可靠性和安全性。因此传感器外围电路的抗干扰能力是数据采集部分电路设计的关键环节。
传感器检测电路的功能是把电阻应变片的电阻变化转变为电压输出, 由于惠斯登电桥具有很多优点, 如可以抑制温度变化的影响, 抑制侧向力干扰, 比较方便地解决称重传感器的补偿问题等, 又因为全桥式等臂电桥的灵敏度最高, 各臂参数一致, 各种干扰的影响容易相互抵消, 所以本设计选用的最终方案是上海开沐自动化有限公司生产的NS-TH1系列称重传感器, 额定载荷20Kg, 该称重传感器采用全桥式等臂电桥。
由于传感器输出的电压信号很小, 是m V级的电压信号, 因此为了提高系统的抗干扰能力, 在传感器外围电路的设计过程中增加了由普通运放设计的差动放大器增益调节电阻Rg选用10K电阻, 是为了满足系统抗干扰的要求而设计。
这是一个电阻应变片式称重传感器, 将电阻应变片贴在金属的弹性体 (即力敏感器) 上, 并连接成一差动全桥电路。电阻应变片实心轴沿轴向线应变为:
实心轴沿圆周向线应变为:
金属材料的电阻相对变化公式为:
把 (1) 、 (2) 代入 (3) 可以得到其输出电压为:
其中F为压力 (即重物重量) A为受力面积E为弹性材料的弹性模量。如果在电阻的两侧都加入应变片, 则其输出为
SP20C-G501的输出电压为1-5V, 相应压力为1-50KPa。供电电流变动会直接影响传感器的输出电压, 因此希望电流变动要小。此外, 增大或减小驱动电流可调整输出电压, 但电流过小, 输出电压降低同时抗噪声能力减弱;电流过大, 会使传感器发热等, 将对传感器特性加大影响。因此在电路中使用1m A的驱动电流。在电路中采用通用运算放大器LM324, 由稳态二极管VS提供2.5V的输出电压经电阻R2和R3分压得到基准电压, 作为运放A1输入电压, 并供给1m A的电流。传感器的驱动电流流过基准电阻R4, 其上的压降等于输入电压。
R13和R 14为失调电压的温度补偿电阻, 阻值选择500k-1.5M。输入采用高输入阻抗的差动输入方式, 再由差动放大器电路进行放大, 输出1-5V的电压。RP2用于调整电路输入的灵敏度, RP1用于失调电压的调整。调整时, 压力为0KPa时输出电压为1V, 调整RP1, 当压力为达到20Kg的力时, 输出电压为5V即可。
而由式 (5) 得三运放放大电路的输出信号与输入信号的关系式为:
通过上式可以看出, 放大系数为
代入数值可以计算出, 其放大系数在70~150之间, 完全符合设计要求。
由 (3-6) 可以得到电桥输入电压U0与被测重量x成正比, 即
式中:Ur电桥的电源电压
K0传感器系数
1.2.2 A/D转换芯片与AT89S51单片机接口电路设计
AD574是美国Analog Device公司生产的12位单片A/D转换器。它采用逐次逼近型的A/D转换器, 最大转换时间为25us, 转换精度为0.05%, 所以适合于高精度的快速转换采样系统。由于对AD574 8、10、12引脚的外接电路有不同连接方式, 所以AD574与单片机的接口方案有两种, 一种是单极性接法, 可实现输入信号0~10V或者0~20V之间的转换;另一种为双极性接法, 可实现输入信号-5~+5V或者-10~+10V之间的转换。
根据芯片管脚的原理, 无论启动、转换还是结果输出, 都要保证CE端为高电平, 所以可以将单片机的/RD引脚和/WR端通过与非门与AD574的CE端连接起来。转换结果分高8位、低4位与P0口相连, 分两次读入, 所以12/-8端接地。同时, 为了使CS、A0、R/-C在读取转换结果时保持相应的电平, 可以将来自单片机的控制信号经74LS373锁存后再接入。CPU可采用中断、查询或者程序延时等方式读取AD574的转换结果, 本设计采用中断方式, 则将转换结束状态STS端接到P3.2 (外部中断/INT0) 。其工作过程如下:
(1) 当单片机执行对外部数据存储器的写指令, 并使CE=1, /CS=0, R/-C=0, A0=0时, 进行12位A/D转换启动。
(2) CPU等待STS状态信号送P3.2口, 当STS由高电平变为低电平时, 就表示转换结束。转换结束后, 单片机通过分两次读取外部数据存储器操作, 读取12位的转换结果数据。
(3) 当CE=1, /CS=0, R/-C=1, A0=0时, 读取高8位;当CE=1, /CS=0, R/-C=1, A0=1时, 读取低4位。
1.3 液晶显示电路的设计
内置T6963C控制器的液晶显示模块与计算机的接口时序为Intel8080时序。内置T6963C控制器的液晶显示模块的接口技术有两种:
1.3.1 直接访问方式
直接访问方式是把内置T6963C控制器的液晶显示模块作为存储器或I/O设备直接挂在计算机的总线上。模块的数据线连接在计算机的数据总线上, 片选及寄存器选择信号线由计算机的地址总线提供, 读和写操作由计算机的读写操作信号控制。
1.3.2 间接控制方式
间接控制方式是将内置T6963C控制器的液晶显示模块与计算机系统中的某个并行I/O接口连接, 计算机通过对该I/O接口的操作间接地实现对模块的控制。[1]下图2.4就是液晶显示模块的电路图。
1.4 报警电路的设计
当电路检测到称重的物体超过仪器的测量限制时, 将产生一个信号给报警电路。使报警电路报警从而提醒工作人员注意, 超限报警电路如图所示。它是由89S51的P3.1口来控制的, 当超过设置的重量时, 通过程序使P3.1口值为低电平, 三极管导通, 有电流通过蜂鸣器, 报警电路接通, 使蜂鸣器发出报警声。当P3.1口为高电平时, 不报警。这里设定当超过质量上限时, 通过软件使P3.1口清零, 再用P3.1口输出的低电平信号驱动蜂鸣器发声报警。
2 结语
本文是以单片机实验系统装置箱为核心, 对其配置的液晶显示器及报警部分而设计的一个称重系统的实例。通过对数据采集的分析, 了解各种传感器、放大器及A/D转换器, 对信号的转换、传输有了一定的认识。电子电路的设计中对各种影响因素的考虑不够完善, 比如在对过电压情况的处理中未作防范措施, 系统设计不够优化, 有待改善。
参考文献
[1]毛学军主编.液晶显示技术[M].北京:电子工业出版社, 2008:215-246
单片机矩阵键盘接口设计 第8篇
在单片机应用系统中, 通常都要有人─机对话功能。人─机对话的中间桥梁是键盘, 键盘就是一组按键的集合, 操作人员可以通过键盘输入数据或命令, 实现简单的人机通讯。键盘分编码键盘和非编码键盘, 键盘上闭合键的识别由专用的硬件译码器实现并产生编号或键值的称为编码键盘, 如:ASCⅡ码键盘、BCD码键盘等;靠软件识别的称为非编码键盘。本文侧重讨论键盘接口处理的内容、三种控制方式和一个典型矩阵键盘接口程序设计。
1 键盘接口处理的内容
1.1 按键扫描
键盘大都采用按行、列排列的矩阵开关结构, 这种结构可以减少硬件和连线。常用按键扫描识别方法有行扫描法 (Row-Scanning) 和线反转法 (Line-Reverse) 。
1.1.1 行扫描法是采用步进扫描方式, 如图1, CPU通过输出口把一个“步进的0”逐行加至键盘的行线上, 然后通过输入口检查列线的状态。由行线列线电平状态的组合来确定是否有键按下, 并确定被按键所处的行、列位置。
表1为键位与行列线关系表列出了识别按键位置与各行之间的关系。其中, R1、R2、R3、R4表示行, C1、C2、C3、C4表示列。当扫描第一行时, R1=0, 若读入的列值C1=0, 则表明按键K13被压下, 如果C3=0, 则表明按键K15被压下。第一行扫描完毕后再扫描第二行, 逐行扫描至最后一行为止, 即可识别出所有的按键。
1.1.2 线反转法识别按键
线反转法第一步:让行线编程为输入线, 列线编程为了输出线, 使输出线输出为全低电平, 则行线中电平由高变低的所在行为按键的所在行。第二步把行线编程为输出线, 列线编程为输入线, 使输出线输出为全低电平, 则列线中电平由高变低的所在列为按键所在列, 综合上述两步, 可确定按键所在行和列。
1.2 按键去抖动
机械式按键再按下或释放时, 由于机械弹性作用的影响, 通常伴随有一定时间的触点机械抖动, 然后其触点才稳定下来。其抖动过程如图2 (a) 所示, 抖动时间的长短与开关的机械特性有关, 一般为5~10ms。从图中可以看出, 在触点抖动期间检测按键的通与断状态, 可能导致判断出错。即按键一次按下或释放被错误地认为是多次操作, 这种情况是不允许出现的。为了克服按键触点机械抖动所致的检测误判, 必须采取去抖动措施, 可从硬件、软件两方面予以考虑。一般来说, 在键数较少时, 可采用硬件去抖, 而当键数较多时, 采用软件去抖。软件去抖的流程图如图2 (b) 所示。
从按键的去抖流程图我们可以知道, 检测到有键按下时, 应延时等待一段时间 (可调用一个5ms~10ms的延迟子程序) , 然后再次判断按键是否被按下, 若此时判断按键仍被按下, 则认为按键有效, 若此时判断按键没有被按下, 说明为按键抖动或干扰, 应返回重新判断。此时基本就算实现了按键输入, 进一步的话可以判断按键是否释放。
1.3 键码计算
被按键确定下来之后, 接下来的工作是计算闭合键的键码, 因为有了键码, 才好通过散转指令把程序执行转到闭合键所对应的中断服务程序上去。本来可以直接使用该闭合键的行列值组合产生键码, 但这样做会使各子程序的入口地址比较散乱, 给JMP指令的使用带来不便。所以通常都是以键的排列顺序安排键号。表二所示的键号从左到右从上向下的顺序编排的, 这样安排, 使键码可以根据行号列号以查表求得, 也可以通过计算得到。按下表所示的键码编排规律, 各行的首号依次是00H、08H、10H、18H, 如列号按0-----7顺序, 则键码的计算公式为:键码=行首号+列号
4键释放
计算键码之后, 再以延时后进行扫描的方法等待释放。等待键释放是为了保证键的一次闭合仅进行一次处理。
2 键盘工作方式
键盘接口, 一般采用行列式键盘.主要有编程扫描, 定时扫描和中断扫描方式有三种:
2.1 编程扫描方式:
当CPU空闲时, 扫描键盘, 判断有无键按下.一般应具备以下几个功能: (1) 判断键盘上有无键按下。 (2) 去除键抖动的影响。 (3) 扫描键盘。 (4) 别闭合的键是否十放。
2.2 定时扫描方式:
定时扫描工作方式是利用单片机内部定时器产生定时中断, CPU响应中断后对键盘进行扫描, 并在有键按下时识别出该键, 并执行相应的键功能程序。
2.3 中断扫描方式:
中断扫描方式是只有在键盘上有键按下时, 发出中断请求, CPU响应中断请求后, 转中断服务程序, 进行键盘扫描, 识别键码。
3 矩阵式键盘接口程序设计
3.1 图3为一典型矩阵式键盘接口电路
3.2 矩阵式键盘接口程序设计
假设跨接在X2行与Y1列的18键按下, 其键值计算方法如下:第一次“0”行扫描X0, 无键按下, CL=00+08, 接下来扫X1行, 仍无键按下, 加08并进行DAA修正, CL=08+08, 再扫X2行, 此时读入的列值不等于FFH即表明有键按下, 则cl=16不变, 然后转求列值, 列值寄存器先加1再把读入的列值循环移位, 由于按下的键在Y1列, 所以需要移位两次才能移出0值, 因此DL=02, 然后将行值寄存器与列值寄存器之值相加, 并进行了DAA修正, 得到AL=CL=DL=16+02=18, 即键值为18, 程序如下。
摘要:本文针对单片机键盘接口的设计, 重点讨论了键盘接口在使用时处理的内容、三种控制方式和一个典型键盘接口程序设计。
关键词:矩阵,键盘,键码,抖动
参考文献
[1]张振荣, 晋明武, 王毅平.单片机原理及实用技术[M].人民邮电出版社, 2001.
[2]李立东, 朱晓鸥.微机原理与汇编语言基础[M].高等教育出版社, 2001.
[3]李广弟, 朱月秀, 王秀山.单片机基础[M].北京航空大学出版社, 2007.
基于单片机的八路彩灯设计 第9篇
多路彩灯是大都市装扮美化城市夜景的灯饰之一, 并已成为生活中不可或缺的装饰品。以前的彩灯控制器均是采用模拟或数字技术设计的, 电路复杂, 成本较高, 且功能简单, 所以已不能满足用户日益增长的需求。本设计采用单片机控制八路彩灯, 电路结构简单, 成本低廉, 且功能灵活多样, 实用性较强, 故而能够在现实生活中得到广泛的应用。
2 设计任务 (Design tasks)
用单片机控制八路彩灯, 使彩灯循环依次出现如下花型。
彩灯从左至右渐亮至全亮 (8个脉冲)
彩灯从左至右渐灭至全灭 (8个脉冲)
彩灯从右至左渐亮至全亮 (8个脉冲)
彩灯从右至左渐灭至全灭 (8个脉冲)
彩灯全亮 (1个脉冲)
彩灯全灭 (1个脉冲)
彩灯全亮 (1个脉冲)
彩灯全灭 (1个脉冲)
3 总体设计方案 (Scheme design)
此设计既有硬件部分, 又有软件部分。其中硬件部分主要有单片机的时钟电路、复位电路和键盘控制电路, 软件部分主要是通过单片机控制彩灯花型的程序。
系统总体框图如图1所示。
4 硬件设计 (Hardware design)
4.1 时钟电路
时钟电路由石英晶体振荡电路组成。石英晶体振荡电路的形式是多种多样的, 但基本电路只有两类, 即并联晶体振荡器和串联晶体振荡器, 前者石英晶体是以并联谐振的形式出现, 而后者是以串联谐振的形式出现。本设计采用的是并联晶体振荡器[1]。石英晶体振荡器中拉出的两个线头分别与单片机的XTAL1 (19管脚) 、XTAL (18管脚) 相连[2]。
4.2 键盘控制电路
键盘控制电路主要由两个按键开关构成, 分别连在单片机的P1.6 (7管脚) 、P1.7 (8管脚) , 由此控制彩灯花型的停始。
4.3 彩灯花型演示电路
彩灯花型演示电路由八个发光二极管组成, 依次连在单片机P0口的八个管脚上。其花型变换的停始通过键盘控制电路加以控制。
4.4 总体电路
总体电路图如图2所示。
5 软件设计 (Software design)
5.1 程序流程图
程序流程图如图3所示。
5.2 主程序
6 结论 (Conclusion)
本设计系统与市面上大多数的彩灯相比, 该种彩灯具有更好的灯光装饰效果, 性价比更高, 与普通的全硬件彩灯相比具有更好的经济效益。应用主控模块输出的控制信号去控制灯管内的LED板模块工作, 使得产品性能稳定, 便于安装容易操作。由于控制程序存储在8051单片机的电可擦除Flash闪存EPROM中, 如果用户需要更改系统的亮灯模式, 无需改变系统硬件电路, 只需修改其中程序即可, 是一种很有发展前途的彩灯控制器。
参考文献
[1]张涵, 任秀华.基于Proteus的电路及单片机仿真[M].北京:电子工业出版社, 2012:104-112.
单片机综合设计
声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。


