当前位置: 首页 > news >正文

郑州高端网站案例手机网站建设哪家便宜

郑州高端网站案例,手机网站建设哪家便宜,搜索引擎优化怎么做,监控企业网站模板单总线:只用一根线。 复位信号:设置为输出模式,低电平20ms,然后再拉高30us。然后设置为输入模式,dht11会先拉低80us,然后拉高80us表示对接成功 数据0:开始先拉低50us,然后拉高26~28u…

单总线:只用一根线。

复位信号:设置为输出模式,低电平20ms,然后再拉高30us。然后设置为输入模式,dht11会先拉低80us,然后拉高80us表示对接成功

数据0:开始先拉低50us,然后拉高26~28us表示0

数据1:开始拉低50us,然后拉高70us表示1

每传输一位的数据都要间隔一个拉低50us

梳理一下时序:

应用程序:

#include <linux/init.h>
#include <linux/kernel.h>
#include <linux/fs.h>
#include <linux/module.h>
#include <asm/io.h>
#include <asm/string.h>
#include <asm/uaccess.h>
#include <linux/miscdevice.h>
#include <asm-generic/errno-base.h>
#include <mach/gpio-nrs.h>
#include <mach/gpio.h>
#include <linux/delay.h>#define DEV_NAME "dht11"
#define PIN_DHT11 S3C2410_GPF(6)static void dht11_start(void)
{gpio_request(PIN_DHT11, "pin_dht11");gpio_direction_output(PIN_DHT11, 1);msleep(40);gpio_set_value(PIN_DHT11, 0);mdelay(18);gpio_set_value(PIN_DHT11, 1);udelay(30);gpio_direction_input(PIN_DHT11);
}static int dht11_wait_respon(void)
{int time = 100;while((time > 0) && gpio_get_value(PIN_DHT11)){udelay(1);time--;}if(time <= 0){printk("dht11_wait_respon   1\n");return -1;}time = 100;while((time > 0) && (!gpio_get_value(PIN_DHT11))){udelay(1);time--;}if(time <= 0){printk("dht11_wait_respon   2\n");return -1;}time = 100;while((time > 0) && gpio_get_value(PIN_DHT11)){udelay(1);time--;}if(time <= 0){printk("dht11_wait_respon   3\n");return -1;}return 0;
}static int get_bit(void)
{int time = 100;while((time > 0) && (!gpio_get_value(PIN_DHT11))){udelay(1);time--;}if(time <= 0){printk("get_bit   1\n");return -1;}udelay(30);if(0 == gpio_get_value(PIN_DHT11))return 0;time = 100;while((time > 0) && gpio_get_value(PIN_DHT11)){udelay(1);time--;}if(time <= 0){printk("get_bit   2\n");return -1;}return 1;
}static int dht11_get_data(unsigned char * data)
{int i = 0;int j = 0;for(j = 0; j < 5; j++){for(i = 0; i < 8; i++){char tmp = 0;data[j] <<= 1;tmp = get_bit();	if(tmp < 0)return -1;data[j] |= tmp;}}return 0;
}static int open (struct inode * inode, struct file * file)
{printk("dht11 open ...\n");return 0;
}static ssize_t read (struct file * file, char __user * buf, size_t len, loff_t * offset)
{int ret = 0;unsigned char data[5] = {0};dht11_start();ret = dht11_wait_respon();if(ret < 0)return -1;ret = dht11_get_data(data);if(ret < 0)return -1;copy_to_user(buf, data, sizeof(data));printk("dht11 read ...\n");return 0;
}static ssize_t write (struct file * file, const char __user * buf, size_t len, loff_t * offset)
{return 0;
}static int close (struct inode * inode, struct file * file)
{printk("dht11 close ...\n");return 0;
}static struct file_operations fops = 
{.owner = THIS_MODULE,.open = open,.read = read,.write = write,.release = close
};static struct miscdevice misc = 
{.minor = MISC_DYNAMIC_MINOR,.name = DEV_NAME,.fops = &fops
};static int __init dht11_init(void)
{int ret = misc_register(&misc);if(ret < 0)goto err_misc_register;printk("dht11_init  ...\n");return ret;err_misc_register:misc_deregister(&misc);printk("dht11 misc_register faidht11\n");	return ret;
}static void __exit dht11_exit(void)
{misc_deregister(&misc);printk("dht11_exit  ###############################\n");
}module_init(dht11_init);
module_exit(dht11_exit);
MODULE_LICENSE("GPL");

http://www.yayakq.cn/news/944415/

相关文章:

  • 小型的电商网站有哪些设计高端的国外网站
  • 往届生做网站编辑怎样创建行业门户网站
  • 商洛网站建设公司制作网站公司 可以要求后续修改吗
  • 用dw做网站维护教程wordpress 关闭注册
  • 建站平台哪个好怎么免费建设个人网站
  • 南昌网站建设那家好宁波网站建设lonoo
  • 专业做毕业设计网站2017常用的网站
  • 网站建设公司挣钱吗wordpress升级设置
  • 线上网站怎么做wordpress 文章页
  • 海外网站太慢我英文网站建设
  • 青岛网站推广流行网站类型
  • 泰安网站制作工作室怀化主要网站
  • 万维网络(临沂网站建设)ae射频电源成色
  • 网站在哪里备案信息wordpress官方模版
  • 如何用源码做网站网站改完域名打开速度慢
  • 网站源码配置数据库在拿北京垡头网站建设公司
  • 网站如何清除百度收录wordpress是用什么语言
  • 网站建设文件名广州网站制作建设
  • 女人与狗做视频网站wordpress本地使用方法
  • 做网站年薪百万软件外包公司值得去吗
  • 做网站快速排名软件用asp.net做的 购物网站视频
  • 做国外网站什么好合同解除协议
  • 宁夏建设工程招标投标信息网站广告设计app
  • 威联通nas 做网站怎么找推广平台
  • 个人印章在线制作网站wordpress无法
  • 汽车网站网页设计简易广州网站建设
  • 做网站学好哪些软件网站建设佛山拓客科技
  • 用软件建网站做网站用什么配置的电脑
  • 网站建设这门课好学吗网站动画用什么做
  • 荥阳郑州网站建设免费企业网站如何建设