CSL学习笔记第八章GPIO模块

合集下载

嵌入式GPIO学习笔记

嵌入式GPIO学习笔记

GPIO学习笔记一、GPIO工作原理根据具体型号不同,STM32F103微控制器的GPIO可以提供最多112个多功能双向I/O引,这些1/O引脚GPIOA,GPIOB、GPIOC、GPIOD、GPIOE、GPIO和GPG等端口中,其中,端口号通常以大写字母命名,从“A”开始,依次类推,每个端口有16个I/O引脚,通常以数字命名,从0开始,直到15为止。

例如,STM32F103RCT微控制器的GPIOA有16个引脚、分别为PAO、PA1,PA2,……PA15。

二、内部结构输出驱动器(普通输出,复用功能输出):由多路选择器、输出控制和一对互补的MOS管组成。

输入驱动器:(模拟输入,上拉输入,下拉输入,浮空输入)由TTL肖特基触发器、带开关的上拉电阻电路盒带开关的下拉电阻电路组成。

三、工作模式:(1)普通推挽输出:引脚可输出低电平和高电平,用于较大功率驱动的输出。

(2)普通开漏输出:引脚只能输出低电平。

(3)复用推挽输出:引脚不仅具有推挽输出的特点,还使用片内外设的功能。

(4)复用开漏输出:引脚不仅具有开漏输出特点,而且还使用片内外设功能。

(5)上拉输入:用于默认上拉至高电平输入。

(6)下拉输入:用于默认下拉至高电平输入。

(7)浮空输入:用于不确定高电平输入。

(8)模拟输入:用于外部模拟信号输入。

四、GPIO相关库函数:GPIO_DeInit:将外设GPIOx寄存器恢复为复位启动时的默认值。

GPIO_Init:根据GPIO_InitStruct中指定的参数初始化外设GPIOx寄存器。

GPIO_SetBits:指定GPIO端口的指定引脚置高电平。

GPIO_ResetBits:指定GPIO端口的指定引脚置低电平。

GPIO_Write:向指定GPIO端口写入数据。

GPIO_ReadOutputDataBit:读取指定GPIO端口的指定引脚的输出。

GPIO_ReadOutputData:读取指定GPIO端口的输出。

gpio结构

gpio结构

GPIO结构1. 什么是GPIO?GPIO(General Purpose Input/Output)是通用输入输出的缩写,是指计算机系统中用于与外部设备进行通信的一组接口。

在现代计算机系统中,GPIO通常是通过芯片上的引脚实现的。

GPIO接口可以以输入或输出的方式与外部设备进行通信。

作为输入,GPIO接口可以接收来自外部设备的信号,如按钮的按下、传感器的检测等。

作为输出,GPIO 接口可以向外部设备发送信号,如控制LED灯的亮灭、控制电机的运转等。

2. GPIO的结构GPIO的结构通常由以下几个组成部分组成:2.1. 引脚GPIO的功能通过芯片上的引脚实现。

每个引脚都有一个特定的编号,用于标识该引脚的功能和位置。

在一些计算机系统中,引脚的编号可能是通过物理排列或者软件配置来确定的。

2.2. 寄存器GPIO的寄存器用于控制和配置引脚的功能和状态。

寄存器是计算机系统中的一种特殊存储器,用于存储特定的控制和状态信息。

通过对寄存器的读写操作,可以实现对GPIO引脚的配置和控制。

寄存器通常包括以下几个重要的部分:•数据寄存器(Data Register):用于读取和写入引脚的电平状态。

•方向寄存器(Direction Register):用于配置引脚的输入或输出方向。

•中断寄存器(Interrupt Register):用于配置引脚的中断功能。

2.3. 控制器GPIO的控制器是负责管理和控制GPIO的硬件模块。

控制器通常由一组寄存器和逻辑电路组成,用于处理GPIO的输入和输出。

控制器的功能包括:•配置引脚的输入输出方向。

•配置引脚的中断功能。

•读取和写入引脚的电平状态。

•控制引脚的上拉和下拉电阻。

2.4. 驱动程序GPIO的驱动程序是运行在计算机系统上的软件模块,用于提供对GPIO的操作接口。

驱动程序通过访问GPIO的寄存器和控制器,实现对GPIO引脚的配置和控制。

驱动程序通常包括以下几个重要的功能:•初始化GPIO的寄存器和控制器。

嵌入式学习笔记之GPIO详解

嵌入式学习笔记之GPIO详解

嵌入式学习笔记之GPIO详解一、什么是GPIO:GPIO,英文全称为General-Purpose IO ports,也就是通用IO口。

在嵌入式系统中常常有数量众多,但是结构却比较简单的外部设备/电路,对这些设备/电路有的需要CPU为之提供控制手段,有的则需要被CPU用作输入信号。

而且,许多这样的设备/电路只要求一位,即只要有开/关两种状态就够了,比如灯亮与灭。

对这些设备/电路的控制,使用传统的串行口或并行口都不合适。

所以在微控制器芯片上一般都会提供一个通用可编程IO接口,即GPIO。

接口至少有两个寄存器,即通用IO控制寄存器与通用IO数据寄存器。

数据寄存器的各位都直接引到芯片外部,而对这种寄存器中每一位的作用,即每一位的信号流通方向,则可以通过控制寄存器中对应位独立的加以设置。

这样,有无GPIO接口也就成为微控制器区别于微处理器的一个特征。

二、GPIO之LCD控制编程:S3C2440有130个I/O端口,分为A-J共9组:GPA、GPB、、、、GPJ,可以通过设置寄存器来确定某个引脚用于输入、输出还是特殊功能。

比如:可以设置GPH6作为输入、输出、或者用于串口。

1、通过寄存器来操作GPIO引脚1)GPxCON寄存器它用于配置引脚的功能端口A与端口B-J在功能上有所不同,GPACON 中每一位对应一根引脚(共23根引脚)当某位为0时,对应引脚为输出,此时在GPADAT 中相应位写入0或1,让此引脚输出低电平或高电平;当某位被设为1时,对应引脚为地址线或用于地址控制,此时GPADAT保留不用。

GPACON通常被设为全1,以便访问外部存储设备端口B-J在寄存器操作上完全相同,PxCon中每两位控制一根引脚,00表示输入,01表示输出,10表示特殊功能,11保留不用。

2)GPxDAT寄存器它用于读写引脚,当引脚被设为输入时,读此寄存器得到对应引脚的电平状态是高还是低;当引脚被设为输出时,写此寄存器相应位可令此引脚输出高低电平。

gpio读写操作

gpio读写操作

gpio读写操作GPIO(General Purpose Input/Output)是一种通用输入输出接口,广泛应用于各种嵌入式系统,如微控制器、树莓派、Arduino等。

GPIO操作主要用于与外部硬件设备进行交互,包括读取传感器数据、控制执行器等。

本文将介绍GPIO的基本概念、读写操作方法以及应用实例。

一、GPIO基础GPIO通常通过特定的引脚与外部设备进行通信。

这些引脚可以设置为输入模式(从外部设备读取数据)或输出模式(向外部设备发送数据)。

GPIO通常被用来驱动LED灯、蜂鸣器、继电器等简单硬件设备。

此外,GPIO还常常用于控制微控制器或其他硬件的外设。

1. 初始化GPIO在进行GPIO读写操作前,需要先进行初始化。

具体来说,需要配置GPIO引脚的电气特性,如高低电平、上拉/下拉电阻等。

初始化通常在程序启动时进行。

2. 读取GPIO状态读取GPIO状态是指从GPIO引脚读取当前状态,即判断该引脚是高电平还是低电平。

可以通过查询引脚的值或者使用取反操作来获取状态。

3. 设置GPIO值设置GPIO值是指向GPIO引脚写入数据,以控制外部设备的动作。

通常使用输出操作来完成。

需要注意的是,不同的硬件平台可能具有不同的数据类型和寄存器,需要根据具体的硬件平台进行设置。

4. 配置GPIO为输入模式将GPIO配置为输入模式是指将该引脚设置为从外部设备读取数据。

当引脚接收到外部信号时,会自动将其状态存储起来,以便后续读取。

在输入模式下,通常需要配置适当的上拉或下拉电阻以避免悬空。

三、应用实例以下是一个简单的应用实例,演示如何使用树莓派和Python编程语言进行GPIO读写操作:1. 初始化GPIO在Python中,可以使用RPi.GPIO模块来操作树莓派的GPIO引脚。

首先,需要导入该模块并使用setup()函数初始化GPIO。

例如:RPi.GPIO.setmode(RPi.GPIO.BOARD) # 设置模式为板载模式RPi.GPIO.setup(12, RPi.GPIO.OUT) # 将引脚12设置为输出模式2. 读取GPIO状态可以使用input()函数来读取GPIO的状态。

gpio的基本使用方法

gpio的基本使用方法

gpio的基本使用方法GPIO,即通用输入输出引脚,是一种通用的数字信号输入输出接口,它允许我们将数字信号发送到其他设备,或从其他设备接收数字信号,并使用它们进行控制和通信。

在树莓派等嵌入式设备的开发工作中,GPIO是非常重要的一个组成部分,使用方法也十分简单。

一、初始化GPIO要使用GPIO,我们首先需要将其初始化,以便我们可以开始使用其不同的引脚。

在初始化过程中,我们需要指定GPIO的模式,即输入或输出模式。

1.导入必要的库import RPi.GPIO as GPIO2.设置GPIO引脚模式:“输入/输出”GPIO.setmode(GPIO.BOARD)这将使我们根据引脚的物理编号而不是树莓派GPIO编号来标识GPIO引脚。

3.设置GPIO模式GPIO.setup(pin, mode)其中“pin”为GPIO引脚编号,“mode”可以是“IN”(输入模式)或“OUT”(输出模式)。

例如,要将GPIO引脚7设置为输出模式,代码如下:GPIO.setup(7, GPIO.OUT)二、读写GPIOGPIO只能够处理高低电平,因此我们需要了解如何使用Python将高电平和低电平发送到GPIO引脚,并从GPIO引脚读取高电平和低电平。

1.写GPIOGPIO.output(pin, value)其中,“pin”为GPIO引脚编号,“value”可以是HIGH(高电平)或LOW(低电平)。

例如,要将GPIO引脚7输出高电平,代码如下:GPIO.output(7, GPIO.HIGH)2.读GPIOGPIO.input(pin)其中,“pin”为GPIO引脚编号。

例如,要从GPIO引脚7读取电平,代码如下:input_value = GPIO.input(7)三、关闭GPIO当我们完成了对GPIO引脚的使用之后,需要将其关闭以防止出现不必要的错误并释放它们的状态。

我们可以使用GPIO.cleanup()函数将所有GPIO设置为默认状态。

介绍gpio的八种工作模式,特点及应用场景

介绍gpio的八种工作模式,特点及应用场景

介绍gpio的八种工作模式,特点及应用场景【标题】深入介绍GPIO的八种工作模式,揭秘特点及广泛应用场景【导言】GPIO(General Purpose Input/Output)是通用输入输出引脚的简称,它是现代电子设备中非常重要的一个接口,广泛应用于各个领域,如嵌入式系统、电子工程、物联网等。

GPIO的工作模式决定了其功能特性和应用场景的选择。

本文将全面深入地介绍GPIO的八种工作模式,探讨其特点并揭示其广泛应用场景,以帮助读者更好地理解和应用GPIO接口。

【正文】1. 输入模式输入模式是GPIO最基本的工作模式之一,用于读取外部信号的逻辑电平状态。

在输入模式下,GPIO引脚接收外界电平变化,并将其转换成对应的逻辑值,供处理器或者其他IC进行处理。

常见的应用场景包括按键输入、传感器数据采集等。

2. 输出模式输出模式是GPIO的另一个基础工作模式,用于控制外部设备的电平状态。

在输出模式下,GPIO引脚会根据处理器的指令输出相应的电平信号,驱动外部设备进行工作。

控制LED灯、驱动电机等。

3. 开漏输出模式开漏输出模式是GPIO的一种特殊输出模式,它允许多个输出引脚连接到一个电平上拉电阻上,实现共享一个信号线的目的。

开漏输出模式常用于总线通信(I2C、SPI)等场景,同时也可以用于实现外部电平转换。

4. 串行模式(UART)串行模式是GPIO的一种高级工作模式,常用于数据通信。

UART (Universal Asynchronous Receiver/Transmitter)是一种常见的串行通信协议,它通过GPIO的输入和输出引脚实现数据的发送和接收。

串行模式在无线通信、蓝牙、WiFi模块等场景中得到了广泛应用。

5. PWM模式PWM(Pulse Width Modulation)模式是GPIO的一种特殊输出模式,用于控制脉冲宽度的调节。

通过在不同时间段内改变高电平和低电平的占空比,可以控制输出引脚产生不同的平均电压或者电流,从而实现对电机速度、LED亮度等的精确控制。

【3】GPIO模块介绍及应用_讲稿

【3】GPIO模块介绍及应用_讲稿

寄存器映射
• GPIO 寄存器。所列的偏移量是16进制的,并按照 寄存器地址递增,与GPIO端口对应的基址如下: ■ GPIO 端口A:0x4000.4000 ■ GPIO 端口B:0x4000.5000 ■ GPIO 端口C:0x4000.6000 ■ GPIO 端口D:0x4000.7000 ■ GPIO 端口E:0x4002.4000 ■ GPIO 端口F:0x4002.5000 ■ GPIO 端口G:0x4002.6000
Stellaris® GPIO框图
特殊功能引脚描述
• 除了5个JTAG/SWD管脚(PB7 和PC[3:0])之外,所 有GPIO管脚默认都是三态管脚(GPIOAFSEL=0, GPIODEN=0, GPIOPDR=0, 且 GPIOPUR=0)。 • JTAG/SWD 管脚默认为 JTAG/SWD 功能 (GPIOAFSEL=1, GPIODEN=1 且 GPIOPUR=1)。通 过上电复位(POR)或外部复位(RST),可以让 这两组管脚都回到其默认状态。
• 为了提高软件的效率,通过将地址总线的位[9:2]用 作屏蔽位,GPIO端口允许对GPIO 数据(GPIODATA)寄 存器中的各个位进行修改。这样,软件驱动程序仅 使用一条指令就可以对各个GPIO管脚进行修改,而 不会影响其他管脚的状态。 • 这点与通过执行"读-修改-写"操作来置位或清零单独 的GPIO管脚的做法不同。为了提供这种特性, GPIODATA寄存器包含了存储器映射中的256个单元。 • 在写操作过程中,如果与数据位相关联的地址位被 设为1,那么GPIODATA寄存器的值将发生变化。如果 被清零,那么该寄存器的值将保持不变。
GPIODATA 写实例
• 将0xEB的值写入地址GPIODATA+0x098处,其中,u表示没有 被写操作改变的数据。

介绍gpio的八种工作模式,特点及应用场景

介绍gpio的八种工作模式,特点及应用场景

【主题】介绍GPIO的八种工作模式,特点及应用场景在嵌入式系统中,GPIO(General Purpose Input/Output)是一个非常重要的概念。

它代表了通用的输入输出端口,可以用于连接外部设备,实现数据的输入和输出。

GPIO的工作模式及其特点对于嵌入式系统的设计与应用至关重要。

在本文中,我们将详细介绍GPIO的八种工作模式、特点及应用场景。

---1. 综述GPIO作为嵌入式系统中的通用输入输出端口,其工作模式的选择对于系统的功能和性能有着重要的影响。

在不同的应用场景下,需要选择合适的工作模式来满足需求。

接下来,我们将对GPIO的八种工作模式进行介绍,并分析其特点及应用场景。

2. 输入模式在输入模式下,GPIO用于从外部设备中读取数据。

它可以接收不同的信号,并将其转换成数字形式以供系统使用。

输入模式的特点是稳定可靠,适用于需要读取外部传感器数据的场景,比如温度传感器、光敏电阻等。

3. 输出模式与输入模式相反,输出模式下的GPIO用于向外部设备输出信号。

它可以将处理过的数据发送到外部设备,控制外部设备的状态。

输出模式的特点是灵活可控,适用于需要控制外部执行机构的场景,比如马达控制、LED灯控制等。

4. 开漏输出模式开漏输出模式是一种特殊的输出模式,它可以实现对外部设备的无源控制。

在这种模式下,GPIO既能输出低电平信号,也能将引脚置为高阻态。

开漏输出模式的特点是适用于多个设备共用同一信号线的场景,可以有效地避免信号冲突。

5. 推挽输出模式与开漏输出模式相对,推挽输出模式可以实现对外部设备的有源控制。

在这种模式下,GPIO能够输出高电平和低电平信号,可以直接驱动外部负载。

推挽输出模式的特点是输出电流大,适用于需要输出高电平和低电平信号的场景,比如驱动电机、蜂鸣器等。

6. 互斥输入模式互斥输入模式是一种特殊的输入模式,它可以实现对外部设备的互斥访问。

在这种模式下,GPIO可以实现对多个输入信号的轮询,并且只有一个信号被激活。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第8章GPIO模块8.1 概述通过GPIO模块的设计以允许对C55x器件中可用的非复用和地址GPIO 引脚的核心控制。

以下三个表格列出了该模块有关的函数,寄存器和宏定义。

表8-1GPIO函数——————————————————————————GPIO_pinDirection设置GPIO引脚为输入或者输出GPIO_pinDisable禁止一个引脚作为GPIO 引脚GPIO_pinEnable使能一个引脚作为GPIO 引脚GPIO_pinRead读GPIO引脚的值GPIO_pinWrite向GPIO引脚写值下面的函数是C5501和C5502 器件所支持。

GPIO_colse释放一个或多个GPIO 引脚GPIO_config配置GPIO引脚GPIO_open分配一个或多个GPIO 引脚到当前进程中GPIO_pinReadAll读一个或多个引脚的值GPIO_pinWriteAll写一个或多个引脚GPIO_pinReset复位一个或多个引脚————————————————————————————表8-2GPIO寄存器IODIR IO7DIR,IO6DIR,IO5DIR,IO4DIR, IO3DIR,IO2DIR,IO1DIR, IO0DIRIODATA IO7D,IO6D,IO5D,IO4D,IO3D,IO2D, IO1D,IO0DC5509and C5509A支持以下.AGPIOEN IO13,IO12,IO11,IO10, IO9, IO8AGPIODIR IO13DIR,IO12DIR,IO11DIR, IO10DIR, IO9DIR, IO8DIRAGPIODATA IO13D,IO12D,IO11D,IO10D,IO9D, IO8DC5502 和C5501支持以下.PGPIOEN0 IO15EN, IO14EN,IO13EN,IO12EN,IO11EN,IO10EN, IO9EN, IO8EN,IO7EN,IO6EN,IO5EN,IO4EN,IO3EN, IO2EN, IO1EN, IO0ENPGPIODIR0 IO15DIR, IO14DIR,IO13DIR,IO12DIR, IO11DIR,IO10DIR,IO9DIR,IO8DIR,IO7DIR,IO6DIR,IO5DIR,IO4DIR, IO3DIR, IO2DIR,IO1DIRPGPIODAT0 IO15DAT, IO14DAT,IO13DAT,IO12DAT,IO11DAT, IO10DAT, IO9DAT, IO8DAT, IO7DAT,IO6DAT,IO5DAT,IO4DAT,IO3DAT, IO2DAT,IO1DAT,IO0DATPGPIOEN1 IO31EN, IO30EN,IO29EN,IO28EN,IO27EN,IO26EN, IO25EN, IO24EN,IO23EN,IO22EN,IO21EN,IO20EN,IO19EN, IO18EN,IO17EN, IO16ENPGPIODIR1 IO31DIR, IO30DIR,IO29DIR,IO28DIR, IO27DIR,IO26DIR,IO25DIR,IO24DIR,IO23DIR,IO22DIR, IO21DIR,IO20DIR,IO19DIR,IO18DIR,IO17DIR,IO16DIRPGPIODAT1 IO31DAT, IO30DAT,IO29DAT,IO28DAT,IO27DAT, IO26DAT, IO25DAT,IO24DAT,IO23DAT,IO22DAT, IO20DAT,IO19DAT,IO18DAT,IO17DAT,IO16DATPGPIOEN2 IO45EN, IO44EN,IO43EN,IO42EN,IO41EN,IO40EN, IO39EN, IO38EN,IO37EN,IO36EN,IO35EN,IO34EN,IO33EN, IO32ENPGPIODIR2 IO45DIR, IO44DIR,IO43DIR,IO42DIR, IO41DIR,IO40DIR,IO39DIR,IO38DIR,IO37DIR,IO36DIR, IO35DIR,IO34DIR,IO33DIR,IO32DIRPGPIODAT2 IO45DAT, IO44DAT,IO43DAT,IO42DAT,IO41DAT, IO40DAT, IO39DAT,IO38DAT,IO37DAT,IO36DAT, IO35DAT,IO34DAT,IO33DAT,IO32DAT ————————————————————————————8.2 配置结构体以下是建立GPIO的配置结构体GPIO_Config(非并行GPIO 引脚配置结构体)成员列表:Uint16ioen 引脚使能寄存器IOENUint16iodir引脚方向寄存器IODIR说明:建立非并行GPIO引脚的GPIO配置结构体.创建并初始化该结构体,接着向GPIO_config()函数船体其地址。

你可以通过使用文本值或者GPIO_RMK宏来创建结构体成员值。

GPIO_ConfigAll(并行和非并行GPIO 引脚的配置结构体)说明: GPIO 配置结构体是用于建立并行和非并行GPIO 引脚,.创建并初始化该结构体,接着向GPIO_configAll()函数船体其地址。

你可以通过使用文本值或者GPIO_RMK 宏来创建结构体成员值。

成员列表:Uint16ioen Uint16iodir 非并行引脚使能寄存器非并行GPIO引脚方向寄存器IOENIODIRUint16pgpioen Uint16pgpiodir Uint16pgpioen1 Uint16pgpiodir1 Uint16pgpioen2 Uint16pgpiodir2并行GPIO引脚使能寄存器0 PGPIOEN0 并行GPIO引脚方向寄存器0 PGPIODIR0并行GPIO引脚使能寄存器1 PGPIOEN1 并行GPIO引脚方向寄存器1 PGPIODIR1并行GPIO引脚使能寄存器 2 PGPIOEN2 并行GPIO引脚方向寄存器2 PGPIODIR28.3函数以下的函数被C5502和C5501 支持。

GPIO_close (释放先前被GPIO_open所占用的GPIO 引脚)函数Void GPIO_(GPIO_Handle hGpio);参数hGpio GPIO 引脚句柄(参见GPIO_open())返回值None说明释放先前被GPIO_open所占用的GPIO引脚。

实例GPIO_close(hGpio);GPIO_open (为单独使用占用GPIO)函数GPIO_Handle GPIO_open(Uint32 allocMask,Uint32flags);参数allocMask 占用的GPIO 引脚,可以参见GPIO_pinDirection查看可用的引脚。

flags打开标志,当前未指定。

不句返回值GPIO_Handle器件句柄说明在一个GPIO 引脚被使用前,必须要被该应用程序占用,一旦被占用了,就会在响应其他的请求,直到被GPIO_close()关闭。

返回值是一个唯一的器件柄,该句柄用于随后的API调用中的GPIO 中。

如果函数出错返回INV(-1)。

对于C5502和C5501,有四组GPIO 引脚(见GPIO_pinDirection())在调用了GPIO_open()的同一时刻只能打开一组中的一个或几个引脚,在不同组中多次调用引脚的allocMask会产生未知结果。

例如:GPIO_open()第一个参数是同一组的(GPIO_GPIO_PIN4|GPIO_GPIO_PIN2),但是(GPIO_GPIO_PIN4 | GPIO_PGPIO_PIN2)就会产生未知结果。

如果GPIO_open()在一个组中被调用了,在GPIO_close被调用前,它就不能再次调用来打开同组的其他引脚。

然而,GPIO_open()可以在此时被调用来打开其他组的引脚。

例如:如果GPIO_open()第一次调用了GPIO_GPIO_PIN4,他就不能再被调用打开同组的的GPIO_GPIO_PIN2,但是可以打开GPIO_PGPIO_PIN2.实例GPIO_Handle hGpio;hGpio= GPIO_open(GPIO_PGPIO_PIN1,0);GPIO_config (向非并行寄存器写入值)函数void GPIO_config(GPIO_Handle hGpio,GPIO_Config*cfg);参数hGpio GPIO器件句柄Cfg 初始化配置寄存器的指针返回值无说明使用配置结构体向非并行GPIO 控制寄存器写入值。

注意:GPIO_Config 结构体对于GPIOhe PGPIO 是通用的,但GPIO_config()函数只对使能的GPIO[0:7].( The GPIO_config() function just discards theenable field in case of GPIO[0:7] pins.)实例GPIO_Handle hGpio ;GPIO_Config myConfig= {GPIO_PIN1_OUTPUT| GPIO_PIN3_OUTPUT}对5501和5502的配置hGpio= GPIO_open(GPIO_GPIO_PIN1|GPIO_GPIO_PIN3,0)GPIO_config(hGpio&myconfig);GPIO_configAll (向并行和非并行GPIO 控制寄存器写入值)函数void GPIO_config(GPIO_ConfigAll&gCfg)参数gCfg 上电和掉电非复用GPIO 引脚的配置结构体返回值无说明向并行和非并行GPIO 控制寄存器写入值,用法参见GPIO_ConfigAll实例GPIO_ConfigAll gCfg ={GPIO_PIN1_OUTPUT|GPIO_PIN3_OUTPUT, /*IODIR*/0,/*PGPIOEN0*/0,/*PGPIODIR0*/0,/*PGPIOEN1*/0,/*PGPIODIR1*/0,/*PGPIOEN2*/0,/*PGPIODIR2*/};/*5501和5502的gpio配置*/GPIO_configAll(&gCfg);GPIO_pinDirection(设置GPIO 为输入或者输出)函数对于C5501和C5502void GPIO_pinDirection(GPIO_Handle hGpio,Uint32 pinMask,Uint16direction);对于C5509/A 和C5510void GPIO_pinDirection(Uint32pinMask,Uint16direction);参数hGpio 之前调用GPIO_open()返回的GPIO 句柄。

相关文档
最新文档