一、硬件说明:
主板上有2组可编程GPIO,一组是和CPU直连的CPU_GPIO,另外一是通过SIO芯片引出的GPIO:
以下是CPU引出的IO口如下,PCB丝印编号:CPU_GPIO

| CPUIO名称 | 对应操作地址 | 电压范围(V) |
|---|---|---|
| CGP1 | 0XFD6A0A90 | 0--3.3V |
| CGP3 | 0XFD6D0A60 | 0--3.3V |
| CGP5 | 0XFD6D0A70 | 0--3.3V |
| CGP7 | 0XFD6D0A40 | 0--3.3V |
| CGP9 | 0XFD6D0A50 | 0--3.3V |
| CGP2 | 0XFD6D0710 | 0--1.8V |
| CGP4 | 0XFD6D0B70 | 0--1.8V |
| CGP6 | 0XFD6D0720 | 0--1.8V |
| CGP8 | 0XFD6D0730 | 0--1.8V |
| CGP10 | 0XFD6D0700 | 0--1.8V |
以下是SIO芯片印出来的IO口,PCB丝印编号:GP1

| SIO名称 | 位地址 | 电压范围(V) | 备注 |
|---|---|---|---|
| GP1 | 0 | 0--3.3V | 最高支持5V输入 |
| GP2 | 1 | 0--3.3V | 最高支持5V输入 |
| GP3 | 2 | 0--3.3V | 最高支持5V输入 |
| GP4 | 3 | 0--3.3V | 最高支持5V输入 |
| GP5 | 4 | 0--3.3V | 最高支持5V输入 |
| GP6 | 5 | 0--3.3V | 最高支持5V输入 |
| GP8 | 7 | 0--3.3V | 最高支持5V输入 |
二、GPIO的模式设置以及控制:
需要通过inpoutx64库,对对应GPIO写入如下值进行切换模式,写入一次长期保持,板子重新上电恢复为默认输出模式.
输出高电平:0x00800201
输出低电平:0x00800200
切换输入模式:0x00800100
当IO为输出模式:向对应GPIO写1表示高电平,写0表示低电平.(注意输出模式下,此时读取IO的值是随机的,请忽略该值)
当IO为输入模式:读取对应GPIO,若值为0X800102表示高电平,若值为0X800100表示低电平.(注意输入模式下,不要往IO写数据,一旦写了数据,该IO会变成输出模式)
对于以上操作细节,样例程序已经封装好,可以直接使用.
通过inpoutx64库,按照SIO芯片操作流程进行操作,样例程序已经封装好,可以直接使用.
三、使用样例软件控制说明:
关于GPIO测试样例,将提供inpoutx64操作代码的C#样例程序.

测试软件使用
选择需要测试的IO
输出高电平:操作选择的IO输出高电平
输出低电平:操作选择的IO输出低电平
读取IO电平:设置IO为输入模式,并读取当前IO电平,获取到的数值:0表示低电平,1表示高电平,2表示失败和异常
测试软件下载:
Execution File
测试软件源码下载:
Source Code