通信协议ppt课件
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
9
4 读/写时隙
在写时隙期间,主机向单总线器件写入数 据;而在读时隙期间,主机读入来自从机 的数据。在每一个时隙,总线只能传输一 位数据
10
4 读/写时隙
Write 1 Write 0
M
Slave device(s) sample line
M
Slave device(s) sample line
15
4.5 读时序
单总线器件仅在主机发出读时隙时,才向主机传输数 据,在主机发出读数据命令后,必须马上产生读时隙, 以便从机能够传输数据。
读时隙至少需要60μs,且在两次独立的读时隙之间至 少需要1μs的恢复时间。
RESET SEQUENCE ROM CMD SEQUENCE FUNCTION SEQUENCE
8-BIT ROM CMD
ROM ID
8-BIT F-CMD
Fra Baidu bibliotek
R/W DATA
DEVICE(S) PRESENCE PULSE MASTER RESET PULSE
RESET SEQUENCE 5
2 单总线命令序列
入0。 写时隙至少需要60μs,且在两次独立的写时隙之间至少需
要1μs的恢复时间。 产生写1时隙的方式:主机在拉低总线后,接着必须在
15μs之内释放总线,由5k上拉电阻将总线拉至高电平; 而产生写0时隙的方式:在主机拉低总线后,只需在整个
时隙期间保持低电平即可(至少60μs)。 在写时隙起始后15-60μs期间,单总线器件采样总线电平
状态。如果在此期间采样为高电平,则逻辑1被写入该器 件;如果为0,则写入逻辑0
12
4.2 写时序
13
4.3 写时序
void write_bit(char bitval) { DQ = 0; // pull DQ low to start timeslot if(bitval==1) DQ =1; // return DQ high if write 1 delay(5);// hold value for remainder of timeslot DQ = 1; }// Delay provides 16μs per loop, plus 24μs Therefore, delay(5) = 104μs
15uS<T<60uS 60uS<4T<240uS 45uS<3T<180uS
8
3.2 复位和应答脉冲
unsigned char ow_reset(void) { unsigned char presence; DQ = 0; //pull DQ line low delay(29); // leave it low for 480μs DQ = 1; // allow line to return high delay(3); // wait for presence presence = DQ; // get presence signal delay(25); // wait for end of timeslot return(presence); // presence signal returned } // presence
M
Read 1
Master samples line at 15uS
M
Legend:
Read 0
Pull Up Master
Slave
S0 … SN overdrive resistor
15uS < T < 60uS
T=0 T=15
T=60
11
4.1 写时隙
存在两种写时隙:“写1”和“写0”。 主机采用写1时隙向从机写入1,而采用写0时隙向从机写
每次访问单总线器件,必须严格遵守这个 命令序列,如果出现序列混乱,则单总线 器件不会响应主机;
这个准则对于搜索ROM命令和报警搜索命 令例外,在执行两者中任何一条命令之后, 主机不能执行其后的功能命令,必须返回 至第一步。
6
3.1 初始化序列
主机初始化过程,主机通过拉低单总线至少480μs,以产 生(Tx)复位脉冲。接着,主机释放总线,并进入接收模 式(Rx)。
3
1 概述
单总线的闲置状态为高电平 ; 传输过程需要暂时挂起,且要求传输过程
还能够继续的话,则总线必须处于空闲状 态; 总线保持低电平超过480μs,总线上的所有 器件将复位; 位传输之间的恢复时间没有限制,只要总 线在恢复期间处于空闲状态。
4
2 单总线命令序列
主机发起读写命令并控制整个过程。 读写命令分三个阶段: 初始化 ROM命令(跟随需要交换的数据) 功能命令(跟随需要交换的数据)
14
4.4 写时序
void write_byte(char val) { unsigned char i; unsigned char temp; for (i = 0; i < 8; i++) // writes byte, one bit at a time { temp = val>>i; // shifts val right ‘i’ spaces temp &= 0x01; // copy that bit to temp write_bit(temp); // write bit in temp into } delay(5) }
当总线被释放后,5k上拉电阻将单总线拉高。在单总线器 件检测到上升沿后,延时15-60μs,接着通过拉低总线60240μs,以产生应答脉冲
7
3.1 初始化序列
M
S0…SN
Recovery
Legend:
Pull Up Master
Slave
Reset Pulse > 480uS
Presence Pulse
时序
ARM(32-B RISC)
1
第二章 1-Wire通信协议
概述 标准模式和高速模式 复位脉冲 写0时隙 写1时隙 读时隙 强上拉供电时隙(为总线提供额外的电源电流,用于
EPROM/EEPROM编程、温度转换、SHA-1计算等)
2
1 概述
单总线要求外接一个约5k的上拉电阻 ;
4 读/写时隙
在写时隙期间,主机向单总线器件写入数 据;而在读时隙期间,主机读入来自从机 的数据。在每一个时隙,总线只能传输一 位数据
10
4 读/写时隙
Write 1 Write 0
M
Slave device(s) sample line
M
Slave device(s) sample line
15
4.5 读时序
单总线器件仅在主机发出读时隙时,才向主机传输数 据,在主机发出读数据命令后,必须马上产生读时隙, 以便从机能够传输数据。
读时隙至少需要60μs,且在两次独立的读时隙之间至 少需要1μs的恢复时间。
RESET SEQUENCE ROM CMD SEQUENCE FUNCTION SEQUENCE
8-BIT ROM CMD
ROM ID
8-BIT F-CMD
Fra Baidu bibliotek
R/W DATA
DEVICE(S) PRESENCE PULSE MASTER RESET PULSE
RESET SEQUENCE 5
2 单总线命令序列
入0。 写时隙至少需要60μs,且在两次独立的写时隙之间至少需
要1μs的恢复时间。 产生写1时隙的方式:主机在拉低总线后,接着必须在
15μs之内释放总线,由5k上拉电阻将总线拉至高电平; 而产生写0时隙的方式:在主机拉低总线后,只需在整个
时隙期间保持低电平即可(至少60μs)。 在写时隙起始后15-60μs期间,单总线器件采样总线电平
状态。如果在此期间采样为高电平,则逻辑1被写入该器 件;如果为0,则写入逻辑0
12
4.2 写时序
13
4.3 写时序
void write_bit(char bitval) { DQ = 0; // pull DQ low to start timeslot if(bitval==1) DQ =1; // return DQ high if write 1 delay(5);// hold value for remainder of timeslot DQ = 1; }// Delay provides 16μs per loop, plus 24μs Therefore, delay(5) = 104μs
15uS<T<60uS 60uS<4T<240uS 45uS<3T<180uS
8
3.2 复位和应答脉冲
unsigned char ow_reset(void) { unsigned char presence; DQ = 0; //pull DQ line low delay(29); // leave it low for 480μs DQ = 1; // allow line to return high delay(3); // wait for presence presence = DQ; // get presence signal delay(25); // wait for end of timeslot return(presence); // presence signal returned } // presence
M
Read 1
Master samples line at 15uS
M
Legend:
Read 0
Pull Up Master
Slave
S0 … SN overdrive resistor
15uS < T < 60uS
T=0 T=15
T=60
11
4.1 写时隙
存在两种写时隙:“写1”和“写0”。 主机采用写1时隙向从机写入1,而采用写0时隙向从机写
每次访问单总线器件,必须严格遵守这个 命令序列,如果出现序列混乱,则单总线 器件不会响应主机;
这个准则对于搜索ROM命令和报警搜索命 令例外,在执行两者中任何一条命令之后, 主机不能执行其后的功能命令,必须返回 至第一步。
6
3.1 初始化序列
主机初始化过程,主机通过拉低单总线至少480μs,以产 生(Tx)复位脉冲。接着,主机释放总线,并进入接收模 式(Rx)。
3
1 概述
单总线的闲置状态为高电平 ; 传输过程需要暂时挂起,且要求传输过程
还能够继续的话,则总线必须处于空闲状 态; 总线保持低电平超过480μs,总线上的所有 器件将复位; 位传输之间的恢复时间没有限制,只要总 线在恢复期间处于空闲状态。
4
2 单总线命令序列
主机发起读写命令并控制整个过程。 读写命令分三个阶段: 初始化 ROM命令(跟随需要交换的数据) 功能命令(跟随需要交换的数据)
14
4.4 写时序
void write_byte(char val) { unsigned char i; unsigned char temp; for (i = 0; i < 8; i++) // writes byte, one bit at a time { temp = val>>i; // shifts val right ‘i’ spaces temp &= 0x01; // copy that bit to temp write_bit(temp); // write bit in temp into } delay(5) }
当总线被释放后,5k上拉电阻将单总线拉高。在单总线器 件检测到上升沿后,延时15-60μs,接着通过拉低总线60240μs,以产生应答脉冲
7
3.1 初始化序列
M
S0…SN
Recovery
Legend:
Pull Up Master
Slave
Reset Pulse > 480uS
Presence Pulse
时序
ARM(32-B RISC)
1
第二章 1-Wire通信协议
概述 标准模式和高速模式 复位脉冲 写0时隙 写1时隙 读时隙 强上拉供电时隙(为总线提供额外的电源电流,用于
EPROM/EEPROM编程、温度转换、SHA-1计算等)
2
1 概述
单总线要求外接一个约5k的上拉电阻 ;