南理工 王宏波 MSP430F6638单片机实验报告

合集下载

南理工王宏波MSP430F6638单片机实验报告

南理工王宏波MSP430F6638单片机实验报告

MSP430单片机应用技术实验报告学号:XXXXXXXX姓名:XXX分组:第X组同组同学1姓名:XXX同组同学2姓名:XXX南京理工大学2016年12月08日实验1一、实验题目:UCS实验二、实验目的设置DCO FLL reference =ACLK=LFXT1 = 32768Hz, MCLK = SMCLK = 8MHz,输出ACLK、SMCLK,用示波器观察并拍照。

UCS初始状态:XT1关闭,默认为LFXT1,ACLK选择XT1源(时钟错误时自动切换至),MCLK、SMCLK选择DCOCLKDIV源。

FLL参考时钟源为XT1CLK,DCOCLK/DCOCLKDIV =2,N=32。

因此程序需要进行的操作有,启动LFXT1,待XT1稳定工作后,设置锁频环将XT1分频为8MHz的DCOCLKDIV作为MCLK和SMCLK的时钟源,并分别通过P1.0和P3.4输出。

三、实验仪器和设备计算机、开发板、示波器、信号源、电源、Code Comeposer Studio v5四、实验步骤1、用电缆连接开发板USB2口和电脑USB口,打开电源开关SW1,电源指示灯D5点亮;2、运行CCSV5;3、新建工作空间workspace;4、新建工程project与源文件main.c;5、编写程序;6、编译、调试、下载程序到单片机;7、观察、分析、保存运行结果。

五、实验程序六、实验结果一、实验题目:FLL+应用实验二、实验目的检测P1.4 输入,遇上升沿进端口中断,在中断服务程序内翻转P4.1 状态。

三、实验仪器和设备计算机、开发板、示波器、信号源、电源、Code Comeposer Studio v5四、实验步骤1、用电缆连接开发板USB2口和电脑USB口,打开电源开关SW1,电源指示灯D5点亮;2、运行CCSV5;3、新建工作空间workspace;4、新建工程project与源文件main.C;5、编写程序;6、编译、调试、下载程序到单片机;7、观察、分析、保存运行结果。

msp430实验报告

msp430实验报告

msp430实验报告msp430实验报告引言:msp430是一种低功耗、高性能的微控制器,被广泛应用于嵌入式系统和物联网设备中。

本实验报告将介绍我对msp430微控制器进行的一系列实验,包括实验目的、实验过程、实验结果以及对实验的总结和展望。

实验目的:本次实验的主要目的是熟悉msp430微控制器的基本功能和使用方法,以及学习如何进行简单的控制程序设计。

通过实验,我希望能够掌握msp430的基本操作和编程技巧,并且能够运用所学知识解决实际问题。

实验过程:在实验开始之前,我首先对msp430微控制器进行了一些基本的了解。

我了解到,msp430具有低功耗、高性能和丰富的外设接口等特点,可以满足各种嵌入式系统的需求。

接着,我根据实验指导书的要求,准备好实验所需的硬件设备和软件工具。

第一部分实验是关于GPIO口的实验。

我按照实验指导书上的步骤,将msp430与LED灯连接起来,并编写了一个简单的程序,实现了对LED灯的控制。

通过这个实验,我学会了如何配置GPIO口和编写简单的控制程序。

第二部分实验是关于定时器的实验。

我学习了如何配置msp430的定时器,并编写了一个简单的程序,实现了定时闪烁LED灯的功能。

通过这个实验,我深入了解了定时器的工作原理和编程方法。

第三部分实验是关于ADC的实验。

我学习了如何配置msp430的ADC模块,并编写了一个简单的程序,实现了对外部模拟信号的采样和转换。

通过这个实验,我了解了ADC的基本原理和使用方法。

实验结果:通过一系列实验,我成功地掌握了msp430微控制器的基本功能和使用方法。

我能够独立完成GPIO口的配置和控制、定时器的配置和编程、ADC的配置和采样等任务。

实验结果表明,msp430具有强大的功能和灵活的编程能力,可以满足各种嵌入式系统的需求。

总结和展望:通过本次实验,我对msp430微控制器有了更深入的了解,并且掌握了一些基本的操作和编程技巧。

然而,由于实验时间和条件的限制,我还没有完全发挥出msp430的潜力。

第六章 MSP430F6638开发实验系统

第六章 MSP430F6638开发实验系统

1、MSP430介绍
MSP430架构
1、MSP430介绍
特点总结
● 集成度: 可以在一个单芯片上可以实现一整套设计; ● 成本: 通常是低成本设备
● 时钟频率: 和其他设备(如微处理器和DSP)比起来,微控制 器(MCUs)采用更低的时钟频率:MCUs通常可以跑到100 MHz/100 MIPS (每秒百万条指令数)
● 功耗:低功耗 (电池供电); ● 位数:4位(老设备)到32位设备; ● 内存: 有限的可用内存,通常小于1M字节; ● 输入/输出(I/O):8到150个输出引脚
1、MSP430介绍
特点总结
●低功耗; ●低操作电压(从1.8V到3.6V);
● < 1 s的时钟启动时间;
● < 50 nA的端口漏电流; ●零功耗的掉电复位(BOR);
MSP430F6638平台硬件设计
版本管理
修改记录
版本号. V01 V02
作者
描述
修改日期 2012-11-4 2013-2-18
审核记录
版本号.
职务
签名
修改日期
轮廓
MSP430介绍 MSP430F6638介绍 FFTB全功能板卡硬件设计

1、MSP430介绍

什么是MSP430?
3、硬件设计
串行异步通讯设计(232&485&IrDA)
3、硬件设计
串行外设接口设计(LCD&SD&无线模块)
3、硬件设计
通讯串行IIC设计(数字温度传感器)
3、硬件设计

BP模块示例-步进电机与直流电机
3、硬件设计

BP模块示例-温湿度测量
3、硬件设计

MSP430单片机实验报告

MSP430单片机实验报告

MSP430单片机实验报告--段式LCD显示1.实验介绍:实验演示了将ADC结果用段式LCD显示,并且还原输入电压也采用段式LCD显示。

ADC的结果可以通过ADC12MEM0的值来显示。

当程序运行时,LCD屏幕采用10进制显示出ADC12MEM0的值。

2.实验目的:a.熟悉IAR5.0软件开发环境的使用b.了解MSP430段式LCD的工作方式c.掌握MSP430段式LCD的编程方法3.实验原理:驱动LCD需要在段电极和公共电极上施加交流电压。

若只在电极上施加直流电压,液晶本身发生劣化。

解决这个问题的一般方法是使用短时也就驱动器,如MSP430F4xx系列单片机就集成有段式液晶驱动。

如果要在没有液晶驱动器的情况下使用段式液晶显示器,就要用到如图1所示电路。

图1中,A为电极信号输入端,控制该段液晶是否被点亮;B为交流方波信号输入端,将有一个固定频率的方波信号从此端输入;com为公共背极信号。

工作原理为;固定的方波信号被直接加载到液晶公共背极,同时该信号通过一个异或门加载到液晶段极。

当A端为低电平时,液晶的段极与公共背极将得到一个同相、同频率、同幅度的方波信号,液晶的两端始终保持没有电压差;当A端为高电平时,液晶的段极也公共背极将得到一个反相、同幅度、同频率的方波信号,液晶两端将保持一个交流的电压差。

这样既能使液晶保持点亮状态,又不会发生劣化而损坏液晶显示器。

图一.段式液晶驱动电路4.实验步骤:(1)将PC 和板载仿真器通过USB 线相连;5.实验现象:段式LCD显示屏显示的数字为002031,ADC12MEM0的值为07EF,其值为16进制,将其转换后值为2031与屏幕显示一致。

6.关键代码分析:#include <msp430x26x.h>#include "General_File.h"#include "I2C_Define.h"void I2C_Start(void){DIR_OUT;SDA_1;I2C_Delay();SCL_1;I2C_Delay();SDA_0;I2C_Delay();SCL_0;}//End I2C_Start/*函数名:I2C_Stop 功能:遵循I2C总线协议定义的停止*/void I2C_Stop(void){DIR_OUT;SDA_0;I2C_Delay();SCL_1;I2C_Delay();SDA_1;}//End I2C_Stop/* 函数名:I2C_ReceiveACK 功能:待接受ACK 信号,完成一次操作*/void I2C_Write_ACK( void ){SDA_1;DIR_IN;SCL_1;I2C_Delay();while(SDA_IN );SCL_0;I2C_Delay();DIR_OUT;return;}//End I2C_ReceiveACK/* 函数名:2C_Read_Ack 功能:接受数据后发送一个ACK信号*/void I2C_Read_Ack(void){DIR_OUT;SCL_0;SDA_0;I2C_Delay();SCL_1;I2C_Delay();SCL_0;SDA_1;}//End I2C_Read_Ack/* 函数名:I2C_Read_NoAck 功能:最后接受数据后发送NoACK信号*/void I2C_Read_NoAck( void ){DIR_OUT;SCL_0;SDA_1;I2C_Delay();SCL_1;I2C_Delay();SCL_0;}//End I2C_Read_Ack/* 函数名:I2C_Receiveuchar 功能:接受一个字节的数据*/uchar I2C_Receiveuchar(void){uchar Read_Data = 0x00; //返回值uchar DataBit = 0x00; //每一个clk 接受到的数据SCL_0;I2C_Delay();SDA_1;DIR_IN;for( uchar i = 0;i < 8;i++ ){SCL_1;I2C_Delay();DataBit = SDA_IN;SCL_0;I2C_Delay();I2C_Delay();Read_Data = ( ( Read_Data << 1 ) | DataBit ); //将数据依次存入Read_Data }return( Read_Data );}//End I2C_Receiveuchar/* 函数名:I2C_Senduchar 功能:遵循I2C总线协议定义发送一字节数据*/void I2C_Senduchar( uchar Wr_Data ){DIR_OUT;SCL_0;SDA_1;for( uchar i = 0;i < 8;i++ ){if( Wr_Data & 0x80 ){SDA_1; //最高位是否为1,为1则SDA= 1 }else{SDA_0; //否则SDA=0}I2C_Delay();SCL_1;I2C_Delay();SCL_0;I2C_Delay();Wr_Data <<= 1; //数据左移一位,进入下一轮送数}SDA_1;return;}//End I2C_Senduchar/************ BU9796FS相关指令定义**********/#define Write_Com 0x80#define Write_Data 0x00#define Display_ON 0x48#define Half_Bias 0x44#define Set_Reset 0x6A#define Ext_Clock 0x69#define Blink_Mode0 0x70#define Blink_Mode1 0x71#define Blink_Mode2 0x72#define Blink_Mode3 0x73#define Pixel_ON 0x7E#define Pixel_OFF 0x7D#define BU9796_Addr 0x7C#define Base_Add 0x00/************** 引用的外部函数*********************/extern void I2C_Start(void);extern void I2C_Stop(void);extern void I2C_Write_ACK(void);extern void I2C_Senduchar( uchar Wr_Data );/************** 定义段式LCD的阿拉伯数字码*********************/const uchar Num_Code[] ={0xAF, // 00x06, // 10x6D, // 20x4F, // 30xC6, // 40xCB, // 50xEB, // 60x0E, // 70xEF, // 80xCF, // 90x10, //. 如果要显示小数点,必须要将此值与下一位值相加0x88 //: ,包括LCD上的两个":"};uchar Disp_Data[]={ 5,5,7,3,1,5 };/* 函数名:Segment_Display 功能:段式LCD数据包写入服务程序,负责将一串字符送到段式LCD 上去显示*/void Segment_Display( const uchar Addr,const uchar *P_Data, uchar Length ){uchar User_Addr = Addr;I2C_Start(); //启动BU9796I2C_Senduchar( BU9796_Addr ); //写BU9796的物理地址I2C_Write_ACK();I2C_Senduchar( Base_Add + User_Addr * 2 ); //发送起始地址,下一个紧跟的是数据I2C_Write_ACK();for( uchar i = Length ;i > 0;i-- ){if( *P_Data != 0x0A ) // 显存中是否有小数点?如果有,就将小数点码值与下一位码值相加{I2C_Senduchar( Num_Code[ *P_Data++ ] );}else{uchar Temp_Disp_Data = Num_Code[ *P_Data++ ];I2C_Senduchar( Temp_Disp_Data + Num_Code[ *P_Data++ ]);i--;}I2C_Write_ACK();}I2C_Stop(); //访问结束}/* 函数名:Init_BU9796FS 功能:初始化驱动芯片BU9796的相关参数*/void Init_BU9796FS( void ){I2C_Start(); //启动BU9796I2C_Senduchar( BU9796_Addr ); //写BU9796的物理地址I2C_Write_ACK(); //等待ackI2C_Senduchar( Write_Com + Set_Reset); //启动软复位I2C_Write_ACK(); //等待ackI2C_Senduchar( Write_Com + Blink_Mode2 );I2C_Write_ACK();I2C_Senduchar( Write_Com + Display_ON ); //开显示I2C_Write_ACK();I2C_Senduchar( Write_Data + Base_Add ); //发送起始地址,下一个紧跟的是数据I2C_Write_ACK();for( uchar i = 0;i<10;i++ ) //清LCD显示屏{I2C_Senduchar( 0x00 );I2C_Write_ACK();}I2C_Stop(); //访问结束}/* 函数名:Init_MCU 功能:初始化MSP430的相关参数*/void Init_MCU( void ){/* WDTCTL = WDTPW + WDTHOLD; */ // 关看门狗BCSCTL3 |= XT2S_2; // XT2频率范围设置BCSCTL1 &= ~XT2OFF; // 打开XT2振荡器do{IFG1 &= ~OFIFG; // 清振荡器失效标志BCSCTL3 &= ~XT2OF; // 清XT2失效标志for( uint i = 0x47FF; i > 0; i-- ); // 等待XT2频率稳定}while (IFG1 & OFIFG); // 外部时钟源正常起动了吗?BCSCTL2 |= SELM_2 + SELS ; // 设置MCLK、SMCLK为XT2P4OUT &= ~BIT4;P4DIR |= BIT4; // 打开LCD显示部分的电源//P8REN |= BIT3 + BIT4;P8DIR |= BIT3 + BIT4; // 配置MSP430与BU9796的数据数P8OUT |= BIT3 + BIT4;P5OUT &= ~BIT7; // 点亮外部LEDP5DIR |= BIT7;}/* 函数名:main 功能:系统入口主函数*/void main( void ){WDTCTL = WDTPW + WDTHOLD; // 停看门狗ADC12CTL0 = SHT0_2 + ADC12ON; // 设置采样时间,开ADC12,Vref = V ACC ADC12CTL1 = SHP; // 使用定时器采样ADC12MCTL0 = INCH_1; // 选用A1通道ADC12IE = 0x01; // 开ADC12MCTL0中断ADC12CTL0 |= ENC; // 启动转换ADC12MCTL0 = INCH_1;P5DIR |= BIT7; // P5.7输出-LED/*for (;;){ADC12CTL0 |= ADC12SC; // 软件启动转换_BIS_SR(CPUOFF + GIE); // LPM0模式,由ADC12中断唤醒}*//* 功能:将16进制转化为10进制*/int a,b;a=ADC12MEM0;Disp_Data[5]=a%10;b=a/10;Disp_Data[4]=b%10;a=b/10;Disp_Data[3]=a%10;b=a/10;Disp_Data[2]=b%10;a=b/10;Disp_Data[1]=a%10;b=a/10;Disp_Data[0]=b%10;Init_MCU();Init_BU9796FS();P5OUT |= BIT7;Segment_Display( 0,Disp_Data,6 );_BIS_SR( CPUOFF );}#pragma vector=ADC12_VECTOR__interrupt void ADC12_ISR (void){ _BIC_SR_IRQ(CPUOFF); }。

msp430f6638单片机实验程序

msp430f6638单片机实验程序
while(1)
{if((P4IN&BIT0)==0)
{__delay_cycles(160000);
if((P4IN&BIT0)==0)
{P1OUT |=BIT0;
P1OUT |=BIT6;
P1OUT &=~BIT7;
}
}
if((P4IN&BIT4)==0)
{__delay_cycles(160000);
while (SFRIFG1 & OFIFG) //等待XT1、XT2与DCO稳定
{
UCSCTL7 &= ~(DCOFFG+XT1LFOFFG+XT2OFFG);
SFRIFG1 &= ~OFIFG;
}
UCSCTL5 = DIVA__1 + DIVS__1 + DIVM__1; //设定几个CLK的分频
P4REN |=BIT0+BIT1+BIT2+BIT3+BIT4; //上下拉电阻使能
P4OUT |=BIT0+BIT1+BIT2+BIT3+BIT4; //设置为上拉电阻
P4DIR |=BIT5+BIT6+BIT7; //LED管脚设置
P5DIR |=BIT7;
P8DIR |=BIT0;
P1DIR |= BIT0+BIT6+BIT7;
while (SFRIFG1 & OFIFG) //等待XT1、XT2与DCO稳定
{
UCSCTL7 &= ~(DCOFFG+XT1LFOFFG+XT2OFFG);
SFRIFG1 &= ~OFIFG;

实验二 AD转换实验

实验二 AD转换实验

实验二 AD转换实验实验预习要求1、学习 MSP430F6638 单片机中ADC12的配置方法。

2、了解ADC转换原理。

一、实验目的1、了解AD转换原理及LED灯的控制方法。

2、掌握MSP430F6638 中ADC12的配置使用方法。

3、结合电位器与ADC12模块实现对LED灯的控制。

二、实验器材PC 机,MSP430F6638 EVM,USB数据线,万用表,信号发生器。

三、实验内容1、验证性实验:利用MSP430F6638开发板上的拨盘电位器,控制改变AD转换的输入电压值,转换后的数字量显示在段式液晶上面。

使用万用表测得当前输入电压,通过计算得到转换后的理想的数字量与液晶显示的数字量进行比较。

2、设计性实验:AD转换结束会产生中断,编写AD中断服务程序。

利用信号发生器输出信号(例如正弦波、三角波信号)作为AD转换的输入,根据输入电压的大小控制LED灯的亮灭(例如随着输入电压值的增大,LED1到LED5按顺序点亮;随着输入电压值减小,LED灯按顺序熄灭),LED和单片机IO口连接如下图所示。

图2.1 LED灯电路原理图四、实验原理模数转换器(ADC)是指将连续的模拟信号转换为离散的数字信号的器件。

真实世界 的模拟信号,例如温度、压力、声音或者图像等,需要转换成更容易储存、处理和发射的数 字形式。

在A/D 转换中,因为输入的模拟信号在时间上是连续的,而输出的数字信号是离 散量,所以进行转换时只能按一定的时间间隔对输入的模拟信号进行采样,然后再把采样值 转换为输出的数字量。

通常A/D 转换需要经过采样、保持量化、编码几个步骤。

ADC12 电 路如下图所示。

图2.2 ADC12 模块结构框图ADC12 模块中由以下部分组成:输入的16 路模拟开关,ADC 内部电压参考源,ADC12 内核,ADC 时钟源部分,采集与保持/触发源部分,ADC 数据输出部分,ADC 控制寄存器等组成。

ADC12 的模块内核是共用的,通过前端的模拟开关来分别完成采集输入。

msp430 实验报告

msp430 实验报告

msp430 实验报告MSP430 实验报告引言:MSP430是一款低功耗、高性能的微控制器,广泛应用于嵌入式系统开发领域。

本实验报告将介绍我对MSP430进行的一系列实验,包括基本的GPIO控制、定时器应用、模拟信号采集和通信接口应用等。

实验一:GPIO控制在本实验中,我使用MSP430的GPIO引脚控制LED灯的亮灭。

通过配置引脚的输入/输出模式以及设置引脚电平,我成功地实现了对LED灯的控制。

这为后续实验奠定了基础,也让我更加熟悉了MSP430的寄存器配置。

实验二:定时器应用在本实验中,我探索了MSP430的定时器功能。

通过配置定时器的时钟源和计数模式,我实现了定时器中断功能,并利用定时器中断实现了LED灯的闪烁。

这个实验让我更加深入地了解了MSP430的定时器模块,并学会了如何利用定时器进行时间控制。

实验三:模拟信号采集在本实验中,我使用MSP430的模拟信号输入引脚和模数转换模块,成功地将外部的模拟信号转换为数字信号。

通过配置ADC模块的采样速率和精度,我实现了对模拟信号的准确采集,并将采集到的数据通过串口输出。

这个实验让我对MSP430的模拟信号处理有了更深入的了解。

实验四:通信接口应用在本实验中,我使用MSP430的串口通信模块,实现了与外部设备的数据传输。

通过配置串口的波特率和数据格式,我成功地实现了与计算机的串口通信,并通过串口发送和接收数据。

这个实验让我掌握了MSP430与外部设备进行数据交互的方法。

结论:通过一系列的实验,我对MSP430的基本功能和应用有了更深入的了解。

MSP430作为一款低功耗、高性能的微控制器,具备丰富的外设和强大的处理能力,适用于各种嵌入式系统的开发。

通过学习和实践,我掌握了MSP430的GPIO控制、定时器应用、模拟信号采集和通信接口应用等基本技能,为以后的嵌入式系统开发打下了坚实的基础。

未来展望:MSP430作为一款成熟的微控制器,具备广阔的应用前景。

MSP430F6638开发实验系统

MSP430F6638开发实验系统

MSP430F6638平台框图说明●MSP430F663x 是微控制器系列产品,配置有一个高性能12位模数(A/D )转换器,比较器,2个通用串行通信接口(USCI),USB 2.0,硬件乘法器,DMA,4个16位计时器,具有报警功能的实时时钟模块,LCD驱动器和多达74 I/O引脚。

●这款设备的典型应用包括模拟和数字传感器系统,数字电机控制,遥控,恒温器,数字时钟,手持仪表等特性●低电源电压范围: 1.8 V 至3.6 V●超低功耗–激活模式(AM):所有系统时钟处于激活状态:270 µA/MHz ,在8 MHz, 3.0 V, 闪存程序执行(典型值)–待机模式(LPM3):采用晶体的安全装置, 和电源监控器操作, 完全RAM保持, 快速唤醒:1.8 µA 在2.2 V, 2.1 µA 在3.0 V (典型值)–关机RTC 模式(LPM3.5):关机模式, 含晶体的运行实时时钟:1.1 µA 在3.0 V (典型值)–关机模式(LPM4.5):0.3 µA 在3.0 V (典型值)特性●在3 µs (典型值) 内从待机模式唤醒●16 位RISC 架构, 扩展内存,高达20-MHz 系统时钟●灵活电源管理系统–含有可编程管理核心电源电压的完全集成LDO –电源电压管理、监控和暂时限电●单一时钟系统–FLL 控制环路用于频率稳定–低功耗/低频内部时钟源(VLO)–低频修整内部参照源(REFO)–32-kHz 晶体(XT1)–高达32 MHz (XT2)的高频晶体●四个具有3,5,或者7个捕捉/ 比较寄存器的16位定时器特性●2个通用串行通信接口–USCI_A0 和USCI_A1 各支持–增强型UART 支持自动波特率检测–IrDA 编码器和解码器–同步SPI–USCI_B0 和USCI_B1各支持–I IC–同步SPI●全速通用串行总线(USB)–集成USB-PHY–集成3.3-V/1.8-V USB 电源系统–集成USB-PLL–8 个输入,8 个输出端点特性●具有内部共享基准、采样与保持以及自动扫描特性的12位模数(A/D)转换器●具有同步功能的双通道12 位数模(D/A) 转换器●电压比较器●具有对多达160图块进行对比度控制的集成LCD驱●硬件乘法器支持32 位运算●串行板上编程,无需从外部进行电压编程●6 通道内部DMA●具有电源电压备份开关的实时时钟模块功能列表电源模拟开关模拟开关LED用户独立按键8位数码管与矩阵键盘段式LCDTFT LCD电容式触摸ADDA示例-电位器麦克风喇叭设计串行异步通讯设计(232&485&IrDA)串行外设接口设计(LCD&SD&无线模块)通讯串行IIC设计(数字温度传感器)BP模块示例-步进电机与直流电机BP模块示例-温湿度测量调试仿真接口及USB接口。

实验一 GPIO 口控制实验

实验一  GPIO 口控制实验

图 1.8
(5)将开发板上左上角的SW1拨到中间eZ430位置;通过USB线将MSP430F6638开发板上 的J6 端与PC相连。 (6)连接成功后可以在电脑的设备管理器中看到如图 1.9 所示的 MSP430 UART 端口。
(7)单击 Debug 按钮
图 1.9
烧写程序,出现如下调试界面。
(8)单击 Resume 按钮
实现直流电能和机械能互相转换的电机。当它作电动机运行时是直流电动机,将电能转换为 机械能。直流电机的结构应由定子和转子两大部分组成。直流电机运行时静止不动的部分称
为定子,定子的主要作用是产生磁场,由机座、主磁极、换向极、端盖、轴承和电刷装置等 组成。运行时转动的部分称为转子,其主要作用是产生电磁转矩和感应电动势,是直流电进 行能量转换的枢纽,所以通常又称为电枢,由转轴、电枢铁心、电枢绕组、换向器等组成。 z 直流电机控制原理:
(3)点击 File->New->CCS Project。
图 1.15
图 1.16
(4) 弹出如下对话框,键入项目名称(project name):DC motor,选择硬件类型(device): MSP430x6xx Family->MSP430F6638,在下列文件类型(Project templates and examples)中选择 Empty Project,最后点击 Finish。
图1.3 直流电机模块电路原理图
控制电路使用TI DRV8833 低电压电机驱动芯片,该芯片为玩具、打印机及其他机电一
体化应用提供了一款双通道桥式电机驱动器解决方案。它能驱动两个直流电机或一个步进电
机。nSLEEP引脚为高电平时表示使能设备,为低电平时表示进入低功耗睡眠模式。输入端控

基于msp4306638的超声波测距

基于msp4306638的超声波测距

超声波测距仪设计实验报告引言随着科学技术的快速发展,超声波将在测距仪中的应用越来越广。

但就目前技术水平来说,人们可以具体利用的测距技术还十分有限,因此,这是一个正在蓬勃发展而又有无限前景的技术及产业领域。

展望未来,超声波测距仪作为种新型的非常重要有用的工具在各方面都将有很大的发展空间,它将朝着更加高定位高精度的方向发展,以满足日益发展的社会需求,如声纳的发展趋势基本为:研制具有更高定位精度的被动测距声纳,以满足水中武器实施全隐蔽攻击的需要;继续发展采用低频线谱检测的潜艇拖曳线列阵声纳,实现超远程的被动探测和识别;研制更适合于浅海工作的潜艇声纳,特别是解决浅海水中目标识别问题;大力降低潜艇自噪声,改善潜艇声纳的工作环境。

无庸置疑,未来的超声波测距仪将与自动化智能化接轨,与其他的测距仪集成和融合,形成多测距仪。

随着测距仪的技术进步,测距仪将从具有单纯判断功能发展到具有学习功能,最终发展到具有创造力。

在新的世纪里,面貌一新的测距仪将发挥更大的作用。

一课题要求设计超声波测距系统,设计要求:(1)用给定的超声波模块制作超声波测距系统;(2)用按键实现测距、清零、复位等控制;(3)用4 位LED 数码管或液晶显示测量到的距离。

二实验原理超声波在液体、固体中衰减小、穿透力强、对某些固体、穿透深度能达到几十米的范围;另外,超声波方向性好,能够定向传播。

因此,可以作为物体探查和进行测量的可靠手段。

超声波发射器向某一方向发射超声波,在发射时刻的同时开始计时,超声波在空气中传播,途中碰到障碍物就立即返回来,超声波接收器收到反射波就立即停止计时。

超声波在空气中的传播速度为340m/s,根据计时器记录的时间t,就可以计算出发射点距障碍物的距离(s),即:s=340t/2。

三整体电路设计整体电路的控制核心为单片机msp430f6638。

超声波发射和接收电路中都对相应信号进行整形及放大,以保证测量结果尽可能精确。

超声波探头接OUT口实现超声波的发射和接收。

msp430f6638单片机实验程序

msp430f6638单片机实验程序

msp430f6638单片机实验程序实验一验证性试验#includeint flag;void DCmotor(int p){ switch(p){case 0: {P1OUT &=~ BIT0; //停转P1OUT &=~ BIT6;P1OUT &=~ BIT7;break;}case 1: {P1OUT |= BIT0; //正转P1OUT |= BIT6;P1OUT &=~ BIT7;break; }case 2: { P1OUT |= BIT0;P1OUT &=~ BIT6;P1OUT |= BIT7;break;}}}int main(void) {WDTCTL = WDTPW | WDTHOLD; // Stop watchdog timerP4REN |=BIT0+BIT1+BIT2+BIT3+BIT4; // 上下拉电阻使能P4OUT |=BIT0+BIT1+BIT2+BIT3+BIT4; //设置为上拉电阻P4DIR|=BIT5+BIT6+BIT7; //LED管脚设置P5DIR |=BIT7;P8DIR |=BIT0;P1DIR |= BIT0+BIT6+BIT7;while(1){if((P4IN&BIT0)==0){ //按键S7__delay_cycles(160000);if((P4IN&BIT0)==0) {flag=2;}}if((P4IN&BIT4)==0){ //按键S3__delay_cycles(160000);i f((P4IN&BIT4)==0) {flag=1;}}DCmotor(flag);}}设计性试验#includeint main(void){ WDTCTL = WDTPW +WDTHOLD;P4REN |=BIT0+BIT2+BIT4;P4OUT |=BIT0+BIT2+BIT4;P1DIR |=BIT0+BIT6+BIT7;while(1){ if((P4IN&BIT0)==0){ __delay_cycles(160000);if((P4IN&BIT0)==0){ P1OUT |=BIT0;P1OUT |=BIT6;P1OUT &=~BIT7;}}if((P4IN&BIT4)==0){ __delay_cycles(160000);if((P4IN&BIT4)==0){ P1OUT |=BIT0;P1OUT &=~BIT6;P1OUT |=BIT7;}}if((P4IN&BIT2)==0){ __delay_cycles(160000);if((P4IN&BIT2)==0){ P1OUT &=~BIT0;}}}}1、验证性实验:利用MSP430F6638 开发板上的拨盘电位器,控制改变AD 转换的输入电压值,转换后的数字量显示在段式液晶上面。

430单片机实习报告8篇

430单片机实习报告8篇

430单片机实习报告8篇下载温馨提示:该文档是我店铺精心编制而成,希望大家下载以后,能够帮助大家解决实际的问题。

文档下载后可定制随意修改,请根据实际需要进行相应的调整和使用,谢谢!并且,本店铺为大家提供各种各样类型的实用资料,如教育随笔、日记赏析、句子摘抄、古诗大全、经典美文、话题作文、工作总结、词语解析、文案摘录、其他资料等等,如想了解不同资料格式和写法,敬请关注!写实习报告是记录我们实习收获的重要方式,实习报告的写作是可以让自己实习的过程都记录下来的,以下是小文学小编精心为您推荐的430单片机实习报告8篇,供大家参考。

430单片机实习报告篇1一、实习说明(1)实习时间:20xx.x-20xx.x(2)实习地点:xx科技有限公司(3)实习性质:顶岗实习(主要基于xx平台从事中小型企业管理软件定制开发,使用现在主流的一些框架,在开发中担当设计、编码角色。

)二、实习的性质、目的和意义毕业实习是教学过程中的重要组成部分,是使学生获取生产、经营实际知识和技能,巩固和加深对理论知识的理解,培养与提高能力的重要实践环节。

通过本次实习,学生将进一步加深对计算机理论知识的理解,进一步熟悉计算机文员的相关运作过程,为学生毕业后的实际工作打下良好基础。

xx在人事部门的广泛使用,改进了统计手段,改革了统计方法,提高了统计工计算机在人事部门的广泛应用,将为我国的人事管理工作,提供现代化的管理手段和科学的管理方法,并将为开创人事管理工作的新局面创造条件。

目前,计算机在我国的人事管理工作中,主要可用来进行报表处理,档案管理,文书编辑,信息查询,综合分析。

干部统计作为人事管理的一个重要组成部分,是通过对干部情况的调查,整理和分析,了解干部队伍的发展趋势,为各级领导机关制定干部工作的方针,政策,加强干部管理,改革干部制度提供准确数字的依据。

其工作除涉及到干部的基本情况统计之外,还包括干部的工资统计,干部编制情况统计,干部奖惩情况统计,军转干部安置情况统计,老干部情况统计等方面,其涉及的面之广,数据量之大可想而知,若利用手工进行干部的统计工作,大致要经过干部统计调查,干部统计资料的整理,干部统计分析三个过程,但这种手工统计过程,存在着几个明显的问题,比如说统计资料缺乏准确性,及时性,需要花费大量的人力,物力,财力等。

南理工王宏波MSP430F6638单片机实验报告

南理工王宏波MSP430F6638单片机实验报告

MSP430 单片机应用技术实验报告学号: XXXXXXXX姓名: XXX分组:第X 组同组同学 1 姓名: XXX同组同学 2 姓名: XXX南京理工大学2016年 12月 08日实验 1一、实验题目: UCS实验二、实验目的设置 DCO FLL reference =ACLK=LFXT1 = 32768Hz, MCLK = SMCLK = 8MHz,输出 ACLK、SMCLK,用示波器观察并拍照。

UCS初始状态: XT1关闭,默认为 LFXT1,ACLK选择 XT1源(时钟错误时自动切换至), MCLK、SMCLK选择 DCOCLKDIV源。

FLL 参考时钟源为XT1CLK,DCOCLK/DCOCLKDIV,=2N=32。

因此程序需要进行的操作有,启动LFXT1,待 XT1稳定工作后,设置锁频环将XT1分频为 8MHz的 DCOCLKDIV作为 MCLK和 SMCLK的时钟源,并分别通过 P1.0和P3.4 输出。

三、实验仪器和设备计算机、开发板、示波器、信号源、电源、Code Comeposer Studio v5四、实验步骤1 、用电缆连接开发板 USB2口和电脑 USB口,打开电源开关 SW1,电源指示灯 D5 点亮;2、运行CCSV5;3、新建工作空间workspace;4、新建工程project与源文件main.c;5、编写程序;6、编译、调试、下载程序到单片机;7、观察、分析、保存运行结果。

五、实验程序六、实验结果一、实验题目:FLL+应用实验二、实验目的检测P1.4输入,遇上升沿进端口中断,在中断服务程序内翻转P4.1状态。

三、实验仪器和设备计算机、开发板、示波器、信号源、电源、Code Comeposer Studio v5四、实验步骤1、用电缆连接开发板 USB2口和电脑 USB口,打开电源开关 SW1,电源指示灯 D5 点亮;2、运行CCSV5;3、新建工作空间workspace;4、新建工程project与源文件main.C;5、编写程序;6、编译、调试、下载程序到单片机;7、观察、分析、保存运行结果。

基于MSP430F6638的信号采集与分析系统实验

基于MSP430F6638的信号采集与分析系统实验

信号采集与分析系统实验一、实验目的本实验目的是利用实验箱构建一个信号采集和分析系统。

二、实验内容三、实验步骤1、键盘及LED的设计与制作–编写单片机程序,控制按键,控制灯的亮灭,测试所有能控制的按键和LED2、液晶屏显示的设计与制作–测试在液晶屏上显示波形和数据3、以信号发生器输入单频正弦波,以16个指示灯代表16个单频点,频点在200Hz ~ 10kHz任选,信号发生器每次产生一种频点正弦波,AD采集,对应频点的指示灯会亮;4、把指示灯显示频点改成用液晶显示5、液晶屏同时显示频谱和时域波形四、实验原理1、AD采样模块在这个模块中,每过一段时间,AD采样器采集一个数据存入数组中,并将存储的二进制数转换成对应的电压值,通过代码:collect0[t].real= ADC12MEM0*3.0 / 0x03ff;实现。

采集满N个值之后,令标志变量flag=1,表示一组数据采集完毕,进入下一模块,即FFT变换。

我们将信号发生器输出的模拟电压范围设定为0V~2V ,这是因为:若电压值太大,会导致结果波形失真;若出现负电压,则因为AD模块不支持负电压的采集,结果可能会出现错误。

2、FFT处理模块该模块将采集进来的数据进行FFT变换,变换后的实部即为频谱,用于LCD 的频谱绘制。

绘制时,以各频点的幅频值与最大幅频值的相对大小进行绘制;变换后模值最大的频点对应的频率即为待测频率,用fre表示,便于屏幕及LED 频率显示;根据求得的fre,可求得若干函数值,用于LCD的时域波形绘制。

3、 LCD液晶屏显示模块该模块用于显示时域波形、频谱、学号、所测频率等内容。

关键语句:清屏:etft_AreaSet(0,0,239,319,0);//清屏显示:sprintf(buffer, "Frequency: %5d Hz",fre);etft_DisplayString(buffer, 0, 32, 0xFFFF, 0x0000);//显示频率同时,在模块中加入了延时语句,使得波形可以保持一定的时间。

MSP430单片机实验报告

MSP430单片机实验报告

MSP430单片机实验报告专业:姓名:学号:MSP430单片机实验报告设计目标:使8位数码管显示“5201314.”,深入了解串行数据接口。

实现过程:主要分为主函数、驱动8位数码管函数、驱动1位数码管函数及延时函数。

延时函数:采用for循环。

驱动1位数码管子函数:设置74HC164的时钟传输和数传输,声明变量,使数据表中每一个要表示的字符的每一位都与shift做与运算从而进行传输,上升沿将传输数据传送出去。

驱动1位数码管子函数的流程图如图1所示。

图1 驱动1位数码管子函数流程图驱动8位数码管子函数:调用8次驱动1位数码管子函数。

驱动8位数码管子函数流程图如图2所示。

图2 驱动8位数码管流程图while图3 主函数流程图实验结果:供电后,数码管显示“5201314.”字样。

源程序:/************* 程序名称:5201314.*************//***程序功能:通过模拟同步串口控制8个共阳数码管***//*******P5.1 数据管脚,P5.3 同步时钟管脚*******/#include <io430.h> // 头文件void delay(void); // 声明延迟函数void seg7_1 (unsigned char seg7_data);// 声明驱动1 位数码管函数void seg7_8 ( unsigned char seg7_data7,unsigned char seg7_data6,unsigned char seg7_data5,unsigned char seg7_data4,unsigned char seg7_data3,unsigned char seg7_data2,unsigned char seg7_data0); // 声明驱动8 位数码管函数const unsigned char decoder_seg7[]={0x92,0xa4,0xc0,0xf9,0xb0,0xf9,0x99,0x7f }; //数码管显示表【5201314.】int main(void) // 主函数{WDTCTL=WDTPW+WDTHOLD; // 关闭看门狗P5SEL&=~BIT1; // 设置P5.1 端口为并行数字输入/ 输出口P5DIR|=BIT1; // 设置P5.1 端口为输出口P5SEL&=~BIT3; // 设置P5.3 端口为并行数字输入/ 输出口P5DIR|=BIT3; // 设置P5.3 端口为输出口while(1) // 重复执行{seg7_8 (7,6,5,4,3,2,1,0); // 调用驱动8 位数码管函数delay ( ); // 延时}}void seg7_8 (unsigned char seg7_data7,unsigned char seg7_data6,unsigned char seg7_data5,unsigned char seg7_data4,unsigned char seg7_data3,unsigned char seg7_data1,unsigned char seg7_data0)// 驱动8位数码管的同步串行数据接口驱动函数{seg7_1(seg7_data0); // 调用1 位数码管的同步串行数据接口驱动函数seg7_1(seg7_data1);seg7_1(seg7_data2);seg7_1(seg7_data3);seg7_1(seg7_data4);seg7_1(seg7_data5);seg7_1(seg7_data6);seg7_1(seg7_data7);}void seg7_1 (unsigned char seg7_data)// 驱动1 位数码管的同步串行数据接口驱动函数{unsigned char code_seg7; // 声明显示代码变量unsigned char a; // 声明循环变量unsigned char shift; // 声明串行数据位存储变量code_seg7=decoder_seg7[seg7_data]; // 显示数据译码P5OUT&=~BIT1; // P5.1 输出低电平P5OUT&=~BIT3; // P5.3 输出低电平shift=0x80; // 串行数据位指向8 位数据的最高位for(a=0; a<8; a++){if(code_seg7&shift) // 判断显示代码位的状态{P5OUT|=BIT1; // P5.1 输出高电平}else{P5OUT&=~BIT1; // P5.1 输出低电平}P5OUT|=BIT3; // P5.3 输出高电平P5OUT&=~BIT3; // P5.3 输出低电平shift=shift>>1; // 串行数据位指向数据位右移1 位}}void delay (void) //延时函数{unsigned char b;for(b=0xff;b>0;b--); }。

MSP430单片机编程与实践-实验报告

MSP430单片机编程与实践-实验报告
unsigned char aa,bb,b=0; unsigned char com_byte; unsigned char num; unsigned char key; unsigned char key_flag;
void key_scan(); void delay(unsigned x) {
实验二:使用基本定时器,通过 P1.0 口控制 LED 灯的亮灭,亮灭时间都为
2
1S。 实验原理如图 1 所示:
实验程序:
图 1:LED 灯控制电路
#include <msp430x44x.h>
void main()
{ WDTCTL=WDTPW+WDTHOLD; IE2|=BTIE;
//关闭看门狗定时器 //打开基本定时器中断
{
}
ADC12CTL0 |= ENC; _EINT();
//允许转换

while(1)
{ ADC12CTL0 |= ADC12SC;
//开始转换
_BIS_SR(LPM0_bits); DegC = ((((long)ADCresult-1615)*704)/4095);
}
#pragma vector=ADC_VECTOR
○3 掌握 LED 静态显示和动态扫描显示的原理与编程设计; ○4 掌握 LCD 显示的原理以及编程设计; ○5 掌握 ADC 工作的原理,熟悉使用 ADC12 的工作方式; ○6 熟悉独立键盘以及行列式键盘的设计方法,掌握键盘工作原理和一般的编 程设计; ○7 综合 MSP430 的各个功能模块,练习编写数字密码锁程序,实现基本的一 些条件,使学生的学习与社会发展同步,更接近生活实际;
ADC12CTL0 = ADC12ON+REFON+REF2_5V+SHT0_6; 采样周期

南理工单片机实验报告

南理工单片机实验报告

南理⼯单⽚机实验报告单⽚机实验报告姓名:学号:指导⽼师:其他⼩组成员:实验⼀、P1⼝实验⼀、实验题⽬(1)利⽤查表指令控制P1⼝输出,实现流⽔灯先左移后右移并循环进⾏。

(2)设ACC的初值为10101010,利⽤循环移位指令,将ACC的每⼀位数据移到CY中,并从P1.0⼝输出CY中的数据,并循环进⾏。

⼆、实验⽬的(1)学习P1⼝的使⽤⽅法;(2)学习延时⼦程序的编写和使⽤⽅法;(3)学习查表指令和循环移位指令的使⽤⽅法。

三、实验元件(1)AT89C51、LED-YELLOW、LED-BLUE、LED-RED、RED-GREEN、RESPACK-8。

(2)AT89C51、LED-YELLOW、RES。

四、硬件设计(1)五、程序流程图1.建⽴数据表格2.建⽴坐标指向表格⾸地址3.对所指数进⾏读取并加以显⽰4.指向坐标加⼀指向下⼀地址5.回到3六、汇编程序查表法控制流⽔灯:ORG 0000H ;汇编起始地址0000HSJMP MAINORG 0030HMAIN:MOV DPTR , @TABLE ;表⾸址送DPTRLOADTABLE: CLR AMOVC A, @DPTR+A ;查表CJNE A,#88H, DISPLAYJMP MAINDISPLAY: MOV P1 , A ;ACC数据送P1⼝显⽰CALL DELAYINC DPTRJMP LOADTABLETABLE: ;数据表格DB 0FEH,0FDH,0FBH,0F7H,0EFH,0DFH,0BFH,07FH ;左移DB 07FH,0BFH,0DFH,0EFH,0F7H,0FBH,0FDH,0FEH ;右移DB 88H ;结束码DELAY: MOV R4,#4 ;延时⼦程序LP1: MOV R5,#255LP2: MOV R6,#255LP3: DJNZ R6,LP3DJNZ R5,LP2DJNZ R4,LP1RETEND七、实验中遇到的问题及解决⽅法怎样进⾏信号的循环:可对A的⼤⼩进⾏判断来确定右移是否完成,当右移完成后对A进⾏清零处理。

430单片机实践报告

430单片机实践报告

void main (void )
{
unsigned i,k;
WDTCTL=WDTPW+WDTHOLD;
//利用看门口防止程序跑飞
P5DIR |= BIT1;
//设置端口,0为输入,1为输出
for (i=0; i<6000; i++)
{
for (k = 0; k<60000; k++);
// 通过判断外层循环次数的奇偶决定 P5.1 的电平高低
8
{ switch(j) { case 0: { P1OUT &=~0x80; P1OUT |= 0x04; P1OUT |= 0x02;
if(!(P1IN&BIT4)) num =10; else if (!(P1IN&BIT5)) num = 3; else if (!(P1IN&BIT6)) num = 2; else if (!(P1IN&BIT7)) num = 1;
__interrupt void Timer_A(void)
{
P5OUT ^= 0x02;
// P5.1 异或取反
CCR0 += 50000;
// 在已计数的50000基础上再计数50000 使 CCR0与TAR同步计数到 65535 在计数到65535-50000 产生中断使占空比为50%
}
3、 总结与分析
(1) 看门狗
[1] 作用:看门狗在语句中能够防止由于程序处理定期清零造成的错误,能使处 理器重新启动 [2] 代码实现:
停止模式:关闭看门狗 WDTCTL=WDTPW+WDTHOLD;
计时器模式:计数器溢出产生中断时执行看门狗中断函数 WDT_MDLY_8 或 WDTCTL = WDT_ADY_250

基于MSP430F6638的信号采集与分析系统试验

基于MSP430F6638的信号采集与分析系统试验

信号采集与分析系统实验一、实验目的本实验目的是利用实验箱构建一个信号采集和分析系统。

二、实验内容放大模块(备选扩展)信号发生器(器产生单频模DD号,测试根据按键,生不同单频采集模A寸液晶3.单片机核心(也可用单片显示频FPG核心代替内A显示按键LE显块,不LE代表输入为不频点正弦信三、实验步骤–编写单片机程序,控制按键,控制灯的亮、键盘及LED的设计与制作1 LED 灭,测试所有能控制的按键和–测试在液晶屏上显示波形和数据2、液晶屏显示的设计与制作16个指示灯代表以16个单频点,频点3、以信号发生器输入单频正弦波,在200Hz ~ 10kHz任选,信号发生器每次产生一种频点正弦波,AD采集,对应频点的指示灯会亮;4、把指示灯显示频点改成用液晶显示5、液晶屏同时显示频谱和时域波形四、实验原理1、AD采样模块在这个模块中,每过一段时间,AD采样器采集一个数据存入数组中,并将存储的二进制数转换成对应的电压值,通过代码:collect0[t].real =实现。

采集满N个值之后,令标志变量flag=1,表示ADC12MEM0*3.0 / 0x03ff;变换。

我们将信号发生器输出的模FFT一组数据采集完毕,进入下一模块,即.,这是因为:若电压值太大,会导致结果波形失真;0V~2V 拟电压范围设定为若出现负电压,则因为AD模块不支持负电压的采集,结果可能会出现错误。

2、FFT处理模块LCD该模块将采集进来的数据进行FFT变换,变换后的实部即为频谱,用于变的频谱绘制。

绘制时,以各频点的幅频值与最大幅频值的相对大小进行绘制;频fre表示,便于屏幕及LED换后模值最大的频点对应的频率即为待测频率,用fre,可求得若干函数值,用于LCD的时域波形绘制。

率显示;根据求得的液晶屏显示模块LCD3、该模块用于显示时域波形、频谱、学号、所测频率等内容。

关键语句:清屏:清屏etft_AreaSet(0,0,239,319,0);//显示:,fre);(buffer, ?敲畱湥祣???穈sprintf etft_DisplayString(buffer, 0, 32, 0xFFFF,0x0000);//显示频率同时,在模块中加入了延时语句,使得波形可以保持一定的时间。

msp430 UCS实验报告资料

msp430 UCS实验报告资料

Msp430单片机第二次实验报告1.系统时钟--ACLK,SMCLK,MCLK的产生1.1 实验目标(1) 了解MSP430F6638 的时钟系统(2) 掌握配置MSP430F6638 时钟的方法(3) 了解MSP430F6638 的时钟系统与低功耗之间的关系1.2 实验原理MSP430F6638 具有灵活的时钟系统:(1) 外部时钟XT1,XT2;(2) 内置时钟DCO(锁相环FLL+);(3) 内置时钟VLO,12KHz 典型频率,内置REFO,典型频率32.768KHz;(4) 时钟检测系统,时钟不稳定或失效检测,可触发中断;(5) MCLK ----CPU 运行时钟(6) SMCLK---子系统运行时钟(7) ACLK -----辅助时钟本实验演示了基础的时钟配置。

UCS 模块包括5 个时钟源(1) XTICLK:低频/高频振荡器,可以使用32768Hz 外部晶振;(2) VLOCLK:内部低功耗、低频率振荡器,典型频率为10KHz;(3) REFOCLK:进过调整的内部振荡器,典型值为32768hz,可以用作FLL 的参考时钟;(4) DCOCLK:内部数字时钟,可以通过FLL 得到稳定的时钟信号;(5) XT2CLK:可选的高频振荡器。

可以用作FLL 的参考时钟。

UCS 模块提供的3 个可利用的时钟信号:(1) ACLK:辅助时钟。

可以通过软件选择XT1CLK, REFOCLK, VLOCLK, DCOCLK,DCOCLKDIV 或(在有可用的XT2CLK 的情况下)XT2CLK 作为辅助时钟。

DCOCLKDIV 是DCOCLK 通过FLL 模块经过1,2,4,8,16,32 分频获得的。

ACLK 可以为某些外围模块提供时钟。

ACLK 可以被1,2,4,8,16,32 分频。

ACLK/n 就是ACLK 经过1,2,4,8,16,32 分频获得的,同时也可以通过外部引脚输出;(2) MCLK:主时钟。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

MSP430单片机应用技术
实验报告
学号:XXXXXXXX
实验1
一、实验题目:UCS实验
二、实验目的
设置DCO FLL reference =ACLK=LFXT1 = 32768Hz, MCLK = SMCLK = 8MHz,输出ACLK、SMCLK,用示波器观察并拍照。

UCS,MCLK、
SMCLK
8MHz 的
1
2
六、实验结果
实验2
一、实验题目:FLL+应用实验
二、实验目的
检测P1.4 输入,遇上升沿进端口中断,在中断服务程序内翻转P4.1 状态。

三、实验仪器和设备
计算机、开发板、示波器、信号源、电源、Code Comeposer Studio v5
四、实验步骤
1、用电缆连接开发板USB2口和电脑USB口,打开电源开关SW1,电源指示灯D5点亮;
2、运行CCSV5;
WDT
1、用电缆连接开发板USB2口和电脑USB口,打开电源开关SW1,电源指示灯D5点亮;
2、运行CCSV5;
3、新建工作空间workspace;
4、新建工程project与源文件main.C;
5、编写程序;
6、编译、调试、下载程序到单片机;
7、观察、分析、保存运行结果。

五、实验程序
实验4
一、实验题目:WDT_A实验
二、实验目的
定时模式
1
2
六、实验结果
实验5一、实验题目:Timer_A实验
二、实验目的
比较模式-Timer_A0,两路PWM 输出,增减计数模式,时钟源SMCLK,输出模式7
TACLK = SMCLK = default DCOCLKDIV。

PWM周期CCR0 = 512-1,P1.6 输出PWM占空比CCR1 = 37.5%,P1.7输出PWM占空比CCR1 =12.5%。

要求:
(1)用示波器观察两路PWM 输出的波形并拍照,测量周期、正脉宽等参数,与理论值进行对比分析。

(2
(3
1
2
实验6
一、实验题目:ADC12实验
二、实验目的
ADC12 单次采样A0 端口,根据转换结果控制LED 状态。

参考时钟源MODOSC(缺省),参考电压AVcc(缺省),SAMPCON 信号来自采样定时器,ADC12MEMO8作为转换地址。

若A0 < 0.5*AVcc,点亮P4.1 口LED,A0 > 0.5*AVcc,点亮P4.2口LED。

三、实验仪器和设备
计算机、开发板、示波器、信号源、电源、Code Comeposer Studio v5
四、实验步骤
1、用电缆连接开发板USB2口和电脑USB口,打开电源开关SW1,电源指示灯D5点亮;
2、运行CCSV5;
1、用电缆连接开发板USB2口和电脑USB口,打开电源开关SW1,电源指示灯D5点亮;用试验箱中白色RS232电缆连接开发板左侧RS1接口和电脑主机后的9针串口;
2、在设备管理器中查看串口号,并修改至COM1~COM4;设置用于通讯的串口号、波特率、校验位、数据位、停止参数,然后打开串口;
3、运行CCSV5;
4、新建工作空间workspace;
5、新建工程project与源文件main.C;
6、编写程序;
7、编译、调试、下载程序到单片机;
8、在发送区输入要发送的信息,选择手动发送或者自动发送;
9、观察、分析、保存运行结果。

五、实验程序
1、RS232 2
3、运行CCSV5;
4、新建工作空间workspace;
5、新建工程project与源文件main.C;
6、编写程序;
7、编译、调试、下载程序到单片机;
8、在发送区输入要发送的信息,选择手动发送或者自动发送;
9、观察、分析、保存运行结果。

五、实验程序
六、实验结果
实验9
1
2
1、写信息段C函数:定义Flash指针→初始化Flash指针→清除锁定控制位→段擦除→等待擦除操作完成→循环写信息段C的128字节→向信息段C写数据→等待写操作完成→Flash退出写模式→恢复Flash锁定位,保护数据
2、将信息段C的内容复制到信息段D内:初始化信息段C指针→初始化信息段D指针→清除锁定控制位→段擦除→等待擦除操作完成→将信息段C的内容复制到信息段D内→等待写除操作完成→ Flash退出写模式→恢复Flash锁定位,保护数据
五、实验程序。

相关文档
最新文档