荣品四核S5P4418开发板之GPIO功能配置与说明
S5P4418核心板三星Cortex-A9四核 性能远超Exynos4412

E4418CORE核心板E4418CORE 是广州润尔信息推出的基于三星S5P4418的核心板,它采用专用PMIC,绝对正品的音频CODEC,国际大厂DDR3和EMMC,稳定可靠,性能强劲。
采用邮票孔设计,QFP188封装,60*40mm的极小尺寸,满足工业、手持、消费、车载众多领域,是当前最小的四核核心主板。
订货型号封装状态包装工作温度E4418CORE-V1B-8G QFP188 MASS 静电袋-20~+70E4418CORE-V1B-AG QFP188 MASS 静电袋-20~+70E4418CORE-V1B-4G QFP188 EOL 静电袋-20~+70E4418CORE-V1C-8G QFP188 CUSTOM 静电袋-20~+70E4418CORE-V1C-AG QFP188 CUSTOM 静电袋-20~+70 MASS 大批量产品EOL 结束寿命CUSTOM 接受订制型号区别说明:型号内存EMMCE4418CORE-V1B-8G 1GB 8GBE4418CORE-V1B-AG 1GB 16GB E4418CORE-V1C-8G 2GB 8GB E4418CORE-V1C-AG 2GB 16GB E4418CORE-V1B-4G 1GB 4GB功能描述CPU S5P4418 四核COTEX A9处理器内存1GB DDR3,带宽32位 800MHzEMMC 8GB/16GB/32GB,标配8GBRGB显示24位 RGB888,最大支持1920*1080HDMI 符合 HDMI1.4a,最大支持1920*1080LVDS 单通道,最大支持1920*1080GMAC 支持接网络PHY芯片USB HOST 符合USB2.0协议USB OTG 符合 USB OTG2.0协议UART 6路UART,其中UART1五线SPI 两路SPI接口IIC 3路IICCAMERA 1路并行接口,最大支持800万像素MIC 1路MIC输入SPEAK 1路最大1.8W喇叭输出耳机1路耳机输出,带插入检测PCM 1路PCM输出,可接蓝牙耳机和MODEM通话ADC 2路 ADC模拟输入,1.8V最大电压GPIO 最大支持53个GPIO,带有输入输出和中断功能SDIO1 支持WIFISDIO2 连接SDCARDPWM 2路 PWM输出PDM 1路 PDM,接红外传感器RTC RTC电源输入3.3V电源输出 3.3V电源输出,最大1A支持5V电源输入5V供电电源输入电池输入支持单节锂电池输入,带有NTC引脚USB 5V输入支持USB 5V输入复位输出复位输出,供外部设备使用ALIVE_GPIO 两路ALIVE GPIO,在休眠时保持电压不变充电指示灯指示充电状态Android软件特征与NEXELL合作伙伴,软件持续更新,永久维护1.Bootloader 版本:u-boot-2014-07●支持cramfs/yaffs镜像烧写●支持usb启动●支持USB下载●支持emmc启动●支持SD启动●支持通过SD卡烧写系统●支持fastboot协议下载烧写系统2.内核版本:linux3.4.39●LCD驱动●LCD背光驱动(PWM)●电容式触摸屏驱动●HDMI驱动●HSMMC/SD/MMC/SDIO驱动●IIC驱动●SPI驱动●看门狗驱动●KEYBD驱动程序●AUDIO音频驱动,●DMA驱动●RTC实时时钟驱动●USB HOST/DEVICE驱动●CMOS 摄像头驱动●模拟摄像头PAL或NTSC驱动●100M/1000M以太网驱动●SD卡驱动,最大支持32G● 4G 驱动 ● 485驱动 ● Led 驱动 ● 6个串口驱动● 加速度传感器驱动 ● Can 总线驱动 ● SDIO WIFI 驱动 ● Bluetooth 驱动 ● 电池电量检测● USB ADB 驱动,可以进行ADB 调试,同时把开发板当U 盘使用3. Android 版本:Android4.4.2(Kitkat )● 支持BT ● 支持以太网上网 ● 支持WIFI 上网● 支持LCD ,HDMI 同步输出● 支持CMOS/CCD Camera 拍照与视频录制 ● 支持GPS ,支持电子地图 ● 支持LCD 背光调节 ● 支持横竖屏切换 ● 支持USB ADB● 支持2路USB 鼠标,U 盘及其他功能扩展 ● 支持SD 卡扩展 ● 支持音频播放与录制 ● 支持电池启动,并显示电量 ● 支持APP Market● 集成开发板can 总线,485,串口,LED 测试程序引脚定义列表PIN FUNC1 FUNC2 描述1 GMAC_MDIO GPIOE21 配置PHY 芯片两线数据信号2 PHY_INTn GPIOE23 PHY 芯片中断 3 GMAC_TXCLK GPIOE24GMAC 发送数据信号4 GMAC_TXEn GPIOE115 GMAC_TXD3 GPIOE106 GMAC_TXD2 GPIOE9 7GMAC_TXD1GPIOE88 GMAC_TXD0 GPIOE7 9 GMAC_TXER10 VDD_RTC 1.8V RTC 时钟供电 11 GPIOE26 GPIO with Interrupt 12 GPIOE27 GPIO with Interrupt 13 GPIOE28 GPIO with Interrupt 14 GPIOE29 GPIO with Interrupt 15 GPIOC17 GPIO with Interrupt 16 GPIOC4 GPIO with Interrupt17 ALIVE_GPIO5GPIO with Interrupt(SLEEP 时电平保持) 18 CAM0_D0 GPIOD28CMOS CAMERA 接口19 CAM0_D1 GPIOD29 20 CAM0_D2 GPIOD30 21 CAM0_D3 GPIOD31 22 CAM0_D4 GPIOE0 23 CAM0_D5 GPIOE1 24 CAM0_D6 GPIOE2 25 CAM0_D7 GPIOE3 26 CAM0_PCLK GPIOE4 27 CAM0_HSYNC GPIOE5 28 CAM0_VSYNC GPIOE6 29 CAM0_RST GPIOA28 30 CAM0_MCLK GPIOC13 31 GNDSDIO 通道2,建议接SD 卡 32 SD2_D0 33 SD2_D0 34 SD2_D0 35 SD2_D0 36 SD2_CMD 37 SD2_CLK 38 SD2_CD SDIO 通道2片选39 ADC1 ADC 转换通道1,最大1.8V 输入 40 ADC0 ADC 转换通道0,最大1.8V 输入 41 SPI0_CLK GPIOC29SPI 通道042 SPI0_CS GPIOC30 43 SPI0_MOSI GPIOC31 44 SPI0_MISO GPIOD0 45 IIC1_SCL GPIOD4 IIC 通道1 46 IIC1_SDA GPIOD5 47 IIC2_SCL GPIOD6 IIC 通道2 48 IIC2_SDA GPIOD7 49 IIC0_SCL GPIOD2 IIC 通道0 50IIC0_SDAGPIOD351 CVBS 此功能保留 52 TXD3 UART3 53 RXD3 54 TXD2 UART2 55 RXD2 56 TXD1 UART1 57 RXD1 58 TXD0 UART059 RXD0 60 SD1_D3SDIO 通道1,建议接WIFI61 SD1_D2 62 SD1_D1 63 SD1_D0 64 SD1_CLK 65 SD1_CMD 66 GND67 CTS1 UA T1 CTS 68 RTS1 UART1 RTS 69 TXD4 UART470 RXD4 71 PWM0 GPIOD1 PWM 信号通道0 72 IR_INT GPIOD8 红外管接入PPM 73 TXD5 UART574 RXD5 75 GPIOB24 GPIO with Interrupt 76 GPIOB25 GPIO with Interrupt 77 GPIOB26 GPIO with Interrupt 78 GPIOB27 GPIO with Interrupt 79 GPIOC24 GPIO with Interrupt 80 Force_USB_BOOT 置低从USB 启动 82 Force_SD2_BOOT 置低从SD2启动83 HP_DET 耳机接入探测,拉低检测到接入 84 PCM_SYNC音频PCM 功能,接入BT 或MODEM 85 PCM_CLK 85 PCM_OUT 86 PCM_IN 87 AGND 音频GND ,通过磁珠接GND 88 SPK+ 接喇叭,最大可接1.8W/8ohm 89 SPK- 90 MONO+ 音频LINE IN 信号 91 MONO- 92 MIC_BIAS MIC 偏置电压 93HPR耳机信号94 HPL 95 DMIC_CLK 数字MIC 时钟信号 96 MIC1+模拟MIC 正信号97 MIC1- DMIC_DATA 模拟MIC 负信号/数字MIC DA TA 信号 98 GPIOC11 SPI2_MISO GPIO with Interrupt 99 GPIOC12 SPI2_MOSI GPIO with Interrupt 100 GPIOC10 SPI2_CS GPIO with Interrupt 101 GPIOC9 SPI2_CLK GPIO with Interrupt 102 VDEn GPIOA27 LCD DE 信号 103 HSYNC GPIOA26 LCD 行同步信号 104 VSYNC GPIOA25 LCD 场同步信号 105 VCLK GPIOA0 LCD 时钟信号 106 VD0 GPIOA1LCD B 信号107 VD1 GPIOA2 108 VD2 GPIOA3 109 VD3 GPIOA4 110 VD4 GPIOA5 111 VD5 GPIOA6 112 VD6 GPIOA7 113 VD7 GPIOA8 114 VD8 GPIOA9LCD G 信号 115 VD9 GPIOA10 116 VD10 GPIOA11 117 VD11 GPIOA12 118 VD12 GPIOA13 119 VD13 GPIOA14 120 VD14 GPIOA15 121 VD15 GPIOA16 122 VD16 GPIOA17LCD R 信号 123 VD17 GPIOA18 124 VD18 GPIOA19 125 VD19 GPIOA20 126 VD20 GPIOA21 127 VD21 GPIOA22 128 VD22 GPIOA23 129 VD23 GPIOA24 130 BAT- 电池负极 131 BAT+ 电池正极 132 GND 133 nRESET 复位输出134 CHG_LED 充电指示灯,高有效 135 BAT_NTC 电池充电温度检测 136PWR_KEY电池供电时启动按键137 VDD33 3.3V 输出,最大有效电流600mA 138 VSYS 系统电源路径输出,最大5V/A 139 VDD_USB USB 供电电源输入,最大5V 140 DC5V 5V 输入,最大电流1.5A 保证 141 DC5V 142 GPIOB16 GPIO with Interrupt 143 GPIOB11 GPIO with Interrupt 144 PWM2 GPIOC14 PWM 信号通道2 145 GPIOB9 GPIO with Interrupt 146 GPIOB8 GPIO with Interrupt 147 GPIOC28 GPIO with Interrupt 148 GPIOC8 GPIO with Interrupt 149 GPIOC2 GPIO with Interrupt 150 GPIOC1 GPIO with Interrupt 151 GPIOC0 GPIO with Interrupt 152 USBH_D+USB HOST 2.0 153 USBH_D- 154 OTG_VBUS OTG 供电引脚 155 OTG_D- OTG 数据线 156 OTG_D+ 157 OTG_ID158 OTG_DRVBUS 使能OTG 向外输出电源信号 159 HDMI_HPD HDMI 插入检测信号 160 HDMI_CEC HDMI CEC 信号 161 HDMI_TXCLKNHDMI 信号 162 HDMI_TXCLKP 163 HDMI_TXN0 164 HDMI_TXP0 HDMI 信号165 HDMI_TXN1 166 HDMI_TXP1 167 HDMI_TXN2 168 HDMI_TXP2 169 GND170 LVDS_TXP3LVDS 信号171 LVDS_TXN3 172 LVDS_TXCLKP 173 LVDS_TXCLKN 174 LVDS_TXP2 175 LVDS_TXN2 176 LVDS_TXP1 177 LVDS_TXN1 178 LVDS_TXP0 179LVDS_TXN0180 GND181 GMAC_RXD3 GPIOE17GMAC 数据接收信号182 GMAC_RXD2 GPIOE16 183 GMAC_RXD1 GPIOE15 184 GMAC_RXD0 GPIOE14 185 GMAC_RXCLK GPIOE18 186 GMAC_RXDV GPIOE19 187 PHY_nRST GPIOE21 复位PHY 芯片188 GMAC_MDC GPIOE20 配置PHY 芯片两线时钟信号。
stm32GPIO口工作原理详细解释

STM32的GPIO介绍STM32引脚说明GPIO是通用输入/输出端口的简称,是STM32可控制的引脚。
GPIO的引脚与外部硬件设备连接,可实现与外部通讯、控制外部硬件或者采集外部硬件数据的功能。
STM32F103ZET6芯片为144脚芯片,包括7个通用目的的输入/输出口(GPIO)组,分别为GPIOA、GPIOB、GPIOC、GPIOD、GPIOE、GPIOF、GPIOG,同时每组GPIO口组有16个GPIO口。
通常简略称为PAx、PBx、PCx、PDx、PEx、PFx、PGx,其中x为0-15。
STM32的大部分引脚除了当GPIO使用之外,还可以复用位外设功能引脚(比如串口),这部分在【STM32】STM32端口复用和重映射(AFIO辅助功能时钟)中有详细的介绍。
GPIO基本结构每个GPIO内部都有这样的一个电路结构,这个结构在本文下面会具体介绍。
这边的电路图稍微提一下:保护二极管:IO引脚上下两边两个二极管用于防止引脚外部过高、过低的电压输入。
当引脚电压高于VDD时,上方的二极管导通;当引脚电压低于VSS时,下方的二极管导通,防止不正常电压引入芯片导致芯片烧毁。
但是尽管如此,还是不能直接外接大功率器件,须加大功率及隔离电路驱动,防止烧坏芯片或者外接器件无法正常工作。
P-MOS管和N-MOS管:由P-MOS管和N-MOS管组成的单元电路使得GPIO具有“推挽输出”和“开漏输出”的模式。
这里的电路会在下面很详细地分析到。
TTL肖特基触发器:信号经过触发器后,模拟信号转化为0和1的数字信号。
但是,当GPIO引脚作为ADC采集电压的输入通道时,用其“模拟输入”功能,此时信号不再经过触发器进行TTL电平转换。
ADC外设要采集到的原始的模拟信号。
这里需要注意的是,在查看《STM32中文参考手册V10》中的GPIO的表格时,会看到有“FT”一列,这代表着这个GPIO口时兼容3.3V和5V 的;如果没有标注“FT”,就代表着不兼容5V。
荣品四核S5P4418开发板之GPIO功能配置与说明

荣品四核S5P4418开发板之GPIO功能配置与说明RP4418开发板是采用三星S5P4418芯片研发的一款多功能四核cortex-a9开发板,对于企业产品研发或者项目方案的时候,用户在使用荣品开发板进行开发,如果硬件上有所修改,那么必须要修改GPIO,本篇主要介绍RP4418开发板的GPIO功能配置与说明。
对GPIO的认识主要有以下几方面:●开发板GPIO引脚软硬件对应●GPIO输出功能设置●GPIO输入功能设置●GPIO电平读取●GPIO中断功能设置1、开发板GPIO引脚软硬件对应:在RP4418开发板内核中,所有GPIO引脚被分为ABCDE等几组,每组32个。
每组引脚起始地址定义如下图。
硬件引脚都对应分配在这几组引脚中:例如:GPIOB29对应PAD_GPIO_B + 29硬件上的命名:GPIOB29软件上的命名:PAD_GPIO_B + 29GPIOC10对应PAD_GPIO_C + 10硬件上的命名:GPIOC10软件上的命名:PAD_GPIO_C + 102、GPIO输出功能设置:如果要对GPIO配置为输出功能,输出高或输出低,就是拉高拉低的意思。
我们可以用int gpio_direction_output(unsigned gpio, int value)从函数的参数来看,unsigned gpio:这个是单个GPIO的值 ;int value:这个是要设置的值(0代表低电平,1代表高电平)。
比如我要对LCD供电的GPIO拉高,那么软件上这样写:gpio_direction_output(PAD_GPIO_C + 10, 1);如果要拉低:gpio_direction_output(PAD_GPIO_C + 10, 0);我们在LCD驱动、触摸屏驱动、按键驱动等都有对GPIO设置,请参考源码对应的修改进行理解。
3、GPIO输入功能设置:如果我们想了解一个外部的电平的高低情况,那么我们可以通过GPIO连接该路电平,接着把GPIO设成输入功能即可。
三星四核S5P4418开发板

三星四核S5P4418开发板1.S5P4418开发板简介三星S5P4418开发板(4G版)(如图1)标配1G内存+4G存储,支持100/1000M以太网,支持500W摄像头自动对焦功能,支持MIPI 摄像头接口,5路USB HOST接口,一路OTG接口,支持蓝牙4.0,支持GPS+北斗双模,支持WIFI上网,支持4G网络,支持一键USB启动,支持一键SD卡启动,支持MIPI LCD接口,支持HDMI接口,支持1路RS485接口,2路2W喇叭接口,支持待机功能,(电流小于0.1W,15mA)。
图1.三星S5P4418开发板(4G版)整机尺寸为 260mm*170mm*40mm,底板尺寸为260mm*170,核心板尺寸为 55mm*40mm*2.8mm。
2.4418处理器介绍三星S5P4418核心板开发板使用的处理器是三星S5P4418,其具体参数如下。
型号:三星4418制程:28 nm 制程工艺指令集:ARMv7CPU架构:Cortex-A9CPU核心: 4CPU频率:1.4GHz支持MALI MP2 3D图形加速器、1M byte L2缓存视频解码能力:支持(H.264.MPEG4-ASP H.263 VC-1 MPEG-1/2 VP8 AVS RV8/9/10 RV8/9/10)1080P解码视频编码能力:支持(H.264 MPEG4 H.263)1080P编码3.S5P4418开发板硬件配置RP4418开发板(4G版)是一款高性能的四核Cortex-A9核心板,由深圳荣品电子设计、生产和发行销售。
它采用三星S5P4418处理器,运行主频可高达1.4GHz,S5P4418内部集成了Mali-400 MP高性能图形引擎,支持3D图形流畅运行,并可播放1080P全高清视频。
RP4418支持网卡、音频,1080P HDMI音视频同步输出等功能。
RP4418支持32位内存总线,支持1GB内存,支持动态电源管理,能够支持4GB、8GB、16GB、32GB INAND存储。
G4418 硬件手册

G4418硬件手册深圳葡萄雨技术有限公司版权声明本手册版权归属深圳市葡萄雨技术有限公司所有,并保留一切权力。
非经葡萄雨技术有限公司同意(书面形式),任何单位及个人不得擅自摘录本手册部分或全部,违者我们将追究其法律责任。
如果您对文档有所疑问,您可以拨打技术支持电话或E-mail联系。
网址:/联系电话:0755-********目录版权声明..........................................................................................错误!未定义书签。
第1章G4418开发板简介 (8)1.1产品简介 (10)1.2功能特性 (11)1.3搭载系统简介 (12)1.3.1Android4.4系统 (12)1.3.2Linux QT系统 (13)1.3.3Ubuntu系统 (13)第2章硬件资源 (14)2.1硬件接口描述 (14)2.2开发板启动指引 (16)2.3接口定义 (17)2.3.1核心板引脚定义1 (17)2.3.2核心板引脚定义2 (18)2.3.3核心板引脚定义3 (18)2.3.4核心板引脚定义4 (19)2.3.5核心板引脚定义5 (20)2.3.6J18(SPI扩展口) (20)2.3.7LCD1(LCD&VGA扩展口) (20)2.3.8J14(LVDS显示扩展口) (22)2.3.9J12(MIPI显示扩展口) (22)2.3.10U451(DVP camera接口) (23)2.3.11J15(MIPI camera接口) (24)2.3.12J11(UART1,COM1) (25)2.3.13J17(UART2,COM3) (25)2.4硬件接口 (25)2.4.1电源开关及插座 (25)2.4.2调试串口 (25)2.4.3HDMI接口 (26)2.4.4DVP camera接口 (26)2.4.5MIPI camera接口 (27)2.4.6以太网接口 (27)2.4.7耳机接口 (27)2.4.8喇叭接口 (28)2.4.9录音接口 (28)2.4.10TF卡槽 (28)2.4.11独立按键 (28)2.4.12调试LED灯 (29)2.4.13电源指示灯 (29)2.4.14USB OTG接口 (30)2.4.15USB HOST接口 (30)2.4.16开机按钮 (30)2.4.17复位按钮 (30)2.4.18LCD接口 (31)2.4.19后备电池 (31)2.4.20精准可调电位器 (31)2.4.21蜂鸣器 (31)2.4.22红外一体接收头 (32)2.4.23LVDS接口 (32)2.4.24MIPI接口 (32)2.4.25电池接口 (33)2.4.26PCIE3G/4G接口 (33)2.4.27SPI接口 (33)2.5底板尺寸图 (34)第3章配置清单 (35)3.1标配硬件清单 (35)3.2选配硬件清单 (35)3.3网盘资料清单 (35)第4章产品线介绍 (36)4.1核心板系列 (36)4.2开发板系列 (36)4.3卡片电脑系列 (36)第1章G4418开发板简介本文档讲述G4418开发平台的硬件资源,电路原理,支持的接口,等。
4418开发板介绍

UT4418开发板介绍友坚恒天科技专注于三星平台产品的研发,是三星在中国最具实力的方案公司。
公司主打的三星平板电脑方案销量,连续多年稳居第一。
公司定位于中高端产品的研发,具有多年的嵌入式产品研发经验;基于三星A15-Exynos5260/5410/5250、S5P4418、A9-Exynos4412、A8-S5PV210、ARM11-S3C6410、ARM9-S3C2416等处理器,开发了系列化的产品,为客户提供了全面的产品选择及专业化的量身定制MID解决方案。
友坚恒天科技服务于国内外平板电脑品牌商,并为行业客户提供一站式的解决方案;在为客户打造最具竞争力优势的产品的同时,也实现了自身的价值。
UT4418处理器是三星2014年推出的4核处理器,使用Cotex-A9四核心,整体性能比Cotex-A8核心高出50%,提供6.4GB/s内存带宽,支持1080P的全高清视频输出,以及3D 图形显示,支持LCD显示1080P高清电视输出等,完全是Exynos4412的升级版芯片,性能远远超过Exynos4412,并且基本兼容Exynos4412。
UT4418开发板为消费类电子、智能终端、MID、无线通讯、移动导航、医疗设备、工业控制等行业产品的应用开发而设计,供广大企业用户进行产品前期软硬件性能评估验证、设计参考用;也是高校、培训机构、嵌入式爱好者学习研究的最佳工具。
UT4418开发板标准板外观图:友坚UT4418开发板UT4418开发板升级板外观图:友坚UT4418开发板UT4418开发板采用一体化的设计,提高了电路整体的稳定性。
UT4418开发板标配了4G iNAND(SDIN5C1-4G),内存配置了1G DDR3(H5TQ4G63AFR-PBC)并配备有三星电源管理芯片——NXE2000;PCB布局布线充分考虑电气要求,具有极佳的性能和抗干扰特性,敬请留意:使系统稳定工作于各种环境之下。
强大的功能,丰富的外设接口,是用户熟悉UT4418开发板软硬件环境的最佳选择。
三星四核S5P4418开发板RP4418介绍新

三星四核S5P4418开发板RP4418介绍四核S5P4418处理器是三星2014年推出的四核处理器,使用Cotex-A9四核心,整体性能比Cotex-A8核心高出50%,提供6.4GB/s 内存带宽,支持1080P 的全高清视频输出,以及3D 图形显示,支持LCD 显示1080P 高清电视输出等,完全是Exynos4412的升级版芯片。
RP4418开发板为消费类电子、智能终端、MID、无线通讯、移动导航、医疗设备、工业控制等行业产品的应用开发而设计,供广大企业用户进行产品前期软硬件性能评估验证、设计参考用;也是高校、培训机构、嵌入式爱好者学习研究的最佳工具。
RP4418开发板由深圳荣品电子研发,采用一体化的设计,提高了电路整体的稳定性。
搭配Android5.1系统,标配1GB DDR3内存,16GB EMMC 存储并配备有三星电源管理芯片AXP228 ;PCB 布局布线充分考虑电气要求,具有极佳的性能和抗干扰特性,使系统稳定工作于各种环境之下。
强大的功能,丰富的外设接口,是用户熟悉RP4418开发板软硬件环境的最佳选择。
RP4418核心板硬件参数 引脚编号引脚名称 输入/输出说明1 VSYS_IN IN 电源输入 3.4V 至5.5V2 VSYS_IN IN3 GND IN-OUT 接地4 GND IN-OUT5 GPIOC24 IN-OUT GPIO 控制口6 GPIOC17 IN-OUT GPIO 控制口 7 OUT-3V3-1A OUT 可外供电 3.3V 负载1A8 VDD_RTC IN RTC 时钟保存电源输入1.8V 至3V9 LCD_CLK OUT LCD 时钟10 R0 OUT LCD 数据通道(可复用GPIO )11 R1 OUT 12 R2 OUT 13 R3 OUT 14R4OUT15 R5 OUT16 R6 OUT17 R7 OUT18 G0 OUT19 G1 OUT20 G2 OUT21 G3 OUT22 G4 OUT23 G5 OUT24 G6 OUT25 G7 OUT26 B0 OUT27 B1 OUT28 B2 OUT29 B3 OUT30 B4 OUT31 B5 OUT32 B6 OUT33 B7 OUT34 HSYNC OUT LCD数据行(可复用GPIO)35 VSYNC OUT LCD数据场(可复用GPIO)36 DE OUT LCD数据模式(可复用GPIO)37 GPIOC8 IN-OUT GPIO控制口38 PWM0 OUT PMW定时器39 SDA1 IN-OUT I2C通道1 数据信号40 SCL1 OUT I2C通道1 时钟信号41 GPIOB26 IN-OUT GPIO控制口42 GPIOC14 IN-OUT GPIO控制口43 LVDS_CLKP OUT LVDS 时钟正44 LVDS_CLKN OUT LVDS 时钟负45 LVDS_Y0P OUT LVDS 数据通道0正46 LVDS_Y0N OUT LVDS 数据通道0负47 LVDS_Y1P OUT LVDS 数据通道1正48 LVDS_Y1N OUT LVDS 数据通道1负49 LVDS_Y2P OUT LVDS 数据通道2正50 LVDS_Y2N OUT LVDS 数据通道2负51 LVDS_Y3P OUT LVDS 数据通道3正52 LVDS_Y3N OUT LVDS 数据通道3负53 LCD_MIPI_CLKP OUT MIPI 时钟正54 LCD_MIPI_CLKN OUT MIPI 时钟负55 LCD_MIPI_DP0 OUT MIPI 数据通道0正56 LCD_MIPI_DN0 OUT MIPI 数据通道0负57 LCD_MIPI_DP1 OUT MIPI 数据通道1正58 LCD_MIPI_DN1 OUT MIPI 数据通道1负59 LCD_MIPI_DP2 OUT MIPI 数据通道2正60 LCD_MIPI_DN2 OUT MIPI 数据通道2负61 LCD_MIPI_DP3 OUT MIPI 数据通道3正62 LCD_MIPI_DN3 OUT MIPI 数据通道3负63 SD0_CD IN TF卡检测脚64 SD0_D1 IN-OUT SD通道0数据165 SD0_D0 IN-OUT SD通道0数据066 SD0_CLK OUT SD通道0时钟67 SD0_CMD IN-OUT SD通道0使能68 SD0_D3 IN-OUT SD通道0数据369 SD0_D2 IN-OUT SD通道0数据270 SD1_D1 IN-OUT SD通道1数据171 SD1_D0 IN-OUT SD通道1数据072 SD1_CLK OUT SD通道1时钟73 SD1_CMD IN-OUT SD通道1使能74 SD1_D3 IN-OUT SD通道1数据375 SD1_D2 IN-OUT SD通道1数据276 TXD1 OUT TTL串口通道1发送77 RXD1 IN TTL串口通道1接收78 RTS1 OUT TTL串口通道1发送数据请求79 CTS1 OUT TTL串口通道1清除数据80 SDA2 IN-OUT I2C通道2 数据信号81 SCL2 OUT I2C通道2 时钟信号82 GPIOB25 IN-OUT GPIO控制口83 GPIO3 IN-OUT GPIO控制口84 VDD33_WIFI OUT WIFI电源3.3V输出85 ADC0 IN 模拟ADC0通道支持0~1.8V86 TXD2 OUT TTL串口通道2发送87 RXD2 IN TTL串口通道2接收88 TXD3 OUT TTL串口通道3发送89 RXD3 IN TTL串口通道3接收90 USB_BOOT IN USB启动方式91 SD_BOOT IN SD卡启动方式92 KEY_RST IN 复位键93 KEY_PWR IN 开机键94 GPIOB30 IN-OUT GPIO控制口95 GPIOB31 IN-OUT GPIO控制口96 GPIO5 IN-OUT GPIO控制口97 SPICLK0 OUT SPI0通道时钟(可复用GPIO)98 SPICS0 OUT SPI0片选(可复用GPIO)99 SPITX0 OUT SPI0发送(可复用GPIO)100 SPIRX0 IN SPI0发送(可复用GPIO)101 SPICLK2 OUT SPI2通道时钟(可复用GPIO)102 SPICS2 OUT SPI2片选(可复用GPIO)103 SPITX2 OUT SPI2发送(可复用GPIO)104 SPIRX2 IN SPI2接收(可复用GPIO)105 MIPI_DN0 IN 摄像头MIPI0数据负106 MIPI_DP0 IN 摄像头MIPI0数据正107 MIPI_DN1 IN 摄像头MIPI1数据负108 MIPI_DP1 IN 摄像头MIPI1数据正109 MIPI_CKN IN 摄像头MIPI0时钟负110 MIPI_CKP IN 摄像头MIPI0时钟正111 MIPI_DN2 IN 摄像头MIPI2数据负112 MIPI_DP2 IN 摄像头MIPI2数据正113 MIPI_DN3 IN 摄像头MIPI3数据负114 MIPI_DP3 IN 摄像头MIPI3数据正115 CAM0_D2 IN YUV摄像头数据2(可复用GPIO)116 CAM0_D1 IN YUV摄像头数据1(可复用GPIO)117 CAM0_D3 IN YUV摄像头数据3(可复用GPIO)118 CAM0_D0 IN YUV摄像头数据0(可复用GPIO)119 CAM0_D4 IN YUV摄像头数据4(可复用GPIO)120 CAM0_PCLK IN YUV摄像头时钟输入(可复用GPIO)121 CAM0_D5 IN YUV摄像头数据5(可复用GPIO)122 CAM0_D6 IN YUV摄像头数据6(可复用GPIO)123 CAM_MCLK OUT YUV摄像头时钟输出(可复用GPIO)124 CAM0_D7 IN YUV摄像头数据7(可复用GPIO)125 CAM_2V8 OUT 摄像头电源2.8V126 CAM_1V8 OUT 摄像头电源1.8V127 GND IN-OUT 接地128 CAM0_HS IN YUV摄像头行信号129 GPIOA28 IN-OUT GPIO控制口130 GPIOB24 IN-OUT GPIO控制口131 CAM0_VS IN YUV摄像头场信号132 GPIOB9 IN-OUT GPIO控制口133 OTG_PWR OUT VBUS 5V 使能脚134 VBUS OUT VBUS 电源135 OTG_DN IN-OUT USB数据负136 OTG_DP IN-OUT USB数据正137 ID IN 主从模式检测138 HDMI_HPD IN HDMI检测139 HDMI_CEC IN HDMI检测140 HDMI_TXCN OUT HDMI时钟负141 HDMI_TXCP OUT HDMI 时钟正 142 HDMI_TX0N OUT HDMI 数据0负 143 HDMI_TX0P OUT HDMI 数据0正 144 HDMI_TX1N OUT HDMI 数据1负 145 HDMI_TX1P OUT HDMI 数据1正 146 HDMI_TX2N OUT HDMI 数据2负 147 HDMI_TX2POUT HDMI 数据2正148 GND IN-OUT 接地 149 HOST_DP IN-OUT USB 数据正 150 HOST_DN IN-OUT USB 数据负 151 GPIO8 IN-OUT GPIO 控制口 152 SDA0 IN-OUT I2C 通道0 数据信号 153 SCL0 OUT I2C 通道0 时钟信号154 I2S_IN IN I2S 数据输入 155 GPIOC4 IN-OUT GPIO 控制口 156 I2S_OUT OUT I2S 数据输出 157 I2S_LRCK IN I2S 时钟输入 158 I2S_BCK IN I2S 时钟输入 159 I2S_MCLK OUT I2S 主时钟输出 160 GPIOB27 IN-OUT GPIO 控制口161 GND IN-OUT 接地162 GMAC_MDIO IN-OUT 以太网PHY 接口(可复用GPIO )163 GMAC_MDIO IN-OUT 164 PHY_NRST IN-OUT 165 GMAC_TXEN IN-OUT 166 GMAC_TXD3 IN-OUT 167 GMAC_TXD2 IN-OUT 168 GMAC_TXD1 IN-OUT 169 GMAC_TXD0 IN-OUT 170 GMAC_TXCLK IN-OUT 171 PHY_INT IN 172 GMAC_RXCLK IN-OUT 173 GMAC_RXD3 IN-OUT 174 GMAC_RXD2 IN-OUT 175 GMAC_RXD1 IN-OUT 176 GMAC_RXD0 IN-OUT 177 GMAC_RXDVIN-OUT 178 GND IN-OUT 接地179 TXD0 OUT TTL 串口通道0发送 180 RXD0 IN TTL 串口通道0接收 181 TXD4 OUT TTL 串口通道4发送 182RXD4INTTL 串口通道4接收RP4418开发板主板RP4418开发板规格参数 屏幕 屏幕尺寸 10.1寸屏A (可选其他屏) 分辨率1024*600核心板参数尺寸40*55mm高度 2.8mm工艺6层板,通孔工艺,高强度半空工艺CPU 三星S5P4418 28nm 间距0.65 尺寸17*17mm 513 FCFBGA封装Cortex-A9 四核32KB*4 I/D 缓存1MB 二级缓存CPU主频1400MHz DDR3最高主频933MHz内存1GB 32位数据总线DDR3主频最高933MHz(批量可定制2GB) 存储16GB EMMC4.5(批量可定制4/8GB)PMU AXP228电源变频管理,待机电流小于15mAGPU Mali-400 MP引角扩展引出脚多达182PIN,满足用户各类实用扩展需求温度范围-20℃到70℃工作电压5V(推荐使用标配5V/3A电源线)系统支持Android5.1、Android4.4、Ubuntu12.04、Linux+QT4.8底板参数尺寸260*170*40mmPW 选配排针式5V电源输入LVDS LCD 支持LVDS 最高分辩率1280x800 接口附带电阻电容触摸屏信号MIPI LCD 支持mipi DSI 最高分辩率1920x1200 接口附带电阻电容触摸屏信号(暂不支持)4G ANT 4G 天线接口4G Model Mini pcie 接口,支持移动,联通,电信SIM Card 手机SIM卡(大卡)TF Card TF卡接口,最大支持64GB存储WiFi蓝牙GPS模块三合一模块GPS+WIFI+BT4.0,7路GPIO口,3路TTL串口,1路HOST,1路I2CUSB boot USB启动烧录按键SD boot SD卡启动烧录按键RV1 ADC0通道,可调电位器Power 开机键,长按3S开机,长按3S 点击系统关机Reset 系统复位键Gpio 2路SPI通道,3路外部中断口,5V电源输出,3.3V电源输出MIPI camera 500W MIPI数据摄像头接口YUV camera 500W BT656格式摄像头接口RS485 RS485 总线接口SPK 8欧1W classD类2 路喇叭输出USB OTG USB OTG 2.0协议HDMI HDMI 1.4a 最大分辩1920x1080UBS host 5路USB HOST接口2.0协议Phone 3.5立体声耳机输入,支持插拔检测MIC 支持-42dB 高灵敏度麦克风输入Ethernet 10M/100M/1000M自适应主控集成以太网UART4 RS232串口4通道UART0 RS232调试串口0 通道DC-5V 5V/3A 电源输入RGB LCD 24位色RGB通道,最大分辩率2048x1280 或可扩展32路GPIO口VDD_RTC 3V 200mA 电池, 时间可保存至5年以上User key 6路自定义按键G-sensor 三轴重力传感器BM250。
STM32的八种GPIO工作方式详解

STM32的八种GPIO工作方式详解STM32的GPIO介绍STM32引脚说明GPIO是通用输入/输出端口的简称,是STM32可控制的引脚。
GPIO的引脚与外部硬件设备连接,可实现与外部通讯、控制外部硬件或者采集外部硬件数据的功能。
STM32F103ZET6芯片为144脚芯片,包括7个通用目的的输入/输出口(GPIO)组,分别为GPIOA、GPIOB、GPIOC、GPIOD、GPIOE、GPIOF、GPIOG,同时每组GPIO口组有16个GPIO口。
通常简略称为PAx、PBx、PCx、PDx、PEx、PFx、PGx,其中x为0-15。
STM32的大部分引脚除了当GPIO使用之外,还可以复用位外设功能引脚(比如串口),这部分在【STM32】STM32端口复用和重映射(AFIO辅助功能时钟) 中有详细的介绍。
GPIO基本结构每个GPIO内部都有这样的一个电路结构,这个结构在本文下面会具体介绍。
这边的电路图稍微提一下:保护二极管:IO引脚上下两边两个二极管用于防止引脚外部过高、过低的电压输入。
当引脚电压高于VDD时,上方的二极管导通;当引脚电压低于VSS时,下方的二极管导通,防止不正常电压引入芯片导致芯片烧毁。
但是尽管如此,还是不能直接外接大功率器件,须加大功率及隔离电路驱动,防止烧坏芯片或者外接器件无法正常工作。
P-MOS管和N-MOS管:由P-MOS管和N-MOS管组成的单元电路使得GPIO具有“推挽输出”和“开漏输出”的模式。
这里的电路会在下面很详细地分析到。
TTL肖特基触发器:信号经过触发器后,模拟信号转化为0和1的数字信号。
但是,当GPIO引脚作为ADC采集电压的输入通道时,用其“模拟输入”功能,此时信号不再经过触发器进行TTL电平转换。
ADC外设要采集到的原始的模拟信号。
这里需要注意的是,在查看《STM32中文参考手册V10》中的GPIO的表格时,会看到有“FT”一列,这代表着这个GPIO口时兼容3.3V和5V的;如果没有标注“FT”,就代表着。
STM32入门教程--GPIO

STM32 GPIO使用方法一、STM32 GPIO简介GPIO即通用I/O(输入/输出)端口,是STM32可控制的引脚。
STM32芯片的GPIO引脚与外部设备连接起来,可实现与外部通讯、控制外部硬件或者采集外部硬件数据的功能。
以STM32F407为例,其为F4系列是基于Cortex-M4内核,共有7组IO。
分别为GPIOA~GPIOG,每组IO有16个IO口,共有112个IO口通常称为 PAx、PBx、PCx、PDx、PEx、PFx、PGx,其中x为0-15。
STM32 GPIO的复用:STM32 有很多的内置外设,这些外设的外部引脚都是与 GPIO 共用的。
也就是说,一个引脚可以有很多作用,但是默认为IO口,如果想使用一个 GPIO内置外设的功能引脚,就需要GPIO的复用,那么当这个GPIO 作为内置外设使用的时候,就叫做复用。
比如说串口就是GPIO复用为串口。
二、GPIO的工作模式1、4种输入模式(1)GPIO_Mode_IN_FLOATING 浮空输入(2)GPIO_Mode_IPU 上拉输入(3)GPIO_Mode_IPD 下拉输入(4)GPIO_Mode_AIN 模拟输入2、4种输出模式(1)GPIO_Mode_Out_OD 开漏输出(带上拉或者下拉)(2)GPIO_Mode_AF_OD 复用开漏输出(带上拉或者下拉)(3)GPIO_Mode_Out_PP 推挽输出(带上拉或者下拉)(4)GPIO_Mode_AF_PP 复用推挽输出(带上拉或者下拉)3、4种最大输出速度(1)2MHZ (低速)(2)25MHZ (中速)(3)50MHZ (快速)(4)100MHZ (高速)关于它们的定义,都在 stm32f4xx_gpio.h 中,都为结构体形式的定义三、GPIO内部结构a、保护二极管: IO引脚上下两边两个二极管用于防止引脚外部过高、过低的电压输入,当引脚电压高于VDD_FT时,上方的二极管导通,当引脚电压低于VSS时,下方的二极管导通,防止不正常电压引入芯片导致芯片烧毁b、上拉、下拉电阻:控制引脚默认状态的电压,开启上拉的时候引脚默认电压为高电平,开启下拉的时候引脚默认电压为低电平c、TTL施密特触发器:基本原理是当输入电压高于正向阈值电压,输出为高;当输入电压低于负向阈值电压,输出为低;IO口信号经过触发器后,模拟信号转化为0和1的数字信号也就是高低电平并且是TTL电平协议这也是为什么STM32是TTL电平协议的原因d、 P-MOS管和N-MOS管:信号由P-MOS管和N-MOS管,依据两个MOS管的工作方式,使得GPIO具有“推挽输出”和“开漏输出”的模式 P-MOS管高电平导通,低电平关闭,下方的N-MOS低电平导通,高电平关闭注:VDD_FT 代表IO口,兼容3.3V和5V,如果没有标注“FT”,就代表着不兼容5V (在芯片数据手册的引脚定义中,会看到有“I/O电平”一列有FT即为支持5V)开漏输出和推挽输出的区别:推挽输出:可以输出强高低电平,连接数字器件,推挽结构一般是指两个三极管分别受两互补信号的控制,总是在一个三极管导通的时候另一个截止.开漏输出:可以输出强低电平,高电平得靠外部电阻拉高。
数码管、按键的使用

数码管、按键的使用1、程序结构程序分为三个部分:按键处理、拨码开关和数码管显示。
结构如下:程序结构示意图按键处理放到主线程里面,控制显示什么数据,以及对数据进行操作。
数码管显示(以及LED显示)放到定时中断里面,只负责对数码管数据缓冲区的显示2、按键处理按键有四个(S2-S5)。
在主线程里面对所有键进行扫描,确认按键成功后,执行相应功能。
设端口输入为P,num,用于去抖动和连加/减,N为常量按键处理流程图S2:对激活数据(由拨码开关确定)进行加1,长按连加。
S5:对激活数据(由拨码开关确定)进行减1,长按连减。
3、拨码开关拨码开关(DIP5-8)要完成:确定什么数据送入数码管显示缓冲区(LedCount[8]),确定当前激活什么数据的第几位。
具体如下:●DIP8=0 处理IP显示以及变化(用到DIP6、DIP7、DIP8)●DIP8=1 显示MAC地址(用到DIP6、DIP7、DIP8)说明:DIP8区别IP与MAC①显示IP时:DIP7、DIP6编码对应激活IP地址的四字节。
②显示MAC时:显示MAC地址时最左边两个数码管不是地址信息,三字节地址信息由右边六个数码管显示第一个数码管:0 后面六个数码管显示前三字节MAC地址1 后面六个数码管显示后三字节MAC地址第二个数码管:熄灭4、数码管显示由于数码管公用“段线”(即同一时刻所有数码管数字一样),所以控制“位线”(数码管使能控制位)让数码管轮流显示。
设置整型变量flag取值1-8。
定时刷新显示。
具体流程为:数码管显示流程图5、程序的实现。
GPIO推挽输出和开漏输出详解

open-drain与push-pull】GPIO的功能,简单说就是可以根据自己的需要去配置为输入或输出.可是在配置GPIO管脚的时候,常会见到两种模式:开漏(区别和联系,下面整理了一些资料,来详细解释一下:之马矢奏春创作那么你的硬件电路中,必需自己提供对应的外部(external)的上拉电阻.而push-pull输出的优势是速度快,因为线路(line)是以两种方式驱动的.而带了上拉电阻的线路,即使以最快的速度去提升电压,最快也要一个常量的R×C的时间.其中R是电阻,C是寄生电容(parasitic capacitance),包括了pin脚的电容和板子的电容.可是,push-pull相对的缺点是往往需要消耗更多的电流,即功耗相对年夜.而open-drain所消耗的电流相对较小,由电阻R所限制,而R不能太小,因为当输出为低电平的时候,需要sink更低的transistor,这意味着更高的功耗.(此段原文:because the lower transistor has to sink that current when the output is low; that means higher power consumption.)而open-drain的好处之一是,允许你cshort(?)多个open-drain的电路,公用一个上拉电阻,此种做法称为wired-OR连接,此时可以通过拉低任何一个IO的pin脚使得输出为低电平.为了输出高电平,则所有的都输出高电平.此种逻辑,就是“线与”的功能,可以不需要额外的门(gate)电路来实现此部份逻辑.原理图图表 2 push-pull原理图图表 3 open-drain原理图图表 4 open-drain“线与”功能优点(1)可以吸电流,也可以贯电流;(2)和开漏输出相比,push-pull的高低电平由IC的电源低定,不能简单的做逻辑把持等.(1)对各种电压节点间的电平转换非常有用,可以用于各种电压节点的Up-translate和down-translate转换(2)可以将多个开漏输出的Pin脚,连接到一条线上,形成“与逻辑”关系,即“线与”功能,任意一个变低后,开漏线上的逻辑就为0了.这也是I2C,SMBus等总线判断总线占用状态的原理.(3)利用外部电路的驱动能力,减少IC内部的驱动.当IC内部MOSFET导通时,驱动电流是从外部的VCC流经R pull-up ,MOSFET到GND.IC内部仅需很下的栅极驱动电流.(4)可以利用改变上拉电源的电压,改变传输电平:图表 5 open-drain输出电平的原理IC 的逻辑电平由电源Vcc1决定,而输出高电平则由Vcc2决定.这样我们就可以用低电平逻辑控制输出高电平逻辑了.缺点一条总线上只能有一个push-pull输出的器件;开漏Pin不连接外部的上拉电阻,则只能输出低电平.当输出电平为低时,N沟道三极管是导通的,这样在Vcc'和GND之间有一个继续的电流流过上拉电阻R和三极管Q1.这会影响整个系统的功耗.采纳较年夜值的上拉电阻可以减小电流.可是,可是年夜的阻值会使输出信号的上升时间变慢.即上拉电阻R pull-up的阻值决定了逻辑电平转换的沿的速度.阻值越年夜,速度越低功耗越小.反之亦然.特点在CMOS电路里面应该叫CMOS输出更合适,因为在CMOS里面的push-pull输出能力不成能做得双极那么年夜.输出能力看IC内部输出极N管P管的面积.push-pull是现在CMOS电路里面用得最多的输出级设计方式.【open-drain和push-pull的总结】对GPIO的模式的设置,在不考虑是否需要额外的上拉电阻的情况下,是设置为open-drain还是push-pull,说究竟,还是push-pull,可是缺点是功耗相对会年夜些.如果你想要功耗低,且同时具有“线与”的功能,那么就用open-drain的模式.(同时注意GPIO硬件模块内部是否添加额外的上拉电阻)正所谓,转换速度与功耗,是鱼与熊掌,二则不成兼得焉.。
gpio编程说明 -回复

gpio编程说明-回复GPIO编程是指通过控制树莓派(Raspberry Pi)的通用输入输出端口(GPIO)来实现与外部设备(如传感器、执行器等)的交互。
在树莓派上进行GPIO编程可以让我们通过程序控制硬件,从而实现各种功能,如控制LED灯、读取按钮输入、采集环境数据等。
本文将以中括号内的内容为主题,详细介绍GPIO编程的基本概念、使用方法和注意事项。
一、基本概念1. GPIO引脚GPIO引脚是树莓派上可编程的数字输入输出引脚。
树莓派一般有多个GPIO引脚可供使用,每个引脚都可以通过程序来配置和控制。
GPIO引脚既可以作为输入接口接收外部信号,也可以作为输出接口输出电平信号。
2. 控制IO口电平GPIO引脚的电平即为其上的电压状态,一般有高电平和低电平两种状态。
高电平一般表示为1,低电平一般表示为0。
通过控制GPIO引脚的电平状态可以实现与外部设备的通信和交互。
3. 电平转换电路在实际应用中,外部设备的电平状态和树莓派的GPIO引脚的电平状态可能不一致,因此需要通过电平转换电路来匹配两者之间的电平差异。
常用的电平转换电路有电阻分压电路和三极管电路等,具体根据应用需求选择适当的电平转换电路。
二、GPIO编程方法在树莓派上进行GPIO编程主要有两种方法,一种是使用系统的IO库,如wiringPi库,另一种是使用Python语言的RPi.GPIO库。
下面将详细介绍这两种方法的使用。
1. 使用wiringPi库进行GPIO编程wiringPi是一款广泛应用的树莓派GPIO编程库,提供了丰富的API函数,简化了GPIO的配置和控制过程。
使用wiringPi库,需要先在树莓派上安装该库,然后在程序中包含相关头文件,并链接库文件,最后进行GPIO 的配置和控制操作。
2. 使用RPi.GPIO库进行GPIO编程RPi.GPIO是树莓派上广泛使用的Python GPIO编程库,使用该库可以简便地在Python语言下进行GPIO编程。
GPIO模式详解

最近在看数据手册的时候,发现在Cortex-M3里,对于GPIO的配置种类有8种之多:(1)GPIO_Mode_AIN 模拟输入(2)GPIO_Mode_IN_FLOATING 浮空输入(3)GPIO_Mode_IPD 下拉输入(4)GPIO_Mode_IPU 上拉输入(5)GPIO_Mode_Out_OD 开漏输出(6)GPIO_Mode_Out_PP 推挽输出(7)GPIO_Mode_AF_OD 复用开漏输出(8)GPIO_Mode_AF_PP 复用推挽输出对于刚入门的新手,我想这几个概念是必须得搞清楚的,平时接触的最多的也就是推挽输出、开漏输出、上拉输入这三种,但一直未曾对这些做过归纳。
因此,在这里做一个总结:推挽输出:可以输出高,低电平,连接数字器件; 推挽结构一般是指两个三极管分别受两互补信号的控制,总是在一个三极管导通的时候另一个截止。
高低电平由IC的电源低定。
推挽电路是两个参数相同的三极管或MOSFET,以推挽方式存在于电路中,各负责正负半周的波形放大任务,电路工作时,两只对称的功率开关管每次只有一个导通,所以导通损耗小、效率高。
输出既可以向负载灌电流,也可以从负载抽取电流。
推拉式输出级既提高电路的负载能力,又提高开关速度。
详细理解:如图所示,推挽放大器的输出级有两个“臂”(两组放大元件),一个“臂”的电流增加时,另一个“臂”的电流则减小,二者的状态轮流转换。
对负载而言,好像是一个“臂”在推,一个“臂”在拉,共同完成电流输出任务。
当输出高电平时,也就是下级负载门输入高电平时,输出端的电流将是下级门从本级电源经VT3拉出。
这样一来,输出高低电平时,VT3 一路和VT5 一路将交替工作,从而减低了功耗,提高了每个管的承受能力。
又由于不论走哪一路,管子导通电阻都很小,使RC常数很小,转变速度很快。
因此,推拉式输出级既提高电路的负载能力,又提高开关速度。
开漏输出:输出端相当于三极管的集电极. 要得到高电平状态需要上拉电阻才行. 适合于做电流型的驱动,其吸收电流的能力相对强(一般20ma以内).开漏形式的电路有以下几个特点:1. 利用外部电路的驱动能力,减少IC内部的驱动。
mpc8247 gpio配置模式说明

mpc8247 gpio配置模式说明
by:yaoqigui
date:2012-08-16
作为标准的gpio可以配置为好几种模式,作为普通的gpio模式通过配置PPARx,PDIRx,PDATx,PSORx寄存器x可以是A,B,C,D,
配置GPIO模式:
1,如果PPARx=0则该引脚为普通的gpio引脚,
如果PPARx=1则引脚为特殊功能引脚
2,如果PDIRx =0则该引脚输入模式,
如果PDIRx =1则引脚为输出模式
3,PDATx 数据寄存器,可以读输入/输出状态的值。
4,如果PSORx =0则该引脚特殊功能1
如果PSORx =1则引脚特殊功能2
配合使用情况:
void gpio_test(int *data)
{
volatile cpm2_map_t *immap;
volatile iop_cpm2_t *io;
immap = (cpm2_map_t *)cpm2_immr;
int ret;
io = &immap->im_ioport;
io->iop_pparc &=~GPIO_PC10; //作为普通的GPIO引脚
io->iop_pdirc |=GPIO_PC10; //普通的GPIO引脚输出模式ret=((io->iop_pdatc)&GPIO_PC10)>>23; //读引脚数据
*data=ret;
printk("gpio_test is coming ret is %d *data is %d\n",ret,*data); }
具体配置如下图:。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
荣品四核S5P4418开发板之GPIO功能配置与说明
RP4418开发板是采用三星S5P4418芯片研发的一款多功能四核cortex-a9开发板,对于企业产品研发或者项目方案的时候,用户在使用荣品开发板进行开发,如果硬件上有所修改,那么必须要修改GPIO,本篇主要介绍RP4418开发板的GPIO功能配置与说明。
对GPIO的认识主要有以下几方面:
●开发板GPIO引脚软硬件对应
●GPIO输出功能设置
●GPIO输入功能设置
●GPIO电平读取
●GPIO中断功能设置
1、开发板GPIO引脚软硬件对应:
在RP4418开发板内核中,所有GPIO引脚被分为ABCDE等几组,每组32个。
每组引脚起始地址定义如下图。
硬件引脚都对应分配在这几组引脚中:
例如:
GPIOB29对应PAD_GPIO_B + 29
硬件上的命名:GPIOB29
软件上的命名:PAD_GPIO_B + 29
GPIOC10对应PAD_GPIO_C + 10
硬件上的命名:GPIOC10
软件上的命名:PAD_GPIO_C + 10
2、GPIO输出功能设置:
如果要对GPIO配置为输出功能,输出高或输出低,就是拉高拉低的意思。
我们可以用int gpio_direction_output(unsigned gpio, int value)
从函数的参数来看,
unsigned gpio:这个是单个GPIO的值 ;
int value:这个是要设置的值(0代表低电平,1代表高电平)。
比如我要对LCD供电的GPIO拉高,那么软件上这样写:
gpio_direction_output(PAD_GPIO_C + 10, 1);
如果要拉低:
gpio_direction_output(PAD_GPIO_C + 10, 0);
我们在LCD驱动、触摸屏驱动、按键驱动等都有对GPIO设置,请参考源码对应的修改进行理解。
3、GPIO输入功能设置:
如果我们想了解一个外部的电平的高低情况,那么我们可以通过GPIO连接该路电平,接着把GPIO设成输入功能即可。
软件上用一个函数即可让GPIO变成输入功能
int gpio_direction_input(unsigned gpio)
从这上面我们只看到一个参数,就是对应GPIO的值
比如我要让GPIOC10改成输入功能
gpio_direction_input(PAD_GPIO_C + 10);
4、GPIO电平读取:
当我们需要读取当前GPIO的值(输出、输入、复用功能都可以读取),我们也可以通过函数去读取。
static inline int gpio_get_value(unsigned gpio)
参数GPIO代表需要读取GPIO对应的值。
比如我要读GPIOC10的值
gpio_get_value(PAD_GPIO_C + 10)
5、GPIO中断功能设置:
当我们需要引脚中断功能的时候,那么我们就需要实现GPIO的中断功能。
外部引脚设置为中断功能。
这个是软件人员最喜欢的GPIO,因为我们想要获取外部设备状态变化情况的时候,第一,我们可以通过中断功能马上得到当前状态(响应时间很短,能够快速进行处理),另外,比轮询的方式节约更多的代码量和减轻CPU的负载。
配置中断功能时,要用到这个函数:
参数:
unsigned io :代表单个GPIO引脚
int on:置为1,则代表使能中断功能,置为0,则说明不使能中断功能,即不作为中断引脚。
我们当前使用的触摸屏驱动就是使用中断的方式
Gt9xx.c (drivers\input\touchscreen)
触摸屏使用的了MCU_TOUCH_INT作为中断脚
MCU_TOUCH_INT对应的GPIO引脚为GPIOB29。
接下我们看一下驱动里怎么把GPIOB29脚配置为中断功能
GTP_GPIO_REQUEST(GTP_INT_PORT, "GTP_INT_IRQ");//先获取该引脚
gpio_direction_input(GTP_INT_PORT);//设为输入功能
nxp_soc_gpio_set_int_enable(GTP_INT_PORT,1);//再使能中断
GTP_GPIO_FREE(GTP_INT_PORT);//最后释放引脚
中断包含上升沿、下降沿、低电平、高电平这四种触发。
配置方面就有几种情况,请参考
irq.h (include\linux)
我们使用的RP4418开发板触摸屏是下降沿触发,所以我们配置的函数 request_irq(ts->client->irq,goodix_ts_irq_handler,IRQ_TYPE_EDGE_F ALLING,"goodix_ts", goodix_ts);
对于触发的几种方式,大家可以到网上查找资料进行分析了解。