[信息与通信]MSP430培训.ppt

  1. 1、本文档共39页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[信息与通信]MSP430培训

MSP430单片机 MSP430FE425 (一) 内部资源 引脚分布 最小系统 最小系统 最小系统 MSP430的C语言基础 MSP430的C语言基础 MSP430的C语言基础 MSP430的C语言基础 MSP430的C语言基础 MSP430的C语言基础 MSP430的C语言基础 MSP430的C语言基础 MSP430的C语言基础 MSP430的C语言基础 MSP430单片机 MSP430FE425 (二) I/O口 I/O口 I/O口 I/O口 I/O口 I/O口 I/O口 I/O口 I/O口 时钟系统与低功耗模式 时钟系统与低功耗模式 时钟系统与低功耗模式 时钟系统与低功耗模式 时钟系统与低功耗模式 时钟系统与低功耗模式 时钟系统与低功耗模式 时钟系统与低功耗模式 时钟系统与低功耗模式 时钟系统与低功耗模式 低功耗模式的应用 低功耗模式的应用 低功耗模式的应用 时钟系统结构原理: MSP430F42x单片机外部接有32.768KHz晶振,CPU需要2MHz左右的时钟频率: 时钟系统结构原理: MSP430F42x单片机外部接有32.768KHz晶振,CPU需要2.752MHz的时钟频率。2.752MHz是32.768KHz的84倍。因此分频系数N=84-1=83 低功耗模式: 低功耗模式: 低功耗模式: 低功耗模式: 在MSP430单片机组成的系统中,ACLK=32.768kHz,CPU速度1MHz。假设P1.5接有按键(按下为低电平)、P2.0输出至LED。要实现当按键被按下时LED亮,按键松开后LED灭 * * 详细引脚分布见技术手册 变量: 变量定义: const unsigned char Table[7]={1,2,3,4,5,6,7}; //在ROM中定义一个表格 static int a; //定义一个int型静态变量 volatile int b; //定义int型变量b,不要被编译器优化 __no_init int c; //定义int型变量c,程序开始不对它初始化 位操作: P2OUT |= 0x01; //P2.0置高 P20UT = ~0x02; //P2.1置低 P20UT ^= 0x04; //P2.2取反 P2OUT |= BIT0; / /P2.0置高 P20UT = ~BIT1; //P2.1置低 P20UT ^= BIT2; //P2.2取反 位操作: P1OUT |= BIT1+BIT2+BIT3+BIT4; //P1.1/2/3/4全置高 P1OUT = ~(BIT1+BIT2+BIT3+BIT4); //P1.1/2/3/4全置低 P1OUT |= 0x1e; //P1.1/2/3/4全置高 寄存器操作: 串口收、发中断控制位分别是URXIEO和UTXIE0,位于IE1寄存器的最高2位,需要将这两位置高。参考位操作方法,写成: IE1 |= BIT6+BIT7; //URXIE0和UTXIE0置高 #define URXIE0 (0x40) #define UTXIE0 (0x80) IE1 |= URXIE0+UTXIE0; 中断: 430单片机具有中断向量表,位于ROM最高段512K中(0xFE00~0xFFFF),事先需要将中断服务程序入口地址装入中断向量表内。中断的复杂操作过程都可以交给C编译器来完成,程序员只需要专注于编写中断服务程序。定义中断服务程序的方法非常简单,例如: #pragma vector=BASICTIMER_VECTOR //Basic Timer中断向量 __interrupt void BT_ISR(void) //声明一个中断服务程序,名为BT_ISR() { ...... //此处为中断服务程序 } 中断: MSP430x42x.h头文件内定义的中断资源如下: /************************************************************ * Interrupt Vectors (offset from 0xFFE0) ************************************************************/ #define BASICTIMER_VECTOR (0 * 2u) /* 0xFFE0 Basic Timer */ #define PORT2_VECTOR (1 * 2u) /* 0xFFE2 Port 2 */ #define PORT1_VECTOR (4 * 2u) /* 0xFFE8 Port 1 */ #define TIMERA1_VECTOR (5

文档评论(0)

qiwqpu54 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档