您现在的位置: 主页 > 嵌入式开发入门到精通 > 单片机技术进阶 > cortex-m0 lpc1114怎么切换引脚功能 -
本文所属标签:
为本文创立个标签吧:

cortex-m0 lpc1114怎么切换引脚功能 -

来源: 网络用户发布,如有版权联系网管删除 2018-09-08 

[导读]1.引脚都有哪些功能该怎么看?看具体引脚有什么功能,看上面的引脚图即可,这个图可以在LPC1114用户手册的第9章“Pin Configuration”找到。2.默认的引脚功能是什么?大部分的引脚默认功能都是GPIO,个别除外,例如P

本文引用地址: http://www.21ic.com/app/mcu/201808/784437.htm

1.引脚都有哪些功能该怎么看?

看具体引脚有什么功能,看上面的引脚图即可,这个图可以在LPC1114用户手册的第9章“Pin Configuration”找到。

2.默认的引脚功能是什么?

大部分的引脚默认功能都是GPIO,个别除外,例如P0.0引脚,默认是RESET。具体某个引脚的默认功能是什么,可以打开LPC1114用户手册第7章“I/O Configuration”查看引脚的寄存器。

例如,我们要看P0.2引脚的默认功能,首先打开LPC1114用户手册,然后找到第7章,打开7.4节前面的“+”号,把所有的引脚寄存器都展开,最后找到P0.2引脚的寄存器,就可以了。

该寄存器的前3位,也就是bit0~bit2,用来控制引脚的功能。看上图右上角的地方,Reset value就是默认的功能,000即选择P0.2。

3.如何选择引脚的其它复用功能?

从上面那个图中,可以看出,我们只要给引脚寄存器中的前3位写入规定的值,就可以变换引脚的具体功能了。例如,我们要把引脚PIO0_2选择为CT16B0_CAP0功能,就需要给PIO0_2寄存器的前3位写入0x2。

IOCON->PIO0_2&=~0x07;//P0.2寄存器前3位清零IOCON->PIO0_2|=0x02;//给P0.2寄存器前3位写0x2

通过上面两条语句,来实现引脚功能的选择。这种写法已经成了固定的格式,以后不论修改哪个引脚的功能,都以这种形式写。

有人会说,我直接给P0.2寄存器的前3位写0x2可以吗?例如:

IOCON->PIO0_2 = 0X2;

你这样直接写,当然可以,但是需要注意的地方很多,一不小心单片机就乱了,为什么呢?因为lpc1114作为一个32位的单片机,它的引脚寄存器也是32位的,其中的每一位,都代表着不同的控制位,这些可以查看寄存器得到,例如P0.2引脚的寄存器,它的完整寄存器定义如下:

你看它的bit4:3和bit9:6,这几位中,有些位默认就是1,如果你要直接赋值,需要让这些位保持原来的状态才可以。如果直接写0x2,那么这些原来是1的位,就成0了。所以我们在给寄存器赋值的时候,一般用“或”“与”的逻辑,改变我们想改变的位,不影响其它位的状态。




              查看评论 回复



嵌入式交流网主页 > 嵌入式开发入门到精通 > 单片机技术进阶 > cortex-m0 lpc1114怎么切换引脚功能 -
 

"cortex-m0 lpc1114怎么切换引脚功能 -"的相关文章

网站地图

围观()