电子技术课程设计报告

《电子技术课程设计报告》

幸运大转盘

       

        院:

       名:

       级:

       号:

   指导老师:

摘要

幸运大转盘在我们日常生活中扮演着十分重要的角色,在各种娱乐场合,以及商场购物中心,游乐场等地方,都有幸运大转盘的身影。随着科技的发展,现在许多软件也有幸运大转盘的功能。由于幸运大转盘应用十分广泛,所以这次课程设计选择利用集成芯片制作一个幸运大转盘,并利用Multisim软件对电路进行设计和仿真。

幸运大转盘电路由555组成的多谐振荡器和CD4017十进制计数器/脉冲分配器组成。10颗发光二极管模拟幸运物,当按下启动键1秒以上,发光二极管高速循环点亮,几秒钟后旋转速度越来越慢并最终随机停止于某颗灯上。可以将每颗灯旁边标上幸运物品作为摇奖器。电解电容C1的数值决定延迟时间,电解电容C2数值决定循环速度。电源供电电压为直流5V,也可以采用3节1.5V电池供电。

关键词:幸运大转盘  Multisim    仿真   555  CD4017  集成芯片 循环点亮

目录

摘要:............................................................................................................................. 2

目录................................................................................................................................. 3

一、课题:...................................................................................................................... 4

二、电路说明及其目的:................................................................................................. 5

三、实验原理................................................................................................................... 5

1、 系统框图............................................................................................................ 5

2、 芯片的选择及其工作原理................................................................................... 5

3、 电路的工作原理................................................................................................. 8

四、 Multisim................................................................................................................. 9

五、 实验感悟............................................................................................................... 10

六、参考文献............................................................................................................... 12

一、课题:

     幸运流水灯(套件)

二、电路说明及其目的:

目的:

提高动手能力,增加个人知识,巩固和运用在《数字电子技术》一书中所学的理论知识和实验技能,掌握模拟电子系统的一般设计方法,提高设计能力和实际动手能力,为以后从事电子产品打下良好的基础。

三、实验原理

1、系统框图

2、芯片的选择及其工作原理

  (1)555 为8脚时基集成电路,大约在1971年由Corporation发布,在当时是唯一非常快速且商业化的Timer IC,在往后的30年中非常普遍被使用,且延伸出许多的应用电路,后来基于CMOS技术版本的Timer IC如MOTOROLA的MC1455已被大量的使用,但原规格的NE555依然正常的在市场上供应,尽管新版IC在功能上有部份的改善,但其脚位劲能并没变化,所以到目前都可直接的代用

Pin 1 (接地) -地线(或共同接地) ,通常被连接到电路共同接地。

Pin 2 (触发点) -这个脚位是触发NE555使其启动它的时间周期。触发信号上缘电压须大于2/3 VCC,下缘须低于1/3 VCC 。

Pin 3 (输出) -当时间周期开始555的输出输出脚位,移至比电源电压少1.7伏的高电位。周期的结束输出回到O伏左右的低电位。于高电位时的最大输出电流大约200 mA 。

Pin 4 (重置) -一个低逻辑电位送至这个脚位时会重置定时器和使输出回到一个低电位。它通常被接到正电源或忽略不用。

Pin 5 (控制) -这个接脚准许由外部电压改变触发和闸限电压。当计时器经营在稳定或振荡的运作方式下,这输入能用来改变或调整输出频率。

Pin 6 (重置锁定) - Pin 6重置锁定并使输出呈低态。当这个接脚的电压从1/3 VCC电压以下移至2/3 VCC以上时启动这个动作。

Pin 7 (放电) -这个接脚和主要的输出接脚有相同的电流输出能力,当输出为ON时为LOW,对地为低阻抗,当输出为OFF时为HIGH,对地为高阻抗。

Pin 8 (V +) -这是555个计时器IC的正电源电压端。供应电压的范围是+4.5伏特(最小值)至+16伏特(最大值)。

点击浏览下一页

                    555的内部图及各引脚

   (2)4017计数器是用来累计和寄存输入脉冲个数的时序逻辑部件。在此试验设计电路中我们采用了十进制计数/分频器CD4017,它是一种用途非常广泛的电路。其内部由计数器及译码器两部分组成,由译码输出实现对脉冲信号的分配,整个输出时序就是O0、O1、O2、…、O9依次出现与时钟同步的高电平,宽度等于时钟周期。

CD4017是一块十进制计数\分频器。当复位端为‘1’时,计数器清零。在clock unable端为‘0’状态下,计数器在信号的正上升沿触发。

CO:进位脉冲输渊

CP:时钟输入端

CR:清除端

INH:禁止端

Q0-Q9 :计数脉冲输出端

VDD:正电源 

VSS:地

CD4017有3个输入(MR、 和~ ),MR为清零端,当在MR端上加高电平或正脉冲时其输出O0为高电平,其余输出端(O1~O9)均为低电平。 和~ 是2个时钟输入端,若要用上升沿来计数,则信号由 端输入;若要用下降沿来计数,则信号由 端输入。设置2个时钟输入端,级联时比较方便,可驱动更多二极管发光。 CD4017有10个输出端( ~ O9)和1个进位输出端 每输入10个计数脉冲, 就可得到1个进位正脉冲,该进位输出信号可作为下一级的时钟信号。

由此可见,当CD4017有连续脉冲输入时,其对应的输出端依次变为高电平状态,故可直接用作顺序脉冲发生器。

                           4017的内部电路图

             

                            4017的引脚图

              

                            

3、电路的工作原理

流水灯主题是NE55和CD4017的连接装置,从电路图到实际电路的转换,需要注意元器件的串并联。

4017是一个十进计数器集成电路,16脚及8脚分别为正及负电源接脚,可在3-18 V下工作。14脚是时钟脉冲输入端,每当输入由低电位(约0V)转高电位(近正电源电压)时令输出脚(共十脚)依次序轮流输出高电位。13脚是输入时钟脉冲控制端,一般接低电位,若接高电位会令14脚暂停作用。15脚是置零脚,一般接零电位,若接高电位则使输出置零,即Q0输出脚”3”永远为高电位,失去计数作用。12脚是进位脚,用来接下一个十进计数器用,变成双位计数器,现在的电路不用,故空接。在4017的14脚接上一脉冲产生器便可成为循环流水灯。

脉冲产生器是一个用定时器集成电路555设计而成的无稳态多谐波(方波)振荡器,产生高低变化不停的方型脉冲波。当按一下按钮式开关(时,C1会实时充电至电源电压9V,此电压经晶体管(TR)缓冲放大器后施加在IC555无稳态多谐波(方波)振荡器的重置脚即4脚上,令其开始振荡,在第3脚输出方波脉冲。当按钮式开关放开后,C1会经R1放电,其电压徐徐下降,IC2第4脚的电压也跟随下降。在一定的时间后(由C1乘R1的时间常数决定,一般约十秒内),IC2第4脚的电压变得很低,令振荡停止,第3脚 停止输出方波脉冲。IC2 555在起动时,第3脚输出约等于电源电压的高位电压,经R3向C3充电,当C3电压升至 2/3电源电压时,经第六 脚触发内部的电压比较器,令第3脚 变为接近零的低电位。之后C3经R3 放电,当C3电压下降至1/3电源电压 时,经第二脚触发内部另一个电压比较器,使第3脚变回高输出电位,再次重复向C3充电。结果C3不停经R3充电和放电,555第3脚不停输出方型脉冲波。R3及C3数值越大,频率越低。R3及C3数值越小,频率越高。NE555时基电路组成振荡电路,电源VCC通过电阻R1向电容C1充电,当充电到一定程度后,2、6脚电压升高,当2、6脚电压升高到2/3VCC后,3脚输出为低电平,7脚对地呈低阻态,电容C1通过电位器和7脚对地放电,当放电至使2、6脚电压低于1/3VCC时,3脚输出为高电平,7脚对地呈高阻态,VCC通过RP1又开始对电容C1充电,周而复始。通过调节c1电容的大小,可以改变电容充放电的时间常数,从而改变3脚输出脉冲的频率。从3脚输出振荡脉冲作为CD4017工作的时钟脉冲,在时钟脉冲的作用下,CD4017十进制计数器开始计数,从10个输出端依次输出高电平,不断循环。10只发光二极管被依次点亮。

四、Multisim

1、打开软件,然后按照所给的元器件,找到相对应的原件后,并连接。

2、Multisim的截图如下:

3、实验现象:在按下开关后,10盏灯以此快速循环点亮,最后速度越来越慢,随机停止在某一个灯处。

4、实物图

五、实验感悟

这算是第二次做课程设计了,原本以为会比较轻松的任务却让我觉得有点措手不及。虽然困难重重,但是在遇到的各种问题中,我学会的耐心,也学会了坚持,也学会了以前掌握不太牢固的数电和模电知识收获颇丰。

原本我是想做一个魔幻灯,可以随着音乐跳动的流水灯,原本以为很简单,所以制作时,并没多放在心上,一些粗心大意使我不得不接受现实,焊板的好几个点都被我焊坏了,即便我最后很努力的抢修也无济于事,不由的我的心也紧张了起来。我只好换课题,做了一个与之稍微相似,却简单点的幸运大转盘,并为之做了相应的Multisim仿真。不过在后来的实验过程中,还是遇到了很多意想不到的问题。

这次的电路板焊接并没出现什么问题,只是后来的仿真却又再次的让人措手不及。我照着所给的电路图连线,结果不能得到所预期的效果,然后找身边的人各种咨询后才知道,有一个电容应该调试,在攻破了这个难关后,我的Multisim成功的运行了。这让我也颇有成就感。

    细节决定成败。以前感触不深,没有注意太多的细节,总是抱着差不多就行或者放纵自己的心态来面对学习和生活中的问题。但是我现在明白了,这是不对的。对于科学我们就应该保持严谨态度。做事不能轻言放弃,虽然过程不顺利,但是只要我们能坚持,朝自己既定的目标前进,就一定会走到终点。一点小小的挫折实际上是在为美景做铺垫,当我们守得云开见月明的时候,就会发现沿途的曲折实际上是在考验我们对目标是否坚定。坚持下来,我们会收获丰硕的果实。

电子创新设计,不仅让我的知识掌握的 更牢固,还让我意识到了我们所学的知识可以跟现实生活紧密的联系起来。这让我对自己有了更多的信心,因为我们在大学里面不是混日子,而是在学习真正对我们生活有帮助的知识能力。我会更加珍惜现在这么好的学习环境,努力学习知识,让自己在激烈的社会竞争中立足,也把自己学到的知识运用到生活实际来回报社会。

六、参考文献

[1] 李学龙. 使用单片机控制的智能遥控电风扇控制器[J]. 电子电路制作, 2003,9:13~15.

[2] 蓝厚荣. 单片机的PWM控制技术[J]. 工业控制计算机, 2010,23(3):97~98

[3] 郭天祥. 新概念51单片机C语言教程[M]. 北京:电子工业出版社.2009.342~344

[4] 胡汉才. 单片机原理及其接口技术(第2版)[M]. 北京:清华大学出版社.2004.49~77.

[5] 胡全. 51单片机的数码管动态显示技术[J] . 信息技术,2009,13:25~26

 

第二篇:电子技术课程设计报告(1)(1)(1)

电子技术课程设计报告

电子技术课程设计报告111

题 目: 函数信号发生器

作 者: 罗涌新 黄漫辉 单 位: 揭阳职业技术学院

专 业: 机电系电子信息工程技术091班 指导老师: 钱德明

二○一一年六月八日

1

目 录

一、摘 要............................................................................................................. 3

二、设计要求........................................................................................................ 4

1..................................................................................................................... 4

三、硬件设计........................................................................................................ 4

3.1、电路设计............................................................................................... 4

四、软件设计........................................................................................................ 5

4.1主程序流程图.......................................................................................... 5

4.2电路原理图.............................................................................................. 7

五、电路的调设

六、实验总结........................................................................................................ 7

七、附录................................................................................................................ 8

1、函数信号发生器的程序:...................................................................... 8

2、proteus仿真电路图 ............................................................................... 15

2

一、摘 要

函数信号发生器是一种在科研和生产中经常用到的基本波形发生器,随着大规模集成电路的迅速发展,很多功能信号发生器已被制作成专用集成电路,

如用AT89C51单片机还做波形发生器,可以产生精度较高的方波、正弦波、三角波、锯齿波等多种信号。也可以采用其他的芯片如5G8038或者ICL8038单片机函数信号发生器。我们采用的是AT89C51,电路也可以通过调节外接电阻和电容的参数值进行调节,为快速准确地实现函数信号发生器提供了极大方

3

二、设计要求

1. 具有产生正弦波、方波、三角波及锯齿波四种周期性的波形。

用键盘输入编辑生成上述四种波形(同周期)的线性组合波形,以及由基波及其谐波( 5次以下)线性组合的波形。

2. 具有波形存储功能。

输出波形的频率为100Hz~20KHz(非正弦波频率按10次谐波计算):重复频率可调,频 率步进间隔≤100Hz。

输出波形幅度范围0~5V(峰-峰值),可按步进0.1V(峰-峰值)调整。

具有显示输出波形的类型、重复频率(周期)和幅度的功能

三、硬件设计

3.1

电子技术课程设计报告111

低频信号发生器系统框图

低频信号发生器系统主要由CPU、D/A转换电路、基准电压电路、电流/电压转换电路、按键和波形指示电路、电源等电路组成。

其工作原理为当分别每按下按键一次就会分别出现方波、锯齿波、三角波、正弦波,并且有数码管会指示是那种波形序号,另外,发光二极管发光说明系统处于工作状态。

4

四、软件设计

软件设计上,根据功能分了几个模块编程。模块主要有:主程序模块、方波模块、三角波模块、锯齿波模块、正弦波模块、延时子程序模块等。

显示波形模块是利用DAC0832的8位特点,把波形的数据以8位数据的形势送进CPU中,只要一按键就能显示波形。

4.1主程序流程图

5

本软件设计过程中主要实现利用按键来控制不同波形的输出,当按键KEY1按下1次时,函数发生器就输出方波;当按键KEY1按下2次时,函数发生器就输出三角波;当按键KEY1按下3次时,函数发生器就输出锯齿波;当按键KEY1按下4次时,函数发生器就输出正弦波。通过按键可以以任意循环方式输出不同波形,数码管上显示的数字分别对应相应的波形。按键KEY2按下时复位。

6

电子技术课程设计报告111

4.2电路原理图

电子技术课程设计报告111

五、电路的调试

采用分别调试各个单元模块,调通后再进行各单元电路联机统调的方法,提高调试效 率。

(1)软件部分调试

本机的软件主要功能是完成人机接口,因此编程的时候把界面的友好性放在首位,

采用主从菜单式的操作方法。由于对51系列单片机编程比较熟悉,在软件的仿真调试过 程中没有遇到太大的问题。各软件功能均正常实现。

(2)硬件部分调试

整个硬件调试过程基本顺利,由于采用了工艺精良的双面孔化PCB板,各单元电路工作稳 定,给调试工作带来很大的方便。

六、实验总结

通过这次实验我们学会了很多东西,既巩固了现有的知识,自己对发生器的工作原理也有了进一步的了解。通过本次波形发生器的设计,装配,调试;了解了它在实际生活中的运用和功能。

7

七、附录

1、函数信号发生器的程序:

/************************************************************************* ////程序名称:波形发生器////

////设计时间:2008.8.3////

////设计人:祁瑞红////

**************************************************************************/ #include <AT89X51.H>

//#include <INTRINS.H> /////nop的头文件//////

//#include <absacc.h>

////共阴数码管的表///

unsigned char code

table[]={0xc0,0xf9,0xa4,0xb0,0x99};//0x00,0x12,0x4f,0x5b,0x72};

// 1 2 3 4

unsigned char code stable[]={

80, 81, 83, 84, 86, 87, 89, 90, 92, 93, 95, 96, 97, 99, 100, 102, 103, 104,

106, 107, 108, 110, 111, 112, 113, 115, 116, 117, 118, 119, 120, 121, 123, 124, 125, 126,

126, 127, 128, 129, 130, 131, 132, 132, 133, 134, 134, 135, 135, 136, 137, 137, 137, 138,

138, 139, 139, 139, 139, 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 139, 139,

139, 138, 138, 138, 137, 137, 136, 136, 135, 135, 134, 133, 133, 132, 131, 131, 130, 129,

128, 127, 126, 125, 124, 123, 122, 121, 120, 119, 118, 117, 115, 114, 113, 112, 111, 109,

108, 107, 105, 104, 103, 101, 100, 98, 97, 96, 94, 93, 91, 90, 88, 87, 85, 84,

83, 81, 80, 78, 77, 75, 74, 72, 71, 69, 68, 66, 65, 64, 62, 61, 59, 58,

57, 55, 54, 53, 51, 50, 49, 47, 46, 45, 44, 43, 42, 40, 39, 38, 37, 36,

35, 34, 33, 32, 31, 31, 30, 29, 28, 28, 27, 26, 26, 25, 24, 24, 23, 23,

22, 22, 22, 21, 21, 21, 21, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 21,

21, 21, 21, 22, 22, 22, 23, 23, 24, 24, 25,

8

25, 26, 27, 27, 28, 29, 30,

31, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40,

41, 43, 44, 45, 46, 47, 49,

50, 51, 52, 54, 55, 56, 58, 59, 61, 62, 63,

65, 66, 68, 69, 71, 72, 73,

75, 76, 78, 79

};

unsigned char time1; //////延时函数参数///////

/////////////////////////////变量说明////////////////////////////////////// unsigned char time2;

unsigned char time3;

unsigned char count;

////////////////////////////////////////函数说明

////////////////////////////////

void initial(void); ////初始化函数

////

//void initial_time0(void); //////定时器

0初始化///////

void anjian(void); ////////////按

键函数////

void delay(unsigned char time1,time2,time3); ////延时函数////

void disp(unsigned char count); /////静态显示子函

数/////

void fangbo(void); //方波函数//

void sanjiaobo(void); //三角波函数//

void juchibo(void); //锯齿波函数//

void zhengxianbo(void); //正弦波函数//

void main (void)

{

initial();

while(1)

{

anjian();

9

}

}

/************************************************************************* //函数名称:void anjian(void)

//函数说明:按键函数

//函数功能:

// 注意:

*************************************************************************/ void anjian(void)

{

if(P3_7==0)

{delay(1,50,248);

if(P3_7==0)

{count=1;

disp(count);

fangbo();

}

}

while(P3_7==0)

{ count+=1;

if(count>4)

count=0; }

disp(count);

//anjian();

}

/************************************************************************* //函数名称:void fangbo(void)

//函数说明:方波函数

//函数功能:

// 注意:

*************************************************************************/

void fangbo(void)//while(1)是个死循环看执行一次多长时间*128求算频率,一个周期大约3ms多,这个频率为300hz左右

{

while(1)

{

unsigned char fangbo_1;

fangbo_1++;

if(fangbo_1>128&fangbo_1<256) {P2=0x00;}

if(fangbo_1<128) {P2=0xff;}

10

if(P3_7==0)

{delay(1,50,248);

if(P3_7==0)

{ count=2;

disp(count);

sanjiaobo();

}

}

while(P3_7==0);

}

}

/************************************************************************* //函数名称:void sanjiaobo(void)

//函数说明:三角波函数

//函数功能:

// 注意:

*************************************************************************/ void sanjiaobo(void)

{

while(1)

{

unsigned char sanjiaobo_2;

if(sanjiaobo_2<128) {P2=sanjiaobo_2;}

else {P2=255-sanjiaobo_2;}

sanjiaobo_2++;

if(sanjiaobo_2>=255) {sanjiaobo_2=0x00;}

if(P3_7==0)

{

delay(1,50,248);

if(P3_7==0)

{count=3;

disp(count);

juchibo();

}

}

while(P3_7==0);

}

}

11

/************************************************************************* //函数名称:void juchibo(void)

//函数说明:锯齿波函数

//函数功能:

// 注意:

*************************************************************************/ void juchibo(void)

{

while(1)

{

unsigned char juchibo_3;

if(juchibo_3<180) {P2=juchibo_3;}

juchibo_3++;

if(juchibo_3>=180) {juchibo_3=0x00;}

if(P3_7==0)

{delay(1,50,248);

if(P3_7==0)

{count=4;

disp(count);

zhengxianbo();

}

}

while(P3_7==0);

}

}

/************************************************************************* //函数名称:void zhengxianbo(void)

//函数说明:正弦波函数

//函数功能:

// 注意:

*************************************************************************/ void zhengxianbo(void)

{

while(1)

{

unsigned char zhengxianbo_4;

P2=stable[zhengxianbo_4];

zhengxianbo_4++;

if(zhengxianbo_4>=255) {zhengxianbo_4=0;}

if(P3_7==0)

{delay(1,50,248);

if(P3_7==0)

12

{ count=0;

disp(count);

anjian();

}

}

while(P3_7==0);

}

}

/************************************************************************* //函数名称:void initial(void)

//函数说明:初始化函数

//函数功能:

// 注意:

*************************************************************************/ void initial(void)

{

P0=0xff;

P1=0xff;

P2=0xff;

P3=0xff;

}

/************************************************************************* //函数名称:delay(unsigned char time1,time2,time3)

//函数说明:延时函数

//函数功能:

//入口参数:unsigned char time1,time2,time3

//出口参数:

// 注意:延时时间的计算:(time1*time2*time3*8us)us

time1,time2,time3可以不进行变量说明

*************************************************************************/

void delay(unsigned char time1,time2,time3)

{

unsigned char i,j,k;

for(i=time1;i>0;i--)

{ for(j=time2;j>0;j--)

{

for(k=time3;k>0;k--);

}

}

}

/*************************************************************************

13

//函数名称:disp(unsigned char count)

//函数说明:静态显示子函数

//函数功能:

//入口参数:unsigned char count

//出口参数:

// 注意:

*************************************************************************/ void disp(unsigned char count)

{

P0=table[count];

delay(1,5,248);

}

/************************************************************************* //函数名称:void initial_time(void)

//函数说明:定时器初始化

//函数功能:

//注 意:

*************************************************************************/ /*

void initial_time0(void)

{

unsigued char th,tl;

TMOD=0x01; //设置为定时器0方式1//

th=(65536-50000)/256; //给定时器0赋初值//

tl=(65536-50000)%256;

TH0=th;

TL0=tl;

TR0=1; //开启定时器0//

ET0=1; //开启定时器0溢出中断//

EA=1; //开启中断总开关//

}

*/

/************************************************************************* //函数名称:void void T0(void)interrupt 1 using 0(void)

//函数说明:定时t0的中断函数

//函数功能:

//注 意:

*************************************************************************/ /*

void t0 (void)interrupt 1 using 1

{ TR0=0;

14

TH0=th;

TL0=tl;

TR0=1;

}

*/

2、proteus仿真电路图

电子技术课程设计报告111

15

相关推荐