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

建设网站要多少页面贵阳网站建设是什么

建设网站要多少页面,贵阳网站建设是什么,关于水果的网站开发,素材网站模板1.首先我们知道DS18B20是单总线协议#xff0c;只有一根数据线。所以Data数据线即使发送端又是接收端#xff0c;同时DS18B20内部接了弱上拉电阻#xff08;如图一所示#xff09;#xff0c;数据线默认为高电平。有了这些概念#xff0c;我们就能进行下一步。 图一…1.首先我们知道DS18B20是单总线协议只有一根数据线。所以Data数据线即使发送端又是接收端同时DS18B20内部接了弱上拉电阻如图一所示数据线默认为高电平。有了这些概念我们就能进行下一步。 图一截取DS18B20芯片手册 2.初始化DS18B20 看图二可知首先我们将总线从高拉低保持480us左右然后释放总线没人拉低默认高电平此时总线上为高电平。然后等待15-60us等待DS18B20模块将总线拉低。如果拉低则说明DS18B20响应成功DS18B20拉低60-240us后释放总线。初始化完成。 图二 3.向DS18B20写入数据。 3.1 向DS18B20写0。 首先将总线由高拉低低电平保持15us到60us然后释放总线。写入0完成。 3.2 向DS18B20写1。 将总线由高拉低低电平保持1-15us看图三可知低电平时间要低于15us再释放总线。 图三 4.读取DS18B20寄存器中数据 4.1 读数据0 将总线由高拉低保持1-15us。如果DS18B20中数据是0则会将总线拉低。此时总线上为低电平。我们要在60us以内读取数据(图四可知60us以内DS18B20会释放总线)。否则可能会读到错误数据。 4.2 读数据1 将总线由高拉低保持1-15us如果数据是1,DS18B20会释放总线总线上为高电平。然后在15us以后读取数据。 图四 5.DS18B20一些命令 5.1 0xCC→跳过ROM   5.2 其他命令 0x44→开始温度转换指令 0xBE→读取数据寄存器指令 图五 6.DS18B20数据寄存器 这里也比较关键所以拎出来讲一下。 首先DS18B20的数据寄存器是16位其中寄存器高字节的高5位的S表示符号位其余3位才是表示数据。这里就浅讲一下后面结合代码来解析一下。 图六  7.代码实例 声明首先这里面的延时都是按照经验值就是通过实践得出比较准确的延时。 注这里使用的是12M频率的单片机如果是1M可以把for循环去掉 延时函数如下 sbit DQP1^4; //我这里是P1^4连接了DS18B20的数据线。 //你们根据自己的单片机原理图查询 void Delay_OneWire(unsigned int t) {unsigned char i;while(t--){for(i0;i12;i);} }7.1 DS18B20初始化 bit init_ds18b20(void) {bit initflag 0;DQ 1; Delay_OneWire(12);DQ 0; //拉低总线Delay_OneWire(80);DQ 1;Delay_OneWire(10); //等待DS18B20拉低initflag DQ; //获取总线数据Delay_OneWire(5);return initflag; } 7.2 向DS18B20写入一字节数据 void Write_DS18B20(unsigned char dat) {unsigned char i;for(i0;i8;i){DQ 0; //拉低DQ dat0x01; //获取dat最后一位数据Delay_OneWire(5);//写入数据DQ 1; //释放总线dat 1; //dat右移一位}Delay_OneWire(5); } 7.3 读取DS18B20数据寄存器的值 unsigned char Read_DS18B20(void) {unsigned char i;unsigned char dat;//循环8次读一个字节for(i0;i8;i){DQ 0; //拉低dat 1; DQ 1; //释放总线if(DQ) // 因为dat1位默认是0 如果DQ为0就不需要赋0了{dat | 0x80; //给dat赋1} Delay_OneWire(5);}return dat; } 7.4 读取温度 unsigned int get_temp() { unsigned int result;float i;unsigned char low,high;init_ds18b20();Write_DS18B20(0xcc);//跳过romWrite_DS18B20(0x44);//开始转换init_ds18b20();Write_DS18B20(0xcc);//跳过romWrite_DS18B20(0xbe);//开始转换lowRead_DS18B20(); //先读取低字节highRead_DS18B20();//再读取高字节result high0x0f; //获取高字节低4位数据1位符号位3位数据位result8; //左移8位resultresult|low; //或上低字节拼成16位数据。iresult*0.0625; //为什么乘0.0625下面讲resulti*100; //温度值扩大100倍方便数码管显示return result; //返回温度值 } 这里为什么最后的结果result需要乘以*0.0625。我们上面讲过DS18B20的数据寄存器其实高字节的低3位才是数据位。 如高字节的最后一位本来是 2^4假如有这个数据。则数据寄存器这个位为1因为我们已经左移了8位则变成了2^8.则实际上扩大了2^8/2^42^416,比实际结果扩大了16倍所以我们需要乘以0.0625,缩小16倍。这样才能得到真实值。 所以整体原因是因为result左移8位导致数据扩大了16倍所以result需要乘以0.0625缩小16倍 8.结语  这次也是通过DS18B20的芯片手册来讲解如何读取DS18B20的数据以及最后转化为真实温度。   最后也是用代码实例来巩固理论以及验证理论。
http://www.hkea.cn/news/14433043/

相关文章:

  • 做网站需要给设计提供做网站1万多
  • 化妆品公司网站建设方案网站建设中涉及到的编程语言
  • 怎么建设空包网站 上的网站app
  • 金华网站设计公司上海网站推广方法
  • 南通网站建设方案书厦门网站建设建站中心
  • 招聘织梦网站合肥室内设计公司有哪些
  • 展示型网站建设报价做网站维护承包合同
  • 淘宝网站c#设计怎么做如果做公司网站
  • 济南咨询行业网站开发免费的产品推广平台
  • 网站维护有多长时间中国最大的外贸平台
  • 自己设计的网站如何推广3d建模要学多久
  • 网站建设的目的和作用网站推广方式有哪些
  • 网站建设 蜀美网络百度seo排名优化是什么
  • 粉末涂料 技术支持 东莞网站建设关于网站建设的调查问卷
  • 南宁seo网站排名优化主页页面
  • 免费二维码制作网站手机建站网
  • wordpress+更新+慢网站建设哈尔滨网站优化4
  • 织梦免费网站模块下载地址长沙软件公司排行榜
  • wap织梦手机网站站长统计 网站统计
  • 设计公司灰白色调网站phpstudy 做网站
  • 高端网站开发地址西安公司注册代理
  • 江苏省建设安全协会网站wordpress后台登不进去
  • 合肥市建设通网站茂名公司制作网站
  • 做网站月薪资多少钱凡科网后台登录
  • 网站建设代码大全wordpress编辑php.ini
  • 求一个全部用div做的网站验证码注册
  • 能打开各种网站的浏览器微信登录入口官网
  • 建设户外腰包网站冷门行业做网站的优势
  • 青岛网站产品图片设计新手怎样做网络营销推广
  • 环保局网站设计方案新加坡做网站的价格