《原子嵌入式Linux驱动开发详解与实战》第25章 Linux RS232驱动实验阅读心得及实操
<div class='showpostmsg'><p align="left"><span style="font-family:宋体;"><span style="font-size:16px;">串口是很常用的一个外设,在 Linux 下通常通过串口和其他设备或传感器进行通信,根据电平的不同,串口分为 TTL 和 RS232。不管是什么样的接口电平,其驱动程序都是一样</span></span></p><p align="left" ><span style="font-family:宋体;"><span style="font-size:16px;">开发板的USB口是连接的UART1</span></span></p>
<p align="left" ><span style="font-family:宋体;"><span style="font-size:16px;">这一节我们需要测试的是UART3</span></span></p>
<p align="left" ><span style="font-family:宋体;"><span style="font-size:16px;">所以需要重新连线</span></span></p>
<p align="left" ><span style="font-family:宋体;"><span style="font-size:16px;"> </span></span></p>
<p align="left" > </p>
<p align="left" ><span style="font-family:宋体;"><span style="font-size:16px;"> </span></span></p>
<p align="left" ><span style="font-family:宋体;"><span style="font-size:16px;">将JP1的UART3_TXD链接rxd</span></span></p>
<p align="left" ><span style="font-family:宋体;"><span style="font-size:16px;">UART3_RXD链接txd</span></span></p>
<p align="left" > </p>
<p align="left" ><span style="font-family:宋体;"><span style="font-size:16px;">连好之后就是可以开始测试串口3了</span></span></p>
<p align="left" ><span style="font-family:宋体;"><span style="font-size:16px;"> </span></span></p>
<p align="left" ><span style="font-family:宋体;"><span style="font-size:16px;"> </span></span></p>
<p align="left" > </p>
<p align="left" ><span style="font-family:宋体;"><span style="font-size:16px;"><strong>二设备树里添加</strong></span></span></p>
<pre>
<code> pinctrl_uart3: uart3grp {
fsl,pins = <
MX6UL_PAD_UART3_TX_DATA__UART3_DCE_TX 0x1b0b1
MX6UL_PAD_UART3_RX_DATA__UART3_DCE_RX 0x1b0b1
>;
};</code></pre>
<p > </p>
<pre>
<code>&uart3 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart3>;
status = "okay";
};</code></pre>
<p > </p>
<p ><span style="font-family:宋体;"><span style="font-size:16px;">三开始测试</span></span></p>
<p ><span style="font-family:宋体;"><span style="font-size:16px;">先查看下是否有ttymxc的串口驱动</span></span></p>
<p > </p>
<p ><span style="font-family:宋体;"><span style="font-size:16px;">/proc/devices是一个非常重要的文件,它记录了系统中当前加载的所有设备驱动,cat /proc/devices命令则可以用来查看这些设备的详细信息</span></span></p>
<p > </p>
<p ><span style="font-family:宋体;"><span style="font-size:16px;">cat /proc/devices</span></span></p>
<p > </p>
<p ><span style="font-family:宋体;"><span style="font-size:16px;"> </span></span></p>
<p > </p>
<p > </p>
<p > </p>
<p ><span style="font-family:宋体;"><span style="font-size:16px;"> </span></span></p>
<p > </p>
<p ><span style="font-family:宋体;"><span style="font-size:16px;">显示某个串口参数信息:stty -F /dev/ttymxc -a</span></span></p>
<p > </p>
<p ><span style="font-family:宋体;"><span style="font-size:16px;">dmesg | grep ttymxc</span></span></p>
<p ><span style="font-family:宋体;"><span style="font-size:16px;"> </span></span></p>
<p ><span style="font-family:宋体;"><span style="font-size:16px;">stty -F /dev/ttymxc2 -a</span></span></p>
<p ><span style="font-family:宋体;"><span style="font-size:16px;"> </span></span></p>
<p ><span style="font-family:宋体;"><span style="font-size:16px;">开始测试</span></span></p>
<p > </p>
<p ><span style="font-family:宋体;"><span style="font-size:16px;">echo "abcdefg" > /dev/ttymxc2</span></span></p>
<p ><span style="font-family:宋体;"><span style="font-size:16px;">stty -F /dev/ttymxc2 speed 115200 cs7 -parenb -cstopb -echo</span></span></p>
<p ><span style="font-family:宋体;"><span style="font-size:16px;"> </span></span></p>
<p > </p>
<p ><span style="font-family:宋体;"><span style="font-size:16px;">测试接收</span></span></p>
<p ><span style="font-family:宋体;"><span style="font-size:16px;">一定要加发送新行,否则收不到</span></span></p>
<p ><span style="font-family:宋体;"><span style="font-size:16px;">显示串口接收数据:cat /dev/ttymxc2</span></span></p>
<p ><span style="font-family:宋体;"><span style="font-size:16px;"> </span></span></p>
</div><script> var loginstr = '<div class="locked">查看本帖全部内容,请<a href="javascript:;" style="color:#e60000" class="loginf">登录</a>或者<a href="https://bbs.eeworld.com.cn/member.php?mod=register_eeworld.php&action=wechat" style="color:#e60000" target="_blank">注册</a></div>';
if(parseInt(discuz_uid)==0){
(function($){
var postHeight = getTextHeight(400);
$(".showpostmsg").html($(".showpostmsg").html());
$(".showpostmsg").after(loginstr);
$(".showpostmsg").css({height:postHeight,overflow:"hidden"});
})(jQuery);
} </script><script type="text/javascript">(function(d,c){var a=d.createElement("script"),m=d.getElementsByTagName("script"),eewurl="//counter.eeworld.com.cn/pv/count/";a.src=eewurl+c;m.parentNode.insertBefore(a,m)})(document,523)</script> <p>看题目吓我一跳啊,这一章一章的都到25章了,效率啊。跳的不错</p>
秦天qintian0303 发表于 2024-4-25 11:46
看题目吓我一跳啊,这一章一章的都到25章了,效率啊。跳的不错
<p>哈哈哈 没办法太厚了 时间根本来不及 先完成测评计划 </p>
常见泽1 发表于 2024-4-26 22:51
哈哈哈 没办法太厚了 时间根本来不及 先完成测评计划
<p>这本书是挺厚的,书籍内容也不错,唯独正点原子开发板的硬件设计的太随意了</p>
beyond_笑谈 发表于 2024-4-29 09:33
这本书是挺厚的,书籍内容也不错,唯独正点原子开发板的硬件设计的太随意了
<p>硬件设计太随意了 还请指教 LINUX我入门没多久,没发现</p>
常见泽1 发表于 2024-5-1 11:33
硬件设计太随意了 还请指教 LINUX我入门没多久,没发现
<p>看一下开发板的原理图设计就知道了,原子的软件应该是强项,开发板硬件设计不太适合工业应用场景</p>
<p>支持一下楼主,辛苦了,感谢楼主分享的嵌入式Linux驱动开发的技术内容,希望楼主再接再厉</p>
页:
[1]