基于msp430g2553单片机简易波形发生器.docx

上传人:b****3 文档编号:5522502 上传时间:2023-05-08 格式:DOCX 页数:14 大小:149.93KB
下载 相关 举报
基于msp430g2553单片机简易波形发生器.docx_第1页
第1页 / 共14页
基于msp430g2553单片机简易波形发生器.docx_第2页
第2页 / 共14页
基于msp430g2553单片机简易波形发生器.docx_第3页
第3页 / 共14页
基于msp430g2553单片机简易波形发生器.docx_第4页
第4页 / 共14页
基于msp430g2553单片机简易波形发生器.docx_第5页
第5页 / 共14页
基于msp430g2553单片机简易波形发生器.docx_第6页
第6页 / 共14页
基于msp430g2553单片机简易波形发生器.docx_第7页
第7页 / 共14页
基于msp430g2553单片机简易波形发生器.docx_第8页
第8页 / 共14页
基于msp430g2553单片机简易波形发生器.docx_第9页
第9页 / 共14页
基于msp430g2553单片机简易波形发生器.docx_第10页
第10页 / 共14页
基于msp430g2553单片机简易波形发生器.docx_第11页
第11页 / 共14页
基于msp430g2553单片机简易波形发生器.docx_第12页
第12页 / 共14页
基于msp430g2553单片机简易波形发生器.docx_第13页
第13页 / 共14页
基于msp430g2553单片机简易波形发生器.docx_第14页
第14页 / 共14页
亲,该文档总共14页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

基于msp430g2553单片机简易波形发生器.docx

《基于msp430g2553单片机简易波形发生器.docx》由会员分享,可在线阅读,更多相关《基于msp430g2553单片机简易波形发生器.docx(14页珍藏版)》请在冰点文库上搜索。

基于msp430g2553单片机简易波形发生器.docx

基于msp430g2553单片机简易波形发生器

桂林理工大学博文管理学院

实习报告

实习名称:

电子设计与应用实践

专业班级:

电信11-1

学生姓名:

谢栋树学号:

81111126

指导老师:

朱昌洪

实习时间:

2014年05月04日至2014年05月23日

基于MSP430G2553的简易波形发生器

一、引言

波形函数发生器是一种常用的信号源,广泛地应用于电子电路、自动控制系统和教学实验等领域。

本函数发生器采用msp430g2553单片机作为控制核心,外围采用数字/模拟转换电路(DAC0832)、运放电路(TL082)、按键和LCD显示电路等。

此电路设计清晰,出现故障容易查找错误,操作简单方便。

电路采用msp430g2553单片机与一片DAC0832数模转换器组成低频信号发生器。

通过按键控制可分别控制选择输出的幅值和频率,同时用LCD12864显示器显示频率。

所产生的波形幅值范围为0到5V;本系统设计简单、性能优良,具有一定的实用性。

二、课题设计

1.基本原理

在信号产生和处理方面。

通过MSP430G2553内部的TA定时器,外加DAC0832产生四种波形,在DA输出后,通过一个由运算放大器TL082和精密可调电位器组成的运算放大电路,以实现信号的增益控制。

最后在负载电阻上输出电压。

2.原理框图

3.

(1)系统总体框图

长按时间大于1s短按时间大于10ms

(2)按键功能说明

3.硬件电路原理图

12864显示模块

按键模块

图(3)硬件模块框图

(1)显示模块

本作品使用LCD12864作为人机交互模块,由于MSP430G2553的I/O口

很少,所以通过对LCD的进行串行数据输入,以节约I/O口。

(2)DAC0832转换与幅度放大模块

由于是通过MSP430G2553输出数字量的信号来产生波形,因此需要用到

DA将数字量转换为模拟量。

考虑到单片机的I/O口数量,选用8位的DA来进行数模转换。

硬件如图(4)所示,DAC0832采用直通工作方式,节省I/O口控制引脚。

由DAC输出模拟量后,由于波形的幅值太小,因此还需要进行幅值的放大。

其中R3是精密可调电位器,方便用户对信号的幅度进行调节。

50Q的电阻可以

保证整个信号发生器的输出阻抗为50Qo

图(5)DAC0832转换、波形选择按键与幅度放大模块

(3)电源模块

产生电路。

另外还有常用的电源指示灯和电源开关

 

图(6)电源模块

(4)msp430g2553单片机最小系统

MSP430G2553是20个引脚的16位单片机。

具有内置的16位定时器、16k的FLASH和512B的RAM,以及一个通用型模拟比较器以及采用通用串行通信接

口的内置通信能力。

此外还具有一个10位的模数(A/D)转换器。

5.调试过程

整个硬件调试过程基本顺利,由于采用了分单元模块制作,各单元电路工作稳定,给调试工作带来很大的方便。

放大模块部分在实物模拟时,出现发送信号不稳定、跳变的问题。

经过仔细检查电路线路路径和连线问题,最终发现PCB板子上某些连线存在断路的问题,于是用焊锡焊好,从而得以解决。

调试过程中,由于某些元器件参数的问题,在频率要求上没有达到预期效果,

各单元调试通过以后,进行整机调试,调试结果显示,整个系统能够正常工作

三、编程程序

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

//LCD12864初始化

voidLCD_init(void)

{

write_cmd(0x30);

write_cmd(0x0C);

write_cmd(0x01);

write_cmd(0x02);

}

voidIO_init(void)

{

P1DIR=0xff;

P1REN=0x00;

P1SEL=0X00;

P1OUT=0x00;

P2SEL&=~(BIT4+BIT3+BIT5);

P2DIR=BIT4+BIT3+BIT5;

/*P2DIR|=BIT0;//DAC单缓冲模式

P2SEL&=~BIT0;

P2REN&=~BIT0;

//输入

//用于按键接地型

//允许中断

//下升沿触发

//消除中断标志

P2OUT|=BIT0;//关闭dac输入*/

P2DIR&=~(BIT0+BIT1+BIT2);

P2REN|=BIT0+BIT1+BIT2;

P2IE|=BIT0+BIT1+BIT2;

P2IES|=BIT0+BIT1+BIT2;

P2IFG&=~(BIT0+BIT1+BIT2);

voiddisplay(void)

{

lcd_pos(1,0);

for(i=0;i<16;i++)

{

write_dat(aa[i]);

}

lcd_pos(2,0);

for(i=0;i<16;i++)

{write_dat(bb[i]);

}

lcd_pos(3,0);

for(i=0;i<10;i++)

{

write_dat(cc[i]);

}

lcd_pos(4,0);

for(i=0;i<16;i++)

{

write_dat(dd[i]);

}

}

voidDCO_init(void)

{

BCSCTL1=CALBC1_16MHZ;//设定cpu时钟DCO频率为16MHz

DCOCTL=CALDCO_16MHZ;

//BCSCTL2|=SELM_1+DIVM_0;//SMCLK选择16MHz,不分频

//BCSCTL2&=~SELS;

}

voidTimer_A0_init(void)

{

TA0CTL|=TASSEL_2+MC_2;//TA时钟源选择SMCLK,连续增计数模式TA0CCR0=158;

TA0CCTL0|=CCIE;//打开比较模块0中断

_EINT();

}

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

//定时器中断服务程序

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

#pragmavector=TIMER0_A0_VECTOR

__interruptvoidTimer_A0(void)//CCIFG中断被响应后,该标志位自动清零

{

if(key==222)

{

if(j<200)

{

P1OUT=sindata[j];//正弦波产生

j++;

}

else

j=0;TA0CCR0+=Tccr0;

}if(key==221)

{if(tcout<200)

{P1OUT=tcout;//锯齿波产生tcout++;

}

else

tcout=0;

TA0CCR0+=Tccr0;

}if(key==220){

if(ttcout==0)

{if(tcoutm<100){

P1OUT=tcoutm;//三角波产生上升段tcoutm++;

}

else

ttcout=1;

TA0CCR0+=(Tccr0-1);

}if(ttcout==1){if(tcoutm>0){

P1OUT=tcoutm;//三角波产生下降段tcoutm--;

}

else

ttcout=0;

TA0CCR0+=(Tccr0-1);

}

}

四、结论

这次课程设计我组的设计任务是波形发生器的设计,我们采用msp430g2553单片机和DAC0832芯片以及放大器完成电路的设计,用开关来控制各种波形的发生及转换,用单片机输出后,经过模数转换器生成波形,最终可以通过示波器观察。

在这次课程设计中利用单片机做出低频信号发生器.在做的过程中,我提前学习了单片机原理这门课程,在老师和同学的帮助下,对单片机的认识有了进一步的认识和使用.在学习单片机的时候,首先要理解清楚其工作原理和工作时序,那样的话才能对所要求电路进行编程.还有就是在做设计的时候要认真一点,那点错了要换个思维方式在做,找到错误的知识点,在看书或者问老师来解决.而在软件设计过程中,主要运用的是c语言来进行编程,这让我更深入的了解了波形是如何编程的,也让我对IAR和DXP软件有了更深入的了解。

通过这次的计算机控制技术课程设计,我对微机和单片机的一些芯片有了一定的了解,让我又一次温习了这学期的微机原理和汇编语言等知识,也让我的动手能力有了很大的提高。

五、参考文献

[1]朱定华,马爱梅,林卫.微机应用系统设计[M].武汉:

华中科技大学出版社

[2]顾德英,张健,马淑华.计算机控制技术[M].北京:

北京邮电大学出版社

[3]夏扬.计算机控制技术[M].北京:

机械工业出版社

[4]张洪润,易涛编著.单片机应用技术教程[M].北京:

清华大学出版社

[5]刘乐善,欧阳星明,刘学清.微型计算机接口技术及应用[M]武汉:

华中科技

大学出版社

⑹朱定华,戴汝平,单片微机原理与应用[M].北京:

北京交通大学出版社,清

华大学出版社

六、附录

附录

(一):

电路原理图

 

 

 

附录

(二):

电路PCB图

cirx

己IIUUU

6>J*[|WKM)xCFi008000*0001上

 

 

53

UJ

JI

n_n

P5

h右彷Odd右©Od穴0白°邑?

 

 

附录(三)

元件清单

名称

编号

型号

数量(个)

电容

C1、C2、C3

105

3

电容

C4、C5、C6

104

3

电容

C7、C8、

16v-100uf

2

电容

C9、C10

25v-10uf

2

电容

C11

16v-220uf

1

电阻

R1

331

1

电阻

R2、R3、R4

200

3

电阻

R6、R7、R8

2K

3

电阻

R9

50

1

电阻

R10、R11、R12

47K

3

电阻

R13、R14、R15

470

3

电位器

R16、R17、R18

10K

3

LED

D1、D2、D3、

D4

红色

4

开关

S1

1

按键开关

S2、S3、S4、S5、

S6、S7

6

H-RLJL心片

U1

ILC7660

1

H-RLJL心片

U2

LM1117

1

H-RLJL心片

U3

LM358

2

H-RLJL心片

U4

DAC0832

1

H-RLJL心片

U5

MSP430G2553

1

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > IT计算机 > 电脑基础知识

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2