第7章80C51的串行总线扩展_第1页
第7章80C51的串行总线扩展_第2页
第7章80C51的串行总线扩展_第3页
第7章80C51的串行总线扩展_第4页
第7章80C51的串行总线扩展_第5页
已阅读5页,还剩40页未读 继续免费阅读

下载本文档

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

文档简介

1、2021-11-41第第7 7章章 80C5180C51的串行总线扩展的串行总线扩展SPISPI总线接口总线接口及其扩展及其扩展7.37.2一线总线一线总线接口接口及其扩展及其扩展7.1I2C总线接口总线接口及其扩展及其扩展串行扩展串行扩展n连接线根数少;连接线根数少;n系统板尺寸减小;系统板尺寸减小;n可靠性提高。可靠性提高。常用的串行扩展总线常用的串行扩展总线 n一线总线(单总线)一线总线(单总线); ;nI2CI2C总线;总线;nSPISPI总线。总线。7.1 一线总线接口及其扩展一线总线接口及其扩展v DS18B20DS18B20的引脚的引脚 7.1.1 DS18B207.1.1 DS

2、18B20的引脚及内部结构的引脚及内部结构 DS18B20DS18B20引脚引脚n GND GND,电源地,电源地 ;n DQ DQ,数字信号输入,数字信号输入/ /输出端输出端 ;n VDD VDD,外接电源输入端(在寄生电源接线方式时接地),外接电源输入端(在寄生电源接线方式时接地) 。v DS18B20DS18B20的内部结构的内部结构 n 64 64位位ROMROMn 高速缓冲存储器高速缓冲存储器配置寄存器:配置寄存器: v1位:D7D6D5D4D3D2D1D00R1R01111l 7FH7FH,即分辨率为,即分辨率为1212位位750ms 750ms v DS18B20DS18B20

3、的温度格式的温度格式 18B20采样值与温度值关系采样值与温度值关系二进制采样值十六进制表示十进制温度 /0000 0111 1101 000007D0H+1250000 0001 1001 00010191H+25.06250000 0000 0000 10000008H+0.50000 0000 0000 00000000H01111 1111 1111 1000FFF8H-0.51111 1110 0110 1111FE6FH-25.06251111 1100 1001 0000FC90H-55n 12 12位格式位格式7.1.2 DS18B207.1.2 DS18B20操作命令操作命令

4、 v ROM ROM操作命令操作命令 指令及代码说 明读ROM33H 读总线上DS18B20的序列号匹配ROM55H 依序列号访问确定的DS18B20器件跳过ROMCCH只使用RAM命令,操作在线的DS18B20器件搜索ROMF0H 对总线上的多个DS18B20进行识别报警搜索ECH 主机搜索越限报警的DS18B20器件v RAM RAM操作命令操作命令 指令及代码说 明温度转换44H启动DS18B20开始转换读缓冲器BEH读缓冲器的9个字节数据写缓冲器4EH向DS18B20写TH、TL及配置寄存器数据复制缓冲器48H将缓冲器的TH、TL和配置寄存器值送E2PROM回读E2PROMB8H将E2

5、PROM中的TH、TL和配置寄存器值送缓冲器读供电方式B4H检测供电方式:寄生或外接方式7.1.3 DS18B207.1.3 DS18B20操作时序操作时序 v 初始化时序初始化时序 v 写时序写时序 v 读时序读时序 7.1.4 DS18B207.1.4 DS18B20操作函数操作函数v 初始化函数初始化函数void DS18B20_Init(void) void DS18B20_Init(void) uchar x=0; uchar x=0; DQ = 1; DQ = 1; Delay10Us(9); / Delay10Us(9); / DQ = 0; DQ = 0; Delay10Us(

6、80);/ Delay10Us(80);/ DQ = 1; DQ = 1; Delay10Us(37);/ Delay10Us(37);/ v 读字节读字节uchar DS18B20_RByte(void) uchar DS18B20_RByte(void) uchar i=0; uchar i=0; uchar dat = 0; uchar dat = 0; for (i=8;i0;i-) for (i=8;i0;i-) DQ = 0; DQ = 0; dat=1; dat=1; DQ = 1; DQ = 1; if(DQ) if(DQ) dat|=0 x80; dat|=0 x80; De

7、lay10Us(5);/54 Delay10Us(5);/54 return(dat); return(dat); v 写字节写字节void DS18B20_WByte(uchar dat) void DS18B20_WByte(uchar dat) uchar i=0; uchar i=0; for (i=8; i0; i-) for (i=8; i0; i-) DQ = 0; DQ = 0; DQ = dat&0 x01; DQ = dat&0 x01; Delay10Us(5);/54 Delay10Us(5);/54 DQ = 1; DQ = 1; dat=1; dat

8、=1; 7.1.5 DS18B207.1.5 DS18B20应用实例应用实例2021-11-4167.2 I2C总线接口及其扩展总线接口及其扩展n数据线数据线SDASDAn时钟线时钟线SCLSCL v I I2 2C C总线架构总线架构7.2.1 I7.2.1 I2 2C C总线基础总线基础2021-11-417v I I2 2C C总线的特点总线的特点v 器件引脚少器件引脚少(2(2线制线制) )器件间连接简单,电路板体积减小,可靠性提高器件间连接简单,电路板体积减小,可靠性提高 v 传输速率高传输速率高标准模式:标准模式:100Kb/s100Kb/s,快速模式:,快速模式:400Kb/s4

9、00Kb/s,高速模,高速模式为式为3.4Mb/s 3.4Mb/s v 支持支持主主/ /从从和和多主多主两种工作方式两种工作方式标准型标准型80C5180C51没有没有I I2 2C C总线接口,只能工作于总线接口,只能工作于主主/ /从从方方式(式(扩展外围从器件扩展外围从器件) 2021-11-418v I I2 2C C总线的数据传输总线的数据传输v 起始信号起始信号S S与与停止信号停止信号P P高电平空闲高电平空闲 v 传输时序图传输时序图 n SCLSCL由主机控制,从器件仅在自己忙时才拉低由主机控制,从器件仅在自己忙时才拉低SCLSCL线;线; n 字节数据由发送器发出,响应位

10、由接收器发出;字节数据由发送器发出,响应位由接收器发出;n SCL SCL高电平,高电平,SDASDA线要稳定,线要稳定,SCLSCL低电平,低电平,SDASDA线允许更新。线允许更新。2021-11-420v 字节传送(地址字节传送(地址或或数据)数据) v 寻址字节寻址字节 位:D7D6D5D4D3D2D1D0器件地址R/Wv主机发送器件地址,总线上的从器件都将这主机发送器件地址,总线上的从器件都将这7 7位地址码与自己的地址进行比较。如果相同,则位地址码与自己的地址进行比较。如果相同,则认为自己正被主机寻址。认为自己正被主机寻址。v器件地址器件地址由由固定部分固定部分和和可编程部分可编程

11、部分组成。组成。 以以AT24CXXAT24CXX系列存储器为例,见下页表。系列存储器为例,见下页表。2021-11-422v 器件地址表器件地址表器件型号字节容量寻址字节内部地址字节数页面写字节数最多可挂器件数 固定标识 可编程地址R/WAT24C01A1281010A2A1A01/0188AT24C02256A2A1A01/088AT24C04512A2A1P01/0164AT24C08A1KA2P1P01/0162AT24C16A2KP2P1P01/0161AT24C32A4KA2A1A01/02328AT24C64A8KA2A1A01/0328AT24C128B16KA2A1A01/0

12、648AT24C256B32KA2A1A01/0648AT24C512B64KA2A1A01/01288注:注:P0P0位位,可以区分页。如,可以区分页。如AT24C04AT24C04有有2 2个个256256字节字节的的页页。2021-11-423v I I2 2C C总线典型信号时序模拟总线典型信号时序模拟7.2.2 80C517.2.2 80C51的的I I2 2C C总线时序模拟总线时序模拟2021-11-424v I I2 2C C总线典型信号模拟子程序总线典型信号模拟子程序v 起始信号起始信号vvoid Start(void)void Start(void)v v SDA = 1;

13、SDA = 1;v SCL = 1; SCL = 1;v NOP5();NOP5();v SDA = 0;SDA = 0;v NOP5();NOP5();v SCL = 0; SCL = 0;v v 停止信号停止信号vvoid Stop(void)void Stop(void)v v SDA = 0;SDA = 0;v SCL = 1; SCL = 1;v NOP5();NOP5();v SDA = 1;SDA = 1;v NOP5();NOP5();v SCL = 0; SCL = 0;v v 发送应答位发送应答位“0”0”vvoid Ack(void)void Ack(void)v v S

14、DA = 0; SDA = 0;v SCL = 1;SCL = 1;v NOP5();NOP5();v SCL = 0;SCL = 0;v SDA = 1; SDA = 1;v v 发送非应答位发送非应答位“1”1”vvoid Nack(void)void Nack(void)v v SDA = 1; SDA = 1;v SCL = 1;SCL = 1;v NOP5();NOP5();v SCL = 0;SCL = 0;v SDA = 0; SDA = 0;v 2021-11-4287.2.3 80C517.2.3 80C51与与AT24C02AT24C02的接口的接口AT24C02AT24C

15、02为内含为内含256256字节的串行字节的串行E E2 2PROMPROM存储器。体积小、存储器。体积小、功耗低、占用功耗低、占用I/OI/O口线少。口线少。 WPWP:写保护控制端,接地时允许写入。:写保护控制端,接地时允许写入。 2021-11-429v 写操作过程写操作过程n 写单字节写单字节 v 单片机发出单片机发出起始信号起始信号S Sv 单片机完成单片机完成器件寻址写操作器件寻址写操作v 被选中的器件返回确认应答(或非应答)被选中的器件返回确认应答(或非应答)v 单片机单片机完成完成片内地址写操作片内地址写操作v 器件返回确认应答(或非应答)器件返回确认应答(或非应答)v 单片机

16、发送单片机发送数据字节数据字节v 器件产生应答器件产生应答v 单片机发出单片机发出停止信号停止信号P Pv 单片机发出单片机发出起始信号起始信号S Sv 单片机完成单片机完成器件寻址写操作器件寻址写操作v 被选中的器件返回确认应答(或非应答)被选中的器件返回确认应答(或非应答)v 单片机单片机完成完成数据地址写操作数据地址写操作v 器件返回确认应答(或非应答)器件返回确认应答(或非应答)v 单片机发送单片机发送数据字节数据字节v 器件产生应答器件产生应答v -v 单片机发出单片机发出停止信号停止信号P Pv 器件进入写周期(器件进入写周期(10ms10ms内结束)内结束)n 写多字节写多字节

17、2021-11-431v 读操作过程读操作过程n 当前地址读当前地址读 v 单片机发出单片机发出起始信号起始信号S Sv 单片机完成单片机完成器件寻址器件寻址读操作读操作v 被选中的器件返回确认应答(或非应答)被选中的器件返回确认应答(或非应答)v 器件发送数据字节器件发送数据字节v 单片机回复应答单片机回复应答v 单片机发出停止信号单片机发出停止信号P Pv 器件发送数据字节器件发送数据字节v 单片机产生应答单片机产生应答v -v 单片机发出单片机发出非应答非应答及及停止信号停止信号P P(程序略程序略)v 单片机发出单片机发出起始信号起始信号S Sv 单片机完成单片机完成器件寻址写操作(伪

18、写)器件寻址写操作(伪写)v 被选中的器件返回确认应答(或非应答)被选中的器件返回确认应答(或非应答)v 单片机完成单片机完成数据地址写操作(伪写)数据地址写操作(伪写)v 被选中的器件返回确认应答(或非应答)被选中的器件返回确认应答(或非应答)v 单片机完成单片机完成器件寻址器件寻址读操作读操作v 被选中的器件返回确认应答(或非应答)被选中的器件返回确认应答(或非应答)n 随机读随机读 2021-11-4337.3 SPI总线接口及其扩展总线接口及其扩展用于用于E E2 2PROMPROM、A/DA/D、D/AD/A、实时时钟等。、实时时钟等。 由由MotorolaMotorola推出。基本

19、信号推出。基本信号3 3根线根线: :MOSIMOSI、MISOMISO、SCKSCK。传输速率由。传输速率由SCKSCK决定,决定,MOSIMOSI为主机为主机数据输出、数据输出、MISOMISO为主机数据输入。为主机数据输入。 另外,主机要发出另外,主机要发出CSCS来控制对哪个从芯片进来控制对哪个从芯片进行通信行通信; ;某个从芯片的某个从芯片的CSCS信号有效时,能通过信号有效时,能通过MOSIMOSI接收指令或数据,并通过接收指令或数据,并通过MISOMISO发出数据。发出数据。而未被选中的从芯片的而未被选中的从芯片的MISOMISO为高阻状态。为高阻状态。 标准标准80C5180C

20、51没有没有SPISPI接口,可模拟接口,可模拟SPISPI时序时序。 7.3.1 7.3.1 单片机扩展单片机扩展SPISPI总线的系统结构总线的系统结构 对于对于80C5180C51,主从模式主从模式接口电路如下:接口电路如下: 2021-11-4357.3.2 SPI7.3.2 SPI总线的数据传输时序总线的数据传输时序v CPOL CPOL和和CPHACPHA位决定了位决定了SPISPI的四种工作模式的四种工作模式v CPOLCPOL位位:空闲状态时,时钟电平为:空闲状态时,时钟电平为0 0或或1 1;v CPHACPHA位:位:采样时钟是第采样时钟是第1 1个还是第个还是第2 2个边

21、个边沿。沿。v 有标准有标准SPISPI接口的主机可以通过配置工作方接口的主机可以通过配置工作方式与外设接口器件进行连接。式与外设接口器件进行连接。v 无标准无标准SPISPI接口的接口的80C5180C51单片机,要与单片机,要与SPISPI器件传输数据,就要利用器件传输数据,就要利用I/OI/O口进行软件模拟口进行软件模拟。 7.3.3 TLC5615 D/A7.3.3 TLC5615 D/A转换器简介转换器简介图8.22 TLC5615的引脚定义1 2 3 4 8765 DINCSVDDOUTREFINDOUTAGNDSCLKnDINDIN: 串行数据输入端;串行数据输入端;nOUTOU

22、T: 模拟电压输出端;模拟电压输出端; nSCLKSCLK:串行时钟输入端:串行时钟输入端。n/CS : /CS : 芯片选用通端,低电平有效;芯片选用通端,低电平有效;nDOUTDOUT:用于级联时的串行数据输出端;:用于级联时的串行数据输出端;nAGNDAGND:模拟地;:模拟地;nREFINREFIN:基准电压输入端:基准电压输入端, 2V, 2V(VDD - 2);(VDD - 2);nVDDVDD: 正电源端,正电源端,4.5V4.5V5.5V5.5V,通常取,通常取5V5V。vTLC5615TLC5615引脚引脚vTLC5615TLC5615功能框图功能框图vTLC5615TLC5

23、615工作时序工作时序vTLC5615TLC5615接口函数接口函数void TLC5615_DAC(uint dat)void TLC5615_DAC(uint dat) uchar i; uchar i; dat= 2; / dat= 2; / 左移左移2 2位位, ,补补2 2位位0 0 TLC5615_CLK = 0; TLC5615_CLK = 0; TLC5615_CS = 0;TLC5615_CS = 0;for (i=0;i16;i+) for (i=0;i16;i+) TLC5615_DI = (bit)(dat & 0 x8000); TLC5615_DI = (b

24、it)(dat & 0 x8000); TLC5615_CLK = 0; TLC5615_CLK = 0; dat = 1; dat = 1; TLC5615_CLK = 1; TLC5615_CLK = 1; TLC5615_CS = 1;TLC5615_CS = 1;TLC5615_CLK = 0; TLC5615_CLK = 0; Delay10Us(1);/15.2 uSDelay10Us(1);/15.2 uS 7.3.4 TLC549 A/D7.3.4 TLC549 A/D转换器简介转换器简介nREF+REF+:正基准电压,:正基准电压,2.5VREF+Vcc+0.12.5VRE

温馨提示

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

评论

0/150

提交评论