基于Dragonboard 410c的超声波测距应用层激活驱动编写.doc
《基于Dragonboard 410c的超声波测距应用层激活驱动编写.doc》由会员分享,可在线阅读,更多相关《基于Dragonboard 410c的超声波测距应用层激活驱动编写.doc(4页珍藏版)》请在三一文库上搜索。
1、基于Dragonboard 410c的超声波测距应用层激活驱动编写前言:最近基于dragonboard410c上做一个demo,其中就要用到超声波模块来测距以达到当人靠近超声波一定距离的时候,驱动会上报single,激活应用层。这个驱动写的有点简单,如果大家有什么见解可以提出。一、硬件搭建1.Dragonboard410c开发板:低速接口中pin1,pin23,pin25,ping35对应的GPIO接口,见Low speed Expansion connector分布图2.US-100电平触发测距工作原理:在模块上电前,首先去掉模式选择跳线上的跳线帽,使模块处于电平触发模式。电平触发测距的时序
2、如图:只需要在 Trig/TX 管脚输入一个 10US 以上的高电平,系统便可发出 8 个 40KHZ 的超声波脉冲,然后检测回波信号。当检测到回波信号后,模块还要进行温度值的测量,然后根据当前温度对测距结果进行校正,将校正后的结果通过Echo/RX 管脚输出。在此模式下,模块将距离值转化为 340m/s 时的时间值的 2倍,通过 Echo 端输出一高电平,可根据此高电平的持续时间来计算距离值。即距离值为:(高电平时间*340m/s)/2。3.按照下表的方式将US-100与开发板电气连接二、软件环境搭建根据blog教程在装有Ubuntu的主机上下载相应源码以及编译工具。注意:在dts中要修改a
3、pq8016-sbc.dtsi文件,增加超声波驱动的节点信息:sonarcompaTIble = thundersoft,sonar;thunder,poll_TIme =50;thunder,gpio_cmd = msm_gpio 13 0;thunder,gpio_irq = msm_gpio 36 0;三、驱动编写1./匹配设备树定义接口staTIc int parse_dt(struct platform_device* pdev,struct us100_data* data)int rc;struct device_node* node = pdev-dev.of_node;/将n
4、ode 50 写入到poll_TIme中rc = of_property_read_u32(node,thunder,poll_time,data-poll_time);if(rc)pr_warning(%s you should point time,_FUNCTION_);data-poll_time = 20;/* -TrigPin3-PIN25- gpio13- gpio_cmd -cmd_gpio- */data-cmd_gpio = of_get_named_gpio(node,thunder,gpio_cmd,0);/* -EchoPin2-PIN23- gpio36- gpio
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于Dragonboard 410c的超声波测距应用层激活驱动编写 基于 Dragonboard 410 超声波 测距 应用 激活 驱动 编写
链接地址:https://www.31doc.com/p-3409838.html