hi3519a iomux
0x000~0x3FC GPIO_DATA GPIO 数据寄存器
0x400 GPIO_DIR GPIO 方向控制寄存器
0x404 GPIO_IS GPIO 中断触发寄存器
0x408 GPIO_IBE
0x40C GPIO_IEV
0x410 GPIO_IE
0x414 GPIO_RIS
0x418 GPIO_MIS
0x41C GPIO_IC
GPIO 双沿触发中断寄存器 GPIO 触发中断条件寄存器 GPIO 中断屏蔽寄存器 GPIO 原始中断状态寄存器 GPIO 屏蔽状态中断寄存器 GPIO 中断清除寄存器
13-148 13-148 13-149 13-149 13-149 13-149 13-150 13-150 13-150
低功耗待机模式 休眠
himm 0x04590028 0x1
UART
RS485使用的串口为UART3
//rs485 uart3
system("himm 0x047E0000 0x00001101");
system("himm 0x047E0004 0x00001601");
echo "RS485" > /dev/ttyAMA3
// uart1
system("himm 0x047B8030 0x00001501");
system("himm 0x047B8034 0x00001401");
//rs232 uart2
system("himm 0x047B8040 0x00001501");
system("himm 0x047B8044 0x00001401");
光敏电阻 10~100K
强光 100R
普通光 10K
黑光 100k+
ADC
将adc_init.c 复制到 Hi3519AV100_SDK_V2.0.2.0/smp/a53_linux/drv/interdrv/init/linux/
将hi_adc.zip 复制到 Hi3519AV100_SDK_V2.0.2.0/smp/a53_linux/drv/interdrv
执行Make 生成
#!/bin/sh
#adc 管脚复用
himm 0x04058000 0x00001001
himm 0x04058004 0x00001001
himm 0x04058008 0x00001001
himm 0x0405800C 0x00001001
insmod hi3519av100_adc.ko
./adc_test
EC20 4G Model(EC20) RI DTR
- GPIO0_2 EC20_POWER
#GPIO0_2(............) PD
himm 0x047E0008 0x00001600
himm 0x045F0400 0x4
himm 0x045F0010 0x4
sleep 1
- JTAG_TDO/GPIO2_3 4G_RST_3V3 复位
#GPIO2_3(......)
himm 0x0405803C 0x00001400
himm 0x045F2400 0x8
himm 0x045F2020 0x8
GPIO2_3 I REST
himm 0x0405803C 0x00001400
himm 0x045F2400 0x8
himm 0x045F2020 0x8
Host(Hi3519A) 4G Model(EC20)
GPIO(PWR_WAKEUP0) <-- RI
GPIO(PWR_EN0) --> DTR
TF SDcard
- SDIO0_CARD_POW ER_EN GPIO10_0
GPIO10_0 0x045FA400
himm 0x047E0064 0x00001000 31:15 保留。
14 保留。
13 保留。
12 输入使能,高有效。
11 施密特输入使能,高有效。
10 保留。
9 下拉电阻使能,高有效。
8 上拉电阻使能,高有效。
7:4 驱动能力,0~15对应SD IO档位1~档位16。
3:0 "功能选择:
0:GPIO10_0
1:SDIO0_CARD_POWER_EN
4:VOU1120_DATA12
7:LCD_DATA13"
himm 0x047E0064 0x00000201 # 配置为SDIO0_CARD_POWER_EN模式
- SDIO0_CARD_DETECT GPIO10_1
himm 0x047E0068 0x00001000 31:15 保留。
14 保留。
13 保留。
12 输入使能,高有效。
11 施密特输入使能,高有效。
10 保留。
9 下拉电阻使能,高有效。
8 上拉电阻使能,高有效。
7:4 驱动能力,0~15对应SD IO档位1~档位16。
3:0 "功能选择:
0:GPIO10_1
1:SDIO0_CARD_DETECT
4:VOU1120_DATA9
7:LCD_DATA16"
himm 0x047E0068 0x00001901 # 配置为SDIO0_CARD_DETECT模式
echo 20 > /proc/sys/net/ipv4/igmp_max_memberships
route add default gw 192.168.1.1
cd /usr/ko
./load3519av100 -i -sensor0 imx334 -sensor1 imx334 -sensor2 imx334 -sensor3 imx334 -sensor4 imx334
sleep 1
#ir-cut GPIO1_0 GPIO1_2
#himm 0x04058000 0x00001000
#himm 0x04058008 0x00001000
#himm 0x045F1400 0x5
#himm 0x045F1014 0x4
#GPIO1_6.........5v............
himm 0x04058074 0x00001000
himm 0x045F1400 0x40
himm 0x045F1100 0x40
sleep 1
31:15 保留。
14 强上拉使能。高有效。
13 保留。
12 输入使能,高有效。 1
11 施密特输入使能,高有效。
10 电平转换速率控制,为0时电平转换速率快,为1时电平转换速率慢。 1
9 下拉电阻使能,高有效。 1
8 上拉电阻使能,高有效。
7:4 驱动能力,0~15对应RGMII IO档位1~档位16。
3:0 "功能选择:
0:GPIO0_2
1:UART3_RTSN
2:UART6_RXD
3:LCD_DATA2
4:VOU1120_DATA5
5:VOU656_DATA2"
#ec20 4g
#GPIO0_2(............) PD
himm 0x047E0008 0x00001600
himm 0x045F0400 0x4
himm 0x045F0010 0x4
sleep 1
#GPIO2_3(......)
himm 0x0405803C 0x00001400
himm 0x045F2400 0x8
himm 0x045F2020 0x8
GPIO_DIR 0x0400
GPIO_DATA Offset Address: 0x000~0x3FC Total Reset Value: 0x00
当 GPIO_DIR 相应的比特配置为输入时,有效读取的结果将返回管脚的值;当配置为 输出的时候,有效读取的结果将返回写入的值。
GPIO_DATA 寄存器利用 PADDR[9:2]实现了读写寄存器比特的屏蔽操作。该寄存器对 应 256 个地址空间。PADDR[9:2]分别对应 GPIO_DATA[7:0],当相应的 bit 为高时,则 可以对相应的位进行读写操作;反之,若对应 bit 为低则不能进行操作。例如:
若地址为 0x3FC(0b11_1111_1100),则对 GPIO_DATA[7:0]这 8bit 操作全部有 效。
若地址为 0x200(0b10_0000_0000),则仅对 GPIO_DATA[7]的操作有效。
#!/bin/sh
cd /opt/audio
./hi3519av100_audio 2 &
cd /opt/gpio
#IR-cut...... ............WLED
#./hi3519av100_gpio_test 2 &
./hi3519av100_gpio_test 3 &
sleep 5
cd /opt/audio
killall hi3519av100_audio
cd /opt/uart
./hi3519av100_uart_test 1&
sleep 6
#......LED... ............
cd /opt/gpio
killall hi3519av100_gpio_test
himm 0x045F4008 0x0
himm 0x045FB004 0x0
./hi3519av100_gpio_test 1 &
cd /opt/uart
killall hi3519av100_uart_test
sleep 2
#...............
cd /opt/gpio
killall hi3519av100_gpio_test
sleep 2
cd /opt/ec20
./quectel-CM &
sleep 5
killall quectel-CM
sleep 2