-运行Linux的计算机(Linux主机),推荐安装GCC工具链,用于构建L4T。有关详细信息,请参阅《L4T开发指南》中的“L4T工具链”部分。...Cented下载《 Jetson Nano Developer Kit Pinmux spreadsheet》 第二步:下载 L4T Driver Package 和源文件 这个需要在 Linux...主机上, 下载和解压缩文件《 L4T Jetson Driver Package》 第三步:更新U-Boot Pinmux 由U-Boot引导加载程序编程的pinmux配置存储在一个U-Boot头文件中...而在此设备树中的引脚复用配置,只被CBoot应用一次,而不会被后续(启动的)Linux Kernel再次应用。...因此如果想(让kernel)使用更新后的设备树文件,你必须为Jetson Nano上的(Linux Kernel)重新编译DTB 第五步:重刷NANO 使用您的Linux主机将更新后的U-Boot引导加载程序和设备树镜像
登录NVIDIA官网(https://developer.nvidia.com/embedded/downloads ),进行物理引脚文档表格下载,文件名为《NV_Jetson_Nano_Module_Pinmux_Config_Template.xlsm...》 (2)登录官网(https://developer.nvidia.com/embedded/linux-tegra-r3223 ),下载Jeston Nano相应的BSP源码包,下载后文件名为《public_sources.tbz2...》 (3)打开NV_Jetson_Nano_Module_Pinmux_Config_Template.xlsm image.png (4)解压public_sources.tbz2文件,进入Linux_for_Tegra...bank, offset) \ ((TEGRA_GPIO_BANK_ID_##bank * 8) + offset) #endif (5)综合以上 《NV_Jetson_Nano_Module_Pinmux_Config_Template.xlsm
资料下载 coding无法使用浏览器打开,必须用git工具下载: git clone https://e.coding.net/weidongshan/linux/doc_and_source_for_drivers.git...export ARCH=arm export CROSS_COMPILE=arm-buildroot-linux-gnueabihf- export PATH=$PATH:/home/book/100ask_stm32mp157..._pro-sdk/ToolChain/arm-buildroot-linux-gnueabihf_sdk-buildroot/bin 2..../ToolChain/gcc-linaro-6.2.1-2016.11-x86_64_arm-linux-gnueabihf/bin 1.2 编译、替换设备树 1....里面有很多文件,作用如下: Pinctrl的虚拟文件 作用 解释 pins 单个引脚信息 pingroups 引脚的组信息 pinmux-pins 单个引脚的复用信息 pinmux-functions
外围模块在使用前必须将Pinmux配置为相应的引脚。...应用pinmux配置的两种方法:调用hal_pinmux_set_function()或配置Easy pinmux工具(EPT),这是一种软件工具,可为pinmux配置提供图形用户界面。...hal_pinmux_status_t hal_pinmux_set_function(hal_gpio_pin_t gpio_pin,hal_pinmux_select_t function_index...) 此功能配置目标GPIO的pinmux。...ret = hal_gpio_deinit(gpio_pin); ◆ hal_pinmux_set_function() hal_pinmux_status_t hal_pinmux_set_function
/source_sync.sh -t 这里 可以在《 Nvidia Jetson Linux Driver Package Release Notes...Make sure GPIO17 pinmux is configured as GPIO not SFIO. How to check pinmux setting 1....By checking Jetson AGX Xavier pinmux configuration template, we know that GPIO17 is actually GPIO3_PQ...So GPIO17 is actually gpio417 in Linux(288 + 129 = 417). 4.
枚举 hal_pinmux_select_t { HAL_PINMUX_DEFAULT = 0, HAL_PINMUX_PWM1 = 1, HAL_PINMUX_PWM2, HAL_PINMUX_PWM3..., HAL_PINMUX_PWM4, HAL_PINMUX_PWM5, HAL_PINMUX_PWM6, HAL_PINMUX_LED3, HAL_PINMUX_LED4, HAL_PINMUX_LED5..., HAL_PINMUX_SDIO_LED, HAL_PINMUX_CLK_XO32k, HAL_PINMUX_CLK_XO16m, HAL_PINMUX_CLK_RCO128_64k, HAL_PINMUX_PER_CLK..., HAL_PINMUX_DMIC_CLK, HAL_PINMUX_MDSP_UART_TX, HAL_PINMUX_CS_1, HAL_PINMUX_CS_2, HAL_PINMUX_CS_3,...HAL_PINMUX_SDIO_BUS_PWR_CTL, HAL_PINMUX_I2S0_SDO1, HAL_PINMUX_I2S0_SDO2, HAL_PINMUX_UART2_TX, HAL_PINMUX_DBG_PORT
资料下载 coding无法使用浏览器打开,必须用git工具下载: git clone https://e.coding.net/weidongshan/linux/doc_and_source_for_drivers.git...gpio_chip中提供request函数: chip->request = gpiochip_generic_request; 3.2 Pinctrl编程 static const struct pinmux_ops..._pro-sdk/ToolChain/arm-buildroot-linux-gnueabihf_sdk-buildroot/bin 2..../ToolChain/gcc-linaro-6.2.1-2016.11-x86_64_arm-linux-gnueabihf/bin 4.2 编译、替换设备树 1....direction_output,这2个函数的调用关系如下: direction_output/direction_input pinctrl_gpio_direction ret = pinmux_gpio_direction
脚 例如:(下面的代码只做事例讲解,实际代码不同平台可能会不一样,请根据原理图和数据手册进行修改): (1).添加对应uart的脚 static const GPIO_PinMuxParam g_pinmux_uart2...口的初始化代码(有些版本可能没有uart2的初始化代码,需要自行添加) case HAL_DEV_MAJOR_UART: if (minor == UART0_ID) { info[0].pinmux...= g_pinmux_uart0; info[0].count = HAL_ARRAY_SIZE(g_pinmux_uart0); } else if (minor == UART1..._ID) { info[0].pinmux = g_pinmux_uart1; info[0].count = HAL_ARRAY_SIZE(g_pinmux_uart1...); } else if (minor == UART2_ID) { info[0].pinmux = g_pinmux_uart2; info[0].count
视频观看 百问网驱动大全 GPIO子系统与Pinctrl子系统的交互 参考资料: Linux 5.x内核文档 Linux-5.4\Documentation\driver-api Linux-5.4...\Documentation\devicetree\bindings\gpio\gpio.txt Linux-5.4\drivers\gpio\gpio-74x164.c Linux 4.x内核文档...Linux-4.9.88\Documentation\gpio Linux-4.9.88\Documentation\devicetree\bindings\gpio\gpio.txt Linux-.../* Convert to the pin controllers number space */ pin = gpio_to_pin(range, gpio); ret = pinmux_request_gpio...int pin, const char *owner, struct pinctrl_gpio_range *gpio_range) { const struct pinmux_ops
Layout (网址:https://docs.nvidia.com/jetson/archives/l4t-archived/l4t-3231/index.html#page/Tegra%2520Linux...例如: $L4T_Sources/r32.4.2/Linux_for_Tegra/source/public/kernel/nvidia/drivers/media/i2c/* 问:Jetson NX可以解码多少...更新CAN pinmux寄存器: 0 x0c303000 = 0 x0000c400; 0 x0c303008 = 0 x0000c458; 可以链接一个这样的收发器: ?...-将收发机的RX连接到J17的CAN_RX -其他3个引脚也一样 -更新上面提到的pinmux寄存器 -加载内核模块: modprobe can modprobe can-raw modprobe mttcan...如果你没有其他CAN设备或收发机: 你可以做环回测试: -将J17的CAN_RX连接到J17的CAN_TX -更新上面提到的pinmux寄存器 -加载内核模块: modprobe can modprobe
图 25图 26SYSCFG0_PINMUX(1)是PINMUX1的偏移地址,可以在"include\hw\"目录下hw_syscfg0_C6748.h头文件查看定义,如下图所示。...图 27可以算出PINMUX1的偏移地址为0x124,那么可以算出PINMUX1的值为:PINMUX1=(0x01C14000+0x124)=0x01C14124。...图 52图 53SYSCFG0_PINMUX(1)是PINMUX1的偏移地址,可以在"include/hw"目录下hw_syscfg0_C6748.h头文件查看定义,如下图所示。...图 54可以算出PINMUX1的偏移地址为0x124,那么可以算出PINMUX1的值为:PINMUX1=(0x01C14000+0x124)=0x01C14124。...C)》技术参考手册中找到,下图为技术参考手册中PINMUX1的值。
hal_gpio_set_direction(GPIOA(25), GPIO_DIRECTION_INPUT); 配置 GPIO 的 MUX 功能 GPIO 通常有多种功能,需要配置 MUX 选择需要的功能,使用 hal_gpio_pinmux_set_function...gpio_pin_t pin, gpio_muxsel_t function_index); 来设置 GPIO 的复用功能,这里配置为GPIO 输入模式(GPIO_MUXSEL_IN) hal_gpio_pinmux_set_function...hal_gpio_set_pull(GPIOA(25), GPIO_PULL_UP); hal_gpio_set_direction(GPIOA(25), GPIO_DIRECTION_INPUT); hal_gpio_pinmux_set_function...hal_gpio_set_pull(GPIOA(29), GPIO_PULL_UP); hal_gpio_set_direction(GPIOA(29), GPIO_DIRECTION_OUTPUT); hal_gpio_pinmux_set_function
gpio_pin_t pin, gpio_muxsel_t function_index); 来设置 GPIO 的复用功能,这里配置为GPIO 输出模式(GPIO_MUXSEL_OUT) hal_gpio_pinmux_set_function...配置 GPIO 的上下拉状态 hal_gpio_set_direction(GPIOA(18), GPIO_DIRECTION_OUTPUT); // 配置 GPIO 输入输出模式 hal_gpio_pinmux_set_function...hal_gpio_set_pull(GPIOA(18), GPIO_PULL_UP); hal_gpio_set_direction(GPIOA(18), GPIO_DIRECTION_OUTPUT); hal_gpio_pinmux_set_function...hal_gpio_set_pull(GPIOA(13), GPIO_PULL_UP); hal_gpio_set_direction(GPIOA(13), GPIO_DIRECTION_OUTPUT); hal_gpio_pinmux_set_function...hal_gpio_set_pull(GPIOA(12), GPIO_PULL_UP); hal_gpio_set_direction(GPIOA(12), GPIO_DIRECTION_OUTPUT); hal_gpio_pinmux_set_function
NVIDIA发布了最新的Jetson Nano Pinmux 表格 该表用来帮助系统设计师为每一个新的系统设计指定pinmux配置。...5.Jetson Nano 3D CAD STEP model 如题 6.Jetson Nano开发者工具包用户Pinmux配置表 这个电子表格是Jetson Nano 开发套件的一个必看资料。...它的目的是帮助开发套件用户为40针扩展头指定pinmux配置。
hal_gpio_set_direction(GPIOA(25), GPIO_DIRECTION_INPUT); 配置 GPIO 的 MUX 功能 GPIO 通常有多种功能,需要配置 MUX 选择需要的功能,使用 hal_gpio_pinmux_set_function...gpio_pin_t pin, gpio_muxsel_t function_index); 来设置 GPIO 的复用功能,这里配置为GPIO 输入模式(GPIO_MUXSEL_IN) hal_gpio_pinmux_set_function...hal_gpio_set_pull(GPIOA(25), GPIO_PULL_UP); hal_gpio_set_direction(GPIOA(25), GPIO_DIRECTION_INPUT); hal_gpio_pinmux_set_function
PINMUX :- e54000 U-Boot 1.3.4 (Sep 15 2011 – 20:23:44) DM368-IPNC-1.0.1 I2C: ready...DDR Clock :- 340MHz //DDR时钟 PINMUX...-2.6.18_pro500-davinci_IPNC Image Type: ARM Linux Kernel Image (uncompressed) Data Size:...0.010000] MUX: initialized I2C_SCL [ 0.010000] MUX: initialized GPIO87 [ 0.010000] [ 0.010000] pinmux4...drv_vpss gpio set pinmux CLK Hz, ARM Hz = 432000000 DDR Hz = 340000000 VPSS Hz
/pinmux/pinconfig 2.5 源码结构介绍 3 模块配置 3.1 kernel menuconfig 配置 3.2 device tree 源码结构和路径 3.2.1 device tree...或者可以通过设置将一个输入管脚与 VDD 或 GND 相连 (上拉/下拉),以便在没有信号驱动管脚时使管脚拥有确认值 Pinmux 引脚复用功能,使用一个特定的物理管脚(ball/pad/finger/...2.4 state/pinmux/pinconfig Pinctrl framework 主要处理 pinstate、pinmux 和 pinconfig 三个功能,pinstate 和 pinmux、...core.h | | |-- devicetree.c | | |-- devicetree.h | | |-- pinconf.c | | |-- pinconf.h | | |-- pinmux.c...警告 该接口在 linux-5.4 已经移除。
介绍 我们在平时的开发中,很有可能遇见有的核心板没有串口,但我们却想操作板子搭建的Linux,那么这时候应该怎么办呢?可以使用ADB,下面我们来具体介绍一下ADB。...常常用于手机端Android的调试,但也可以使用在Linux开发板的调试。 adb 的工作原理 当您启动某个 adb 客户端时,该客户端会先检查是否有 adb 服务器进程正在运行。...输入adb shell进入到板子linux系统的命令行 点灯 查看IO复用情况表 cat /sys/kernel/debug/pinctrl/2000000.pinctrl/pinmux-pins
资料下载 coding无法使用浏览器打开,必须用git工具下载: git clone https://e.coding.net/weidongshan/linux/doc_and_source_for_drivers.git...视频观看 百问网驱动大全 Pinctrl子系统主要数据结构 参考资料: Linux 5.x内核 Documentation\devicetree\bindings\pinctrl\pinctrl-bindings.txt...stm32mp15xx-100ask.dtsi drivers\pinctrl\stm32\pinctrl-stm32mp157.c drivers\pinctrl\stm32\pinctrl-stm32.c Linux...pinctrl_check_ops(pctldev); /* If we're implementing pinmuxing, check the ops for sanity */ ret = pinmux_check_ops...&state->settings, node) { switch (setting->type) { case PIN_MAP_TYPE_MUX_GROUP: ret = pinmux_enable_setting
function_index); 参数: pin:pin id function_index:需设置的复用功能 返回值 -1:失败 0:成功 获取指定 GPIO 的复用功能 函数原型: int hal_gpio_pinmux_get_function...hal_gpio_get_direction(GPIO_TEST, &gpio_direction); hal_gpio_get_data(GPIO_TEST, &gpio_data); hal_gpio_pinmux_get_function...hal_gpio_get_direction(GPIO_TEST, &gpio_direction); hal_gpio_get_data(GPIO_TEST, &gpio_data); hal_gpio_pinmux_get_function...; hal_log_info("Test hal_gpio_pinmux_set_function API success!")...; hal_log_info("Test hal_gpio_pinmux_get_function API success!")
领取专属 10元无门槛券
手把手带您无忧上云