【TI博客大赛】关于MSP430FR5739的PxSELC寄存器BUG说明

2012-11-15 23:05 719 0 分类: MCU/ 嵌入式

目前官方所提供的user's guide中确实还未纠正此错误,对于PxSELC寄存器未起到任何作用的原因就是手册中所描述的寄存器偏移地址不正确,导致开发工具中头文件对此寄存器的地址也不符,PxSELC的正确偏移地址应该为0x16和0x17。可能此片子还未大量应用,所以此问题未被广泛发现。

同时我也对上述帖子中的错误理解予以纠正,并对此寄存器的用法加以简单说明。
PxSELC寄存器的主要用途是同时取反PxSEL0和PxSEL1,而不是我上面帖子中所说的置位。
在选择IO引脚功能时,如果需要同时更改PxSEL0和PxSEL1,则可以通过设置PxSELC实现一步到位的效果,如果只需更改PxSEL0或者PxSEL1中的一个,那就没有必要使用PxSELC寄存器了。
如:
假设当前P1SEL0=0x00,P1SEL1=0x00;现在要配置成P1SEL0=0x01,P1SEL1=0x01;则通过一个语句P1SELC=0x01;即可实现。
假设当前P1SEL0=0x01,P1SEL1=0x00;现在要配置成P1SEL0=0x00,P1SEL1=0x01;则P1SELC=0x01;即可实现。
假设当前P1SEL0=0x00,P1SEL1=0x00;现在要配置成P1SEL0=0x00,P1SEL1=0x01;则老老实实的改变P1SEL1|=0x01;

再举一个例子,如果当前P2SEL0=0x85,P2SEL1=0x33;则执行P2SELC=0xFF语句后变为:
P2SEL0=0x7A,P2SEL1=0xCC;

PxSELC类似于一个只写寄存器,读出的内容为0,相当于写后自动清0.

广告

文章评论 0条评论)

登录后参与讨论
相关推荐阅读
31chenshiyong_633757973 2013-03-07 15:43
[博客大赛]嵌入式系统之思
嵌入式系统的英文名称叫Embedded System,对于我们学习电子技术相关的人员来说,对于电子系列的英文名字必须记的,外加对于其的英文缩写也要记得,这样在我们以后读取datasheet的时候,...
31chenshiyong_633757973 2012-12-18 22:47
【博客大赛】怎样成为优秀的电子工程师?
  “工程师是科学家;工程师是艺术家;工程师也是思想家。”一位伟大的工程师曾经提出过这样的一段感言。不错,工程师是利用自然科学来创造工程的人。工程既是物质的也是思想上的。许多不朽的工程,伟大的...
31chenshiyong_633757973 2012-11-15 23:19
【TI博客大赛】Code Composer Studio v5.1 开发环境下使用MSP430
  Code Composer Studio™ v5.1 开发环境下使用MSP430 推荐大家使用CCSv5,如下所示           ...
31chenshiyong_633757973 2012-11-15 23:14
【TI博客大赛】给大家转发个MSP430 JTAG(USB的和并口的)与目标板连接需要注意的几点总结
  经常看到有初学MSP430的朋友在坛里询问MSP430 JTAG与目标板连接方面的问题,我在这里给大家总结一下,希望能给初学MSP430的朋友拨云见日,不再疑惑。  MSP430的JTA...
31chenshiyong_633757973 2012-11-15 23:11
【TI博客大赛】MSP430学习笔记
这只是我在学习TI公司生产的16位超的功耗单片机MSP430的随笔,希望能对其他朋友有所借鉴,不对之处还请多指教。 下面,开始430之旅。 讲解430的书现在也有很多了,不过大多数都是详细说明...
31chenshiyong_633757973 2012-11-15 23:08
【TI博客大赛】MSP430数模转换程序
  MSP430数模转换程序 单通道多次转换源程序,自己写的,给大家分享一下哈!   #include "msp430g2553.h" #define uchar u...
我要评论
0
0
广告