MSP 430研发笔记经验 MSP_430学习笔记.pdfVIP

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
MSP 430研发笔记经验 MSP_430学习笔记

MSP430学习笔记 (1) 这只是我在学习 TI 公司生产的 16位超的功耗单片机 MSP430 的随笔,希望能对 其他朋友有所借鉴,不对之处还请多指教。 下面,开始 430 之旅。 讲解 430 的书现在也有很多了,不过大多数都是详细说明底层硬件结构的,看了 不免有些空洞和枯燥,我认为了解一个 MCU 的操作首先要对其基础特性有所了 解,然后再仔细研究各模块的功能。 1.首先你要知道 msp430 的存储器结构。典型微处理器的结构有两种:冯。诺依 曼结构——程序存储器和数据存储器统一编码;哈佛结构——程序存储器和数据 存储器分开编码;msp430 系列单片机属于前者,而常用的 mcs51 系列属于后者。 0-0xf 特殊功能寄存器;0x10-0x1ff 外围模块寄存器;0x200-?根据不同型 号地址从低向高扩展;0x1000-0x107f seg_b0x1080_0x10ff seg_a 供 flash 信息存储 剩下的从 0xffff 开始向下扩展,根据不同容量,例如 149 为 60KB,0xffff- 0x1100 2.复位信号是 MCU 工作的起点,430 的复位型号有两种:上电复位信号 POR 和上 电清除信号 PUC。POR 信号只在上电和 RST/NMI 复位管脚被设置为复位功能,且 低电平时系统复位。而 PUC 信号是 POR 信号产生,以及其他如看门狗定时溢出、 安全键值出现错误是产生。但是,无论那种信号触发的复位,都会使 msp430 在 地址 0xffff 处读取复位中断向量,然后程序从中断向量所指的地址开始执行。 复位后的状态不写了,详见参考书,嘿嘿。 3.系统时钟是一个程序运行的指挥官,时序和中断也是整个程序的核心和中轴 线。430 最多有三个振荡器,DCO 内部振荡器;LFXT1 外接低频振荡器,常见的 32768HZ,不用外接负载电容; XT2 接高频 450KHZ-8M,加外接电容。 430 有三种时钟信号:MCLK 系统主时钟,可分频 1 2 4 8,供 cpu 使用,其他外 围模块在有选择情况下也可使用;SMCLK 系统子时钟,供外围模块使用,可选则 不同振荡器产生的时钟信号;ACLK 辅助时钟,只能由 LFXT1 产生,供外围模块。 4.中断是430 处理器的一大特色,因为几乎每个外围模块都能产生,430 可以在 没有任务时进入低功耗状态,有事件时中断唤醒 cpu,处理完毕再次进入低功耗 状态。 整个中断的响应过程是这样的,当有中断请求时,如果 cpu 处于活动状态,先完 成当前命令;如果处于低功耗,先退出,将下一条指令的 pc 值压入堆栈;如果 有多个中断请求,先响应优先级高的;执行完后,等待中断请求标志位复位,要 注意,单中断源的中断请求标志位自动复位,而多中断的标志位需要软件复位; 然后系统总中断允许位 SR.GIE 复位,相应的中断向量值装入 pc,程序从这个地 址继续执行。 这里要注意,中断允许位SR.GIE 和中断嵌套问题。如果当你执行中断程序过程 中,希望可以响应更高级别的中断请求时,必须在进入第一个中断时把 SR.GIE 置位。 其实,其他的外围模块时钟沿着时钟和中断这个核心来执行的。具体的结构我也 不罗索了,可以参考 430 系列手册。 明天开始,讲述 msp430 单片机 C 语言编程的故事。 DIV align=leftMSP430学习笔记 (2)/DIV 上回把 430 单片机的基础特性交待了一下,让大家整体有了结构的印象,今天我 想在写一下 c 语言对 430 编程的整体结构。基本上属于框架结构,即整体的模块 化编程,其实这也是硬件编程的基本法则拉 (可不是我规定的法则哦)。 首先是程序的头文件,包括#include MSP430x14x.h,这是 14 系列,因为常用 149;其他型号可自己修改。还可以包括#include data.h 等数据库头文件, 或函数变量声明头文件,都是你自己定义的哦。 接着就是函数和变量的声明 void Init_Sys(void);系统初始化 系统初始化是个整体的概念,广义上讲包括所有外围模块的初始化,你可以把外 围模块初始化的子函数写到 Init_Sys ()中,也可以分别写各个模块的初始化。 但结构的简洁,最好写完系统的时钟初始化后,其他所用到的模块也在这里初始 化。 void Init_Sys() { unsigned int i; BCSCTL1=~XT2OFF; //打开 XT2 振荡器 do {

文档评论(0)

f8r9t5c + 关注
实名认证
文档贡献者

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

版权声明书
用户编号:8000054077000003

1亿VIP精品文档

相关文档