现代电子技术综合实验报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
电子科技大学电子工程学院实验报告
实验名称现代电子技术综合实验
姓名:
学号:
评分:
教师签字
电子科技大学教务处制
电子科技大学
实验报告
学生姓名:学号:指导教师:
实验地点:实验时间:
一、实验室名称:电子技术综合实验室
二、实验项目名称:现代电子技术综合实验
三、实验学时: 40
四、实验目的与任务:
1、熟悉系统设计与实现原理
2、掌握KEIL C51的基本使用方法
3、熟悉SMART SOPC实验箱的应用
4、连接电路,编程调试,实现各部分的功能
5、完成系统软件的编写与调试
五、实验器材
1、PC机一台
2、示波器、SMART SOPC实验箱一套
六、实验原理、步骤及内容
(一)试验要求
1)、程序开始后:当核心板上LED的D1~D8只有第1个发光二极管亮时,同时第1个数码管显示数字1,其余显示‘-’;持续秒之后,只有第2个发光二极管亮,同时第2个数码管显示数字2,其余
显示‘-’;再过秒,只有第3个发光二极管亮,同时第3个数码管显示数字3,其余显示‘-’;……;间隔秒后,只有第8个发光二极管亮,同时第8个数码管显示数字8,其余显示‘-’。此后进入循环状态。循环过程中,按按键进入任务2。
2)、停止任务1中发光二极管显示,核心板上数码管的第1、2位显示学号最后二位,第4、5、6位显示‘-’。第7、8位实现秒表功能,从开始倒计时,计时到后程序自动进入任务3.
3)、核心板上数码管其余不显示,第6、7、8位显示三位电压值(~),增减调节电压值,LED1亮度跟随变化。按按键进入任务1。
(二)实验内容
1、硬件设计
2、各部分硬件原理
数码管动态扫描原理:动态显示的特点是将所有位数码管的段选线并联在一起,由位选线控制是哪一位数码管有效。选亮数码管采用动态扫描显示。所谓动态扫描显示即轮流向各位数码管送出字形码和相应的位选,利用发光管的余辉和人眼视觉暂留作用,使人的感觉好像各位数码管同时都在显示。动态显示的亮度比静态显示要差一些,所以在选择限流电阻时应略小于静态显示电路中的。
PWM调节LED亮度工作原理: PWM信号波形是一系列占空比可调的方波脉冲。该信号经低通滤波器后,可得到一个电压与占空比成正比的直流电压信号,当方波频率达到50Hz以上是,人眼基本无法觉察到闪烁,只能感觉到平均亮度(相当于低通滤波器)。
I2C工作原理:I2C总线由两根信号线组成,一根是串行数据线SDA,另一根是串行时钟线SCL。I2C总线信号的连接方法如下图所示。
一般具有I2C总线的器件其SDA和SCL引脚都是漏极开路(或集电极开路)输出结构。因此实际使用时,SDA和SCL信号线都必须接上拉电阻。上拉电阻一般取值3-10KΩ。
ADC工作原理及应用:
3、软件设计
(三)思考题
程序任务跳转的按键改用外部中断模式,电路如何修改(画示意图)程序如何修改,写出中断服务程序。
答:将KEY1与KEY2键通过跳线分别接到(INT0)与(INT1)接口上。示意图及程序如下。
图7 示意图
开启中断:
SysInit()
{
EA=0; //禁止总中断
EX1=1; //使能/INT1中断
EX0=1; //使能/INT0中断
EA=1; //使能总中断
}
中断服务程序:
void keypress1 () interrupt 0
{
if (!(P3&0x04))
{
delay(10); //稍作延时,用于去抖
if (!(P3&0x04))
flag_keypress1=1; //被按下
while(!(P3&0x04)); //等待释放
}
}
void keypress2 () interrupt 2
{
if (!(P3&0x08))
{
delay(10); //稍作延时,用于去抖
if (!(P3&0x08))
flag_keypress2=1; //被按下
while(!(P3&0x08)); //等待释放
}
}
七、总结及心得体会
通过本次实验熟悉了系统设计与实现原理,基本掌握了KEIL C51的基本使用方法,熟悉了SMART SOPC实验箱的应用。并且实现了各部分的功能完成系统软件的编写与调试。
八、对本实验过程及方法、手段的改进建议
九、附录
#include <>
#include <>
#include <>
#include <>
#include ""
#define PWM_MAX 50
#define uchar unsigned char
unsigned char v;
unsigned char f;
unsigned char sw;
unsigned char g;
unsigned char m;
unsigned char DispBuf[8];
unsigned char PwmValue;
sbit KEY2 = P2^0;
sbit CS = P1^5;
sbit DAT = P1^7;
sbit CLK = P1^6;