东南大学MSP实验报告第三四次解析Word格式文档下载.docx

上传人:b****1 文档编号:14511580 上传时间:2022-10-23 格式:DOCX 页数:18 大小:1.72MB
下载 相关 举报
东南大学MSP实验报告第三四次解析Word格式文档下载.docx_第1页
第1页 / 共18页
东南大学MSP实验报告第三四次解析Word格式文档下载.docx_第2页
第2页 / 共18页
东南大学MSP实验报告第三四次解析Word格式文档下载.docx_第3页
第3页 / 共18页
东南大学MSP实验报告第三四次解析Word格式文档下载.docx_第4页
第4页 / 共18页
东南大学MSP实验报告第三四次解析Word格式文档下载.docx_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

东南大学MSP实验报告第三四次解析Word格式文档下载.docx

《东南大学MSP实验报告第三四次解析Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《东南大学MSP实验报告第三四次解析Word格式文档下载.docx(18页珍藏版)》请在冰豆网上搜索。

东南大学MSP实验报告第三四次解析Word格式文档下载.docx

(2)认识学习PWM波形的作用及原理。

2)实验要求

编写程序输出1s周期的PWM波形,产生两路PWM波形从引脚P1.2和P1.3分别输出。

CCR0中的值定义了PWM信号的周期,CCR1,CCR2中的值定义了PWM信号的占空比。

定时使用32.768KHz的ACLK作为输入时钟源,P1.2上的占空比为75%,P1.3上的占空比为25%。

二、实验原理

1)Timer_A定时器模块框图如图3-1所示。

由图3-1可知,Timer_A模块可以有三种时钟源输入。

分别是ACLK,SMCLK,TAxCLK。

时钟源的选择通过TASSEL信号来完成。

被选择的时钟源可以直接送给TIMER模块,或者通过ID信号进行2,4,8分频。

选择的时钟信号还可以通过TAIDEX信号进一步做2,3,4,5,6,7或者8分频。

当TACLK信号被设置的时候,TIMER的时钟分频逻辑被复位。

图3-1Timer_A模块框图

2)TimerA控制寄存器TA0CTL详细定义如图3-2所示。

图3-2TimerA控制寄存器TA0CTL

3)定时器中断的中断向量中包含一个独立中断和若干个共源中断,Timer_A模块的中断分类如图3-3所示。

图3-3Timer_A模块的中断向量分类图

1)独立中断源的中断处理

TA0CCTL0=CCIE;

//CCR0中断使能

#pargmavector=TIMER0_A0_VECTOR//中断向量定义,可查询头文件得到

__interruptvoidTIMER0_A0_ISR(void)

{

//添加中断处理代码

}

2)共源中断向量寄存器TAxIV

图3-4共源中断向量寄存器TAxIV

共源中断程序switch处理方式:

#pragmavector=TIMER0_A0_VECTOR//共源中断入口

switch(__even_in_range(TA0IV,14))//共源中断处理

{

case0:

fun_no();

break;

//Nointerrupt

case2:

fun_CCR1();

//CCR1interrupt

case4:

fun_CCR2();

//CCR2interrupt

case6:

fun_CCR3();

//CCR3interrupt

case8:

fun_CCR4();

//CCR4interrupt

case10:

fun_CCR5();

//CCR5interrupt

case12:

fun_CCR6();

//CCR6interrupt

case14:

fun_overflow();

//overflow

default:

fun_default();

//default

}

3)PWM原理PWM技术的三个要素,具体如图3-5所示,PWM频率计算见图3-6。

(1)Frequency时钟频率

(2)Dutycycle占空比

(3)Amplitude信号幅度

图3-5PWM计数三要素示意图

图3-6PWM频率计算示意图

4)实验箱I/O硬件电路如图3-7所示。

图3-7实验箱I/O口P1的硬件电路图

三、实验方案与实验步骤

四、实验设备与器材配置

MSP430F6638,数据线,电脑。

五、实验记录

设置p1.2和p1.3为输出,并且把这两个端口接上示波器观察现象。

P1.2端口输出的是占空比为75%的PWM波形.

P1.3端口输出的是占空比为25%的PWM波形。

六、实验总结

本次试验我学会了利用定时器timerA输出pwm的波形,主要的工作就是设置寄存器计数值。

通过更改控制寄存器能够使用不同的模块,这对今后的程序设计是很重要的启发

七、思考题或讨论题

(1)430时钟系统产生的ACLK、MCLK和SMCLK各自用于什么场合?

系统复位时三种时钟输出的默认值为多少?

ACLK为低速时钟,主要为片内一些低速设备提供低速时钟。

MCLK一般为CPU提供运行时钟,但是也可以用于其他高速模块(如定时器和数模转换模块)。

SMCLK为高速时钟,主要为片内一些高速外设提供高速时钟。

(2)MSP430F6638有哪些定时器模块?

其中Timer_A0有多少捕获/比较器?

三个Timer_A,一个Timer_B。

Timer_A0有5个捕获/比较器。

(3)定时器有哪几种工作模式?

各种工作模式的特点和定时周期如何计算?

其最大定时周期分别是多少?

1)4种,通过设定MC1,MC2实现。

00:

停止模式:

定时器停止

01:

增计数模式:

定时器重复从0计数到TAxCCR0

10:

连续计数模式:

定时器重复从0计数到0FFFFh

11:

增\减计数模式:

定时器重复从0计数到TAxCCR0,再减计算到0

2)特点如上。

定时周期取决于所选择的时钟,周期为计数最大值除以时钟频率。

最大定时周期:

(TAxCCR0+1)/时钟源。

连续奇数:

10000h/时钟源

增减计数:

(2*TAxCCR0+1)/时钟源

 

(4)PWM控制技术主要运用在哪些场合?

如何根据指定的PWM定时周期和占空比来计算计数周期?

电机驱动控制转速。

定时周期乘以占空比。

八、附上源代码

#include<

msp430f6638.h>

voidmain(void)

WDTCTL=WDTPW+WDTHOLD;

//关闭看门狗

UCSCTL6&

=~XCAP_3;

//配置内接电容值

TA0CCR0=512-1;

//PWM周期

TA0CCTL1=OUTMOD_7;

//复位/置位输出方式

TA0CCR1=384;

//占空比384/512=75%

TA0CCTL2=OUTMOD_7;

TA0CCR2=128;

//占空比128/512=25%

P1DIR|=BIT2+BIT3;

//P1.2和P1.3输出

P1SEL|=BIT2+BIT3;

//P1.2和P1.3设置为第二功能:

TA0.1和TA0.2

TA0CTL|=TASSEL_1+MC_1;

//ACLK,Timer_A增计数模式

for(;

;

{

_BIS_SR(LPM3_bits);

//进入LPM3

_NOP();

}

第4次实验

实验四:

LED数码管的使用

1)实验目的

(1)了解TM1638芯片工作原理与使用方法;

(2)掌握LED数码管的动态显示控制。

2)实验要求

通过MSP430F6638端口控制TM1638芯片以实现LED数码管显示,例如用数码管显示自己八位学号。

(1)TM1638控制芯片

TM1638是带键盘扫描接口的LED驱动控制专用电路,内部集成有MCU数字接口、数据锁存器、LED高压驱动、键盘扫描等电路。

主要应用于冰箱、空调、家庭影院等产品的高段位显示屏驱动。

TM1638原理图如4-1所示,其中SEG_DIO,SEG_CLK,SEG_STB与MSP430芯片中P3.5,P3.4,P3.2三个IO口相连,仅占用3个端口即可完成数据的输入输出,大大节约单片机的IO口和开发板的空间,降低了布线的难度。

TM1638与MSP430实验箱连接示意图如图4-1所示,实验开发板LED数码管对应关系见图4-2。

图4-1MSP430与TM1638连接示意图

图4-2实验开发板LED数码管对应关系图

TM1638的各引脚定义如图4-3所示。

图4-3TM1638各引脚定义

(2)TM1638接收数据

串行数据传输格式:

读取和接收1个BIT都在时钟的上升沿操作。

数据接收(写数据)时序如图4-4所示。

图4-4TM1638数据接收时序图

以下写数据代码仅作为参考。

(更多关于TM1638的程序请参考给出的TM1638.h和TM1638.c两个文件以及芯片说明书)

voidTM1638_Write(unsignedcharDATA)//写数据函数

unsignedchari;

DIO_OUT;

//将DIO配置为输出状态

for(i=0;

i<

8;

i++)

{

CLK_low;

if(DATA&

0x01)

{

DIO_high;

else

DIO_low;

CLK_high;

DATA>

>

=1;

//数据左移一位

(3)LED数码管显示

图4-5共阴极数码管连接图

图4-5给出一个共阴数码管的连接示意图,如果让该数码管显示“0”,那你需要在GRID1为低电平的时候让SEG1,SEG2,SEG3,SEG4,SEG5,SEG6为高电平,SEG7为低电平,即在00H地址单元里面写数据3FH就可以让数码管显示“0”。

共阴极LED数码管编码如表4-1所示。

表4-1共阴极LED数码管编码表

1

2

3

4

5

6

7

8

9

A

B

C

D

E

F

3F

06

5B

4F

66

6D

7D

07

7F

6F

77

7C

39

5E

79

71

(4)开发板上LED地址

开发板共有8个LED数码管,从左至右其地址分别为:

08h,0ah,0ch,0eh,00h,02h,04h,06h。

例如:

constuint8_tDisp[8]={0,8,0,1,2,1,4,0};

//要显示的学号

constuint8_tNum[16]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F,0x77,0x7C,0x39,0x5E,0x79,0x71};

//段码

constuint8_tAddr[8]={08h,0ah,0ch,0eh,0

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

当前位置:首页 > IT计算机 > 计算机软件及应用

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1