TK1 ~ 控制GPIO

Posted 沧海一粟

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了TK1 ~ 控制GPIO相关的知识,希望对你有一定的参考价值。

  首先建立个存放gpio代码的文件夹,CD到该文件夹。

git clone git://github.com/derekmolloy/boneDeviceTree/

解压后会出现几个文件

GPIO文件夹内的SimpleGPIO.cpp和SimpleGPIO.h复制到eclipse工作空间的src文件夹下。

包含相关头文件后编写代码:

//============================================================================
// Name        : CPPT1.cpp
// Author      : Kopu
// Version     :
// Copyright   : Oh,Shit!
// Description : Hello World in C++, Ansi-style
//============================================================================
#include "stdio.h"
#include "stdlib.h"
#include <iostream>
#include "SimpleGPIO.h"
using namespace std;

const int GPIO_PU6_P58 = 166;
const int GPIO_PH1_P50 = 57;

unsigned int IO_Data=0;

void delay_ms(unsigned int num)
{
  unsigned int i,j;
  for(i=num;i>0;i--)
    for(j=80000;j>0;j--);
}
int main(void)
{
    gpio_export(GPIO_PH1_P50);
    gpio_export(GPIO_PU6_P58);
    gpio_set_dir(GPIO_PH1_P50, INPUT_PIN);
    gpio_set_dir(GPIO_PU6_P58, OUTPUT_PIN);
    while(1)
    {
     gpio_get_value(GPIO_PH1_P50,&IO_Data);
     if(IO_Data)printf("1\\n");
     else printf("0\\n");
     gpio_set_value(GPIO_PU6_P58, HIGH);
     delay_ms(10);
     gpio_set_value(GPIO_PU6_P58, LOW);
     delay_ms(10);
    }
 return 0;
}

关于上面的gpio对应TK1上的引脚:

 

Port  sysfs filename Physical pin Notes
GPIO_PH1 gpio57 Pin 50 on J3A1  
GPIO_PU0 gpio160 Pin 40 on J3A2  
GPIO_PU1 gpio161 Pin 43 on J3A2  
GPIO_PU2 gpio162 Pin 46 on J3A2 (Disabled by default)
GPIO_PU3 gpio163 Pin 49 on J3A2  
GPIO_PU4 gpio164 Pin 52 on J3A2  
GPIO_PU5 gpio165 Pin 55 on J3A2  
GPIO_PU6 gpio166 Pin 58 on J3A2  

 

J3A1 
Pin Signal name Tegra K1 ball Usage/description Type/dir default Associated voltage rail Tegra pad type Connector row
1 +5V_SYS n/a Main 5V from system Power - - 1
2 GND n/a Tied to common GND Ground - - 2
3 +1.8V_VDDIO n/a Main 1.8V supply from PMU switcher 5 Power - - 1
4 TS_SPI_SCK ULPI_NXT SPI clock for Touchscreen controller (if SPI used) Input +1.8V_VDDIO ST 2
5 TS_SPI_MOSI ULPI_CLK SPI MOSI for Touchscreen controller (if SPI used) Input +1.8V_VDDIO ST 1
6 TS_SPI_CS_L ULPI_STP SPI chip select for Touchscreen controller (if SPI) Input +1.8V_VDDIO ST 2
7 TS_SPI_MISO ULPI_DIR SPI MISO for Touchscreen controller (if SPI used) Output +1.8V_VDDIO ST 1
8 GND n/a Tied to common GND Ground - - 2
9 GND n/a Tied to common GND Ground - - 1
10 +3.3V_RUN_TOUCH n/a AMS PMIC LDO9 Power - - 2
11 TS_SHDN_L GPIO_PK1 Shutdown control for Touchscreen controller Input +1.8V_VDDIO CZ 1
12 TS_CLK CLK2_OUT Clock for Touchscreen controller Input +1.8V_VDDIO ST 2
13 TS_RESET_L GPIO_PK4 Reset for Touchscreen controller Input +1.8V_VDDIO CZ 1
14 GND n/a Tied to common GND Ground - - 2
15 GND n/a Tied to common GND Ground - - 1
16 +3.3V_SYS n/a Main 3.3V supply Power - - 2
17 GPIO_PK2 GPIO_PK2 Available GPIO Output +1.8V_VDDIO CZ 1
18 GEN2_I2C_SCL_3.3V GEN2_I2C_SCL 3.3V I2C IF (Pulled up to +3.3V_LP0) Input, Open Drain +3.3V_LP0 DD 2
19 +1.8V_VDDIO n/a Main 1.8V supply from PMU switcher 5 Power - - 1
20 GEN2_I2C_SDA_3.3V GEN2_I2C_SDA 3.3V I2C IF (Pulled up to +3.3V_LP0) Bidir, Open Drain   DD 2
21 GEN1_I2C_SCL GEN1_I2C_SCL 1.8V I2C (Pulled up to +1.8V_VDDIO) Input, Open Drain +1.8V_VDDIO DD 1
22 +3.3V_RUN n/a +3.3V rail that is off in LP0 Power - - 2
23 GEN1_I2C_SDA GEN1_I2C_SDA 1.8V I2C (Pulled up to +1.8V_VDDIO) Bidir, Open Drain +1.8V_VDDIO DD 1
24 EN_AVDD_LCD n/a Enable for Embedded display from PMU GPIO4 Input - - 2
25 +VDD_MUX n/a Main 12V from Jack Power     1
26 GND n/a Tied to common GND Ground - - 2
27 EN_VDD_BL DAP3_DOUT Backlight supply enable Input +1.8V_VDDIO ST 1
28 DP_AUX_P DP_AUX_P eDP AUX control interface (+) Bidir +1.05V_RUN_AVDD LVDS/DP 2
29 GND n/a Tied to common GND Ground - - 1
30 DP_AUX_N DP_AUX_N eDP AUX control interface (-) Bidir +1.05V_RUN_AVDD LVDS/DP 2
31 LVDS_TXD0_P LVDS_TXD0_P LVDS Data lane 0 (+) or eDP Data lane 2 (+) Input +1.05V_RUN_AVDD LVDS/DP 1
32 GND n/a Tied to common GND Ground - - 2
33 LVDS_TXD0_N LVDS_TXD0_N LVDS Data lane 0 (-) or eDP Data lane 2 (+) Input +1.05V_RUN_AVDD LVDS/DP 1
34 LVDS_TXD1_P LVDS_TXD1_P LVDS Data lane 1 (+) or eDP Data lane 1 (+) Input +1.05V_RUN_AVDD LVDS/DP 2
35 GND n/a Tied to common GND Ground - - 1
36 LVDS_TXD1_N LVDS_TXD1_N LVDS Data lane 1 (-) or eDP Data lane 1 (-) Input +1.05V_RUN_AVDD LVDS/DP 2
37 LVDS_TXD3_P LVDS_TXD3_P LVDS Data lane 3 (+) - Not used for eDP Input +1.05V_RUN_AVDD LVDS/DP 1
38 GND n/a Tied to common GND Ground - - 2
39 LVDS_TXD3_N LVDS_TXD3_N LVDS Data lane 3 (-) - Not used for eDP Input +1.05V_RUN_AVDD LVDS/DP 1
40 LVDS_TXD2_P LVDS_TXD2_P LVDS Data lane 2 (+) or eDP Data lane 0 (+) Input +1.05V_RUN_AVDD LVDS/DP 2
41 GND n/a Tied to common GND Ground - - 1
42 LVDS_TXD2_N LVDS_TXD2_N LVDS Data lane 2 (-) or eDP Data lane 0 (-) Input +1.05V_RUN_AVDD LVDS/DP 2
43 LVDS_TXD4_N LVDS_TXD4_N LVDS Clock lane (+) or eDP Data lane 3 (+) Input +1.05V_RUN_AVDD LVDS/DP 1
44 GND n/a Tied to common GND Ground - - 2
45 LVDS_TXD4_P LVDS_TXD4_P LVDS Clock lane (-) or eDP Data lane 3 (-) Input +1.05V_RUN_AVDD LVDS/DP 1
46 EPP_HPD DP_HPD eDP display Hot Plug Detect input Output +3.3V_LP0 ST 2
47 GND n/a Tied to common GND Ground - - 1
48 LCD_BL_EN GPIO_PH2 Backlight enable Input +1.8V_VDDIO CZ 2
49 LCD_TE KB_ROW6 Tearing Effect from embedded display (if supported) Output +1.8V_VDDIO ST 1
50 LCD_BL_PWM GPIO_PH1 Backlight PWM Input +1.8V_VDDIO CZ 2

三排的插座:

 J3A2
Pin Signal name Tegra K1 ball Usage/description Type/dir default Associated voltage rail Tegra pad type Connector row
1 +5V_SYS n/a Main 5v from system Power - - 1
2 CAM2_PWDN GPIO_PBB6 Power Down for Camera 2 input +1.8V_RUN_CAM ST 2
3 +1.05V_RUN_CAM_REAR n/a AMS PMIC LDO7 for Camera 1 Power - - 3
4 CAM2_MCLK GPIO_PBB0 Master Reference Clock for Camera 2 input +1.8V_RUN_CAM ST 1
5 CAM_RST_L GPIO_PBB3 Reset for Camera(s) input +1.8V_RUN_CAM ST 2
6 +2.8V_RUN_CAM n/a AMS PMIC LDO4 for Camera(s) Power - - 3
7 CAM2_GPIO GPIO_PCC2 GPIO for Camera 2 Bidir +1.8V_RUN_CAM ST 1
8 CAM_I2C_SDA CAM_I2C_SDA I2C Data for Camera(s) Bidir, Open Drain +1.8V_RUN_CAM DD 2
9 GND n/a Tied to common GND Ground - - 3
10 GND n/a Tied to common GND Ground - - 1
11 CAM_I2C_SCL CAM_I2C_SCL I2C Clock for Camera(s) Input, Open Drain +1.8V_RUN_CAM SS 2
12 CSI_A_CLK_P CSI_A_CLK_P CSI Clock (+) for Camera 1 Output +1.2V_GEN_AVDD CSI 3
13 CSI_E_CLK_N CSI_E_CLK_N CSI Clock (-) for Camera 2 Output +1.2V_GEN_AVDD CSI 1
Jetson TK1 开发板初用体会

python控制gpio的一段代码抄的

Android(Java)控制GPIO的方法及耗时分析

树莓派瞎玩~6~控制GPIO之C语言

gpio IOCTL控制

Jetson tk1 安装 usbtoserials 驱动

(c)2006-2024 SYSTEM All Rights Reserved IT常识