打印

关于LPC43XX系列IO配置方法:

[复制链接]
3231|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
lxj19901115|  楼主 | 2013-4-16 21:20 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
IO配置环节:
首先必须是能GPIO的时钟,
调用函数:
                        GPIO_CLKEnable();//自己编写
选择IO的功能:
                        LPC_SCU->SFSPX_Y:
                        X 代表具体IO端口 数字为 0~F
                        Y 示具体IO端口的管脚数目而定,最大数字为20
配置IO的方向:
                        主要操作的是LPC_GPIO_PORT 里面的DIR寄存器
                        主要操作为,0 表示此IO作为输入,1表示IO为输出
                        根据不同GPIO端口的分组的不同,将所有的IO统一到一个数组宽度为8的32位寄存器里面
                        具体分配可参考原理图,弄懂到底是怎么分配的
EX:配置一个4X4的矩阵:
     选择PA1_3 作为列:
     LPC_SCU->SFSPA_1 = 4;
     LPC_SCU->SFSPA_2 = 4;
     LPC_SCU->SFSPA_3 = 4;
     LPC_SCU->SFSPA_4        = 4;
     LPC_GPIO_PORT->DIR[4] |=  ((1 << 8) |(1 << 9)|(1 << 10));//PA1_3// 输出
     LPC_GPIO_PORT->DIR[5] |= (1 << 19);//PA4
     选择PB0_3 作为行:
     LPC_SCU->SFSPB_0        = 4;//配置为通用IO功能
     LPC_SCU->SFSPB_1 = 4;
     LPC_SCU->SFSPB_2 = 4;
     LPC_SCU->SFSPB_3 = 4;
     LPC_GPIO_PORT->DIR[5]&=~((1 << 20)| (1 << 21)|(1 << 22) | (1 << 23));//输入

     键盘设置为一个按键对应一个IO,共阴,在此IO需设置为上拉输入
     选择PB0_4 作为例子
     LPC_SCU->SFSPB_0        = e;//配置为通用IO功能,使能上拉,禁止下拉,输入缓冲使能,IO反转快速,并是能滤波功能
     LPC_SCU->SFSPB_1 = e;
     LPC_SCU->SFSPB_2 = e;
     LPC_SCU->SFSPB_3 = e;
     LPC_GPIO_PORT->DIR[5]&=~((1 << 20)| (1 << 21)|(1 << 22) | (1 << 23));//输入
     反之共阳,则IO需设置为下拉输入
     LPC_SCU->SFSPB_0        = 0x18;//配置为通用IO功能
     LPC_SCU->SFSPB_1 = 0x18;
     LPC_SCU->SFSPB_2 = 0x18;
     LPC_SCU->SFSPB_3 = 0x18;
     LPC_GPIO_PORT->DIR[5]&=~((1 << 20)| (1 << 21)|(1 << 22) | (1 << 23));//输入
     关于SFSPX_Y 寄存器位操作说明:
     BIT 2:0 选IO功能,
     BIT 3
                             0,禁止下拉
                             1,开启下拉
     BIT 4
                             0,使能上拉
                             1,禁止下拉
     BIT 5
          0,IO反转速度为低速
          1,  IO反转为高速
     BIT 6
          0,输入缓冲禁止
          1,输入缓冲使能
     BIT 7
                             0,使能滤波
                             1,禁止滤波

       

相关帖子

沙发
xidaole| | 2017-2-17 21:08 | 只看该作者
收藏!

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

5

主题

94

帖子

1

粉丝