电子工程设计Ⅱ实验报告 120231班14组
靠。
U1+5C310uFR18.2K403130299VCCEA/VPALE/PPSENRESETP00P01P02P03P04P05P06P073938373635343332+5C122pCY111.059805119X118C222pX2P10P11P12P13P14P15P16P17P20P21P22P23P24P25P26P27123456782122232425262728RXDTXINTD0INT120GND1011121314151617T0T1WRRD 图2. 1典型的51单片机的最小系统电路图
本次设计采取总线结构,把单片机的P1口作为数据总线接口,P1、P2口联合使用作为地址总线接口。通过总线结构设计,可以有效减轻软件设计难度,也是单片机控制的多个功能部件更加协调一致的工作。
图2. 2 单片机总线设计框图
如图2.2所示,控制系统在数据/地址传输上采用数据/地址分离设计;在控制上采用部分译码电路。
数据/地址分离电路设计:单片机模块P3口为数据/地址复用端口,为了得到低8位地址,采用74LS373锁存器构成典型的数据/地址分离电路。
地址译码电路设计:采用74LS138构成部分译码电路。
5
具体电路图如下:
2.1.3单片机系统的调试
单片机模块安装接口如图2.4所示。
电子工程设计Ⅱ实验报告 120231班14组
调试平台:电子工程设计训练调试台
图2. 3单片机系统设计电路图
为便于各模块协调一致的工作,电路设计统一接口模式,方便调试与查错,
图2. 4 单片机模块装结构图
6
电子工程设计Ⅱ实验报告 120231班14组
调试内容:地址译码电路输出检测 适用电路:部分地址译码电路 测试设备:JTAG适配器 单片机应用系统板 150MHz数字双踪示波器
调试方法:1、检查电路连线无误后,将电路板安装在测试台上
2、断开译码电路负载,运行测试程序,检查各输出引脚是否有输出, 各个输出之间相对位置关系是否正确;
3、用示波器观察CS0~ CS5引脚,应有图示的波形输出。如果没有输出或者彼此关系错乱,都表明电路中存在故障。
CS0 ~ CS5输出波形图如图2.5所示:
CS0: CS1: CS2: CS3:
图2. 5 单片机模块调试波形图
调试程序:
#include \#include \#include \
#define C1 XBYTE[0x0000] #define C2 XBYTE[0x2000] #define C3 XBYTE[0x4000] #define C4 XBYTE[0x6000] #include \void main(void) {
Init_Device();
while(1)
7
电子工程设计Ⅱ实验报告 120231班14组
{C1=0; C2=0; C3=0; C4=0;}}
2.1.4调试中遇到的问题
刚开始调试的时候,我们直接用程序观察模拟温度的变化,发现出错。紧接着就用示波器观察CS0~CS5的波形,但是并没有得到正确的波形,CS1常为高,CS3和CS5的波形也是不对。后又检查电路,发现线路接线正确,又检查线路通断,发现我们的电路板本身应该相连接的暗线部分没有连通。随后进行了补救式的焊接,焊接问题这次应该解决了,我们就进行了又一次的测试,结果发现仍然是没有完全改善,CS1仍旧是常为高。这次我们检查了138、244和00这三片,发现不是芯片的问题,最后寻求老师帮助,检查得出结论,我们的单片机第6脚是坏掉的,这才导致CS1总是有问题。换了一个备用单片机,问题迎刃而解,最终得到正确波形。完成了单片机模块的设计与调试。
表2. 1 常见故障及原因
故障现象 输出全部没有变化 输出全部没有变化 输出全部没有变化 输出全部没有变化 输出关系混乱 对应引脚无输出 故障原因 74LS373未接电源 74LS373漏接+5V 74LS373漏接地线 未接ALE或ALE无效 AD0 ~ AD3接错 AD0 ~ AD3漏接
2.2模/数转换电路设计与实现
2.2.1实验要求
输入信号范围: 0V~+5V 分辨率: 8bit 精度: 1LSB 转换时间: < 1ms 安装: 独立电路板结构
2.2.2设计方案
本次设计AD转换电路采用芯片ADC0804,芯片主要参数如下: 工作电压:+5V,即VCC=+5V。
模拟输入电压范围:0~+5V,即0≤Vin≤+5V。
8
电子工程设计Ⅱ实验报告 120231班14组
分辨率:8位,即分辨率为1/2=1/256,转换值介于0~255之间。 转换时间:100us(fCK=640KHz时)。 转换误差:±1LSB。
参考电压:2.5V,即Vref=2.5V。
模数转换器,是将模拟电信号转变成计算机能识别的数字信号。在模数转换中,应根据测量精度要求,考虑转换电路的精度和分辨率,并力求降低成本。模数转换有多种方法可以实现,如采用电压/频率变换器,以频率或脉宽来计算温度,也可以采用A/D变换器或其它方法。如采用A/D变换器,应考虑转换器输入阻抗和变送器输出阻抗对信号的衰减可能引起的测试误差,并尽量降低这一误差。板间连接应注意保护。根据课设要求,温度0~100 的变化是用电压0~5V表示的,转成数字表示,即0~FFH。
AD电路模块电路图如图2.6所示
图2. 6
AD模块工作的时序图如图2.7所示。
图2. 7
9