LPC2478 通用输入/输出口(GPIO)
来源:互联网 发布:超人钢铁之躯 知乎 编辑:程序博客网 时间:2024/05/21 07:46
P0.0-P0.31 低速控制、高速控制
P1.0-P1.31 低速控制、高速控制
P2.0-P2.31 高速控制
P3.0-P3.31 高速控制
P4.0-P4.31 高速控制
共160个I/0口
P0和P2端口的每个引脚都可以提供中断功能。
每个中断都可以被编程为上升沿、下降沿或边沿产生中断。
边沿检测是异步的,因此可以在没有时钟的情况下(例如掉电模式)操作。
可以掉电唤醒。
寄存器为软件提供挂起的上升沿中断、挂起的下降沿中断和整个挂起的GPIO中断。
GPIO0与GPIO2中断与外部中断3事件共用相同的VIC通道。
GPIO口控制寄存器
1.GPIO端口方向寄存器IODIR和FIODIR (31:0) 0 控制的引脚为输入 1控制的引脚为输出。 IO0DIR=0xFFFFFFFF;//低速P0口32个引脚全部为输出。
每个高速GPIO口也可以通过字节和半字访问的寄存器来控制。
字节访问的寄存器
FIOxDIR0 ( 8位) 对应 Px.0-Px.7
FIOxDIR1 (8位) 对应 Px.8-Px.15
FIOxDIR2 ( 8位) 对应 Px.16-Px.23
FIOxDIR3 (8位) 对应 Px.24-Px.31
半字访问的寄存器
FIOxDIRL (16位) 对应 Px.0-Px.15
FIOxDIRL (16位) 对应 Px.16-Px.31
2.GPIO端口输出置位寄存器IOSET和FIOSET(31:0) 0 控制的引脚输出不改变 1 控制的引脚输出设为高电平。 IO0SET=0xFF; //P0口的0到7脚输出为高电平
FIOxSET0 FIOxSET1 FIOxSET2 FIOxSET3 FIOxSETL FIOxSETU
3.GPIO端口输出清零寄存器IOCLK和FIOCLK (31:0)0 控制的引脚输出不改变 1 控制的引脚输出设为低电平。
FIOxCLK0 FIOxCLK1 FIOxCLK2 FIOxCLK3 FIOxCLKL FIOxCLKU
4.GPIO端口引脚值寄存器IOPIN和FIOPIN(31:0)
FIOxPIN0 FIOxPIN1 FIOxPIN2 FIOxPIN3 FIOxPINL FIOxPINU
5.高速GPIO端口屏蔽寄存器FIOMASK(31:0) 0 引脚正常,未被屏蔽 1 屏蔽对应引脚
FIO0MASK=0xFFFFFF00;//P0口的0到7脚可以输出,其它脚被屏蔽
FIOxMASK0 FIOxMASK1 FIOxMASK2 FIOxMASK3 FIOxMASKL FIOxMASKU
I/O端口的中断寄存器(P0和P2口)
1.GPIO整体中断状态寄存器IOIntStatus(31:0)
31:3 保留
2 P2Int 0 在P2上没有挂起的中断 1 在P2上至少有一个挂起的中断
1 保留
0 P1Int 0 在P0上没有挂起的中断 1 在P0上至少有一个挂起的中断
if(IOIntStatus & 0x01) //如果PORT0上有中断挂起
if(IOIntStatus & 0x04) //如果PORT2上有中断挂起
2.上升沿寄存器的GPIO中断使能IO0IntEnR和IO2IntEnR(31:0) 0 上升沿中断禁能 1 上升沿中断使能
IO0IntEnR=IO0IntEnR | 0x01; //使能P0.0引脚的上升沿上断
3.下降沿寄存器的GPIO中断使能IO0IntEnF和IO2IntEnF(31:0) 0 下降沿中断禁能 1 下降沿中断使能
IO0IntEnF=IO0IntEnF |0x01; //使能P0.0引脚的下降沿中断
4.上升沿寄存器的GPIO中断状态IO0IntStatR和IO2IntStatR(31:0) 0 对应引脚上没有上升沿中断 1 对应引脚上出现上升沿中断
if(IO0IntStatR & 0x01) //如果P0.0有上升沿中断产生
5.下降沿寄存器的GPIO中断状态IO0IntStatF和IO2IntStatF(31:0) 0 对应引脚上没有下降沿中断 1 对应引脚上出现下降沿中断
6. GPIO中断标志清零寄存器IO0IntClr和IO2IntClr(31:0) 向这些寄存器的某些位写入“1”,将清零对应引脚的中断标志
SCS(System Control and Status Register) 31:0 当0位取值为 0 P0和P1口 低速模式 取1 时 ,P0和P1口 高速模式
- LPC2478 通用输入/输出口(GPIO)
- LPC2478 GPIO 输出控制
- GPIO-输入/输出配置
- GPIO输出-----点灯(输出)和按键(输入)
- LPC2478的GPIO使用详解
- 通用输入输出口(GPIO)
- 6410 gpio口输入和输出的理解
- STM32的GPIO口的输出:开漏输出和推挽输出 浮空输入
- LPC2478入门笔记——GPIO篇
- stm32 GPIO原理: 输入和输出控制
- STM8 通用输入输出口--GPIO
- STM8 通用输入输出口(GPIO)
- STM8 通用输入输出口(GPIO)
- STM8 通用输入输出口(GPIO)
- STM8 通用输入输出口(GPIO)
- 实验记录三 通用输入输出(GPIO)
- ucgui移植LPC2478(二)
- arm11 Tiny6410 gpio驱动实现输入和输出
- js frame 框架编程与frameElement
- IT四书五经
- window 对象中的定时器-DHTML对象
- 约会
- 获取iPhone用户手机号
- LPC2478 通用输入/输出口(GPIO)
- android 锁屏
- 日语口语1.10 実はわが社は貴社の取り扱い製品に興味を持っておりますので
- [ZOJ1391][POJ1436] Horizontally Visible Segments
- vc中20个开发小技巧
- iPhone中关闭程序的可用方法
- 初学者分析MFC代码
- 同步机制
- createfile 中生成的文件如何清空?