`

ARM9硬件接口 GPIO

阅读更多

GPIO口一是个比较重要的概念,用户可以通过GPIO口和硬件进行数据交互(如UART),控制硬件工作(如LED、蜂鸣器等),读取硬件的工作状态信号(如中断信号)等。GPIO口的使用非常广泛。
S3C2410一共有GPA到GPH 8个GPIO口、117个pins。

The S3C2410A has 117 multi-functional input/output port pins. The ports are:
— Port A (GPA): 23-output port
— Port B (GPB): 11-input/output port
— Port C (GPC): 16-input/output port
— Port D (GPD): 16-input/output port
— Port E (GPE): 16-input/output port
— Port F (GPF): 8-input/output port
— Port G (GPG): 16-input/output port
— Port H (GPH): 11-input/output port

这些I/O Ports大部分是复用的,通常可以用作为输入口(input)、输出口(output)以及特殊功能口(如中断信号)。通过相应口的配置寄存器 (GPxCON)可以选择配置为不同的功能。配置好GPIO口的功能后就可以在相应数据寄存器GPxDAT读/写数据,GPxUP用于确定是否使用内部上 拉电阻。
(注:上拉电阻作用为当I/O PORTS被定义为input口时,为了避免信号干扰产生不正确的值,通常会使用上拉电阻。)
当引脚设为输入时,读此寄存器可知相应引脚的状态是高是低;当引脚设为输出时,写此寄存器相应位可令此引脚输出低电平或高电平。GpxUP:某位为0时,相应引脚无内部上拉;为1时,相应引脚使用内部上拉。
注:S3c2410各个GPIO口的地址和作用参考Datasheet第9章 I/O PORTS。

小键盘控制LED灯显示实验:
当K1-K4中某个按键按下时,LED1-LED4中相应LED点亮。
要完成这个实验,我们可以分为两步:
一.看懂发板电路图,确定使用到哪些CPU引脚

上面是我开发板armsys2410 LED部分对应的电路图。从图中可以看出,armsys2410 LED0-LED3分别对应I/O口GPF4-GPF7。
那如何控制LED灯亮灭呢?同样可以在电路图中看出。LED二极管左边为高电压(VDD33V),因此只要在LED右边对应的GPF口引脚输入低电平,导通电路,LED就可以亮了。即要使某个灯亮,就使对应引脚输出一个低电平(灭:高电平)。

这里是小键盘K1-K4部分对应的电路图。查看GPIO datasheet部分可以知道,EINT0对应GPF0,EINT2对应GPF2,EINT19对应GPG11。即K1对应GPF0、K2对应GPF2、K3对应GPG3   、K4对应GPG11。

二.配置对应的GPIO口
配置小键盘KEY1-KEY4对应的GPIO口为输入口,通过读取该口对应的状态信号,可以判断按键有没按下。配置LED0-LED3对应的GPIO口为输出口。通过输入数据控制LED灯闪灭。下面就是通过对寄存器赋相应的值控制LED显示了。

分享到:
评论

相关推荐

    ARM9硬件接口学习之三_GPIO.pdf

    ### ARM9硬件接口学习之三:GPIO详解 #### GPIO概览 通用输入输出(GPIO, General Purpose Input Output)接口是微处理器中的一个重要组成部分,允许处理器与外部设备进行数据交互。通过GPIO,用户能够控制硬件的工作...

    ARM-GPIO.rar_ arm gp_ARM GPIO_GPIO_GPIO LPC_arm

    标签中"_arm_gp arm__gpio gpio gpio_lpc arm"进一步强调了这个资源与ARM架构的GPIO接口以及LPC系列微控制器的关联。GPIO_lpc可能表示这些代码是专门为LPC系列微控制器设计的GPIO驱动程序或库。 根据压缩包内的文件...

    ARM 的GPIO基本配置

    总结来说,理解并熟练配置ARM的GPIO是嵌入式开发中的基础技能,它涉及到硬件接口的控制、中断处理和通信协议等多方面知识。通过IAR 6.6这样的专业IDE,开发者可以更高效地进行GPIO的编程,实现丰富的功能。在实际...

    wince arm9 c# gpio程序

    在Windows CE (Wince)平台上,针对ARM9处理器进行C#编程时,GPIO(General-Purpose Input/Output)和ADC(Analog-to-Digital Converter)是两种常见的硬件接口操作,对于嵌入式设备的控制与数据采集至关重要。...

    arm入门练习 gpio

    GPIO(General Purpose Input/Output)是ARM处理器中的基本接口,用于实现与外部设备的通信。本练习将带你入门ARM处理器的GPIO使用,通过控制LED灯来实践相关知识。 首先,理解GPIO的基本概念。GPIO引脚可以作为...

    arm中的关于gpio操作

    **GPIO (General-Purpose Input/Output)**,即通用输入/输出接口,在嵌入式系统中扮演着极其重要的角色。几乎所有单片机都支持GPIO功能,它提供了与外部硬件交互的基础手段。本篇文章将深入探讨ARM处理器中的GPIO...

    GPIO.rar_ARM7 GPIO_GPIO_arm gpio

    在本资料“GPIO.rar”中,我们聚焦于ARM7处理器的GPIO接口以及调试程序,这对于初学者来说是学习和理解嵌入式系统硬件交互的一个重要起点。 ARM7是英国ARM公司设计的一系列32位RISC(Reduced Instruction Set ...

    基于ARM9的Linux嵌入式字符驱动GPIO设计.pdf

    GPIO(General-Purpose Input/Output)是ARM9微处理器中的一个接口,能够实现输入/输出操作。GPIO接口能够连接外部设备,例如LED灯、蜂鸣器等。基于ARM9的嵌入式Linux字符驱动设计中,GPIO接口用于控制外部设备的...

    Gpio.rar_GPIO_GPIO ARM _arm gpio

    标签"gpio gpio_arm_ arm_gpio"进一步强调了这个资源与GPIO接口在ARM处理器上的应用有关,可能涉及到GPIO驱动的编写、配置以及中断处理等技术。 在压缩包内的文件名称列表中,"www.pudn.com.txt"可能是一个链接或者...

    gpio.rar_arm2416_linux gpio测试

    在本文中,我们将深入探讨GPIO(General Purpose Input/Output)在ARM2416处理器上...通过这个测试程序,开发者可以调试硬件接口,确保系统对外部输入输出的响应符合预期,从而保证整个嵌入式系统的稳定性和可靠性。

    ARM芯片基础实验之GPIO操作

    总结来说,ARM芯片的GPIO操作是嵌入式系统开发的基础,涵盖了硬件接口的理解、寄存器配置、中断处理等多个方面。通过本实验,你将能够掌握GPIO的基本使用,为后续的嵌入式项目打下坚实的基础。实践中,不仅要理解...

    ARM7 GPIO LED控制实验高速GPIO与低速GPIO的速度对比

    在嵌入式系统中,ARM7处理器是一种广泛应用的微处理器,尤其在开发板和嵌入式...通过LED和蜂鸣器的控制,你不仅能掌握基本的GPIO操作,还能了解硬件性能对软件设计的影响,这对于嵌入式系统的开发是非常有价值的实践。

    ARM9 GPIO端口测试程序

    ARM9是ARM公司设计的一种广泛应用的微处理器系列,其GPIO接口对于硬件交互至关重要。本程序针对ARM9处理器,目的是验证GPIO端口的功能,确保其能正确读取和设置引脚状态。 **GPIO的基本概念** GPIO端口是一组可...

    zynq arm gpio mio驱动

    总结来说,Zynq ARM GPIO MIO驱动涉及到了嵌入式系统的硬件接口设计、驱动程序开发和中断处理等多个方面。理解和掌握这些知识点,有助于开发者在Zynq平台上实现高效的硬件控制和通信。在实际应用中,根据项目需求,...

    gpio.rar_arm9

    在ARM9 2440这样的处理器上,GPIO的使用是硬件基础和嵌入式系统开发的重要组成部分。 描述中提到“一个arm9 2440裸机代码控制gpio”,这暗示我们将会看到的是直接运行在ARM9 2440处理器上的原始代码,没有操作系统...

    Gpio.rar_ARM7 GPIO_linux下gpio

    GPIO是微控制器或嵌入式系统中常见的一种接口,用于控制硬件设备的输入和输出。 在Linux系统中,GPIO接口通常通过驱动程序来操作,这些驱动程序允许用户空间程序通过标准的系统调用与硬件交互。ARM7处理器是一个...

    GPIO.rar_ARM7_ARM7gpio控制_visual c

    首先,我们要了解ARM7的GPIO接口。ARM7处理器的GPIO端口通常由一组可配置的输入和输出引脚组成,这些引脚可以被配置为高电平或低电平,以驱动或检测外部电路的状态。在硬件层面,每个GPIO引脚都有独立的数据寄存器,...

    GPIO_LED.rar_GPIO ARM _通用接口

    GPIO_LED.rar是一个与GPIO(General Purpose Input/Output)和ARM处理器相关的资源压缩包,主要针对ARM7架构。这个压缩包包含了一个示例项目,用于解释如何在基于ARM7的硬件平台上使用GPIO进行LED控制。GPIO是微控制...

    ARM GPIO详解实例

    ARM GPIO详解实例主要涵盖的是基于ARM处理器的GPIO(General Purpose Input/Output)接口的使用和配置,这是一种在嵌入式系统中广泛使用的功能,用于控制硬件设备的输入和输出。GPIO允许开发者通过软件来操控处理器...

Global site tag (gtag.js) - Google Analytics