八路脉冲信号发生器占空比频率相位差可调

上传人:飞*** 文档编号:42549528 上传时间:2018-06-02 格式:PDF 页数:13 大小:311.82KB
返回 下载 相关 举报
八路脉冲信号发生器占空比频率相位差可调_第1页
第1页 / 共13页
八路脉冲信号发生器占空比频率相位差可调_第2页
第2页 / 共13页
八路脉冲信号发生器占空比频率相位差可调_第3页
第3页 / 共13页
八路脉冲信号发生器占空比频率相位差可调_第4页
第4页 / 共13页
八路脉冲信号发生器占空比频率相位差可调_第5页
第5页 / 共13页
点击查看更多>>
资源描述

《八路脉冲信号发生器占空比频率相位差可调》由会员分享,可在线阅读,更多相关《八路脉冲信号发生器占空比频率相位差可调(13页珍藏版)》请在金锄头文库上搜索。

1、北 华 航 天 工 业 学 院单片机技术综合设计课程设计报告报 告题 目:脉冲信号发生器作者所在系部:电子工程系作者所在专业:电子信息工程作者所在班级:B08213 作 者 姓 名 :指导教师姓名:完 成 时 间 :2011-6-1 内容摘要本应用系统设计的目的是通过在“单片机原理及应用”课堂上学习的知识,以及查阅资料,培养一种自学的能力。并且引导一种创新的思维,把学到的知识应用到日常生活当中。在设计的过程中,不断的学习,思考和同学间的相互讨论,运用科学的分析问题的方法解决遇到的困难, 掌握单片机系统一般的开发流程,学会对常见问题的处理方法,积累设计系统的经验,充分发挥教学与实践的结合。全能提

2、高个人系统开发的综合能力,开拓了思维,为今后能在相应工作岗位上的工作打下了坚实的基础。1设计 8 路脉冲信号发生器,其脉宽和频率均可调。2其中 6 路信号的频率同步可调,频率范围在0.1HZ-1MHZ ,步进值自行设置。3其中 2 路信号的频率相同, 但有相位差, 2 路信号的相位差用按键可调,步进值自行设置。4 LED显示器上自动显示信号的频率值。目录一 概述,1 二 整体方案论证 ,1 三 主要电路模块 ,1 3.1.主要控制芯片 ,1 3.2.键盘控制 ,2 3.3 频率显示 ,2 四 电路图,2 4.1 键盘及显示部分,2 4.2 晶振及复位部分,3 五 主要程序 ,4 六 心得体会

3、,10 七 参考文献 ,10 课程设计任务书课题名称脉冲信号发生器完成时间指导教师职称副教授学生姓名班级总体设计要求和技术要点总体设计要求:通过本课程的学习使学生掌握单片机技术,提高工程实践能力,学会 设计脉冲信号发生器并在此基础上增加其功能;学会应用单片机技术解决一些简单的电子 设计问题。技术要点:1设计 8 路脉冲信号发生器,其脉宽和频率均可调。2其中 6 路信号的频率同步可调,频率范围在0.1HZ-1MHZ ,步进值自行设置。3其中 2 路信号的频率相同,但有相位差,2 路信号的相位差用按键可调,步进值自行设置。4 LED 显示器上自动显示信号的频率值。工作内容及时间进度安排第 7 周:

4、设计项目的论证,硬件仿真图的实现第 10 周:完成设计报告论证部分第 13 周:制作出硬件成品第 15 周:下载软件编程,完成设计报告并验收结果课程设计成果1与设计内容对应的软件程序及硬件成品2课程设计报告书3成果使用说明书4设计工作量要求一、概述8 路脉冲信号发生器,其脉宽和频率均可调。其中6 路信号的频率同步可调,频率 范围在 0.1HZ-1MHZ ,步进值自行设置。其中2 路信号的频率相同,但有相位差,2 路信 号的相位差用按键可调,步进值自行设置。LED显示器上自动显示信号的频率值二、方 案设计与论证。 其硬件包括三部分:最小单片机系统,独立式按键以及七位共阳极LED显示。下面 将会对

5、硬件部分进行论证。二、整体论证方案该设计方案中,用 AT89C51的 P0 口的 8 条线输出波形; 在 P2 外接了两个按键, 用来调整占空比,步进值为25;用两个按键控制信号频率的改变,步进值分区间设置; 在 P1接两个按键来控制两路信号的相位差;在P1口外接了锁存器573,并接 7 个共阳 极 LED数码显示器。主要模块如下图三、主要电路模块1、主要控制芯片为满足设计要求, 采用常见的 AT89C51单片机作为控制芯片。 AT89C51 是一种带 4K 字节闪烁可编程可擦除只读存储器的低电压、高性能CMOS8 位微处理器。可进行1000 写/ 擦循环; 1288 位内部 RAM ;32

6、可编程 I/O 线; 两个 16 位计数器 / 定时器; 5 个中断 源;片内振荡器和时钟电路。 设计中也可采用 AT89C52进行控制,其为 8K字节微处理器,处理速度会大大提升。 不过,该设计无需这么大的内存,4K 字节完全够用,故不用AT89C52 。设计中, 80C51 也可以完成设计要求,不过该单片机不能进行重复写/ 擦,故不用其进行设计。2、键盘控制该设计中键盘安排如下:频率调节键2 个,占空比调节键 2 个,两路信号相位差调 节键 2 个。其电路图如图1. 按键的扩展可以采用独立式按键和矩阵式按键。前者简单易懂, 每一路按键占用一 个 I/O 口线,工作相互独立,但是可能会占用过

7、多的I/O 口线。后者常用于按键多于8 个时的情况,节省 I/O 口线。由于设计中只用到了6 个控制键,故采用独立式按键结构 即可满足要求。3、频率显示设计中采用 7 段 LED显示,用 1 个 74LS573实现输出数据锁存, 用 7 个反向器驱动 数码管位选,其电路图如图2。 设计中采用并行接口扩展电路,动态扫描显示。7 个数码管采用共阳极方式。虽然 动态扫描显示方式为了维持显示会占用计算机很多时间,但是 7 个数码管只需用一个驱 动芯片,节省了资源,而静态扫描显示则是有几个LED数码管就需几个显示驱动。四、电路图1. 显示及键盘控制部分2. 晶振及复位部分五、主程序#include #i

8、nclude #define uchar unsigned char #define uint unsigned int #define ulint unsigned long int sbit PL_1=P27; sbit PL_2=P26; sbit ZKB_1=P25; sbit ZKB_2=P24; sbit XW_1=P23; sbit XW_2=P22; /设置 键 盘端口 float fosc=12000000; /系统时钟频率 float length=65536; /方式 1 计数 长度 float TC0; /定义 计数器 初值 float PL1=1000; /定义频率初

9、 值 unsigned char PL3,PL4,PL5,PL6; /低频中间变量 uchar times; uchar ZKB=1; /占空 比 50% uchar K=0; / 从 高 电 平 开始 uchar XW=0; /八路 相位相 同 uchar L,p; /中断定时uchar TIMER0_L,TIMER0_H; /定时 器 0 和 1 的定时初值 uchar code tabl12=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0 x82,0xf8,0x80,0x90,0xff;/ LED 共阳极代 码 uchar code ZKB_XW344=0xff,0x00

10、,0x00,0x0 0,0x7f,0x00,0x00,0x80,0x7f,0x00,0x80 ,0x00,0x7f,0x80,0x00,0x00, 0xff,0xff,0x00,0x00,0xff,0x7f,0x00,0x8 0,0x7f,0x7f,0x80,0x80,0x7f,0xff,0x80, 0x00, 0xff,0xff,0xff,0x00,0xff,0xff,0x7f,0x80 ,0xff,0x7f,0xff,0x80,0x7f,0xff,0xff,0x8 0;/ 对应相位和占空比需要输出的数据 floatcodePL=0,1,2,3,4,5,6,7,8,9,10,2 0,30,4

11、0,50,60,70,80,90,100,200,300,400,500 ,600,700,800,900,1000,2000,3000,4000, 5000,6000,7000,8000,9000,10000,20000,30 000,40000,50000,60000,70000,80000,90000 ,100000 ; /所有的频率 uchar CS5=90,9,4,2,0; uchar CS_15=90,9,4,2,0; / 控 制循环次数 void keyscan(); void decode(); /* 延时子程序 */ void delay(uchar i) uchar j,z

12、; for(j=i;j0;j-) for(z=110;z0;z-); /* 系统初始化 */ void system_init() TMOD=0x01; /定 时器 0 工作在方式 1,的定时模式 TL0=(65536-1000)%256; /初始频率 1KHz 定时 1ms TH0=(65536-1000)/256; IT0=0; /选择 INT0 为低电平触发方式 ET0=1; /定时 器 1 和定时器 0 中断允许 TR0=1; /定时器 1 和定时器 0 开始定时 EA=1; /系 统中断允许 /* 显示子程序 */ void display(float PL) uchar tabl3

13、8; uint c8,c7,c6,c5,c4,c3,c2,c1; uchar temp,i; ulint PL2; PL2=(ulint)PL; if(PL2=0) c1=1; else c1=0; / 小 数 部 分显示处理 c8=PL2/1000000; /分离频率 的各位数值 PL2=PL2%1000000; c7=PL2/100000; PL2=PL2%100000; c6=PL2/10000; PL2=PL2%10000; c5=PL2/1000; PL2=PL2%1000; c4=PL2/100; PL2=PL2%100; c3=PL2/10; c2=PL2%10; if(c8=0

14、) /频率 显示的 高位灭零 c8=10; /tabl10=0xff if(c7=0) c7=10; if(c6=0) c6=10; if(c5=0) c5=10; if(c4=0) c4=10; if(c3=0) c3=10; tabl30=tablc8; tabl31=tablc7; tabl32=tablc6; tabl33=tablc5; tabl34=tablc4; tabl35=tablc3; tabl36=tablc2; tabl37=tablc1; temp=0x80; for(i=0;ii); if(P3=0xfd) tabl3i=tabl3i P1=tabl3i; delay(10); P1=0xff; P3=0x00; /没 循 环 一 次 清零,避免与之前显示叠加

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号