C的串行总线扩展_第1页
C的串行总线扩展_第2页
C的串行总线扩展_第3页
C的串行总线扩展_第4页
C的串行总线扩展_第5页
已阅读5页,还剩39页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

2023/1/141第8章80C51的串行总线扩展SPI总线接口及其扩展8.38.2一线总线接口及其扩展8.1I2C总线接口及其扩展串行扩展连接线根数少;系统板尺寸减小;可靠性提高。常用的串行扩展总线

一线总线(单总线);I2C总线;SPI总线。8.1一线总线接口及其扩展

DS18B20的引脚

8.1.1DS18B20的引脚及内部结构

DS18B20引脚GND,电源地;DQ,数字信号输入/输出端;VDD,外接电源输入端(在寄生电源接线方式时接地)。

DS18B20的内部结构

64位ROM

高速缓冲存储器配置寄存器:

1位:D7D6D5D4D3D2D1D00R1R011117FH,即分辨率为12位—750ms

DS18B20的温度格式

18B20采样值与温度值关系二进制采样值十六进制表示十进制温度

/℃000001111101000007D0H+12500000001100100010191H+25.062500000000

000010000008H+0.500000000

0000

00000000H011111111

11111000FFF8H-0.51111111001101111FE6FH-25.06251111110010010000FC90H-5512位格式8.1.2DS18B20操作命令

ROM操作命令

指令及代码说明读ROM33H读总线上DS18B20的序列号匹配ROM55H依序列号访问确定的DS18B20器件跳过ROMCCH只使用RAM命令,操作在线的DS18B20器件搜索ROMF0H对总线上的多个DS18B20进行识别报警搜索ECH主机搜索越限报警的DS18B20器件RAM操作命令

指令及代码说明温度转换44H启动DS18B20开始转换读缓冲器BEH读缓冲器的9个字节数据写缓冲器4EH向DS18B20写TH、TL及配置寄存器数据复制缓冲器48H将缓冲器的TH、TL和配置寄存器值送E2PROM回读E2PROMB8H将E2PROM中的TH、TL和配置寄存器值送缓冲器读供电方式B4H检测供电方式:寄生或外接方式8.1.3DS18B20操作时序

初始化时序

写时序

读时序

8.1.4DS18B20操作函数

初始化函数voidDS18B20_Init(void){

ucharx=0; DQ=1; Delay10Us(9);// DQ=0; Delay10Us(80);// DQ=1; Delay10Us(37);//}

读字节ucharDS18B20_RByte(void){

uchari=0;

uchar

dat=0; for(i=8;i>0;i--) { DQ=0;

dat>>=1; DQ=1;

if(DQ)

dat|=0x80; Delay10Us(5);//54 }

return(dat);}

写字节voidDS18B20_WByte(uchardat){

uchari=0; for(i=8;i>0;i--) { DQ=0; DQ=dat&0x01; Delay10Us(5);//54 DQ=1;

dat>>=1;}}2023/1/14158.2

I2C总线接口及其扩展数据线SDA时钟线SCL

I2C总线架构8.2.1I2C总线基础2023/1/1416

I2C总线的特点器件引脚少(2线制)器件间连接简单,电路板体积减小,可靠性提高

传输速率高标准模式:100Kb/s,快速模式:400Kb/s,高速模式为3.4Mb/s

支持主/从和多主两种工作方式标准型80C51没有I2C总线接口,只能工作于主/从方式(扩展外围从器件)

2023/1/1417

I2C总线的数据传输起始信号S与停止信号P高电平空闲

传输时序图

SCL由主机控制,从器件仅在自己忙时才拉低SCL线;字节数据由发送器发出,响应位由接收器发出;SCL高电平,SDA线要稳定,SCL低电平,SDA线允许更新。2023/1/1419字节传送(地址或数据)

寻址字节

位:D7D6D5D4D3D2D1D0器件地址R/W主机发送器件地址,总线上的从器件都将这7位地址码与自己的地址进行比较。如果相同,则认为自己正被主机寻址。器件地址由固定部分和可编程部分组成。以AT24CXX系列存储器为例,见下页表。2023/1/1421器件地址表器件型号字节容量寻址字节内部地址字节数页面写字节数最多可挂器件数固定标识可编程地址R/WAT24C01A1281010A2A1A01/0188AT24C02256A2A1A01/088AT24C04512A2A1P01/0164AT24C08A1KA2P1P01/0162AT24C16A2KP2P1P01/0161AT24C32A4KA2A1A01/02328AT24C64A8KA2A1A01/0328AT24C128B16KA2A1A01/0648AT24C256B32KA2A1A01/0648AT24C512B64KA2A1A01/01288注:P0位,可以区分页。如AT24C04有2个256字节的页。2023/1/1422

I2C总线典型信号时序模拟8.2.280C51的I2C总线时序模拟2023/1/1423

I2C总线典型信号模拟子程序

起始信号voidStart(void){

SDA=1;SCL=1;

NOP5();

SDA=0;

NOP5();SCL=0;}

停止信号voidStop(void){

SDA=0;SCL=1;

NOP5();

SDA=1;

NOP5();SCL=0;}

发送应答位“0”voidAck(void){SDA=0;

SCL=1;

NOP5();

SCL=0;SDA=1;}

发送非应答位“1”voidNack(void){SDA=1;

SCL=1;

NOP5();

SCL=0;SDA=0;}2023/1/14278.2.380C51与AT24C04的接口AT24C04为内含512字节的串行E2PROM存储器。体积小、功耗低、占用I/O口线少。WP:写保护控制端,接地时允许写入。2023/1/1428写操作过程

写单字节

单片机发出起始信号S单片机完成器件寻址写操作

被选中的器件返回确认应答(或非应答)单片机完成片内地址写操作器件返回确认应答(或非应答)单片机发送数据字节器件产生应答单片机发出停止信号P单片机发出起始信号S单片机完成器件寻址写操作

被选中的器件返回确认应答(或非应答)单片机完成数据地址写操作器件返回确认应答(或非应答)单片机发送数据字节器件产生应答

------------------单片机发出停止信号P

器件进入写周期(10ms内结束)

写多字节

2023/1/1430读操作过程

当前地址读

单片机发出起始信号S单片机完成器件寻址读操作被选中的器件返回确认应答(或非应答)器件发送数据字节

单片机回复应答

单片机发出停止信号P

器件发送数据字节

单片机产生应答

-------------------

单片机发出非应答及停止信号P(程序略)单片机发出起始信号S单片机完成器件寻址写操作(伪写)

被选中的器件返回确认应答(或非应答)单片机完成数据地址写操作(伪写)被选中的器件返回确认应答(或非应答)单片机完成器件寻址读操作被选中的器件返回确认应答(或非应答)

随机读

2023/1/14328.3

SPI总线接口及其扩展用于E2PROM、A/D、D/A、实时时钟等。

由Motorola推出。基本信号3根线:MOSI、MISO、SCK。传输速率由SCK决定,MOSI为主机数据输出、MISO为主机数据输入。另外,主机要发出CS来控制对哪个从芯片进行通信;某个从芯片的CS信号有效时,能通过MOSI接收指令或数据,并通过MISO发出数据。而未被选中的从芯片的MISO为高阻状态。标准80C51没有SPI接口,可模拟SPI时序。8.3.1单片机扩展SPI总线的系统结构对于80C51,主从模式接口电路如下:2023/1/14348.3.2SPI总线的数据传输时序CPOL和CPHA位决定了SPI的四种工作模式

CPOL位:空闲状态时,时钟电平为0或1;

CPHA位:采样时钟是第1个还是第2个边沿。有标准SPI接口的主机可以通过配置工作方式与外设接口器件进行连接。

无标准SPI接口的80C51单片机,要与SPI器件传输数据,就要利用I/O口进行软件模拟。

8.3.3TLC5615D/A转换器简介DIN:串行数据输入端;OUT:模拟电压输出端;SCLK:串行时钟输入端。/CS:芯片选用通端,低电平有效;DOUT:用于级联时的串行数据输出端;AGND:模拟地;REFIN:基准电压输入端,2V~(VDD-2);VDD:正电源端,4.5V~5.5V,通常取5V。TLC5615引脚TLC5615功能框图TLC5615工作时序TLC5615接口函数voidTLC5615_DAC(uintdat){

uchari;

dat<<=2;//左移2位,补2位0 TLC5615_CLK=0; TLC5615_CS=0; for(i=0;i<16;i++) { TLC5615_DI=(bit)(dat&0x8000); TLC5615_CLK=0;

dat<<=1; TLC5615_CLK=1; } TLC5615_CS=1; TLC5615_CLK=0; Delay10Us(1);//15.2uS

}8.3.4TLC549A/D转换器简介REF+:正基准电压,2.5V≤REF+≤Vcc+0.1;REF-:负基准电压,-0.1V≤REF-≤2.5V。VCC:系统电源,3V≤Vcc≤6V;GND:接地端;/CS:芯片选择输入端,;DATAOUT:转换结果数据串行输出端;ANALOGIN:模拟信号输入端;I/OCLOCK:外接输入/输出时钟输入端。TLC549引脚TLC549功能框图TLC549工作时序TLC549接口函数

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论