MSP430单片机学习心得总结

2020-04-18 03:18

改变CCS字体方法:

perferance>General>Apperance>Colors and Fonts >Basic>Text Font

将c语言编译成汇编语言之后执行。如果c语言结构不好,则编译后 会出现编译成汇编后代码冗余, 使得执行效率不高。

板子有可能与电脑连接出问题,可以拔下重插一次。

在单片机内部flash存储空间有剩余时,可以用于数据存储空间, 并且可以使用单片机程序进行数据管理。 POR PUC是复位信号

看门狗定时器溢出发生复位 复位时设置如下:

1.RAM堆栈的指针指到最顶端 2.初始化看门狗 3.初始化外设 GIE是总中断

具有欠压复位功能 工作电流小于20UA 待机电流小于0.8UA 4个特殊功能寄存器 R0是PC指针 R1是堆栈指针 R2是状态寄存器 R3是常数发生器

12个通用寄存器R4-R15 27条内核指令

24条仿真指令 7中地址模式 无累加器

三个时钟:

ACLK辅助时钟:频率较低,低速外设 MCLK是主时钟,CPU运行的时钟,高频 SMCLK是次主时钟,高速外设

DCO是数字震荡控制器1M 8M 12M 16M共4个级别,可以通过 内置数据进行设置

内置VLO低频振荡器,频率为4-20khz。所以可以通过DCO进行分频 Timer_A频率可达系统振荡频率,用于定时器时,最小单位时间 是20ns

2553的电阻有0~15共16中。用RSEL选择。RSEL与DCO配合 ,值越大 频率越大。

LF是外接时钟

USART支持UART、SPI 共2种通讯方式 USCI支持 UART、I2C、SPI 共3种通讯方式

关于变量:

static变量是对于局部变量而言,如果不定义成静态变量,则 每次执行时都会被重新初始化,静态变量则不重新初始化。 全局变量和静态变量是存储在RAM中的。

extern是外部变量,即将一个文件中的变量在另一个文件中 使用。如在文件1中声明了变量z,在文件2中声明extern int z 就可以使用文件1的z

I/O口赋值方法与C51中的相同,可以使用OXxx或OXxxxx赋值。 对P管脚整体赋值是对寄存器的赋值操作

BIT0,BIT1,BIT2,BIT3分别表示二进制的第一位,二位, 三位为1,四位为1.表示0x01,0x02,,0x04,0x08.

P1OUT|=BIT1,是除了第一位的寄存器值被改变,其他位的值 都不变,这样可以防止对其他位做了误操作。

关于逻辑操作:

&0xff与|0x00则不改变原值

^BIT0分为^0和^1,^1则每次之前的状态都改变,^0则每次之前的 状态都不变。因此^BIT0表示^0x0001,即前15位都不改变状态 只有最后一位翻转,可以用于位翻转操作。

<<移位操作经常用于数值计算以及某些循环操作。左移n位表示 *2^n.

必须先对需要的未进行输入输出设置,之后才能进行读写操作。

模数转换器具有14路输入。

定时器与比较器配合,可以得到某个时间函数,如果知道了某 物理量随时间的变化规律,就可以进行测量。

利用定时器和RAM等存储数据的模块或数组,可以实现任意PWM波的 产生,再利用电容的充放电作用可以模拟出任何的周期性波形,方 法如下:定时器赋初值,启动定时器,计数停止后进入中断,在中 断中将下一个要计的时间加在初值上,继续计数。如此循环。每次 进入中断时都翻转一下输出电平。定下某个循环的次数作为一个大

周期。

P口要选择作为I/O口还是作为寄存器,选定后还要在方向寄存器中 确定是输入还是输出。

PXDIR为0时,要使用PxREN进行上拉下拉操作,上拉则默认输入是高 电平,下拉则默认是低电平。如P1REN|=BIT0;

不操作时都默认为下拉。可以在P1REN寄存器里找到各位状态。

上电后P1DIR全部为0,即输入状态。P1OUT 的7~1都是1,p1.0是0. P1IN 的P1.1 P1.2为高,其他为低。

在使用时应该先分清自己是要输入还是要输出,然后可以根据需要 使用P1REN调整初始状态。

I/O口作为输出时,如果输出寄存器P1OUT是高,则对输入寄存器PIN 有影响,会直接将P1IN寄存器变为高电平,这就是那位学长说的要 注意的问题,要尽量避免,如在进行初始化时P1OUT =0X00;不应该 利用这一现象,这不正宗。

I/0口的中断注意事项:

1.寄存器名称根据芯片的寄存器名称设置,2553是IE1,IE2,不是 P1IE,P2IE (要以调试时的寄存器为准,不要看头文件中的。) 2.IE1为1是开中断,不要搞反了

3.将需要的端口的PxREN置1,即接上拉电阻。 4.标志位要软件清零

5.逻辑判断时要加括号,否则不能执行

6.不必局限于头文件中宏定义的OFIE,OFIFG等,P1,P2的所有管脚

都可以独立中断。可以独立设置。

7.PxSELx只要置1,那么中断就自动禁止,不管PxIE是什么

不同的编译软件的寄存器名称不一样,设置时需要根据实际的进行 设置,否则寄存器无效。!!!!!!!!!!

定时器是CCR0,CCR1,CCR2,CCR0的优先级最高,并且返回时不要 软件清除中断标志位,是自动复位的(相当于51的8位自动重装 定时器)。其他定时器必须软件清除中断标志位。CCR0,CCR1都是 计数值,相当于51的TH0,TL0.TH1,TL1.

关于定时器的连续工作模式和增计数模式????????

数据段的数据个数一般要超过256个才能通过8路AD转换。

MCLK的频率等于机器频率,每一个周期都能够完成一个基本操作。 一个指令周期等于1-6个机器周期,根据指令而定。可以参照MSP430 时钟设置及其总结一文。 ACLK用于低速外设 MCLK用于CPU

SMCLK用于高速外设

注意对寄存器进行位设置时的语法,可以是x|=a+b+c... x表示寄存器名称,a,b,c表示寄存器的位名。

多机USART通信时,数据格式为 :起始位 地址 停止位 起始位 数据


MSP430单片机学习心得总结.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:恩格斯对历史唯物主义贡献

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: