MSP430不占用IO实现单键电源开关

上传人:飞*** 文档编号:37883160 上传时间:2018-04-23 格式:PDF 页数:3 大小:17.83KB
返回 下载 相关 举报
MSP430不占用IO实现单键电源开关_第1页
第1页 / 共3页
MSP430不占用IO实现单键电源开关_第2页
第2页 / 共3页
MSP430不占用IO实现单键电源开关_第3页
第3页 / 共3页
亲,该文档总共3页,全部预览完了,如果喜欢就下载吧!
资源描述

《MSP430不占用IO实现单键电源开关》由会员分享,可在线阅读,更多相关《MSP430不占用IO实现单键电源开关(3页珍藏版)》请在金锄头文库上搜索。

1、MSP430 不占用IO 实现单键电源开关【特约专稿】本贴为微控论坛原创主贴特约嘉宾:张浩工程师天津众通网络科技服务有限公司 MSP430 提供了很好的低功耗能力,但是很多时候,一个外围电路就花费了很多额外的电力,造成低功耗无法彻底实现。现在很多电子设备都是使用电子开关控制设备是否工作的,大多教材上都是使用IO 中断来实现,并且占用两个 IO 口,一个是电源开关钮,另一个是用来控制电源的,通过电阻接一个三极管。个人认为,对于MCU 来说,节省 IO 口对功能实现很有意义,只有这样才能在有限的IO 口上设计更多的功能,特别是像F20XX的那种只有10 个 IO 的片子,更是如此。所以我设计了一个

2、利用NMI/RST来实现电源控制的方法。由于这个脚本来就是独立的,所以用它实现功能时就不会占用IO 了。要运行以下程序,只需要板子上有一个标准的带RESET 钮的上电复位电路即可。以下程序在MSP430F135上运行通过,原理简单,就不多说了,大家看程序:#include “msp430x13x.h“ volatile unsigned short AFlag; / Active Flag void main(void) WDTCTL = WDTPW + WDTHOLD + WDTNMI; / Stop watchdog timer P1DIR = 0xFF; / P1置为输出方式P1OUT

3、= 0xFF; / P1输出全置为1 P1SEL = 0x00; / P1上的复用功能全部关闭/其它 IO 没有使用到的也要这样初始化,不用的IO 电路上应该悬空,不要接地。_EINT(); AFlag = 0; IE1 |= NMIIE; / Enable WDT interrupt while(1) if(AFlag=1) WDTCTL = WDTPW + WDTNMI + WDTTMSEL + WDTSSEL + WDTCNTCL; / Start watchdogtimer IE1 |= WDTIE; / Enable WDT interrupt /这里写自己的程序,把程序做在一个有限

4、的循环里,这样做完之后就可以自动结束并关机。LPM3; /如需定时, 上边这个 LPM3要被包括在那个有循环的循环体中,这样才能实现类似便携式仪表5 分钟自动关机的效果。如果不使用定时也可以不要LPM3这句话。WDTCTL = WDTPW + WDTHOLD + WDTNMI; / Stop watchdog timer AFlag=0; else /如果周边设备在关机时有需要复位的或是关闭的在这里处理 LPM4; #pragma vector=WDT_VECTOR /看门狗定时中断服务_interrupt void wdt_timer(void) LPM3_EXIT; / Cleat LPM

5、3 bits from 0(SR) #pragma vector=NMI_VECTOR /非屏蔽中断服务_interrupt void nmi_button(void) if(AFlag=1) /AFlag=0; WDTCTL = 0x5B00; /以上两种写法都可以实现关机功能,但是第二个会引起复位,第一个不会,对要求现场一直保留的系统建议第一个语句写法。 else AFlag=1; IFG1 IE1 |= NMIIE; LPM4_EXIT; 另外,如果希望保留复位功能的话,其实可以在标志为1 时就把 NMI还回 RST的,这样按下去就复位,系统一启动就直接睡着,又会变成关机状态了,功能是一

6、样的。不过这种方法不能保留现场了,所以我才写成现在的样子。ORG 000H MAIN: MOV R1,#00H ;取表格初值LOOP1:;在表格里取数送到指定地址/ MOV A,R1 MOV DPTR,#SETTAB MOVC A,A+DPTR MOV DPTR,#07FFFH MOVX DPTR,A;/ INC R1 ; 表格加一AJMP LOOP1 ; 循环SETTAB: ;正弦表格 / DB 80H,83H,86H,89H,8DH,90H,93H,96H DB 99H,9CH,9FH,0A2H,0A5H,0A8H,0ABH,0AEH DB 0B1H,0B4H,0B7H,0BAH,0BCH

7、,0BFH,0C2H,0C5H DB 0C7H,0CAH,0CCH,0CFH,0D1H, 0D4H,0D6H,0D8H DB 0DAH,0DDH,0DFH,0E1H,0E3H, 0E5H,0E7H,0E9H DB 0EAH,0ECH,0EEH,0EFH,0F1H, 0F2H,0F4H,0F5H DB 0F6H,0F7H,0F8H,0F9H,0FAH, 0FBH,0FCH,0FDH DB 0FDH,0FEH,0FFH,0FFH,0FFH, 0FFH,0FFH,0FFH DB 0FFH,0FFH,0FFH,0FFH,0FFH, 0FFH,0FEH,0FDH DB 0FDH,0FCH,0FBH,0F

8、AH,0F9H, 0F8H,0F7H,0F6H DB 0F5H,0F4H,0F2H,0F1H,0EFH, 0EEH,0ECH,0EAH DB 0E9H,0E7H,0E5H,0E3H,0E1H, 0DEH,0DDH,0DAH DB 0D8H,0D6H,0D4H,0D1H,0CFH, 0CCH,0CAH,0C7H DB 0C5H,0C2H,0BFH,0BCH,0BAH, 0B7H,0B4H,0B1H DB 0AEH,0ABH,0A8H,0A5H,0A2H, 9FH, 9CH, 99H DB 96H, 93H, 90H, 8DH, 89H, 86H, 83H, 80H DB 80H, 7CH, 79

9、H, 78H, 72H, 6FH, 6CH, 69H DB 66H, 63H, 60H, 5DH, 5AH, 57H, 55H, 51H DB 4EH, 4CH, 48H, 45H, 43H, 40H, 3DH, 3AH DB 38H, 35H, 33H, 30H, 2EH, 2BH, 29H, 27H DB 25H, 22H, 20H, 1EH, 1CH, 1AH, 18H, 16H DB 15H, 13H, 11H, 10H, 0EH, 0DH, 0BH, 0AH DB 09H, 08H, 07H, 06H, 05H, 04H, 03H, 02H DB 02H, 01H, 00H, 00H

10、, 00H, 00H, 00H, 00H DB 00H, 00H, 00H, 00H, 00H, 00H, 01H, 02H DB 02H, 03H, 04H, 05H, 06H, 07H, 08H, 09H DB 0AH, 0BH, 0DH, 0EH, 10H, 11H, 13H, 15H DB 16H, 18H, 1AH, 1CH, 1EH, 20H, 22H, 25H DB 27H, 29H, 2BH, 2EH, 30H, 33H, 35H, 38H DB 3AH, 3DH, 40H, 43H, 45H, 48H, 4CH, 4EH DB 51H, 55H, 57H, 5AH, 5DH, 60H, 63H, 66H DB 69H, 6CH, 6FH, 72H, 76H, 79H, 7CH, 80H END

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 其它文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号