hi3519a iomux


原文链接: 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

  1. 将adc_init.c 复制到 Hi3519AV100_SDK_V2.0.2.0/smp/a53_linux/drv/interdrv/init/linux/

  2. 将hi_adc.zip 复制到 Hi3519AV100_SDK_V2.0.2.0/smp/a53_linux/drv/interdrv

  3. 执行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

  1. GPIO0_2 EC20_POWER

#GPIO0_2(............) PD
himm 0x047E0008 0x00001600
himm 0x045F0400 0x4
himm 0x045F0010 0x4

sleep 1

  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

  1. 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模式

  1. 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
`