MSP430常见问题之复位系统类

简介: Q1:请问msp430 怎么手动复位啊?是不是连到RST/NMI 上?但是这个脚不是和JTAG 连吗?我看到一些资料上说复位的话还要上拉电阻或者复位电路。A1:JTAG 功能只在下载程序时候使用,正常工作中RST可以连接一个按键,按下按键实现430手动复位。

Q1:请问msp430 怎么手动复位啊?是不是连到RST/NMI 上?但是这个脚不是和JTAG 连吗?我看到一些资料上说复位的话还要上拉电阻或者复位电路。
A1:JTAG 功能只在下载程序时候使用,正常工作中RST可以连接一个按键,按下按键实现430手动复位。上拉电阻是上电复位用的,手工复位一个BUTTON就行了。MSP430 单片机低电平复位。

Q2上电复位和硬件看门狗复位有什么区别吗,在程序里将两者分开,请问有办法将两者分开吗?
A2:上电复位时,内存被清零或为任意值,看门狗清零时并没有断电,内存里的原有信息被保留,同时上电复位无法通过标志位来判别,看门狗复位才可以通过WDTIFG 来判别。同时注意RESET 之后:
1、判断有无复位标志,若有,则为WDT 复位;若无,则为上电复位,并且设置复位标志。手动按键复位也同此理。
2、保证复位标志在复位程序中不被清除。汇编好办,那是自己在控制RAM 清除程序,C呢,就要注意了。
3、要注意快速断电/上电的问题。处理不好的话,不但RAM 中原先的内容有可能还存在,而且MCU复位很可能会失败

Q3:用MSP430F149做项目,但ROM写满后换成2418的(116K)的片子,编译软件用的是IAR 4.11B版本的,写进去后,原来IIC通信的都不行了,用示波器看IIC的时钟和数据波形都有,从24C512里就是读不出数据(在149里正常的);还遇到另一个问题:因为我这产品有时间显示,用的是外部2S的信号输入,有时候4分钟自动复位一次(很有规律),有时候无规律的自动复位.再者个人认为2系列的没有1系列的稳定抗干扰能力强。请发表看法?
A3:首先纠正一个观点,2 系列的稳定性要好与1系列。再者,从149换到2418,时钟上要做出一些调整,具体请参照用户指南和数据手册。很有规律的出现复位,建议用最小系统检测程序是否有误,或者外接电路的不正当操作。无规律的自动复位,请检查供电是否稳定,因2 系列多了BOR 模块,多了复位的触发源。
小提示:430 的I/O 口单个供电能力最高可达到15mA,但是整个芯片的总供电能力只有100mA 左右。

Q13:运行到断点,程序就复位,不能停在断点处,跟程序量比较大有关系吗?请问是什么原因?

A4:1、因为430单片机看门狗复位时间默认为32ms,如果你的程序在断点前的执行时间大于32ms,当然不能运行到断点,还有如果你的程序自身编写有问题,比如通讯数据过多和AD采样时间太长,以及还有可能有死循环,都会导致程序断点不停。
2、如果看门狗是关的,那么你可以检查下,在程序运行到断点前是不是把某个中断打开了,在运行到这个断点前,该中断产生要进入中断;但是有可能你的中断向量是否写对,写错程序会跑飞,你可以看下

Q5:用msp430f149,用的是IAR,程序在用仿真器仿真的时候能正常运行,但是停止仿真,去掉仿真器,再重新上电的时候就不能正常运行了,请问这是怎么回事啊?
A5:1、你先确定,重新上电后单片机有没有复位运行。可以加一个LED 做为标志,如果单片机跑起来,让这个LED 不停的闪;如果没有,就检查复位电路。
2、停止仿真是会出现程序停止的现象,手动将RST 与地短接复位可以恢复。但只有部分型号的芯片会有这个问题,比如149..开始仿真也会出现程序烧不进的现象,大部分时候也可以通过手动复位解决;
3、最终检查出是复位问题。

相关文章
|
编解码 前端开发 Android开发
如何让Android平台像IPC一样实现GB28181前端设备接入
好多开发者在做国标对接的时候,首先想到的是IPC摄像头,通过参数化配置,接入到国标平台,实现媒体数据的按需查看等操作。
|
2月前
|
监控 开发工具 Android开发
结合GB/T28181规范探讨Android平台设备接入模块心跳实现
本文介绍了GB28181标准中的状态信息报送机制,即心跳机制,用于监控设备与服务器间的连接状态。根据国标GB/T28181-2016,设备在异常时需立即发送状态信息,在正常状态下则按固定间隔(默认60秒)定期发送。若连续三次(默认值)未收到心跳,则视为离线。文章展示了在Android平台的GB28181设备接入模块(SmartGBD)中,如何调整心跳间隔为20秒及超时次数为3次,并给出了心跳消息的示例和异常处理代码片段。对于希望深入了解或遇到问题的开发者,作者提供了进一步交流的机会。
|
5月前
|
测试技术
【ZYNQ】ZYNQ7000 私有定时器及其驱动应用示例
【ZYNQ】ZYNQ7000 私有定时器及其驱动应用示例
114 0
|
开发工具 Android开发
Android平台GB28181设备接入端预置位查询(PresetQuery)探讨和技术实现
之前blog介绍了GB28181云台控制(PTZCmd)相关,本文主要是介绍下GB28181预置位查询。
160 0
|
10月前
|
监控 安全 API
6.8 Windows驱动开发:内核枚举Registry注册表回调
在笔者上一篇文章`《内核枚举LoadImage映像回调》`中`LyShark`教大家实现了枚举系统回调中的`LoadImage`通知消息,本章将实现对`Registry`注册表通知消息的枚举,与`LoadImage`消息不同`Registry`消息不需要解密只要找到`CallbackListHead`消息回调链表头并解析为`_CM_NOTIFY_ENTRY`结构即可实现枚举。
6.8 Windows驱动开发:内核枚举Registry注册表回调
|
5月前
|
监控 安全 API
7.2 Windows驱动开发:内核注册并监控对象回调
在笔者上一篇文章`《内核枚举进程与线程ObCall回调》`简单介绍了如何枚举系统中已经存在的`进程与线程`回调,本章`LyShark`将通过对象回调实现对进程线程的`句柄`监控,在内核中提供了`ObRegisterCallbacks`回调,使用这个内核`回调`函数,可注册一个`对象`回调,不过目前该函数`只能`监控进程与线程句柄操作,通过监控进程或线程句柄,可实现保护指定进程线程不被终止的目的。
7.2 Windows驱动开发:内核注册并监控对象回调
|
10月前
|
监控 安全 API
7.5 Windows驱动开发:监控Register注册表回调
在笔者前一篇文章`《内核枚举Registry注册表回调》`中实现了对注册表的枚举,本章将实现对注册表的监控,不同于32位系统在64位系统中,微软为我们提供了两个针对注册表的专用内核监控函数,通过这两个函数可以在不劫持内核API的前提下实现对注册表增加,删除,创建等事件的有效监控,注册表监视通常会通过`CmRegisterCallback`创建监控事件并传入自己的回调函数,与该创建对应的是`CmUnRegisterCallback`当注册表监控结束后可用于注销回调。
7.5 Windows驱动开发:监控Register注册表回调
|
存储 芯片
MSP430F5529库函数——模数转换模块(ADC12)软件触发
MSP430F5529库函数——模数转换模块(ADC12)软件触发
254 0
msp430 I/O端口中断实验
单片机的P1.0引脚连接一个LED灯, P1.1引脚连接一个开关。要求 编写程序,利用中断方法检测P1.1引脚处的开关是否被按下。每按一下开关,P1.0连接的LED 亮灭状态就变换一次。
134 0
msp430 I/O端口中断实验