我是靠谱客的博主 务实汽车,最近开发中收集的这篇文章主要介绍UART配置调试指南,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

UART配置(硬件描述)
1.根据原理图,查找相关的i2c引脚对应的GPIO值,以GPIO16作为UART1_TX,GPIO17作为UART1_RX为例。

2.查找GPIO16与GPIO17对应的BLSP,以及检查GPIO16与GPIO17是否可以作为UART来使用。根据文档,GPIO16与GPIO17对应BLSP3。
GPIO NUMBERFUNCTION
GP10_0,GPIO_1BLSP1
GP10_4,GPIO_5BLSP2
GP10_16,GPIO_17BLSP3
GP10_20,GPIO_21BLSP4
3.查找I2C部分BLSP3对应内容,包括其物理地址、reg size、中断号......









UART配置(软件概述)
1.进入kernel/msm-3.18/arch/arm/boot/dts/qcom/路径下修改msm8937-pinctrl.dtsi文件
GPIO配置如下:

注意:1. MSM8917 的 pinctrl 文件为 msm8917-pinctrl.dtsi
2. MSM8953 的 pinctrl 文件为 msm8953-pinctrl.dtsi

2.进入kernel/msm-3.18/arch/arm/boot/dts/qcom/路径下修改msm8937.dtsi文件
添加一个新的设备树节点:

注意:1.红色方框中的内容需根据第三步内容进行修改
2. MSM8917 对应的文件为 msm8917.dtsi
3. MSM8953 对应的文件为 msm8953.dtsi
  1. 进入kernel/msm-3.18/arch/arm/boot/dts/qcom/路径下修改msm8937-qrd.dtsi文件
配置相关内容,进而使blsp2_uart1运行
配置如下:

注意:1.配置内容需放置在blsp1_uart2配置内容后面,保证先从blsp1_uart2开始运行
2.MSM8917 对应的文件为 msm8917-qrd.dtsi
3.MSM8953 对应的文件为 msm8953-qrd.dtsi
4.如果需要配置四路uart,因为相关的uart驱动文件只配置三路uart,所以,我们需要进入
kernel/msm-3.18/drivers/tty/serial路径下修改msm_serial_hs_lite.c文件
修改如下,添加一路uart


5.编译kernel,在顶层目录下make bootimage –j12,在out目录下生成boot.img文件
路径为 LA.UM.5.6 /out/target/product/msm8937_64/boot.img
在DOS命令下,adb reboot bootloader
fastboot flash boot d:\xxxboot.img
若显示okay,执行 fastboot reboot。
注意:1.MSM8917 对应的路径为 out/target/product/msm8937_32/boot.img
2.MSM8953 对应的路径为out/target/product/msm8953_64/boot.img



UART调试
  1. 验证dev下是否产生相关的设备节点
adb shell
ls /dev/ttyHSL*
查看相关的设备节点是否生成
  1. 验证uart的读写功能是否正常
  1. 、经过编译后生成可执行文件uartwritetest和uartreadtest。然后通过adb命令push到system/bin下。
  2. 、设置相关uart调试界面
设置如下

  1. uartwritetest写操作。连接好串口,通过adb shell登录设备cd /system/bin下执行uartwritetest ttyHSL0 115200 hello结果如下:

在串口调试界面打印出字符串hello
  1. 、uartreadtest读操作。通过adb shell登录设备cd/system/bin执行如下:

执行命令uartreadtest ttyHSL0 115200在发送端输入字符串点击发送,接收端会收到相应的字符串

最后

以上就是务实汽车为你收集整理的UART配置调试指南的全部内容,希望文章能够帮你解决UART配置调试指南所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(47)

评论列表共有 0 条评论

立即
投稿
返回
顶部