荔枝派Zero(全志V3S)驱动开发之串口

这篇具有很好参考价值的文章主要介绍了荔枝派Zero(全志V3S)驱动开发之串口。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

系列文章目录


前言

修改设备树打开 uart1 和 uart2,在 buildroot 移植 minicom 用来测试 uart1 和 uart2。


一、修改及编译设备树

1、修改设备树文件

①、查看 V3S 原理图,查看 uart1 和 uart2 对应的引脚
PE21 -> UART1_TX
PE22 -> UART_RX
荔枝派Zero(全志V3S)驱动开发之串口
PB0 -> UART2_TX
PB1 -> UART2_RX
荔枝派Zero(全志V3S)驱动开发之串口
②、修改 sun8i-v3s.dtsi
在 linux 目录下

find ./ -name sun8i-v3s.dtsi
vi ./arch/arm/boot/dts/sun8i-v3s.dtsi

荔枝派Zero(全志V3S)驱动开发之串口
在 sun8i-v3s.dtsi 中添加

	 uart1_pins_a: uart1@0 {
                pins = "PE21", "PE22";
                function = "uart1";
                bias-pull-up; 
            };

            uart2_pins_a: uart2@0 {
                pins = "PB0", "PB1";
                function = "uart2";
                bias-pull-up; 
            };

荔枝派Zero(全志V3S)驱动开发之串口
③、修改 sun8i-v3s-licheepi-zero-dock.dts
在 linux 目录下

find ./ -name sun8i-v3s-licheepi-zero-dock.dts
vi ./arch/arm/boot/dts/sun8i-v3s-licheepi-zero-dock.dts

荔枝派Zero(全志V3S)驱动开发之串口
在 sun8i-v3s-licheepi-zero-dock.dts 中添加

&uart1 {
    pinctrl-0 = <&uart1_pins_a>;
    pinctrl-names = "default";
    status = "okay";
};

&uart2 {
    pinctrl-0 = <&uart2_pins_a>;
    pinctrl-names = "default";
    status = "okay";
};

荔枝派Zero(全志V3S)驱动开发之串口

2、编译 kernel

make -j16
make  -j16 modules #编译模块
make -j16 modules_install INSTALL_MOD_PATH=out #安装模块
make dtbs #编译设备树

荔枝派Zero(全志V3S)驱动开发之串口

二、移植 minicom

1、配置buildroot

在 buildroot 下执行

make mencuconfig

Target packages -> Hardware handling,将 minicom 选上
荔枝派Zero(全志V3S)驱动开发之串口
保存并退出

2、编译 buildroot

make

荔枝派Zero(全志V3S)驱动开发之串口

三、拷贝到 SD 卡

1、把 zImage, sun8i-v3s-licheepi-zero-dock.dtb 拷贝到 SD 卡的 kernel 分区
在linux根目录下

find ./ -name zImage
cp ./arch/arm/boot/zImage /media/Gnep/KERNEL/
find ./ -name  sun8i-v3s-licheepi-zero-dock.dtb
cp ./arch/arm/boot/dts/sun8i-v3s-licheepi-zero-dock.dtb /media/Gnep/KERNEL/

荔枝派Zero(全志V3S)驱动开发之串口
2、把 buildroot-2017.08 产生的 rootfs.tar 解压到 SD 卡的 rootfs 分区根目录
在 buildroot-2017.08 根目录下

find ./ -name rootfs.tar
sudo tar xf ./output/images/rootfs.tar -C /media/Gnep/rootfs/

荔枝派Zero(全志V3S)驱动开发之串口

四、测试验证

1、确认 minicom 是否正常

将 SD 卡插到板子上,上电跑到 linux 系统下,确认 minicom 工作是否正常

minicom -v

荔枝派Zero(全志V3S)驱动开发之串口
可以看出,此时 minicom 版本号为 2.7.1,minicom 版本号查看正常。输入如下命令打开 minicom 配置界面:

minicom -s

荔枝派Zero(全志V3S)驱动开发之串口
mincom 工作也是正常的

2、确认串口

<1>、硬件连接
找一个 ch340 串口模块接到开发板的串口 1 上。
图中左侧为串口0,方便调试打印使用,右侧为串口1,我们要测试的就是这个
荔枝派Zero(全志V3S)驱动开发之串口
<2>、minicom 设置
1、在开发板中输入“minicom -s”,打开 minicom 配置界面,然后选中“Serial port setup”,如图
荔枝派Zero(全志V3S)驱动开发之串口
2、选中“Serial port setup”以后点击回车,进入设置菜单,如图
荔枝派Zero(全志V3S)驱动开发之串口
主要看前 7 个设置项目,分别对应 A、B……G,比如第一个是选中串口,UART1 的串口文件为 /dev/ttyS1
设置的方法是选择对应的条目,例如 A选项,键盘输入 A ,然后输入 /dev/ttyS1,其他选项也是如此
设置完以后如图:
荔枝派Zero(全志V3S)驱动开发之串口
3、可以通过在修改好之后执行以下这个 Save setup as dfl,然后就保存了,下次运行就是我们设置的
荔枝派Zero(全志V3S)驱动开发之串口
4、都设置完成以后按下回车键确认并退出,按下ESC 键退出图所示的配置界面,退出以后如图:
荔枝派Zero(全志V3S)驱动开发之串口
按下CTRL-A,然后再按下 Z 就可以打开 minicom 帮助信息界面,如图
荔枝派Zero(全志V3S)驱动开发之串口
可以看出,minicom 有很多快捷键,本实验我们打开 minicom 的回显功能,回显功能配置项为“local Echo on/off…E”,按下 E 即可打开/关闭回显功能。

3、发送测试

首先测试开发板通过 UART1 向电脑发送数据的功能,需要打开 minicom 的回显功能(不打开也可以,但是在 minicom 中看不到自己输入的内容),回显功能打开以后输入“This is a test!”,如图
荔枝派Zero(全志V3S)驱动开发之串口
图中的 “This is a test!” 相当于开发板通过 UART1 向电脑发送 “This is a test!”,那么 PC就会接收到 “This is a test!”, PC 收到的数据如图所示:
荔枝派Zero(全志V3S)驱动开发之串口
可以看出,开发板通过 UART1 向电脑发送数据正常

4、接收测试

接下来测试开发板的 UART1 接收功能,在 PC 上(com4)输入 “I‘m com4”,这里没有回显
荔枝派Zero(全志V3S)驱动开发之串口
在开发板上(com3)会出现
荔枝派Zero(全志V3S)驱动开发之串口
大功告成了!


我的qq:2442391036,欢迎交流!文章来源地址https://www.toymoban.com/news/detail-500232.html


到了这里,关于荔枝派Zero(全志V3S)驱动开发之串口的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 荔枝派Zero(全志V3S) tftp下载 kernel 和 nfs 挂载文件系统

    传输文件每次都插拔 SD 卡太麻烦了,还是使用网线传输文件比较快,借此机会讲述一下 通过 tftp下载 kernel 和 nfs 挂载文件系统 我使用的 uboot 是 2017.01 版本的,U-Boot 2017 已经支持了 sun8i-emac 的驱动,只需要在编译时选上并且修改 dts 就行。 ①、进入u-boot源码目录,执行 ②、

    2024年02月08日
    浏览(35)
  • 荔枝派Zero(全志V3S)烧录Uboot、Kernel及rootfs到SD卡并运行在板子上

    通过前面 Uboot编译及配置 我们获得了 u-boot-sunxi-with-spl.bin 通过前面 Kernel编译 我们获得了zImage镜像文件及sun8i-v3s-licheepi-zero-dock.dtb设备树文件 通过前面 rootfs编译我们获得了 rootfs.tar 文件系统 那么下面就将相关文件烧录到 SD 卡并运行在板子上看下效果 1、插上SD卡 2、查看分区

    2024年02月08日
    浏览(62)
  • 全志V3S嵌入式驱动开发(驱动开发准备)

    【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】         之前的文章都是教大家怎么搭建环境、看原理图、编译内核和根文件系统、做镜像,直到现在才进入驱动开发的主题。 毕竟整个专栏的目的,还是希望大家能够学会驱动外部硬件。

    2024年02月13日
    浏览(56)
  • 全志V3S嵌入式驱动开发(准备)

    【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】         要学好嵌入式,其实最好自己可以画板子、调试板子、写软件、调试软件这样来学习。简单的51单片机、stm32这样的mcu或许画起来不是很复杂,但是如果是运行linux系统的soc芯片,那么

    2024年02月12日
    浏览(33)
  • 全志V3S嵌入式驱动开发(wifi驱动)

    【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】         荔枝派上面除了支持v3s自带的有线网口,还带有一个支持sd协议的esp 8089 wifi模块。有了这个模块,v3s没有网线,也可以用它和外界联系了。但是,我们实际测试下来,效果并不算很理

    2024年02月10日
    浏览(34)
  • 全志V3S嵌入式驱动开发(触摸屏驱动)

    【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】         所谓的触摸屏,其实就是在普通的lcd屏幕之上,再加一层屏而已。这个屏是透明的,这样客户就可以看到下面lcd屏幕的内容,另外一方面,通过触摸信号,还可以实现人和机器的自然

    2024年02月08日
    浏览(32)
  • 全志V3S嵌入式驱动开发(多按键输入驱动)

    【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】         前面我们说过,荔枝派的开发板上面,有4个按键本身不是通过gpio连接到soc上面的。它是通过ad的方法,连接到主芯片的。这个时候,不同的按键被按下的时候,就会生成不同的电压或

    2024年02月07日
    浏览(39)
  • 全志V3S嵌入式驱动开发(开发环境再升级)

    【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】         前面我们陆陆续续开发了差不多有10个驱动,涉及到网口、串口、音频和视频等几个方面。但是整个开发的效率还是比较低的。每次开发调试的时候都很麻烦,譬如说,如果是驱动代码

    2024年02月08日
    浏览(49)
  • 【全志V3s】SPI NAND Flash 驱动开发

    芯片:W25N01GVZEIG datasheet上的描述: SLC工艺 2KB*65536页 10万次擦写次数 焊好以后用CH341A读了一下 上面这张图描述了soc启动的四个顺序,分别是usb启动、sd卡启动、spi norflash启动、spi nandflash启动四种方式。前面的测试中一直走的是sd卡启动,但是从成本和稳定性上说,spi nandfla

    2024年02月07日
    浏览(40)
  • 全志V3S嵌入式驱动开发(看原理图)

    【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】         对于嵌入式软件开发的同学来说,你可能不一定要会自己画原理图、做pcb板。但是,别人已经设计好的原理图,自己还是要看得懂、读的明白的。此外,原理图无非就是各种符号放在

    2024年02月06日
    浏览(41)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包