【经验】地平线X3平台UART驱动调试方法
地平线X3系列SOC共有4路串口:UART0、UART1,UART2,UART3。其中UART0用作调试串口,只有UART1支持硬件自动流控;四路串口支持比特率115.2Kbps,230.4Kbps,460.8Kbps,921.6Kbps,1.5Mbps,2Mbps,4Mbps,2M以上速率需要使能TOI;都支持基于中断或基于DMA的模式。
下面介绍地平线X3平台UART驱动调试方法:
1.驱动代码
代码路径:drivers/tty/serial/hobot_serial.cdrivers/tty/serial/hobot_serial.h
(1)内核配置
CONFIG_SERIAL_HOBOT_UART
SERIAL_HOBOT_UART_CONSOLE
(2)DTS设备节点配置
在hobot-xj3.dtsi文件中有uart0-3的通用配置,此文件内配置一般不做修改,当需要使能对应的串口时,可以到具体的板子配置设备树中修改、添加自定义配置,例如在hobot-x3-sdb.dts文件内使能uart0、1、3
/*arch/arm64/boot/dts/hobot/hobot-xj3.dtsi*/
uart0: serial@0xA5000000 {
compatible = "hobot,hobot-uart";
reg = <0 0xA5000000 0 0x1000>;
interrupt-parent = <&gic>;
interrupts = <0 29 4>;
clocks = <&uart0_mclk>;
pinctrl-names = "default";
pinctrl-0 = <&uart0_func>;
status = "disabled";
};
/* arch/arm64/boot/dts/hobot/hobot-x3-sdb.dts */
&uart0 {
status = "okay";
};
&uart1 {
status = "okay"; /* 4 wire uart for bt */
pinctrl-0 = <&uart1_func_rtscts>; /* <&uart1_func>; uart 1 connect to bt with rtscts*/
};
&uart3 {
status = "okay"; /* 4 wire uart for bt */
};
2.UART测试
硬件上把uart3的TX和RX进行连接。
编译uart_duplex.c代码,具体代码见地平线SDK包
/opt/gcc-ubuntu-9.3.0-2020.03-x86_64-aarch64-linux-gnu/bin/aarch64-linux-gnu-gcc -o uart_duplex uart_duplex.c -lpthread
回环测试命令:打开/dev/ttyS3,默认波特率4Mbps,默认每轮测试1MB数据,测试100轮,读写同时进行,每发、收512字节做一轮数据校验,完整一轮测试结束后,如果没有出错则打印校验正确。
# ./uart_duplex -c 100 -d /dev/ttyS3
test size:1024 Kbytes, baud:4000000
Start receive threadStart send thread
Start recv_check thread
This is receive test 1 times
This is uart send 1 timesreceive sum:102416 bytes
receive sum:205312 bytes
...
receive sum:924164 bytes
receive sum:1027076 bytes
send 1024Kbytes,time:2700.000000ms, BPS:379259.250000
This is receive test 2 times### Check the received data is correct ###
uart_duplex命令是测试uart的,可以阅读它的帮助信息获取更多使用方法。
- |
- +1 赞 0
- 收藏
- 评论 0
本文由孟高祥提供,版权归世强硬创平台所有,非经授权,任何媒体、网站或个人不得转载,授权转载时须注明“来源:世强硬创平台”。
相关研发服务和供应服务
相关推荐
【经验】地平线X3M的SD2/BT1120的电源域与复用为GPIO输出电平关系测试
在地平线SOC X3M上有多个模块的电源域是可以在3.3V和1.8V之间做选择设计的,而这些模块都可以复用为GPIO功能,此时GPIO输出的电平是多少,是否由复用为GPIO之前的模块的电源域决定呢,本文测试验证BIFSD,SD2,BT1120的电源域与复用为GPIO输出电平关系。
设计经验 发布时间 : 2023-07-07
【经验】SoC X3M烧录自定义14G userdata镜像并打包进disk.img的镜像过程解析
地平线SoC X3M自定义镜像,比如userdata,其中固件和算法模型以及图像等资料有14G多,此时生成的userdata镜像就有14G多,与其他镜像包一起打包进disk.img后接近15G,我们是否还可以用地平线hbupdate_win64_v1.3(AIOT)工具烧录呢,本文记录烧录并解析注意点。
设计经验 发布时间 : 2023-09-10
【经验】地平线X3M芯片通过软件调节降低功耗的三种方法
地平线X3M SoC芯片包含4个53核,主频1.2Ghz,还有2个BPU核,主频1GHz,算力最高5Tops,在处理负责图像逻辑的情况下,需要对功耗进行必要的控制,保证芯片能正常工作。下面是三种通过软件调节降低芯片功耗的三种方法。
设计经验 发布时间 : 2023-05-18
【应用】地平线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
【应用】地平线新一代AIoT AI SOC X3ME00IBGTMB-H成功用于AI分析盒子,提供5TOPS的算力
在盒子的主控方面,客户采用的是地平线的新一代AIoT AI SOC 旭日3系列X3ME00IBGTMB-H,这是地平线针对 AIoT 场景,推出的新一代低功耗、高性能的智能芯片,集成了地平线最先进的伯努利2.0 架构引擎( BPU® ),可提供5TOPS的算力。
应用方案 发布时间 : 2023-04-22
地平线高性能大算力整车智能计算平台暨战略发布会精彩回顾 ∣视频
征程与共,一路同行。
原厂动态 发布时间 : 2024-04-16
【应用】地平线推出基于AI SoC X3M的扫地机方案,提供配套TROS操作系统和AI算法
地平线推出基于Sunrise®旭日芯片的扫地机方案,提供芯片+操作系统+算法的完整解决方案,实现更智能、更稳定、更主动的智能扫地机应用。
应用方案 发布时间 : 2022-07-05
基于单颗地平线征程3,宏景智驾首发单SoC行泊一体解决方案
近日,福瑞泰克宣布推出基于单颗地平线征程®3芯片开发的、面向量产的轻量级行泊一体解决方案,为车企智能化系统进阶提供了更高适配版本的智能驾驶产品,以高性价比助力行泊一体快速落地。基于该方案,更多车型得以实现更复杂、可靠度更高的行泊一体功能,支持如主动安全、HWA高速公路辅助驾驶、智能泊车辅助APA等功能。该方案预计将于2023年下半年实现量产上车。
原厂动态 发布时间 : 2024-04-16
【应用】算力高达5TOPS的SOC X3ME00IBGTMB-H用于双目AI相机设计,满足输入图像的图像信号处理要求
某客户做一款双目AI相机,需要跑自己的识别算法,用于识别一些物体,算法是自研的,视频输出部分要求分辨率达到4K级别。在相机处理器上需要一款有一定算力和多路视频处理能力的芯片,客户采用地平线的旭日3系列AI SOC X3ME00IBGTMB-H,该款芯片性能强大,算力和视频处理能力均能满足需求。
应用方案 发布时间 : 2023-03-26
【应用】地平线AI SoC芯片X3M助力智能停车场系统设计,可实现车牌识别、车流量检测等功能,算力可达5Tops
现在,随着智能芯片、算法的技术发展,方便快捷、稳定可靠的非接触式智能停车设备已走进大大小小的城市,成为当今停车场设备的主流。地平线推出的X3M系列AI SoC芯片,可应用于停车场的智能识别设备,用来检测施工车辆的车牌、类别,并可实现计算车流量的功能。
应用方案 发布时间 : 2023-02-26
电子商城
现货市场
登录 | 立即注册
提交评论