Linux驱动开发14 串口/485/232/GPS

这一章单纯是因为原子的板子上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(串口通讯助手)进行串口通讯即可

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值