Kickpi-Book
  • KICKPI Document
  • K5(A133)
    • A133中文文档
      • 02-KICKPI-K5C硬件介绍
      • 02-KICKPI-K5硬件介绍
      • 10-系统镜像烧录
      • 11-SDK源码编译
      • 12-硬件功能使用说明
      • 13-硬件工厂测试
      • 20-LCD功能调试
      • 21-LRADC按键配置
      • 31-Android10.0 Tablet系统定制
      • 32-Ubuntu16.04 系统定制
      • 33-Kernel 驱动定制
      • 34-K5C主板供电
  • K2B/K2C(H618)
    • zh
      • 01-主板介绍
        • 01-KICKPI-K2B硬件介绍
        • 02-KICKPI-K2C硬件介绍
      • 02-入门必读
        • 01-网盘目录说明
        • 02-快速使用
        • 03-功能测试
        • 04-扩展引脚
      • 03-镜像烧录
        • 01-SD卡烧录
        • 02-USB线烧录
      • 04-SDK编译
        • 01-编译环境搭建
        • 02-LINUX_SDK源码编译
        • 2. Android SDK编译
      • 05-外设驱动
        • RTC
      • 06-Android系统定制
        • Android常用系统定制
      • 07-Linux系统定制
        • Linux常用系统定制
      • 08-进阶
        • 14-Secure Boot
        • 硬件工厂测试
        • 44-Keybox
  • K1/K1B/K3/K8(RK3568/RK3562/RK3588)
    • zh
      • 01-主板介绍
        • 01-RK芯片对比介绍
        • 02-KICKPI-K1硬件介绍
        • 03-KICKPI-K1B硬件介绍
        • 04-KICKPI-K3硬件介绍
        • 06-KICKPI-K8硬件介绍
      • 02-入门必读
        • 01-网盘目录说明
        • 02-快速使用
        • 02-快速使用
        • 02-快速使用
        • 03-功能测试
        • 04-拓展引脚
      • 03-镜像烧录
        • 01-USB线烧录
      • 04-SDK编译
        • 01-编译环境搭建
        • 02-LINUX SDK 编译
        • 03-ANDROID SDK 编译
      • 05-外设驱动
        • GPIO
        • Kernel
        • LCD
        • PWM
        • RTC
      • 06-ANDROID系统定制
        • 01-Android常用系统定制
        • 07-Android NPU YOLOV5 目标检测
      • 07-LINUX系统定制
        • 01-Linux常用系统定制
        • 02-Linux安装VNC
        • 03-Linux Docker环境搭建
        • 04-Linux QT环境搭建
        • 05-Linux NPU YOLOV5S 目标检测
      • 08-进阶
        • 01-硬件工厂测试
        • 02-硬件老化测试
        • 03-固件解包和打包
  • K7(RK3576)
    • zh
      • 01-主板介绍
        • 01-KICKPI-K7硬件介绍
      • 02-入门必读
        • 01-网盘目录说明
        • 02-快速使用
        • 03-功能测试
        • 04-拓展引脚
      • 03-镜像烧录
        • 01-获取镜像文件
        • 02-USB线烧录
      • 04-SDK编译
        • 01-编译环境搭建
        • 02-Linux_SDK编译
        • 03-Android_SDK编译
      • 05-外设驱动
        • ADC
        • PWM
      • 06-ANDROID系统定制
        • 01-Android常用系统定制
      • 07-LINUX系统定制
        • 01-Linux常用系统定制
        • 02-Linux Docker环境搭建
        • 03-Linux NPU YOLOV5S 目标检测
        • 04-Linux_Deepseek大模型
        • 05-Linux_VNC远程控制
      • 08-进阶
        • ADB功能使用
        • 进阶测试
  • K4B(T113-S3)
    • T113-S3中文文档
      • 01-KICKPI-K4B硬件介绍
      • 10-系统镜像烧录
      • 11-SDK源码编译
      • 12-硬件功能测试
      • 13-硬件工厂测试
      • LCD功能调试
      • 20-Ubuntu20.04系统定制
      • Buildroot_QT5配置
      • Buildroot系统定制
  • common
    • zh
      • adb
        • ADB教程
      • android
        • 02-ADC
      • bluetooth
        • bootanimation
      • display
        • FPC接口介绍
      • linux
        • SSH
        • bluetoothctl教程
        • qt
Powered by GitBook
On this page
  • 符号说明
  • 扩展引脚
  • GPIO
  • CAN
  • PWM
  • UART
  • SPI
  • ADC
  1. K7(RK3576)
  2. zh
  3. 02-入门必读

04-拓展引脚

Last updated 3 days ago

此文档用于用户快速使用或测试主板扩展引脚功能。

符号说明

  • SDK$:指代源码路径

  • console$:泛指主板命令行控制台

  • ADB$:Android Debug Bridge 命令行工具,泛指可运行 ADB 的环境

扩展引脚

开发板板载扩展引脚功能

  • 可用于连接外部设备(温度传感器、湿度传感器等)

  • 与其他电路板或模块通信(I2C、SPI、UART等)

  • 自定义GPIO功能

具体功能拓展详情查看引脚列表。

引脚列表标注了每个引脚的默认配置(带*号),同时给出该引脚所对应的可选择配置。

K7引脚列表

K7_PIN

K7引脚电压

GPIO

扩展引脚默认GPIO引脚(带*号)已配置为输出口,可以控制GPIO输出高电平或低电平。

列举已经注册的GPIO控制节点

console$ ls /sys/class/leds/
GPIO0_A5  GPIO3_B0  GPIO3_D4  GPIO3_D5  PCIE_PWREN  SDMMC0_PWREN  fan  mmc2::  work

下面控制GPIO的电平状态,$GPIO 需要对应列举出的GPIO名称

控制GPIO输出电平状态

控制 GPIO 输出高电平

console$ echo 1 >  /sys/class/leds/$GPIO/brightness

控制 GPIO 输出低电平

console$ echo 0 >  /sys/class/leds/$GPIO/brightness

示例:

控制 GPIO3_D4 输出高电平

console$ echo 1 >  /sys/class/leds/GPIO3_D4/brightness

控制 GPIO3_D4 输出低电平

console$ echo 0 >  /sys/class/leds/GPIO3_D4/brightness

CAN

查询当前CAN设备

下面以 CAN0 进行示例说明。

console$ ifconfig -a
...
can0      Link encap:UNSPEC    Driver rk3576_canfd
          NOARP  MTU:16  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0 
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 
          collisions:0 txqueuelen:10 
          RX bytes:0 TX bytes:0 
          Interrupt:63 
...

可知设备名称为 can0

配置CAN

关闭CAN

console$ ip link set can0 down

设置仲裁段1M波特率,数据段3M波特率

console$ ip link set can0 type can bitrate 1000000 dbitrate 3000000 fd on

查看can0配置信息

console$ ip -details link show can0

启动CAN

console$ ip link set can0 up

CAN发送

发送(标准帧,数据帧,ID:123,date:DEADBEEF)

console$ cansend can0 123#DEADBEEF

发送(扩展帧,数据帧,ID:00000123,date:DEADBEEF)

console$ cansend can0 00000123##1DEADBEEF

CAN接收

开启打印,等待接收

console$ candump can0

回环模式测试

console$ ip link set can0 down
console$ ip link set can0 type can bitrate 500000 sample-point 0.8 dbitrate 2000000 sample-point 0.8 fd on loopback on
console$ ip -details -statistics link show can0
console$ ip link set can0 up
console$ echo 4096 > /sys/class/net/can0/tx_queue_len
console$ candump can0 &
console$ cansend can0 00000123##1DEADBEEF
  can0  00000123  [04]  DE AD BE EF

回环模式下,cansend 的数据可以通过 candump 接收。

PWM

列举pwm节点

console$ ls /sys/class/pwm/
pwmchip0  pwmchip1  pwmchip2

列举对应pwm dts节点

console$ cat /sys/class/pwm/pwmchip*/device/uevent | grep FULLNAME
OF_FULLNAME=/pwm@27331000
OF_FULLNAME=/pwm@2ade6000
OF_FULLNAME=/pwm@2ade7000

对应关系如下,从上往下,对应 pwmchip0 到 pwmchip2

PWM0_CH1_M0 - pwm0_2ch_1 - pwm@27331000 - pwmchip0

PWM2_CH6_M2 - pwm2_8ch_6 - pwm@2ade6000 - pwmchip1

PWM2_CH7_M2 - pwm2_8ch_7 - pwm@2ade7000 - pwmchip2

配置PWM

示例:

软件默认已配置 PWM0_CH1_M0(带*号),下面以 PWM0_CH1_M0 进行说明。

设置 PWM0_CH1_M0 通道,对应 pwmchip0,周期10000ns,占空比5000ns,极性为normal

console$ echo 0 > /sys/class/pwm/pwmchip0/export
console$ echo 10000 > /sys/class/pwm/pwmchip0/pwm0/period
console$ echo 5000 > /sys/class/pwm/pwmchip0/pwm0/duty_cycle
console$ echo normal > /sys/class/pwm/pwmchip0/pwm0/polarity
console$ echo 1 > /sys/class/pwm/pwmchip0/pwm0/enable

配置成功后,可用万用表测量 PWM0_CH1_M0 引脚,电压应为1.6V左右

UART

回环测试

软件默认已配置 UART8,下面以 UART8 进行示例说明。

RX、TX 进行硬件短接。

microcom 指定 UART8 进行通讯

console$ microcom -s 115200 /dev/ttyS8

示例:

root@linaro-alip:/# microcom -s 115200  -p /dev/ttyS8
[ 4218.137343] of_dma_request_slave_channel: dma-names property of node '/serial@2adb0000' missing or empty
connected to /dev/ttyS8
[ 4218.137431] dw-apb-uart 2adb0000.serial: failed to request DMA, use interrupt mode
Escape character: Ctrl-\
Type the escape character to get to the prompt.
hello uart word!

回环测试下,microcom 能够同时接收输出的字符

SPI

回环测试

软件默认已配置 SPI4,下面以 SPI4 进行示例说明。

MISO、MOSI 进行硬件短接。

列出spi设备节点

console$ ls /dev/spi*
/dev/spidev4.0

指定设备进行测试

console$ spidev_test -D /dev/spidev4.0 -v -l -p "hello"

示例:

root@linaro-alip:/# ./spidev_test -D /dev/spidev4.0 -v -l -p "hello"
spi mode: 0x20
bits per word: 8
max speed: 500000 Hz (500 kHz)
TX | 68 65 6C 6C 6F __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __  |hello|
RX | 68 65 6C 6C 6F __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __  |hello|

工具网盘路径

3-SoftwareData\Linux_Spi_Tool\spidev_test

ADC

读取ADC值

console$ cat /sys/bus/iio/devices/iio\:device0/in_voltage*_raw

示例:

读取通道 4 的电压值

console$  cat /sys/bus/iio/devices/iio\:device0/in_voltage4_raw
3528
K7_PIN_DOMAIN

K7主板扩展引脚可配置 GPIO 引脚,通过查看对应的 GPIO 引脚位置及编号。

K7主板扩展引脚可配置 CAN 接口,通过查看对应的 CAN 接口位置及编号。

K7主板扩展引脚可配置 PWM 接口,通过查看对应的 PWM 位置及通道号。

K7主板扩展引脚可配置 UART 接口,通过查看对应的 UART 位置及通道号。

K7主板扩展引脚可配置SPI接口,通过查看对应的 SPI 位置及通道号。

image-20250421165900688

K7主板扩展引脚配备三路ADC,通过查看对应的 ADC 位置及通道号。

扩展引脚章节
扩展引脚章节
扩展引脚章节
扩展引脚章节
扩展引脚章节
扩展引脚章节