教学课件单片机创新开发教程ch18 使用SPI总线.pptx
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《教学课件单片机创新开发教程ch18 使用SPI总线.pptx》由会员分享,可在线阅读,更多相关《教学课件单片机创新开发教程ch18 使用SPI总线.pptx(26页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、教材配套PPT正版可修改课件教学课件单片机创新开发教程ch18使用SPI总线单片机创新开发教程-基于STC8吴险峰第18章 使用SPI总线SPI总线是除I2C外另一种主流接口总线,和I2C相比各有优势。本章通过两个典型的I2C器件Flash模块和SD卡来演示SPI应用。1.情境导入2.学习目标3.相关知识4.项目设计5.项目实现6.知识拓展7.强化练习18.1情境导入小白:“I2C可以支持多个设备和单片机通信,但是只有一根数据线。如果多一根数据线,是不是就可以进行更快速率的传输了?”小牛:“是的,一根数据线没有办法进行双向同时通信。SPI是单片机和外围器件通信的另外一种常用的接口,可以进行全双
2、工通信,传输速率也比I2C快。”小白:“嗯,那请给我讲讲SPI的应用吧”。18.2 学习目标【知识目标】1.学习SPI的理论知识。2.了解SPI常用寄存器。3.掌握SPI和I2C的区别。【能力目标】1.能使用SPI接口Flash模块。2.会使用SPI接口SD卡。18.3 相关知识l18.3.1.SPI概述l18.3.2.硬件SPIl18.3.3.图形化指令l18.3.4.I2C和SPI区别l18.3.5.FLASH模块l18.3.6.SD存储卡18.3 相关知识18.3.1.SPI概述SPI是由摩托罗拉(Motorola)公司开发的全双工同步串行总线,是微处理控制单元(MCU)和外围设备之间进
3、行通信的同步串行端口。SPI主要应用在EEPROM、Flash、实时时钟(RTC)、数模转换器(ADC)、网络控制器、MCU、数字信号处理器(DSP)以及数字信号解码器之间。如图18-1所示,SPI系统可直接与各个厂家生产的多种标准外围器件直接接口,一般使用4条线:SCLK:串行时钟线SerialClock;MOSI;SIMO:主机输出/从机输入数据线MasterOutput,SlaveInput;MISO;SOMI:主机输入/从机输出数据线MasterInput,SlaveOutput;SS:从机选择线SlaveSelect(低电平有效)。SPI是单主设备通信协议,这意味着总线中的只有一支中
4、心设备能发起通信。当SPI主设备想读/写从设备时,它首先拉低从设备对应的SS线(SS是低电平有效),接着开始发送工作脉冲到时钟线上,在相应的脉冲时间上,主设备把信号发到MOSI实现“写”,同时可对MISO采样而实现“读”。SPI不规定最大传输速率,没有地址方案;SPI也没规定通信应答机制,没有规定流控制规则。18.3 相关知识18.3.2.硬件SPISTC8系列单片机内部集成了一种高速串行通信接口SPI接口。SPI是一种全双工的高速同步通信总线。STC8系列集成的SPI接口提供了两种操作模式:主模式和从模式。SPI的编程涉及3个寄存器,如表18-1所示,和I2C的9个寄存器编程相比要简单。还好
5、通过图形化模块编程,封装了相关寄存器设置。建议从实验入手,慢慢深入底层代码。符号描述地址位地址与符号B7B6B5B4B3B2B1B0SPSTATSPI状态寄存器CDHSPIFWCOLSPCTLSPI控制寄存器CEHSSIGSPENDORDMSTRCPOLCPHASPR1:0SPDATSPI数据寄存器CFH 以上寄存器这里就不展开论述了,简单来说就是确定SPI数据传输模式。就是通过配置SPI控制寄存器SPCTL中的CPOL(时钟极性)和CPHA(时钟相位)的值确定SPI接口的数据收发模式。CPOL=0时,时钟在逻辑0处空闲:模式0:CPOL=0,CPHA=0,数据会在SCK的上升沿采样,下降沿变
6、化。模式1:CPOL=0,CPHA=1,数据会在SCK的下降沿采样,上升沿变化。CPOL=1时,时钟在逻辑高电平处空闲:模式2:CPOL=1,CPHA=0,数据会在SCK的下降沿采样,上升沿变化。模式3:CPOL=1,CPHA=1,数据会在SCK的上升沿采样,下降沿变化。18.3 相关知识18.3.2.硬件SPISPI的端口可以通过外设端口切换控制寄存器1(P_SW1)切换,如表18-2所示。符号地址B7B6B5B4B3B2B1B0P_SW1A2HS1_S1:0SPI_S1:00S1_S1:0:串口1功能脚选择位SPI_S1:0:SPI功能脚选择位,对应端口设置如表18-3所示。SPI_S1:
7、0SSMOSIMISOSCLK00P1.2/P5.4P1.3P1.4P1.501P2.2P2.3P2.4P2.510P5.4P4.0P4.1P4.311P3.5P3.4P3.3P3.218.3 相关知识18.3.3.图形化指令常用指令图形化指令实例1.硬件SPI初始化2.硬件SPI写数据3.硬件SPI读数据4.硬件SPI写数据同时返回读取数据SPI图形化指令如表18-4所示。18.3 相关知识18.3.4.I2C和SPI区别同作为最主流的接口方式之一,I2C和SPI有着明显的区别。其主要区别如表18-5所示。指标I2CSPI主机数量可以多个主机和从机连接只能有一个主机连接到SPI总线通信方式半
8、双工通信全双工通信通信线路使用两根线进行通信,需要四线进行通信通信速率慢快功耗需要上拉电阻,功耗高不需要上拉电阻,功耗低成本低高可靠性高。有确认机制,验证机制低。不支持确认位,不会验证数据通信选择发送从机的地址才能进行通信使用从设备选择引脚来选择从设备进行通信多机通信支持同一总线上的多个设备,无须任何额外的选择线需要额外的信号(从选择线)线来管理同一总线上的多个设备通信距离更适合长距离通信更适合短距离通信18.3 相关知识18.3.5.FLASH模块W25Q32JV有16384个可编程页,每个页有256个字节。最多256字节可以一次被编程。也可以按16组(4KB扇区擦除)、128组擦除(32K
9、B块擦除)、256组(64KB块擦除)或整个芯片(芯片擦除)。W25Q32JV已经分别有1024个可擦扇区和64个可擦块。小的4KB部门允许更大的需要数据和参数存储的应用程序的灵活性。W25Q32JV支持标准串行外设接口(SPI)和高性能双/四输出,以及双/四I/OSPI:串行时钟,芯片选择,串行数据I/O0(DI),I/O1(DO),I/O2,和I/O3。SPI时钟频率高达133MHz支持允许等效时钟率266MHz(133MHzx2)用于双I/O和532MHz(133MHzx4)用于四次I/O时,使用快速读双/四次I/O指令。这些传输速率可以超过标准的异步8位和16位并行Flash记忆。此外
10、,该设备支持JEDEC标准制造商和设备ID和SFDP寄存器,一个64位唯一序列号和三个256字节安全寄存器。图形化指令如表18-6所示。18.3 相关知识18.3.5.FLASH模块常用指令图形化指令实例1.芯片型号,配合读取芯片ID模块一起使用。2.Flash初始化引脚。3.Flash读取芯片ID。4.把buf的数据写入到Flash中。5.读取Flash数据到buf。6.Flash擦除指定扇区。7.Flash全片擦除。8.Flash进入掉电模式。9.Flash唤醒。18.3 相关知识18.3.5.SD存储卡常用指令图形化指令实例SD卡初始化从buff中,写入字节长度,到第几个扇区从SD卡中的
11、第几个扇区,偏移量是多少,读取多少个字节到buff中安全数字存储卡(SecureDigitalMemoryCard,SDMC,SD存储卡)是一种基于半导体快闪存储器的新一代高速存储设备。SD存储卡的技术是从MMC卡(MultiMediaCard)格式上发展而来,在兼容SD存储卡基础上发展了SDIO(SDInput/Output)卡,此兼容性包括机械,电子,电力,信号和软件,通常将SD、SDIO卡俗称SD存储卡。SD卡具有高记忆容量、快速数据传输率、极大的移动灵活性以及很好的安全性,它被广泛地应用于便携式装置上,例如数码相机、平板电脑和多媒体播放器等。目前一般都用MicroSDCard替代SD卡
12、。其图形化指令如表18-7所示。18.4 项目设计天问51开发板上的FLASH引脚连到P22-P25,FLASH芯片型号为W25Q32,ID为EF15H,对应的十进制数值为61205。引脚连线如图18-2所示。SD卡也是采用SPI协议,片选信号CS和P26相连。其他引脚和Flash模块共用。通过SPI总线进行片选,就可以同时操作Flash和SD卡了。18.4 项目设计任务1硬件SPI读取FLASH的IDvoidsetup()twen_board_init();/天问51初始化led8_disable();/关闭8个LED流水灯电源nix_init();/数码管初始化P2M1&=0 x04;P2
13、M0|=0 x04;/推挽输出P2_2=1;hardspi_init(0);/硬件SPI初始化P2_2=0;hardspi_write_byte(0 x90);/硬件SPI写1个字节数据hardspi_write_byte(0);/硬件SPI写1个字节数据hardspi_write_byte(0);/硬件SPI写1个字节数据hardspi_write_byte(0);/硬件SPI写1个字节数据flash_id=(hardspi_read_byte()8);flash_id=(flash_id|(hardspi_read_byte();nix_display_num(flash_id);/数码管
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 教学课件单片机创新开发教程ch18 使用SPI总线 教学 课件 单片机 创新 开发 教程 ch18 使用 SPI 总线
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内