超详细msp430示例程序DOC.docx

上传人:b****2 文档编号:1943064 上传时间:2022-10-25 格式:DOCX 页数:161 大小:55.86KB
下载 相关 举报
超详细msp430示例程序DOC.docx_第1页
第1页 / 共161页
超详细msp430示例程序DOC.docx_第2页
第2页 / 共161页
超详细msp430示例程序DOC.docx_第3页
第3页 / 共161页
超详细msp430示例程序DOC.docx_第4页
第4页 / 共161页
超详细msp430示例程序DOC.docx_第5页
第5页 / 共161页
点击查看更多>>
下载资源
资源描述

超详细msp430示例程序DOC.docx

《超详细msp430示例程序DOC.docx》由会员分享,可在线阅读,更多相关《超详细msp430示例程序DOC.docx(161页珍藏版)》请在冰豆网上搜索。

超详细msp430示例程序DOC.docx

超详细msp430示例程序DOC

一、基础_实验【10个】

1、入门试验:

LED闪烁(1个)

2、时钟实验:

设置MCLK、ACLK、SMCLK(1个)

3、低功耗实验:

设置低功耗模式(1个)

4、IO端口试验:

IO端口寄存器设置(1个)

5、定时器:

看门狗定时器、TimerA寄存器设置(2个)

6、比较器:

比较器A寄存器(1个)

7、Flash:

flash读写(1个)

8、异步通信:

异步通信寄存器设置(1个)

9、ADC:

ADC12寄存器设置(1个)

二、开发板模块简单程序【56个】

1、LED流水灯实验(红、黄、绿)

(1)LED1:

检测开发板

(2)LED2:

普通IO控制闪烁

(3)LED3:

PWM信号控制闪烁

2、蜂鸣器实验

(1)蜂鸣器1:

单频音(步进变音调)

(2)蜂鸣器2:

奏乐(祝你平安)

3、数码管实验

(1)数码管1(显示123456)

(2)数码管2(动态显示0~F)

(3)数码管3(流动光圈)

(4)数码管4(来回光标)

4、4×1独立按键实验

(1)4×1键盘1:

扫描数码管显示

(2)4×1键盘2:

中断数码管显示

(3)4×1键盘3:

控制LED

(4)4×1键盘4:

控制蜂鸣器

5、4×4矩阵键盘实验

(1)4×4键盘1:

行列扫描数码管显示

(2)4×4键盘2:

行列扫描1602液晶显示

(3)4×4键盘3:

控制LED蜂鸣器

6、1602液晶实验

(1)1602液晶1:

动态字符显示

(2)1602液晶2:

静态字符显示

(3)1602液晶3:

内部时钟显示

7、3.3V-5V电平转换实验

(1)电平转换1:

输出5V方波

(2)电平转换2:

输出不同占空比的方波

(3)电平转换3:

MCLK,SMCLK,ACLK

8、RS232接口实验

(1)RS232接口1:

MCU发送数据PC机显示

(2)RS232接口2:

按键控制MCU发送数据PC机显示

(3)RS232接口3:

PC机发送数据MCU液晶显示

(4)RS232接口4:

MCU回发接收到的PC机数据

(5)RS232接口5:

RS232控制蜂鸣器

9、RS485接口实验

(1)RS485接口1:

发送程序

(2)RS485接口2:

接收程序

10、USB接口实验

(1)USB接口1:

简单连接测试

(2)USB接口2:

USB接收数据

(3)USB接口3:

USB发送数据

11、PS2接口实验

(1)PS2接口1:

PS2控制1602显示

(2)PS2接口2:

PS2控制数码管显示

(3)PS2接口3:

PS2控制LED和蜂鸣器

12、12-Bit高精度温度传感器实验

(1)温度传感器1:

DS18B20在数码管显示

(2)温度传感器2:

DS18B20在液晶显示

13、RTC实时时钟实验

(1)实时时钟1:

DS1302测试

(2)实时时钟2:

DS1302电子钟

14、2kBitEEPROM实验

(1)EEPROM1:

AT24C02测试

(2)EEPROM2:

读出数据通过串口在PC机显示

15、12-Bit模数转换器(ADC)接口实验

(1)模数转换器1:

ADC在数码管显示

(2)模数转换器2:

ADC在1602液晶在显示

(3)模数转换器3:

ADC通过串口在PC机显示

16、8-Bit数模转换器(DAC)实验

(1)数模转换器1:

DAC控制LED

(2)数模转换器2:

DAC输出电压,ADC采样转换并在液晶上显示

17、12864液晶实验(与12864液晶配套)

(1)12864液晶并口1:

字符显示

(2)12864液晶并口2:

汉字显示

(3)12864液晶并口3:

图形显示

(4)12864液晶并口4:

综合演示

(5)12864液晶串口5:

字符显示

(6)12864液晶串口6:

汉字显示

(7)12864液晶串口7:

图形显示

(8)12864液晶串口8:

综合演示

18、射频模块CC1000实验

(1)射频模块1:

发送数据

(2)射频模块2:

接收数据

19、ucos移植

注:

17、18程序随模块赠送

三、开发板综合程序【30】

1、键盘综合实验

(1)4×4键盘+蜂鸣器+LED+数码管显示

(2)4×4键盘+蜂鸣器+LED+1602液晶显示

(3)4×4键盘+蜂鸣器+LED+PC机显示

(4)PS2键盘+UART+PC机显示

(5)PS2键盘+USB+PC机显示

2、接口综合实验

(1)USB􀃆UART

(2)UART􀃆USB

(3)RS232􀃆RS485

(4)RS485􀃆RS232

3、温度时间综合实验

(1)DS18B20+DS1302+数码管

(2)DS18B20+DS1302+USB

(3)DS18B20+DS1302+UART

(4)DS18B20+DS1302+1602

4、ADDA综合实验

(1)ADC+1602

(2)ADC+UART

(3)ADC+USB

(4)DAC+LED+KEY

(5)DAC+UART

(6)DAC+USB

(7)ADC+UART+DS1302

(8)ADC+DAC+1602+KEY

(9)ADC+DAC+UART+KEY

5、其他综合实验

(1)AT24C02高级应用(搜索,擦除,读出全部)

(2)DS1302高级应用(内部RAM存取数据)

6、12864液晶综合实验

(1)汉字库

(2)图形库

7、3.2寸TFT触摸屏实验

(1)静态图片

(2)动画

 

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

程序功能:

BoardConfig.h头文件

---------------------------------------------------

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

typedefunsignedcharuchar;

typedefunsignedintuint;

//控制位的宏定义

#defineCtrl_OutP3DIR|=BIT3+BIT6+BIT7;

#defineCtrl_0P3OUT&=~(BIT3+BIT6+BIT7)

#defineSRCLK_1P3OUT|=BIT7

#defineSRCLK_0P3OUT&=~BIT7

#defineSER_1P3OUT|=BIT6

#defineSER_0P3OUT&=~BIT6

#defineRCLK_1P3OUT|=BIT3

#defineRCLK_0P3OUT&=~BIT3

//板上资源配置函数

voidBoardConfig(ucharcmd)

{

uchari;

Ctrl_Out;

Ctrl_0;

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

{

SRCLK_0;

if(cmd&0x80)SER_1;

elseSER_0;

SRCLK_1;

cmd<<=1;

}

RCLK_1;

_NOP();

RCLK_0;

}

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

程序功能:

控制8个LED闪烁,用于测试下载功能是否正常

---------------------------------------------------

测试说明:

观察LED闪烁

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

#include

#include"BoardConfig.h"

/****************主函数****************/

voidmain(void)

{

WDTCTL=WDTPW+WDTHOLD;//关闭看门狗

BoardConfig(0xf0);//关闭数码管和电平转换,打开流水灯

CCTL0=CCIE;//使能CCR0中断

CCR0=2047;//设定周期0.5S

TACTL=TASSEL_1+ID_3+MC_1;//定时器A的时钟源选择ACLK,增计数模式

P2DIR=0xff;//设置P2口方向为输出

P2OUT=0xff;

_EINT();//使能全局中断

LPM3;//CPU进入LPM3模式

}

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

函数名称:

Timer_A

功能:

定时器A的中断服务函数

参数:

返回值:

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

#pragmavector=TIMERA0_VECTOR

__interruptvoidTimer_A(void)

{

P2OUT^=0xff;//P2口输出取反

}

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

程序功能:

实现流水灯以三种流动方式和四种流动速度

的不同组合而进行点亮"流动"

------------------------------------------------

测试说明:

观察流水灯流动顺序和速度的变化

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

#include

#include"BoardConfig.h"

uinti=0,j=0,dir=0;

uintflag=0,speed=0;//flag--灯光流动方式,speed--灯光流动速度

/****************主函数****************/

voidmain(void)

{

WDTCTL=WDTPW+WDTHOLD;//关闭看门狗

BoardConfig(0xf0);

CCTL0=CCIE;//使能CCR0中断

CCR0=50000;

TACTL=TASSEL_2+ID_3+MC_1;//定时器A的时钟源选择SMCLK,增计数模式

P2DIR=0xff;//设置P2口方向为输出

P2OUT=0xff;

_EINT();//使能全局中断

LPM0;//CPU进入LPM0模式

}

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

函数名称:

Timer_A

功能:

定时器A的中断服务函数,在这里通过标志

控制流水灯的流动方向和流动速度

参数:

返回值:

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

#pragmavector=TIMERA0_VECTOR

__interruptvoidTimer_A(void)

{

if(flag==0)

{

P2OUT=~(0x80>>(i++));//灯的点亮顺序D8->D1

}

elseif(fla

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

当前位置:首页 > 人文社科 > 法律资料

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

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