欢迎来到天天文库
浏览记录
ID:40405645
大小:497.00 KB
页数:25页
时间:2019-08-01
《MSP430单片机原理》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第2章MSP430单片机原理2.1MSP430F249单片机基本结构与原理MSP430F249的主要结构特点供电电压范围1.8V~3.6V。超低功耗:活动状态270uA(1MHz,2.2V);待机模式0.3uA;关机模式0.1uA。16位RISC精简指令集处理器。时钟系统:多种时钟源,可灵活使用。时钟频率达到16MHz;具有内部振荡器;可外接32kHz低频晶振;外接时钟输入。12位A/D转换器,内部参考电压,采用保持电路。16位定时器A,3个捕获/比较寄存器。16位定时器B,7个捕获/比较寄存器。4个通用串口:USCI_A0和USCI_A1、USCI_B0和USCI_B1(I2C、
2、SPI)。60kB+256B的flash程序存储器,2kB的RAM数据存储器。64引脚QFP封装。MSP430F249的主要结构特点MSP430F24x系列单片机功能结构示意图MSP430F249单片机引脚图(1)CPU简介MSP430单片机的CPU为16位RISC精简指令集的处理器,只有27条正交汇编指令和7种寻址方式。RISC处理器基本上是为高级语言所设计的,编译程序对正交指令系统很容易做到最优化,利于产生高效紧凑的代码。MSP430CPU中集成了16个16位通用寄存器R0~R15,其中R0~R3分别复用为程序指针PC、堆栈指针SP、状态寄存器SR和常数发生器CG1/CG2。这
3、些寄存器之间的操作只需要一个CPU周期。1)程序计数器(PC指针)也就是CPU专用寄存器R0,PC指针是一个16位寄存器,可以寻址64kB的空间。MSP430单片机的指令长度以字(16位)为最小单位,而程序存储器单元以字节(8位)为单位,所以PC的值总是偶数。2)堆栈指针SP为CPU专用寄存器R1,SP指针为16为寄存器,也总是偶数的。堆栈是在片内RAM中实现的,通常将堆栈指针设置为片内RAM的最高地址加一。使用C语言编程时,集成编译软件IAR会自动设置堆栈指针初始值。对程序员来说无需关心细节,编译结束后在信息窗提示的编译结果会给出RAM使用量的大小,只要不超过RAM区实际容量并稍
4、留余量给堆栈用即可。使用汇编语言编程时必须注意堆栈指针的正确设置,否则堆栈可能会覆盖你的变量区,导致程序出错。(2)片内存储器MSP430单片机采用冯·诺依曼结构,程序存储器flash、数据存储器RAM、特殊功能寄存器以及中断向量全部映射到64kB内部地址空间。MSP430不同型号单片机地址空间略有不同,MSP430F249的存储器结构如表2-2所示。名称地址范围大小中断向量0xFFFF~0xFFC064B程序存储区flash0xFFC0~0x1100约60kB信息存储区0x10FF~0x1000256B引导区0x0FFF~0x0C001kB数据存储区RAM0x09FF~0x020
5、02kB16位外围模块0x01FF~0x0100256B8位外围模块0x00FF~0x0010240B特殊寄存器0x000F~0x000016B模式说明活动模式CPU、所有时钟与外设都为激活状态LPM0CPU关闭、ACLK和SMCLK外设时钟可用LPM1CPU关闭、ACLK和SMCLK外设时钟可用,若活动模式中DCOCLK未使用,则DCO发生器也禁止LPM2CPU关闭、MCLK和SMCLK禁止,DCO发生器使能,ACLK可用LPM3CPU关闭、MCLK和SMCLK禁止,DCO发生器禁止,ACLK可用LPM4CPU关闭且禁用所有时钟表2-3工作模式表2.2MSP430单片机的C语言基
6、础C语言是一种结构化的高级语言,其优点是语言简洁、表达能力强、使用方便灵活、可读性好、可移植性强。C语言程序本身不依赖单片机硬件,如果更改工程项目中的单片机型号,对C语言程序稍加修改就可以进行程序移植,而且移植程序时不一定要求程序开发人员详细掌握新型号单片机的指令系统。C语言程序的书写格式十分自由。一条语句可以写成一行,也可以写成几行;还可以在一行内写多条语句;但是需要注意的是,每条语句都必须以分号“;”作为结束符。为了C语言程序能够书写清晰,便于阅读、理解和维护,在书写C语言程序时最好遵循以下规则。a)一个声明或一条语句占一行;b)不同结构层次的语句,从不同的起始位置开始,机缩进
7、相同的字数;c)用{}括起来的部分表示程序的某一层次结构。1)C语言的标识符是用来标识源程序中某个对象名字的。这些对象可以是函数、变量、常量、数组、数据类型、存储方式、语句等。一个标识符由字符串、数字和下划线等组成,第一个字符必须是字母或下划线,通常以下划线开头的标识符是编译系统专用的,因此在编写C语言源程序时一般不要使用以下划线开头的标识符,而将下划线用作分段符。标识符的长度由系统决定,标识符最长可达255个字符,编写源程序时标识符的长度不要超过32个字符。2)关键
此文档下载收益归作者所有