【经验】详解地平线X3芯片GPIO调试方法

2022-08-11 世强
芯片,X3,地平线 芯片,X3,地平线 芯片,X3,地平线 芯片,X3,地平线

地平线X3芯片共有121个IO功能管脚,每个管脚都可以配置工作在gpio模式下,在使用过程中需要注意和其他功能管脚的复用关系。本文将介绍GPIO详细调试方法。


1.  驱动代码

drivers/gpio/gpio-hobot-x3.c # gpio驱动源文件

(1). 内核配置

CONFIG_GPIO_HOBOT_X3

image-20220321232551078

(2). 内核DTS配置

/* arch/arm64/boot/dts/hobot/hobot-xj3.dtsi */
gpios: gpio@0xA6003000 {
   compatible = "hobot,x3-gpio";
   reg = <0 0xA6003000 0 0x100>;
   gpio-controller;
   #gpio-cells = <2>;
   gpio-ranges = <&pinctrl 0 0 121>;
   interrupts = <0 54 4>;
   interrupt-parent = <&gic>;
   interrupt-controller;
   #interrupt-cells = <2>;
};

备注: hobot-xj3.dtsi中的节点主要声明一些寄存器、中断的resource,均为soc共有特性,和具体电路板无关,一般情况下不用修改。


2. GPIO使用

(1). Kernel Space

DTS配置

GPIO设备树节点的属性命名方式一般为names-gpios或names-gpio,举例如下:

/* arch/arm64/boot/dts/hobot/hobot/hobot-x3-sdb.dtsi */

&usb_id

 { status = "okay";          

    id-gpio = <&gpios 65 GPIO_ACTIVE_HIGH>;       

    host-rst-gpio = <&gpios 115 GPIO_ACTIVE_HIGH>;       

    host-exrst-gpio = <&gpios 38 GPIO_ACTIVE_LOW>;

  };
驱动代码接口

/* include/linux/gpio.h */

/* 申请GPIO */

int gpio_request(unsigned gpio, const char *label);

/* GPIO初始化为输出。并设置输出电平*/

int gpio_direction_output(unsigned gpio, int value);

/* GPIO初始化为输入 */

int gpio_direction_input(unsigned gpio);

/* 获取GPIO的电平 */

int gpio_get_value(unsigned int gpio);

/* 设置GPIO的电平 */

void gpio_set_value(unsigned int gpio, int value);

/* 释放GPIO */

void gpio_free(unsigned gpio);

/* 申请GPIO中断,返回的值可以传给request_irq和free_irq */

int gpio_to_irq(unsigned int gpio);

(2). User Space

控制接口

/sys/class/gpio/export #用户空间可以通过写入gpio号申请将gpio的控制权导出到用户空间,比如 echo 42 > export

/sys/class/gpio/unexport # 和export相反

/sys/class/gpio/gpiochip0 # gpio控制器
调用接口

使用export导出gpio的控制权以后会有路径/sys/class/gpio/gpio42/,路径下有如下属性:

direction:表示GPIO端口方向,读取为"in"或"out",写入"in"或者"out"可以设置输入或输出

value:表示GPIO的电平,0为低电平,1为高电平,如果GPIO配置为输出,则value值可写

edge:表示中断触发方式,有"none" "rising" "falling" "both"4种类型,"none"表示GPIO不为中断引脚,"rising"表示引脚为上升沿触发的中断,"falling"表示引脚为下降沿触发的中断,"both"表示引脚为边沿触发的中断。


3. 调用示例

以下示例演示导出 JTG_TRSTN 管脚,设置为输出模式,输出高电平,最后反导出。

echo 4 > /sys/class/gpio/export

echo out > /sys/class/gpio/gpio4/direction

echo 1 > /sys/class/gpio/gpio4/value

# echo 0 > /sys/class/gpio/gpio4/value

echo 4 > /sys/class/gpio/unexport
调试接口

如果在内核配置中打开了Linux Kernel的CONFIG_DEBUG_FS 选项,并且挂载了debugfs文件系统

mount -t debugfs none /sys/kernel/debug

则可以通过如下节点查看GPIO的申请列表。

root@x3dvbx3-hynix1G-2666:~# cat /sys/kernel/debug/gpio
gpiochip0: GPIOs 0-120, parent: platform/a6003000.gpio:
gpio-42  (           |sysfs     ) in hi
gpio-64  (           |cd        ) in lo IRQ
gpio-65  (           |id        ) in hi IRQ
gpio-100 (           |?         ) out lo
gpio-120 (           |?         ) out hi
root@x3dvbx3-hynix1G-2666:~#


授权代理商:世强先进(深圳)科技股份有限公司
技术资料,数据手册,3D模型库,原理图,PCB封装文件,选型指南来源平台:世强硬创平台www.sekorm.com
现货商城,价格查询,交期查询,订货,现货采购,在线购买,样品申请渠道:世强硬创平台电子商城www.sekorm.com/supply/
概念,方案,设计,选型,BOM优化,FAE技术支持,样品,加工定制,测试,量产供应服务提供:世强硬创平台www.sekorm.com
集成电路,电子元件,电子材料,电气自动化,电机,仪器全品类供应:世强硬创平台www.sekorm.com
  • +1 赞 0
  • 收藏
  • 评论 0

本文由孟高祥提供,版权归世强硬创平台所有,非经授权,任何媒体、网站或个人不得转载,授权转载时须注明“来源:世强硬创平台”。

评论

   |   

提交评论

全部评论(0

暂无评论

相关推荐

地平线旭日X3系列智能芯片开发经验资料汇总

旭日X3 是地平线针对 AIoT 场景,推出的新一代低功耗、高性能的智能芯片;集成了地平线最先进的伯努利2.0 架构引擎( BPU® )。包含 X3M 和 X3E 两颗芯片,X3M 主要面向 8M 智能前视市场和边缘计算,提供 5TOPS 算力;X3E 主要面向 5M 智能前视市场,提供 3TOPS 算力。

设计经验    发布时间 : 2024-08-16

【经验】地平线X3M芯片通过软件调节降低功耗的三种方法

地平线X3M SoC芯片包含4个53核,主频1.2Ghz,还有2个BPU核,主频1GHz,算力最高5Tops,在处理负责图像逻辑的情况下,需要对功耗进行必要的控制,保证芯片能正常工作。下面是三种通过软件调节降低芯片功耗的三种方法。

设计经验    发布时间 : 2023-05-18

【经验】地平线开发板X3派mjpg-streamer环境安装和测试

基于Linux系统平台下已经开发出众多的优秀的开源软件,用户在开发某一功能前,可以利用这些开源软件来做评估。mjpg‐streamer作为一款开源的V4L2测试框架,可以方便的供用户评估视频相关的功能。

设计经验    发布时间 : 2023-02-09

【应用】地平线AI SoC芯片X3ME00IBGTMB-H用于3D相机,集成四核Cortex A53 CPU

3D相机应用领域越来越广泛,除了常见的3D影片之外,还可以应用于物流自动化、机器人视觉、障碍检测等方面。3D相机是有两个镜头的,分别是用于拍摄场景和测量自身与场景内物体之间的距离。镜头获取信息需要一个强大芯片来处理,本文介绍一款SOC可用于3D相机上。

应用方案    发布时间 : 2022-01-07

AI加速边缘计算,聚焦AIOT芯片,NPU SOC,离线语音MCU,高算力智能模组等

世强硬创联合地平线,阿普奇,启英泰伦,美格智能,普林芯驰,唯创知音,九芯电子,芯闻,VINKO,MERRY带来AI新产品,聚焦AIOT芯片,NPU SOC,离线语音MCU,高算力智能模组等,加速边缘计算。

活动    发布时间 : 2023-06-08

地平线(Horizon Robotics)新一代AIoT智能芯片选型表

描述- 旭日®3 是地平线针对 AIoT 场景,推出的新一代低功耗、高性能的智能芯片;集成了地平线最先进的伯努利2.0 架构引擎( BPU® ),可提供 5TOPS 的算力。新的 BPU 架构极大提升了对先进 CNN 网络架构的支持效果,并极大降低了运算对 DDR 带宽的占用率。辅以地平线天工开物® 软件开发平台,大幅简化算法开发与部署过程,降低产品的落地成本。

型号- X3M,X3E

选型指南  -  地平线  - 2022/10/25 PDF 中文 下载

地平线提出MAPS评测方法,重新定义芯片AI性能

地平线作为边缘AI芯片领导者,长期致力于AI芯片的软硬件研发和商业落地工作。此次提出MAPS芯片AI性能评测方法,为行业提供一种在峰值算力之外,从“快”和“准”两个维度帮助用户理解芯片AI性能的角度。

原厂动态    发布时间 : 2024-06-20

【应用】地平线AI SoC芯片X3M助力智能停车场系统设计,可实现车牌识别、车流量检测等功能,算力可达5Tops

现在,随着智能芯片、算法的技术发展,方便快捷、稳定可靠的非接触式智能停车设备已走进大大小小的城市,成为当今停车场设备的主流。地平线推出的X3M系列AI SoC芯片,可应用于停车场的智能识别设备,用来检测施工车辆的车牌、类别,并可实现计算车流量的功能。

应用方案    发布时间 : 2023-02-26

【应用】可提供5TOPS的算力的智能芯片X3ME00IBGTMB-H成功用于智能割草机器人设计,具有强大的视频处理能力

地平线针对AIoT场景,推出的新一代低功耗、高性能的智能芯片X3M非常适用于智能割草机器人的开发,客户评估相关资料后觉得不错,产品开发进度也已经到小批量试产了。

应用方案    发布时间 : 2023-03-28

好算法更要配好用的芯片——基于LSS范式的BEV感知算法优化部署详解

本文通过对LSS范式的BEV多任务模型在地平线征程5上量化部署的优化,使得模型在该计算方案上用远低于1%的量化精度损失,得到latency为8.21ms的部署性能,同时,通过LSS范式的BEV模型的部署经验,可以推广到基于该范式的BEV模型的优化中,以便更好的在端侧部署。

技术探讨    发布时间 : 2024-03-01

地平线推出突破性能天花板的8MP前视感知方案,高效灵活地进行多类AI任务处理并实现实时检测与精准识别

地平线Mono系列是目前唯一实现前装量产的国产单目视觉ADAS方案,累计斩获十余款车型定点,Mono3 也成为全球首个量产级8MP前视感知方案。面向ADAS的规模化落地,地平线坚持定位Tier-2,通过提供征程芯片开放平台,持续以软硬协同。

原厂动态    发布时间 : 2022-05-11

基于双核贝叶斯架构的地平线征程®5车规级AI芯片,专为高等级自动驾驶而生

地平线可提供基于征程5,集全场景自动驾驶、多模人机交互和车内外联动于一体的 Horizon SuperDrive® 全场景整车智能解决方案,能够帮助客户和合作伙伴打造更具智能化、人性化的人车共驾新体验。

原厂动态    发布时间 : 2022-01-27

星纪元ES上市,地平线征程3标配打造智能轿车新标杆

Mono 3是地平线基于征程3芯片,面向L2及以上ADAS市场推出的8MP单目前视感知方案。作为支持800万像素前视一体机形态的超低功耗方案,Mono 3方案凭借软硬结合下的极致能效表现,帮助车企以更短周期、更低成本,实现了更高配置与更强性能的智驾功能

原厂动态    发布时间 : 2023-12-26

【应用】地平线AI SOC芯片X3M系列助力边缘计算盒子应用,算力可达5Tops

本文将介绍地平线X3M系列AI SOC芯片,可应用于边缘计算盒子,实现视觉部分的算法。镜头模组将采集到的信息传送给X3M芯片,芯片通过算法,实现视觉部分的识别,如人脸识别,手势识别,火焰识别的动作,然后将信息通过接口进行传输。

应用方案    发布时间 : 2022-08-28

展开更多

电子商城

查看更多

品牌:地平线

品类:AIOT RDK MODULE

价格:¥319.0000

现货: 321

品牌:地平线

品类:AIOT MODULE

价格:

现货: 0

品牌:地平线

品类:PMIC

价格:

现货: 0

品牌:地平线

品类:PMIC

价格:

现货: 0

品牌:地平线

品类:PMIC

价格:

现货: 0

品牌:地平线

品类:AIOT RDK MODULE

价格:¥419.0000

现货: 0

品牌:地平线

品类:AIOT RDK MODULE

价格:¥449.0000

现货: 0

品牌:地平线

品类:PMIC

价格:

现货: 0

品牌:地平线

品类:AI芯片

价格:

现货: 0

品牌:地平线

品类:AIOT RDK MODULE

价格:¥329.0000

现货: 0

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

现货市场

查看更多

品牌:SEMTECH

品类:IC

价格:¥6.3000

现货:392,370

品牌:TI

品类:接口芯片

价格:¥1.9400

现货:275,447

品牌:DIODES

品类:集成芯片

价格:¥1.5300

现货:228,765

品牌:中科微

品类:马达驱动芯片

价格:¥0.6160

现货:146,980

品牌:NXP

品类:通讯芯片

价格:¥3.0645

现货:137,205

品牌:Advanced Digital Chips

品类:监控和复位芯片

价格:¥1.3560

现货:120,000

品牌:NXP

品类:接口芯片

价格:¥3.0363

现货:118,248

品牌:QUALCOMM

品类:蓝牙芯片

价格:¥4.9500

现货:109,413

品牌:NXP

品类:电源芯片

价格:¥2.3382

现货:106,835

品牌:Maxim

品类:电源芯片

价格:¥3.8700

现货:105,000

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

服务

查看更多

EDA芯片设计软件免费使用

世强深圳实验室提供Robei EDA软件免费使用服务,与VCS、NC-Verilog、Modelsim等EDA工具无缝衔接,将IC设计高度抽象化,并精简到三个基本元素:模块、引脚、连接线,自动生成代码。点击预约,支持到场/视频直播使用,资深专家全程指导。

实验室地址: 深圳 提交需求>

物联网天线方案设计/虚拟天线芯片方案设计

Ignion可支持多协议、宽频段的物联网天线方案设计,协议:Wi-Fi、Bluetooth、UWB、Lora、Zigbee、2G、3G、4G、5G、CBRS、GNSS、GSM、LTE-M、NB-IoT等,频段范围:400MHz~10600MHz。

最小起订量: 2500 提交需求>

查看更多

授权代理品牌:接插件及结构件

查看更多

授权代理品牌:部件、组件及配件

查看更多

授权代理品牌:电源及模块

查看更多

授权代理品牌:电子材料

查看更多

授权代理品牌:仪器仪表及测试配组件

查看更多

授权代理品牌:电工工具及材料

查看更多

授权代理品牌:机械电子元件

查看更多

授权代理品牌:加工与定制

世强和原厂的技术专家将在一个工作日内解答,帮助您快速完成研发及采购。
我要提问

954668/400-830-1766(工作日 9:00-18:00)

service@sekorm.com

研发客服
商务客服
服务热线

联系我们

954668/400-830-1766(工作日 9:00-18:00)

service@sekorm.com

投诉与建议

E-mail:claim@sekorm.com

商务合作

E-mail:contact@sekorm.com

收藏
收藏当前页面