这一章单纯是因为原子的板子上485/232/GPS走的是板子上的串口通道。(自学的正点原子板子)
且串口驱动部分NXP已经写好了,我们要做的就是修改,配置设备树,使能我们要使用的串口         串口是很常用的一个外设,在 Linux
下通常通过串口和其他设备或传感器进行通信,根据电平的不同,串口分为 TTL 和 RS232 。不管是什么样的接口电平,其驱动程序都是一样的,通过外接 RS485
这样的芯片就可以将串口转换为 RS485 信号,正点原子的 I.MX6U-ALPHA 开发板就是这么做的。对于正点原子的 I.MX6U-ALPHA 开发板而言,
RS232 、 RS485 以及 GPS 模块接口通通连接到了 I.MX6U 的 UART3 接口上,因此这些外设最终都归结为 UART3 的串口驱动。 同
I2C 、 SPI 一样, Linux 也提供了串口驱动框架,我们只需要按照相应的串口框架编写驱动程序即可。
串口驱动没有什么主机端和设备端之分,就只有一个串口驱动 Linux 下 UART 驱动框架 1 、 uart_driver 注册与注销 2 、
uart_port 的添加与移除 3 、 uart_ops 实现 I.MX6U 的 UART 驱动 NXP 已经编写好了,所以不需要我们编写。
我们要做的就是在设备树中添加 UART3 对应的设备节点即可。打开 imx6ull-alientek-emmc.dts 文件,在此文件中只有 UART1 对应的
uart1 节点,并没有 UART3 对应的节点,因此我们可以参考 uart1 节点创建 uart3 节点
(本章重点在于设备树构建,认真学)
&uart3 { pinctrl-names = "default"; pinctrl-0 = <&pinctrl_uart3>;
//跳转到具体的设备描述 status = "okay"; }; /* 这是一条分界线 */ pinctrl_uart3: uart3grp {
fsl,pins = < MX6UL_PAD_UART3_TX_DATA__UART3_DCE_TX 0X1b0b1
MX6UL_PAD_UART3_RX_DATA__UART3_DCE_RX 0X1b0b1 >; }; 执行“minicom -s”命令,此时 minicom
配置界面就可以打开了, 然后选中“Serial port setup” 按下 CTRL- A,然后再按下 Z 就可以打开 minicom 帮助信息界面
 

 什么都不需要你写,只需要配置串口设备树,驱动自带,然后配置minicom(串口通讯助手)进行串口通讯即可

技术
下载桌面版
GitHub
Gitee
SourceForge
百度网盘(提取码:draw)
云服务器优惠
华为云优惠券
腾讯云优惠券
阿里云优惠券
Vultr优惠券
站点信息
问题反馈
邮箱:[email protected]
吐槽一下
QQ群:766591547
关注微信