此腳本的作用之一是配置GPIO的默認狀態:
如:功能,內部電阻狀態,驅動能力等。
1.但是直接打開script.bin 文件則會出現亂碼,那么我們怎么才可以打開並更改該腳本的配置呢?
在路徑uboot_kernel/orangepi_sdk/toolchain/sunxi-tools/目錄下找到bin2fex,fex2bin,sunxi-fexc三個文件復制到pc機的 /bin目錄下;
如果找不到這三個文件執行一次make命令,就會自動生成,再執行上步;
2.將sd卡的script.bin文件復制到共享目錄里,再pc機上執行“bin2fex script.bin xxx.fex”,將script.bin 文件轉換為xxx.fex格式,此時就可以打開更改了,具體更改可以參考 uboot_kernel/orangepi_sdk/doc/H3-script.fex.pdf文檔
3.更改完成以后執行“fex2bin xxx.fex script.bin” 然后再將script.bn文件寫回sd卡
二、在script.fex里的GPIO配置:
Port:端口+組內序號<功能分配><內部電阻狀態><驅動能力><輸出電平狀態>
1 [gpio_para] 2 gpio_used = 1 3 ;gpio_num = 30 4 ;gpio_pin_1 = port:PL10<1><default><default><1> 5 ;gpio_pin_2 = port:PA15<1><default><default><0> 6 ... 7 8 功能分配(PA15): 000:輸入, 001:輸出, 010:SPI1_MOSI 9 011:UART3_RTS , 110:PA_EINT15, 111:IO Disable 10 默認值:7 11 12 內部電阻狀態(PA15): 00: Pull-up/down disable , 01: Pull-up 13 10: Pull-down, 11: Reserved 14 默認值:0 15 16 驅動能力(指輸出的電流大小,等級越高,電流越大): 17 00: Level 0 , 01: Level 1 18 10: Level 2 , 11: Level 3 19 默認值: 1 20 21 輸出電平狀態: 當功能選擇輸出時,1表示輸出高電平, 0表示輸出低電平 22 23 如:gpio_pin_12 = port:PA07<6><2><3><0>