MSP430上电复位后, IO 默以为输入状况,看门狗敞开。一般来说比如 默以为输入状况,看门狗敞开。一般来说比如 那些,复位后默许看门狗是制止的而 MSP430则默许是敞开看门狗的 ,与 C8051F相似 。对 于咱们开发调试 进程 来说, 前期都 是制止看门狗 居多 ,所以一般新建 ,所以一般新建 ,所以一般新建 430工程,都会 工程,都会 有下面 句子:
WDTCTL = WDTPW + WDTHOLD;
WDTCTL是看门狗 的操控寄存器,长度为 16 位,其高 位,其高 8位是看门狗口令,固定为 位是看门狗口令,固定为 0x5A, 对 WDTCTL进行写操作时,有必要运用该口令 进行写操作时,有必要运用该口令 WDTPWWDTPWWDTPWWDTPW ,写错口令会导致体系复位。
WDTHOLD是对看门口操控寄存器的第八位写 1,制止看门狗时钟,停计数。体系复位 默许值为 0,即敞开看门狗计数 。
MSP430G2231的 IO 是不支持位寻址的,假如之前有 是不支持位寻址的,假如之前有 51 运用经历,刚上手 430 或许觉得 很别扭。 由于关于 51 ,用 sbit LED = P1^0;界说之后,能够十分便利运用赋值句子 界说之后,能够十分便利运用赋值句子 LED = 0;或许 LED = 1; 对 P1.0 口进行电平操控。而对 430的特定管脚操控时分,却要经过一些与或非等运 的特定管脚操控时分,却要经过一些与或非等运 算来完成,如 P1OUT |= 0x01; 或许 P1OUT &= 0xfe;关于引脚特定方位或清零, 不选用 P1OUT = 0x01; 或许 P1OUT = 0x00;,道理是清楚明了 的, 由于 假如选用后者直接赋值,那么整个端口的电平状况或许都会改动。而一般状况我 假如选用后者直接赋值,那么整个端口的电平状况或许都会改动。而一般状况我 假如选用后者直接赋值,那么整个端口的电平状况或许都会改动。而一般状况我 假如选用后者直接赋值,那么整个端口的电平状况或许都会改动。而一般状况我 假如选用后者直接赋值,那么整个端口的电平状况或许都会改动。而一般状况我4 / 12
们都只是想对特定位操作,其它引脚电平不该受到影响。
当然,这仅是对习气 51 的人提个醒,要习气 的人提个醒,要习气 运用 这种表明办法,由于像 AVR、ARM 那 些,许多都是不支持位寻址的经过上述与或 非等运算来处理的。
当然,关于相似的操作咱们能够经过界说宏方法来处理如:
#define LEDON() P1OUT |= 0x01
#define LEDOFF() P1OUT &= 0xfe
这样,咱们运用的时分就直接 LEDON(); 或许 LEDOFF(); 来完成 LED的亮灭操控,进行代 码移植的时分,也会便利许多。
MSP430的低功耗,很大一部分是得益于它灵敏时 的低功耗,很大一部分是得益于它灵敏时 钟装备,之所以在这一章节没有介绍 它的时钟,而选用了默许设置( DCO 1MHz),是由于 ),是由于 ),是由于 它太灵敏了,所以显得杂乱。 先点灯, 学会 IO 操作,激起学习爱好。
IO 操作 首要触及以下几个寄存器:
P1REN :上下拉电阻使能寄存器 :上下拉电阻使能寄存器 ,用于装备管脚输入时的上下拉电阻 ,用于装备管脚输入时的上下拉电阻 ,用于装备管脚输入时的上下拉电阻 ,1使能,此刻与 使能,此刻与 P1OUT合作挑选上拉或许下, 1为上拉, 0位下拉 。
P1SEL:功用挑选寄存器 ,1为引脚 装备为运用 外围模块功用。
P1IE :中止使能寄存器 ,1使能引脚中止。
P1IES :中止触发沿挑选寄存器 ,1为下降沿触发, 0为上升沿触发。
P1IFG :中止标志寄存器 ,产生中止事情时相应方位 ,产生中止事情时相应方位 1。
P1DIR :方向寄存器 ,1为输出, 0为输入,复位默许状况。 为输入,复位默许状况。
P1OUT :输出寄存器 ,1时引脚输出高电平, 0时输出低电平。
P1IN :输入寄存器 ,用于读取 IO 电平 状况。
MSP430简介及G2231IO寄存器阐明
MSP430上电复位后,IO默认为输入状态,看门狗开启。一般来说诸如默认为输入状态,看门狗开启。一般来说诸如那些,复位后默认看门狗…
声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/yingyong/273141.html