MSP430单片机个人学习笔记

MSP430单片机个人学习笔记

注:本文章摘自网络与论坛,仅用于记录学习笔记,分享学习经历。

上点复位信号 :POR(Power On Reset)
上电清除信号 :PUC (Power Up Clear)

CPU产生条件:

  1. POR产生时
  2. 启动看门狗时,看门狗定时器计满。
  3. 看门狗写入错误安全参数值
  4. 片内Falsh写入错误的安全参数

POR与PUC都会引发复位

复位后初始状态:

  • /RST引脚被设置为复位模式
  • 所有I/O引脚被设置为输入
  • 外围模块被初始化
  • 状态寄存器SR复位
  • 看门狗激活,进入工作模式
  • 程序计数器PC装入0xFFFEH处的地址,从此地址开始执行程序。

内部RC振荡器
系统复位后内部RC振荡器磨人为系统时钟,但精度比较差,不适合使用诸如串口通信场合波特率会随温度和电压变化而变化,不建议使用(约800KH)

低功耗设计原则

  • 电压宜低就不高
  • 系统宜静就不动
  • 时钟宜慢就不快

低功耗设计

  • 延时程序用定时中断实现
  • 采用键盘扫描方式时,扫描程序可以纳入外部中断服务
  • 尽量减少CPU抗干扰中的冗余指令及软件陷阱
  • 看门狗与电呀侦测功能应尽量取消
  • 用中断代服务替查询
  • 尽量减少CPU的运算量
  • IO间隙运行

低功耗模式配置方法
IAR软件操作

  • 专门的低功耗操作语句
  • BIS_SR(LPM3_bits+GIE);//进入
  • _BIC_SR_IRQ(LPM#_bits);//退出

IAR基础设置(Other勾选)
在这里插入图片描述
在这里插入图片描述
软件仿真
在这里插入图片描述
链接硬件
在这里插入图片描述
<>表示头文件在IAR默认的文件夹中,“”存在于自己的项目文件当中

<>表示头文件在IAR默认的文件夹中,“”存在于自己的项目文件当中

MSP430开发板灯光闪烁代码

#include <msp430x14x.h>

#define uchar unsigned char         //定义数据类型

#define CPU_F ((double)32768)    //内部延时函数所需要的时钟频率大小,单位为Hz
#define delay_ma(x) __delay_cycles((long)(CPU_F*(double)x/1000.0)) //ms级延时函数
#define delay_us(x) __delay_cycles((long)(CPU_F*(double)x/1000000.0)) //us级延时函数

#define LED8PORT P2OUT          //P2口接入8个LED灯
#define LED8SEL  P2SEL
#define LED8DIR  P2DIR

//********************************************************************
//                  MSP430单片机内部看门狗初始化函数
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值