001MSP430概述
1、MSP430系列单片机的特点
(1)超低功耗:生来就是为超低功耗设计的,从CPU内核结构到片上外设,以及整个芯片的生产制造都是本着超低功耗的原则来进行的,所以是一款实实在在的超低功耗单片机;
(2)强大的处理能力:16位的单片机,内部还有DMA控制器,还有硬件存卡器;
(3)高性能的模拟技术及丰富的片外资源;
(4)系统稳定工作;
(5)方便高效的开发环境;
(6)著名大厂商的产品,有丰富的开发资源和强大的技术支持;

更加完整的内部结构图:

2、单片机的CPU

三部分组成:寄存器文件堆,16位的累加单元ALU,两条总线(一条地址总线,一条数据总线);
16个寄存器文件里面,
R0-R3作为特殊用途,
R0用作程序指针PC(Program Counter,单片机在运行时,需要从程序存取区读取指令代码,就是根据PC中的值读取的);
R1作为SP,堆栈指针,单片机在运行过程中经常会发生中断,这时就需要保存现场数据,在保存现场数据的过程中,其实就是把CPU的寄存器和用到的临时变量都压入堆栈,CPU转去处理其他的东西,中断处理完后,再恢复现场,把压入堆栈的一些临时数据或CPU寄存器的一些内容弹出来,恢复到以前的状态,让程序继续执行;
R2作为SR,叫做状态寄存器,里面大概有8个标志位,或者是有一些控制位,用来显示逻辑运算的基本状态,比如加法状态是不是溢出,减法运算有没有产生负值,或者寄存器中是不是零等;
R3作为CG,常数发生器,主要用来在汇编语言中提高汇编的编译效果,MSP430实际上只有27条核心的汇编指令,可以大幅减少汇编指令的长度,提高执行效率;
R4-R15作为通用寄存器,都是单周梯度区的,操作非常快;
16位的ALU,比8位的大了一倍,数据总线与地址总线是分开的,加快了指令的执行速度,比8051的CPU的数据处理能力不只提高了2~3倍;
整个CPU就是为C语言设计的,因为是精简指令集,在设计时就考虑到编译器产生的结果,所以用C语言开发单片机效率是非常高的;写更少的代码,使用更少的周期;
3、MSP430应用

低功耗的重要性:
延长电池寿命、低电池花费、便携式应用、持久的电池减少责任、降低EMI(电池干扰)简化PCB、简单的供电设备;
001MSP430概述的更多相关文章
- 【AR实验室】ARToolKit之概述篇
0x00 - 前言 我从去年就开始对AR(Augmented Reality)技术比较关注,但是去年AR行业一直处于偶尔发声的状态,丝毫没有其"异姓同名"的兄弟VR(Virtual ...
- Recurrent Neural Network系列1--RNN(循环神经网络)概述
作者:zhbzz2007 出处:http://www.cnblogs.com/zhbzz2007 欢迎转载,也请保留这段声明.谢谢! 本文翻译自 RECURRENT NEURAL NETWORKS T ...
- Swift3.0服务端开发(一) 完整示例概述及Perfect环境搭建与配置(服务端+iOS端)
本篇博客算是一个开头,接下来会持续更新使用Swift3.0开发服务端相关的博客.当然,我们使用目前使用Swift开发服务端较为成熟的框架Perfect来实现.Perfect框架是加拿大一个创业团队开发 ...
- .Net 大型分布式基础服务架构横向演变概述
一. 业务背景 构建具备高可用,高扩展性,高性能,能承载高并发,大流量的分布式电子商务平台,支持用户,订单,采购,物流,配送,财务等多个项目的协作,便于后续运营报表,分析,便于运维及监控. 二. 基础 ...
- [C#] 进阶 - LINQ 标准查询操作概述
LINQ 标准查询操作概述 序 “标准查询运算符”是组成语言集成查询 (LINQ) 模式的方法.大多数这些方法都在序列上运行,其中的序列是一个对象,其类型实现了IEnumerable<T> ...
- 【基于WinForm+Access局域网共享数据库的项目总结】之篇一:WinForm开发总体概述与技术实现
篇一:WinForm开发总体概述与技术实现 篇二:WinForm开发扇形图统计和Excel数据导出 篇三:Access远程连接数据库和窗体打包部署 [小记]:最近基于WinForm+Access数据库 ...
- Java消息队列--JMS概述
1.什么是JMS JMS即Java消息服务(Java Message Service)应用程序接口,是一个Java平台中关于面向消息中间件(MOM)的API,用于在两个应用程序之间,或分布式系统中发送 ...
- [AlwaysOn Availability Groups]健康模型 Part 1——概述
健康模型概述 在成功部署AG之后,跟踪和维护健康状况是很重要的. 1.AG健康模型概述 AG的健康模型是基于策略管理(Policy Based Management PBM)的.如果不熟悉这个特性,可 ...
- μCos-ii学习笔记1_概述
一.μCos-ii _概述 网上关于μCosii的文章多不胜数,本人学习的过程中也参考了很多人的理解和想法,看的是卢有亮老师的<嵌入式实时操作系统-μC/OS原理与实践>(第2版),同时也 ...
随机推荐
- 微信支付开发若干问题总结,API搞死人(谢谢ζั͡ޓއއއ๓http://www.thinkphp.cn/code/1620.html)血淋淋的教训,第二次栽这里了
近日,我研究了微信支付的API,我是用简化版的API,首先简述一下流程: 1.通过APP_ID,APP_SCRECT获取网页授权码code, 2.利用code获取用户openid/userinfo 3 ...
- .Net调用非托管代码数据类型不一致的问题
什么是Net互操作?.Net不能直接操作非托管代码,这时就需要互操作了. c#中调用非托管c++函数,此函数又包含指向某个结构的指针,譬如指向c#中的byte数组.对于这样的参数,考虑到非托管变量 ...
- MD5加密Java实现
package cn.mldn.util; public class MD5Code { /* * 下面这些S11-S44实际上是一个4*4的矩阵,在原始的C实现中是用#define 实现的, 这里把 ...
- TestNG:org.openqa.selenium.firefox.NotConnectedException: Unable to connect
http://blog.sina.com.cn/s/blog_68f262210102vgzj.html 今天在尝试着用TestNG写一下自动化测试用例,以前也写过,不过用的是经常封装的代码,现在完全 ...
- 荣耀6 Plus 的屏幕大小pt计算方法
使用 gomobile 检测 华为荣耀 6 Plus 的屏幕大小为: 1080*1776 px ; 162pt*266.40pt ; 每pt像素个数:6.666665个. 而实际的数据是: 主 ...
- [SQL]sql语句如何修改字段长度
语法: alter table <表名> alter column <字段名> 新类型名(长度) 示例: 假如有名T1,字段名F1,原来F1为varchar(),现在要改为va ...
- java静态内部类
public class StaticInnerClass { int x=100; static class inner{ void doitInner() ...
- 什么是条带化(striping) ?(转载)
条带(strip)是把连续的数据分割成相同大小的数据块,把每段数据分别写入到阵列中的不同磁盘上的方法.简单的说,条带是一种将多个磁盘驱动器合并为一个卷的方法. 许多情况下,这是通过硬件控制器来完成的. ...
- Troubleshooting 'library cache: mutex X' Waits.
What is a 'library cache: mutex X' wait? The mutex feature is a mechanism to control access to in me ...
- OC基础(6)
getter/setter方法 点语法 Self关键字 Super关键字 *:first-child { margin-top: 0 !important; } body > *:last-ch ...