当前位置:首页 > 单片机 > 单片机
[导读]GPIO使用LPC2478的GPIO是不能断开时钟的,上电就连接.处理GPIO主要就下面几步1.设置为普通IO模式2.设置输入输出方向3.设置值以下寄存器用于选择管脚是基本输入输出还是复用功能设置管脚是否具有上拉电阻其中,LPC的管脚

GPIO使用

LPC2478的GPIO是不能断开时钟的,上电就连接.处理GPIO主要就下面几步

1.设置为普通IO模式

2.设置输入输出方向

3.设置值

以下寄存器



用于选择管脚是基本输入输出还是复用功能



设置管脚是否具有上拉电阻


其中,LPC的管脚分为两种,一种是传统GPIO还有一种是高速GPIO,其实严格来说,所有的管脚都是高速管脚,但是为了兼容之前的软件和程序,可以使用之前的访问模式访问GPIO,说明如下



设置管脚方向



这个寄存器只能写1有效,写1将对应管脚高电平,写0不会将对应管脚低电平



需要将对应管脚低电平靠这个寄存器,但是这个寄存器不能控制管脚高电平



通过该寄存器获取相应端口的输入



这个寄存器的意思是说:将指定位的数据屏蔽,也就是说在这个寄存器中写入1的那一位,我们无法通过写入寄存器的方式控制他的电平也不能读取到他的当前有效电平,也就是说,那个管脚被锁住了

以下是使用代码,全部使用FIO高速管脚模式驱动

#ifndef__GPIO_H_

#define__GPIO_H_

#include"lpc24xx.h"

#include"common.h"

//p15输出P210输入

voidGPIOInit(void);

voidGPIOSet(u8value);

u8GPIOGet(void);

#endif


#include"gpio.h"

//p15输出P210输入

voidGPIOInit(void)

{

SCS|=(1<<0);//设置高速寄存器组方式访问端口

PINSEL2&=~(3<<10);//选择p15p210为GPIO管脚

PINSEL4&=~(3<<20);

PINMODE2&=~(3<<10);//全部使能上拉电阻

PINMODE4&=~(3<<20);

FIO1DIR|=1<<5;//P15输出

FIO2DIR&=~(1<<10);//P210输入

FIO1MASK=0x00;

FIO2MASK=0x00;//将1和2的数据掩码全部清除

}

voidGPIOSet(u8value)

{

if(value)FIO1SET|=(1<<5);

elseFIO1CLR|=(1<<5);

}

//p210按下高电平平时低电平

u8GPIOGet(void)

{

if((FIO2PIN&(1<<10))==0)

{

return1;

}

else

{

return0;

}

}



需要注意的是,对于P0和P1当使用FIO驱动的时候需要修改SCS修改系统控制寄存器,如下



否则就算是写入了FIO寄存器也不会体现在实际管脚上


本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

树莓派,(英语:Raspberry Pi,简写为RPi,别名为RasPi / RPI)是为学习计算机编程教育而设计,只有信用卡大小的微型电脑,其系统基于Linux。随着Windows 10 IoT的发布,用户可以用上运行...

关键字: 树莓派 gpio gpio编程

串行外设接口(SPI)是微控制器和外围IC(如传感器、ADC、DAC、移位寄存器、SRAM等)之间使用最广泛的接口之一。本文先简要说明SPI接口,然后介绍ADI公司支持SPI的模拟开关与多路转换器,以及它们如何帮助减少系...

关键字: gpio spi 串行外设接口

一、什么是GPIO? GPIO,英文全称为General-Purpose IO ports,也就是通用IO口。嵌入式系统中常常有数量众多,但是结构却比较简单的外部设备/电路,对这些设备/电路有的需要C

关键字: gpio 通用io口

//**********************************************************************//************************************...

关键字: gpio STM32

GPIO(General Purpose I/O Ports)意思为通用输入/输出端口,通俗地说,就是一些引脚,可以通过它们输出高低电平或者通过它们读入引脚的状态-是高电平或是低电平。 S3C2410共有117个I...

关键字: ARM gpio 硬件介绍

Ⅰ、写在前面完事开头难,只要肯努力;师傅领进门,修行看个人;当你看到本文,说明你是幸运的,作者接下来推出的一系列STM8S教程,将助你踏入STM8S的世界。本文是STM8S教程的开始,写给刚入门STM8S的朋友。学习本文

关键字: gpio stm8s 基础知识

以下是驱动的源码。#includelinux/config.h//配置头文件#includelinux/kernel.h//用于调用kmalloc和kfree#includelinux/sched.h//调度,进程睡眠,...

关键字: gpio mini2440 驱动led

一、API说明HAL库一共包含如下6个IO操作函数:1、读取某个引脚的电平状态:HAL_GPIO_ReadPin()2、写入某个引脚的电平状态:HAL_GPIO_WritePin()3、翻转某个引脚的电平状态:HAL_G...

关键字: gpio LED STM32

GPIO作为常用个开关量控制信号,广泛应用于工业领域的数据采集和驱动控制。当GPIO配置为DI和DO时,干节点与湿节点设计规范是否一致呢?GPIO配置为DI采集时,隔离方案是选择

关键字: gpio 电源技术解析

LPC2478的IIC使用LPC2478带有三个IIC接口,每个IIC都可以工作在主机或者从机模式下,LPC的IIC的架构是一种状态机的形式,在不同的的时间做不同的工作之后有不同的状态来表示,简单来说,就是发送起始字节之...

关键字: lpc2478 硬件iic
关闭
关闭