版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、无线传感器网络第第6 6章章 常用常用传传感器感器计计算机科算机科学学系系 宋文强宋文强1 6.1 6.1 数数字字温湿温湿度度传传感器感器DHT11 DHT11 v 含有已校准含有已校准数数字信字信号输号输出的出的温湿温湿度度复复合合传传感器。感器。v 应应用用数数字模字模块块采集技采集技术术和和温湿温湿度度传传感技感技术术,确保,确保产产品具有品具有极极高的可靠性高的可靠性与长与长期期稳稳定性。定性。v 传传感器包括一感器包括一个电个电阻式感阻式感湿湿元件和一元件和一个个NTCNTC测温测温元元件,件,并与并与一一个个高性能高性能8 8位位单单片机相片机相连连接。接。2 DHT11DHT1
2、1典型典型应应用用电电路路 3 DHT11DHT11连连接接实实体体图图4 DHT11DHT11串行接口串行接口 DATA DATA 引脚用于引脚用于单单片机片机与与DHT11DHT11之之间间的通的通讯讯和同步和同步, ,采用采用单总单总线数线数据格式据格式, ,一次通一次通讯时间讯时间4ms,4ms,数数据分小据分小数数部分和整部分和整数数部分部分, ,具具体格式在下面体格式在下面说说明明, ,当当前小前小数数部分用于以后部分用于以后扩扩展展, ,现读现读出出为为零。零。操作流程如下操作流程如下: :u 一次完整的一次完整的数数据据传输为传输为40bit40bit,高位先出。,高位先出。u
3、 数数据格式:据格式:u 8bit8bit湿湿度整度整数数数数据据 + 8bit+ 8bit湿湿度小度小数数数数据据u +8bit+8bit温温度整度整数数数数据据 + 8bit+ 8bit温温度小度小数数数数据据u +8bit+8bit校校验验和和u 数数据据传传送正确送正确时时,校,校验验和和数数据等于据等于“ “8bit8bit湿湿度整度整数数数数据据+8bit+8bit湿湿度小度小数数数数据据+8bi+8bi温温度整度整数数数数据据+8bit+8bit温温度小度小数数数数据据” ”所得所得结结果的果的末末8 8位。位。5 v 用用户户MCUMCU发发送一次送一次开开始信始信号号后后,D
4、HT11,DHT11从从低功耗模式低功耗模式转换转换到高速模式到高速模式, ,等待主机等待主机开开始信始信号结号结束后束后,DHT11,DHT11发发送送响应响应信信号号, ,送出送出40bit40bit的的数数据据, ,并触发并触发一次信一次信号号采集采集, ,用用户户可可选择读选择读取部分取部分数数据。据。v 如果如果没没有接收到主机有接收到主机发发送送开开始信始信号号,DHT11,DHT11不不会会主主动动进进行行温湿温湿度采集度采集. .采集采集数数据后据后转换转换到低速模式。到低速模式。6 DHT11DHT11串行接口通串行接口通讯过讯过程程 v 总线总线空空闲状态为闲状态为高高电电
5、平平, ,主机把主机把总线总线拉低等待拉低等待DHT11DHT11响应响应, ,主机主机把把总线总线拉低必拉低必须须大于大于1818毫秒毫秒, ,保保证证DHT11DHT11能能检测检测到起始信到起始信号号。v DHT11DHT11接收到主机的接收到主机的开开始信始信号号后后, ,等待主机等待主机开开始信始信号结号结束束, ,然后然后发发送送80us80us低低电电平平响应响应信信号号。v 主机主机发发送送开开始信始信号结号结束后,延束后,延时时等待等待20-40us20-40us后后, , 读读取取DHT11DHT11的的响应响应信信号号,主机,主机发发送送开开始信始信号号后,可以切后,可以
6、切换换到到输输入模式,或入模式,或者者输输出高出高电电平均可平均可, , 总线总线由上拉由上拉电电阻拉高,阻拉高,总线为总线为低低电电平平, ,说说明明DHT11DHT11发发送送响应响应信信号号,DHT11,DHT11发发送送响应响应信信号号后后, ,再把再把总线总线拉高拉高80us,80us,准准备发备发送送数数据。据。v 如果如果读读取取响应响应信信号为号为高高电电平,平,则则DHT11DHT11没没有有响应响应,请检查线请检查线路路是否是否连连接正常。接正常。当当最后一最后一bitbit数数据据传传送完送完毕毕后,后,DHT11DHT11拉低拉低总总线线50us50us,随随后后总线总
7、线由上拉由上拉电电阻拉高阻拉高进进入空入空闲状态闲状态。 7 串行接口通串行接口通讯过讯过程程 8 DHT11DHT11串行接口每一位串行接口每一位数数据都以据都以50us50us低低电电平平时时隙隙开开始始, ,高高电电平平长长短定了短定了数数据位是据位是0 0还还是是1 1 9 数数字字1 1信信号号表示方法表示方法 10 6.1.5 6.1.5 实验实验:DHT11DHT11实验实验(1 1)实验实验目的:目的:编编程程实现实现不不断读断读取取DHT11DHT11的的温湿温湿度度值并值并通通过过串口串口发发送送给给PCPC,掌握,掌握DHT11DHT11温湿温湿度度传传感感器器编编程的方
8、法程的方法11 简单实验简单实验程序程序#include #include #include #include #include UART.H#include UART.H#include DHT11.H“#include DHT11.H“void main(void)void main(void) uchar temp3; uchar temp3; uchar humidity3; uchar humidity3; uchar strTemp13=Temperature:; uchar strTemp13=Temperature:; uchar strHumidity10=Humidity:
9、; uchar strHumidity10=Humidity:; Delay_ms(1000); Delay_ms(1000); / / 让设备稳让设备稳定定 InitUart(); InitUart(); / / 串口初始化串口初始化12 while(1)while(1) memset(temp, 0, 3); memset(temp, 0, 3); memset(humidity, 0, 3); memset(humidity, 0, 3); DHT11(); DHT11(); / / 获获取取温湿温湿度度 temp0=wendu_shi+0 x30; temp0=wendu_shi+0
10、x30; / / 将温湿将温湿度的度的转换转换成字符串成字符串 temp1=wendu_ge+0 x30; temp1=wendu_ge+0 x30; humidity0=shidu_shi+0 x30; humidity0=shidu_shi+0 x30; humidity1=shidu_ge+0 x30; humidity1=shidu_ge+0 x30; UartSendString(strTemp, 12); UartSendString(strTemp, 12); / / 获获得的得的温湿温湿度通度通过过串口串口输输出到出到电脑显电脑显示示 UartSendString(temp,
11、2); UartSendString(temp, 2); UartSendString( , 3); UartSendString( , 3); UartSendString(strHumidity, 9); UartSendString(strHumidity, 9); UartSendString(humidity, 2); UartSendString(humidity, 2); UartSendString(n, 1); UartSendString(n, 1); Delay_ms(2000); Delay_ms(2000); / / 延延时时,2S 2S 读读取取 1 1 次次 13
12、 实验实验效果效果14 6.2 6.2 红红外人体感外人体感应应模模块块菲涅尔透镜15 6.2 6.2 红红外人体感外人体感应应模模块块 (1 1)全自)全自动动感感应应: :人人进进入其感入其感应应范范围则输围则输出高出高电电平,平, 人离人离开开感感应应范范围则围则自自动动延延时关闭时关闭高高电电平,平,输输出低出低电电平。平。(2 2)工作)工作电压电压范范围宽围宽:默:默认认工作工作电压电压DC 4.5V-20VDC 4.5V-20V。(3 3)微功耗:)微功耗:静态电静态电流流50 50 微安,特微安,特别别适合干适合干电电池供池供电电的自的自动动控制控制产产品。品。(4 4)感)感
13、应应模模块块通通电电后有一分后有一分钟钟左右的初始化左右的初始化时间时间,在此期,在此期间间模模块会间块会间隔地隔地输输出出03 03 次,一分次,一分钟钟后后进进入待机入待机状态状态。(5 5)感)感应应距离距离7 m7 m以以内内,感,感应应角度角度100 100 度度锥锥角,工作角,工作温温度度- -15+7015+70。 16 6.2 6.2 红红外人体感外人体感应应模模块块17 6.2 6.2 红红外人体感外人体感应应模模块块#include #include #include “exboard.h”#include “exboard.h”#define signal P0_5#de
14、fine signal P0_5void main()void main() P1SEL &= 0 xC0; P1SEL &= 0 xC0; P1DIR |= 0 xC0; P1DIR |= 0 xC0; P0SEL &= 0 x20; P0SEL &= 0 x20; P0DIR &= 0 x20; P0DIR &= 0 x20; while(1) while(1) if(signal) if(signal)/ / 如果如果监测监测范范围内围内有人,有人,signalsignal为为“ “1”1” led1 = 1; led1 = 1; led2
15、 = 1; led2 = 1; else else led1 = 0; led1 = 0; led2 = 0; led2 = 0; 18 6.3 6.3 结结露露传传感器感器应用于电子、制药、粮食、烟应用于电子、制药、粮食、烟草、纺织、气象、仓储等行业草、纺织、气象、仓储等行业应用于空调、冰箱、微波炉、应用于空调、冰箱、微波炉、加湿器、温湿度表等产品加湿器、温湿度表等产品19 产产品品概概述述20 结结露露传传感器感器与单与单片机的片机的连连接接21 HDS10HDS10结结露露传传感器技感器技术参数术参数22 6.3.4 6.3.4 结结露露传传感器感器实验实验 HDS05结露传感器特性曲线
16、结露传感器特性曲线 :23 6.3.4 6.3.4 结结露露传传感器感器实验实验程序程序#include #include #include “exboard.h”#include “exboard.h”char Txdata25;char Txdata25;void Delay(uint n)void Delay(uint n) uint i; uint i; for(i=0; in; i+); for(i=0; in; i+); for(i=0; in; i+); for(i=0; in; i+); for(i=0; in; i+); for(i=0; in; i+); for(i=0;
17、in; i+); for(i=0; in; i+); for(i=0; in; i+); for(i=0; in; i+); 24 6.3.4 6.3.4 结结露露传传感器感器实验实验程序程序void intUARTSEND()void intUARTSEND() CLKCONCMD &= 0 x40; CLKCONCMD &= 0 x40; while(CLKCONSTA & 0 x40); while(CLKCONSTA & 0 x40); CLKCONCMD &= 0 x47; CLKCONCMD &= 0 x47; PERCFG = 0
18、x00; PERCFG = 0 x00; P0SEL = 0 x3C; P0SEL = 0 x3C; U0CSR |= 0 x80; U0CSR |= 0 x80;/ UART/ UART模式模式 U0GCR |= 9; U0GCR |= 9; U0BAUD |= 59; U0BAUD |= 59;/ / 波特率波特率1920019200 UTX0IF = 0; UTX0IF = 0;/ / 中中断标断标志初始位置志初始位置0 0 25 6.3.4 6.3.4 结结露露传传感器感器: :串口串口发发送字符串函送字符串函数数void UartTX_Send_String(char void Ua
19、rtTX_Send_String(char * *Data, int len)Data, int len) int j; int j; for(j=0; jlen; j+) for(j=0; j 2; value = ADCL 2;/ / 低低2 2位无效,去掉位无效,去掉 value = ADCH; value = ADCH;/ / 得到得到结结果高字果高字节节 value |= (value6); value |= (value3500) if(vol3500) strcpy(Txdata,”water”); strcpy(Txdata,”water”); UartTX_Send_Stri
20、ng(Txdata, sizeof(“water”); UartTX_Send_String(Txdata, sizeof(“water”);/通通过过串口串口发给发给上位机上位机 else else strcpy(Txdata,”no water”); strcpy(Txdata,”no water”); UartTX_Send_String(Txdata, sizeof(“no water”); UartTX_Send_String(Txdata, sizeof(“no water”); 28 6.4.1 6.4.1 烟烟雾传雾传感器模感器模块块 烟烟雾传雾传感器模感器模块块功能特点:功能
21、特点:(1 1)具有信)具有信号输号输出指示。出指示。(2 2)双双路信路信号输号输出(模出(模拟拟量量输输出及出及TTLTTL电电平平输输出)出)(3 3)TTLTTL输输出有效信出有效信号为号为低低电电平(平(输输出低出低电电平平时时信信号号灯亮,灯亮,可直接接可直接接单单片机)片机) (4 4)模)模拟拟量量输输出出05V05V电压电压,浓浓度越高度越高电压电压越高越高(5 5)对对液化液化气气,天然,天然气气,城市煤,城市煤气气有有较较好的好的灵灵敏度敏度(6 6)具有)具有长长期的使用期的使用寿寿命和可靠的命和可靠的稳稳定性定性(7 7)快速的)快速的响应响应恢恢复复特性特性29 6
22、.4.2 6.4.2 烟烟雾传雾传感器模感器模块实块实物物30 6.4.3 6.4.3 烟烟雾传雾传感器感器编编程程#include #include #include “exboard.h”#include “exboard.h”#define signal P0_6#define signal P0_6void main()void main() P1SEL &= 0 xC0; P1SEL &= 0 xC0; P1DIR |= 0 xC0; P1DIR |= 0 xC0; P0SEL &= 0 x40; P0SEL &= 0 x40; P0DIR &
23、= 0 x40; P0DIR &= 0 x40; while(1) while(1) if(signal) if(signal)/ / 一一种种非常非常简单简单的的处处理方法,理方法,P0.6P0.6电压电压大于大于2V2V,即,即LEDLED点亮点亮 led1 = 1; led1 = 1; led2 = 1; led2 = 1; else else led1 = 0; led1 = 0; led2 = 0; led2 = 0; 31 6.5 6.5 光强度光强度传传感器模感器模块块 GY-30 GY-30 数数字光强度模字光强度模块块特点特点(1 1)I2C I2C 总线总线接口接口
24、(2 2)光)光谱谱的范的范围围是人眼相近是人眼相近(3 3)照度)照度数数字字转换转换器器(4 4)宽宽范范围围和高分辨率和高分辨率. . (1 65535 1 65535 勒克斯)勒克斯)(5 5)低)低电电流流关关机功能机功能(6 6)50Hz / 60Hz 50Hz / 60Hz 光噪光噪声声reject-functionreject-function(7 7)1.8V 1.8V 逻辑输逻辑输入接口入接口(8 8)无需任何外部零件)无需任何外部零件(9 9)光源依)光源依赖赖性不大(例如白性不大(例如白炽炽灯、灯、荧荧光灯、光灯、卤卤素灯、白素灯、白LEDLED)(10)10)可能的可
25、能的选择选择2 2 类类型的型的IC slave-address.IC slave-address.(11)11)红红外外线线的影的影响响很小很小 32 GY-30(BH1750)GY-30(BH1750)外外观观33 原理原理图图34 I2CI2C总线 v I2C(InterI2C(InterIntegrated Circuit)Integrated Circuit)总线总线是一是一种种由由PHILIPSPHILIPS公司公司开发开发的的两线两线式式串行串行总线总线,用于,用于连连接微控制器及其外接微控制器及其外围设备围设备( (特特别别是外部存是外部存储储器件器件) )。 v 由由数数据据
26、线线SDASDA和和时钟时钟SCLSCL构构成的串行成的串行总线总线,可,可发发送和接收送和接收数数据。据。 v 在在传传送送数数据据过过程中共有三程中共有三种种特殊特殊类类型信型信号号, 它们它们分分别别是:是:开开始信始信号号、结结束信束信号号和和应应答信答信号号。 v 最主要的最主要的优优点是其点是其简单简单性和有效性。由于接口直接在性和有效性。由于接口直接在组组件之上,因此件之上,因此I2CI2C总线总线占用的空占用的空间间非常小,非常小,减减少了少了电电路板的空路板的空间间和芯片管脚的和芯片管脚的数数量,降低量,降低了互了互联联成本。成本。I2CI2C总线总线的另一的另一个优个优点是
27、,点是,它它支持多主机,其中任何能支持多主机,其中任何能够够进进行行发发送和接收的送和接收的设备设备都可以成都可以成为为主机。一主机。一个个主控能主控能够够控制信控制信号号的的传输传输和和时钟频时钟频率。率。当当然,在任何然,在任何时间时间点上只能有一点上只能有一个个主机。主机。v 由由数数据据线线SDASDA和和时钟时钟SCLSCL构构成的串行成的串行总线总线,可,可发发送和接收送和接收数数据。各据。各种种I2CI2C均均并联并联在在这条总线这条总线上,但就像上,但就像电话电话机一机一样样只有只有拨拨通各自的通各自的号码号码才能工作才能工作,所以每,所以每个电个电路和模路和模块块都有唯一的地
28、址。都有唯一的地址。 35 I2CI2C总线总线的起始和停止的起始和停止 v SCLSCL线为线为高高电电平期平期间间,SDASDA线线由高由高电电平向低平向低电电平的平的变变化表示起始信化表示起始信号号;SCLSCL线为线为高高电电平期平期间间,SDASDA线线由低由低电电平向高平向高电电平的平的变变化表示化表示终终止信止信号号 36 I2CI2C的的数数据据传输传输 v SCLSCL为为高高电电平期平期间间,数数据据线线上的上的数数据必据必须须保持保持稳稳定定v 只有只有SCLSCL信信号为号为低低电电平期平期间间,SDASDA状态状态才允才允许变许变化化37 I2CI2C的的数数据据读写
29、读写和和应应答答v I2CI2C与与UARTUART不同的地方首先在于先不同的地方首先在于先传传高位,后高位,后传传送低位。送低位。v 主机主机写数写数据据时时,每,每发发送一送一个个字字节节,接收机需要回,接收机需要回复复一一个应个应答位答位“ “0”0”,通,通过应过应答位答位来来判判断从断从机是否接收成功。机是否接收成功。v 主机主机读数读数据据时时,接收一,接收一个个字字节结节结束后,主机也需要束后,主机也需要发发送一送一应应答位答位“ “0”0”,但是,但是当当接收最后一接收最后一个个字字节结节结束后,束后,则则需需发发送送一一个个非非应应答位答位“ “1”1”,发发完了完了1 1后
30、,再后,再发发一一个个停止信停止信号号,最,最终终结结束通信。束通信。 38 6.5.4 6.5.4 实验实验:光强度:光强度传传感器模感器模块块#include #include #include “uart.h”#include “uart.h”#include “exboard.h”#include “exboard.h”#define BV(n)#define BV(n)(1(n)(1(n)#define st(x)#define st(x)dox while_LINE_ = -1)dox while_LINE_ = -1)#define HAL_IO_SET(port,pin,val
31、) HAL_IO_SET_PREP(port,pin,val)#define HAL_IO_SET(port,pin,val) HAL_IO_SET_PREP(port,pin,val)#define HAL_IO_SET_PREP(port,pin,val) st(P#port#_#pin# = #define HAL_IO_SET_PREP(port,pin,val) st(P#port#_#pin# = val;)val;)#define HAL_IO_GET(port,pin) HAL_IO_GET_PREP(port,pin)#define HAL_IO_GET(port,pin)
32、HAL_IO_GET_PREP(port,pin)#define HAL_IO_GET_PREP(port,pin) (P#port#_#pin)#define HAL_IO_GET_PREP(port,pin) (P#port#_#pin)#define LIGHT_SCL_0() HAL_IO_SET(1,4,0)#define LIGHT_SCL_0() HAL_IO_SET(1,4,0)#define LIGHT_SCL_1() HAL_IO_SET(1,4,1)#define LIGHT_SCL_1() HAL_IO_SET(1,4,1)#define LIGHT_DTA_0() H
33、AL_IO_SET(1,3,0)#define LIGHT_DTA_0() HAL_IO_SET(1,3,0)#define LIGHT_DTA_1() HAL_IO_SET(1,3,1)#define LIGHT_DTA_1() HAL_IO_SET(1,3,1)#define LIGHT_DTA() HAL_IO_GET(1,3)#define LIGHT_DTA() HAL_IO_GET(1,3)39 #define SDA_W() (P1DIR |= BV(3)#define SDA_W() (P1DIR |= BV(3)#define SCL_W() (P1DIR |= BV(4)#
34、define SCL_W() (P1DIR |= BV(4)#define SDA_R() (P1DIR &= BV(3)#define SDA_R() (P1DIR &= BV(3)#define delay() asm(“nop”); asm(“nop”); asm(“nop”); asm(“nop”);#define delay() asm(“nop”); asm(“nop”); asm(“nop”); asm(“nop”);/ /* * * * * * * * * *BH1750BH1750命令命令* * * * * * * * */ /#define DPOWR#de
35、fine DPOWR0 x000 x00/ / 断电断电#define POWER#define POWER0 x010 x01/ / 上上电电#define RESET#define RESET 0 x070 x07/ / 重置重置#define CHMODE#define CHMODE0 x100 x10/ / 连续连续高分辨率高分辨率#define CHMODE2#define CHMODE20 x110 x11/ / 连续连续高分辨率高分辨率2 2#define CLMODE#define CLMODE0 x130 x13/ / 连续连续低分辨率模式低分辨率模式#define HMOD
36、E#define HMODE0 x200 x20/ / 一次高分辨率一次高分辨率#define HMODE2#define HMODE20 x210 x21/ / 一次高分辨率一次高分辨率2 2#define LMODE#define LMODE0 x230 x23/ / 一次低分辨率模式一次低分辨率模式#define SlaveAddress 0 x46#define SlaveAddress 0 x46/ / 定定义义器件在器件在I2CI2C总线总线中的中的从从地址地址40 char BUF8;char BUF8;char lux5;char lux5;char txdata25=“cha
37、r txdata25=“当当前光照度前光照度”;”;char ack;char ack;void delay_us(int n)void delay_us(int n)/ / 微秒延微秒延时时 while(n-) while(n-) char i; char i; for(i=0; i32; i+) asm(“nop”); for(i=0; i0) while(k0) t=temp_data/k; t=temp_data/k; temp_data -= t temp_data -= t* *k;k; if(flag = 0) if(flag = 0) if(t != 0) if(t != 0)
38、 luxi+ = t+0 x30; luxi+ = t+0 x30; flag = 1; flag = 1; else else luxi+ = t+0 x30; luxi+ = t+0 x30; k = k/10; k = k/10; return i+1; return i+1; 42 启动启动I2CI2C函函数数void start_i2c()void start_i2c() SDA_W(); SDA_W(); SCL_W(); SCL_W(); LIGHT_DTA_1(); LIGHT_DTA_1(); delay_us(5); delay_us(5); LIGHT_DTA_0();
39、LIGHT_DTA_0(); delay_us(5); delay_us(5); LIGHT_SCL_0(); LIGHT_SCL_0(); delay_us(5); delay_us(5); 43 结结束束I2CI2C函函数数void stop_i2c()void stop_i2c() SDA_W(); SDA_W(); LIGHT_DTA_0(); LIGHT_DTA_0(); LIGHT_SCL_1(); LIGHT_SCL_1(); delay_us(5); delay_us(5); LIGHT_DTA_1(); LIGHT_DTA_1(); delay_us(5); delay_us
40、(5); LIGHT_SCL_0(); LIGHT_SCL_0(); delay_us(5); delay_us(5); 44 I2CI2C字字节发节发送送static int send_byte(unsigned char c)static int send_byte(unsigned char c) char i,error=0; char i,error=0; SDA_W(); SDA_W(); for(i=0 x80; i0; i/=2) for(i=0 x80; i0; i/=2) LIGHT_SCL_0(); LIGHT_SCL_0(); delay_us(5) delay_us(
41、5) if(i & c) LIGHT_DTA_1(); else LIGHT_DTA_0(); if(i & c) LIGHT_DTA_1(); else LIGHT_DTA_0(); LIGHT_SCL_1(); LIGHT_SCL_1(); delay_us(6); delay_us(6); delay_us(1) delay_us(1) LIGHT_SCL_0(); LIGHT_SCL_0(); LIGHT_DTA_1(); LIGHT_DTA_1(); SDA_R(); SDA_R(); P1INP = 0; P1INP = 0; P2INP = 0; P2INP =
42、0; LIGHT_SCL_1(); LIGHT_SCL_1(); delay_ms(6) delay_ms(6) if(LIGHT_DTA() ack = 0; else ack = 1; if(LIGHT_DTA() ack = 0; else ack = 1; LIGHT_SCL_0(); LIGHT_SCL_0(); delay_us(6) delay_us(6) return error; return error; 45 I2CI2C应应答答void sendACK(char ack)void sendACK(char ack) SDA_W(); SDA_W(); if(ack) i
43、f(ack) LIGHT_DTA_1(); LIGHT_DTA_1(); else else LIGHT_DTA_0(); LIGHT_DTA_0(); LIGHT_SCL_1(); LIGHT_SCL_1(); delay_us(6); delay_us(6); 46 I2CI2C字字节读节读char read_byte()char read_byte() uint i; uint i; char val = 0; char val = 0; LIGHT_DTA_1(); LIGHT_DTA_1(); SDA_R() SDA_R() for(i=0 x80; i0; i/=2) for(i=0 x80; i0; i/=2) LIGHT_SCL_1(); LIGHT_SCL_1(); delay_us(5); delay_us(5); if(LIGHT_DTA() if(LIGHT_DTA() val = (val | i); val = (val | i); LIGHT_S
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 研发成果转化管理协议
- 水上设施维修施工合同
- 零售商业用地租赁合同范本
- 休闲娱乐成本控制
- 盐城市体育健身中心租赁合同
- 物联网碳资产管理办法
- 抖音图书运营规划
- 《室内设计演讲》课件
- 双向情感障碍护理常规
- 文化发展规划解读
- Rexroth (博世力士乐)VFC 3610系列变频器使用说明书
- 黑龙江龙江森工集团招聘笔试题
- 大班美术教案:拉手小人教案及教学反思
- 《Python Web 企业级项目开发教程(Django 版)》课后答案
- 铜及铜合金物理冶金基础-相图、紫铜
- 智慧酒店无人酒店综合服务解决方案
- 考研英语一新题型历年真题(2005-2012)
- 健身房会籍顾问基础培训资料
- 9脊柱与四肢、神经系统检查总结
- 秀场内外-走进服装表演艺术智慧树知到答案章节测试2023年武汉纺织大学
- 【高分复习笔记】王建《现代自然地理学》(第2版)笔记和课后习题详解
评论
0/150
提交评论