我们平时用232,485对应用开发没有什么区别。唯一的不同的是485是半双工(在同一时刻只能发或者收)。引脚控制DE/RE。

因此在控制485通信时要控制DE/RE引脚。而不管是232还是485,都是接在芯片的串口引脚上。

“他妈的CSDN破编辑器!!!!!!!!!!!烂得要死,别的不说。。。图片都不能上传了”

各位如需要去空间图片中打rs485标题的图片

1. 图中的DE接在一个GPIO上。高电平发送,低电平接收。所以写一个简单的GPIO驱动。

int ctrlbits,value;

int fd1=open( "/dev/avt_gpio", 0 ); //gpg10 13 is send 14 is rev

if( fd1 < 0 )

{

printf( "Open avt_gpio fail.\n" );

//return -1;

}

if(val)

ctrlbits = 14;  //rev

else

ctrlbits = 13; //send

ioctl( fd1, ctrlbits, &value );

至于设置波特率,数据位,停止位就不讲了:

tcflush(fd, TCIOFLUSH);

cfsetispeed(&Opt, speed_arr[i]);

cfsetospeed(&Opt, speed_arr[i]);

status = tcsetattr(fd, TCSANOW, &Opt);

发送:

ret = write( l_hand_rs485, buf,length);

2. 有的硬件工程师朋友会把DE/RE引脚如此到串口的CTSRTS引脚上

那连GPIO驱动都不用写了。直接使用

struct termios options;

tcgetattr(fd, &options);

先查询其它的属性

//options.c_cflag |= CRTSCTS;    /* Also called CRTSCTS*/

/* set the input options */

改变这个

tcsetattr(fd, TCSANOW, &options);

你懂的!

至于串口的驱动,隔那么久时间,架构都不清楚了。。等有时间再写出来吧。希望能帮到同志们。

linux 串口内核加载,linux对串口编程的详解(从应用层到内核驱动,包括232,485)相关推荐

  1. 加载、滑动翻阅大量图片解决方案详解

    加载.滑动翻阅大量图片解决方案详解 今天分享一下私人相册中,读取加载.滑动翻阅大量图片解决方案,我想强调的是,编程思想无关乎平台限制. 我要详细说一下,在缩略图界面点击任意小缩略图后,进入高清大图全屏 ...

  2. iOS开发——加载、滑动翻阅大量图片解决方案详解

    目录(?)[-] 常规思路流程 使用低分辨率图 多线程任务 优化快速翻阅体验 最后还一个砍儿 加载.滑动翻阅大量图片解决方案详解 今天分享一下私人相册中,读取加载.滑动翻阅大量图片解决方案,我想强调的 ...

  3. iOS开发——加载、滑动翻阅大量图片解决方案详解 .

    加载.滑动翻阅大量图片解决方案详解 今天分享一下私人相册中,读取加载.滑动翻阅大量图片解决方案,我想强调的是,编程思想无关乎平台限制. 我要详细说一下,在缩略图界面点击任意小缩略图后,进入高清大图全屏 ...

  4. linux单体内核,加载Linux单体内核的笔记

    "Hello world"是一个示例模块(module),文件名是hello.c: #include #include MODULE_LICENSE("Dual BSD/ ...

  5. linux modprobe自动加载,Linux modprobe自动处理可载入模块命令详解

    modprobe(module probe) 功能说明:自动处理可载入模块. 语法:modprobe [-acdlrtvV][–help][模块文件][符号名称 = 符号值] 补充说明:modprob ...

  6. linux modprobe自动加载,Linux运维知识之Linux modprobe自动处理可载入模块命令详解

    本文主要向大家介绍了Linux运维知识之Linux modprobe自动处理可载入模块命令详解,通过具体的内容向大家展现,希望对大家学习Linux运维知识有所帮助. modprobe(module p ...

  7. ios首次加载web_IOS_IOS中UIWebView的使用详解,一、初始化与三种加载方式 UI - phpStudy...

    IOS中UIWebView的使用详解 一.初始化与三种加载方式 UIWebView继承与UIView,因此,其初始化方法和一般的view一样,通过alloc和init进行初始化,其加载数据的方式有三种 ...

  8. Android平滑图片加载和缓存库Glide使用详解

    在图片加载库烂大街的今天,选择一个适合自己使用的图片加载库已经成为了每一个Android开发者的必经之路.现在市面上知名的图片加载库有UIL,Picasso,Volley ImageLoader,Fr ...

  9. [Aaronyang] 写给自己的WPF4.5 笔记6[三巴掌-大数据加载与WPF4.5 验证体系详解 2/3]

    我要做回自己--Aaronyang的博客(www.ayjs.net) 博客摘要: Virtualizing虚拟化DEMO 和 大数据加载的思路及相关知识 WPF数据提供者的使用ObjectDataPr ...

  10. CGContextRef绘图-iOS球形波浪加载进度控件-HcdProcessView详解

    简书也有发布:http://www.jianshu.com/p/20d7... <iOS球形波浪加载进度控件-HcdProcessView>这篇文章已经展示了我在项目中编写的一个球形进度加 ...

最新文章

  1. linux 毫秒 转换方法,linux-将抖动转换为毫秒
  2. nodeJs --- web服务器创建
  3. 那些年困扰 Linux 的蠕虫、病毒和木马
  4. MySQL查询面试题
  5. 高级数据分析师凭什么月薪三万?一文解答你所有困惑
  6. Centos 利用yum源安装 nginx stream模块
  7. git--- 删除不存在对应远程分支的本地分支
  8. getresourceasstream方法_【设计模式】第三篇:一篇搞定工厂模式【简单工厂、工厂方法模式、抽象工厂模式】...
  9. 使用 加载 顺序_SpringBoot系列教程之Bean加载顺序之错误使用姿势辟谣
  10. 解决SpringBoot jar包太大的问题
  11. python牛顿法求方程的根_Python 求多重根的方法
  12. 学弟学妹看我文章顺利毕业,基于HTML+Javascript五子棋人机博弈系统设计与实现《记得收藏》
  13. 计算机运维需要那些知识,运维必知必备!73页计算机基础知识,新手小白也能轻松读懂...
  14. DroidCam通过网络调用手机摄像头的方法二
  15. Ubuntu系统查看显卡型号
  16. neutron-server.service启动失败显示代理报错http://controller:9696/v2.0/agents.json
  17. empress和queen区别_王后和皇后有什么区别?
  18. 为什么以及如何通过机器人学习编程和项目实践
  19. Java 开发中常用的 4 种加密方法。MD5加密工具类测试 base64加密工具类测试 SHA加密工具类测试 BCrypt加密工具类测试
  20. 类和函数模板以及特例化

热门文章

  1. Ros学习笔记(五)创建Ros服务
  2. java 象限分析_用四种象限分析你(未来的人生走向)
  3. java读取外部配置文件_SpringBoot读取外部配置文件的方法
  4. 在delphi中嵌入脚本语言--(译)RemObjects Pascal Script使用说明(1)(译)
  5. cocos creator基础-(六)cc.Sprite使用
  6. 构建自己的PHP框架--实现Model类(2)
  7. Java 多线程 简单实例 (Thread)
  8. 请教大家一个问题,有关于数据库的设计
  9. Jmeter多机联合产生负载 (转)
  10. Security+ 学习笔记12 安全编码实践