当前位置: 首页 > news >正文

在线游戏网站完整网站开发视频教程

在线游戏网站,完整网站开发视频教程,wordpress默认ssl,沧州市政务服务大厅一、SPI简介 1.SPI总线特点 #xff08;1#xff09;四条通信线 SPI需要SCK、MISO、MOSI、NSS四条通信线来完成数据传输 #xff0c;每增加一个从机#xff0c;多一条NSS通信线。 #xff08;2#xff09;多主多从 SPI总线允许有多个主机和多个从机。 #xff08;31四条通信线 SPI需要SCK、MISO、MOSI、NSS四条通信线来完成数据传输 每增加一个从机多一条NSS通信线。 2多主多从 SPI总线允许有多个主机和多个从机。 3传输速率 比常见的I2C协议要快通常为Mbit级别。 4通信方式  是同步全双工串行通信每次交换一个字节8bit或者两个字节16bit可选择高位先行或者低位先行。 2.SPI总线术语 SCK串行时钟线作为主设备的输出、从设备的输入。 MISO主机输入/从机输出数据线该引脚在主模式下接收数据在从模式下发送数据。 MOSI主机输出/从机输入数据线该引脚在主模式下发送数据在从模式下接收数据。 NSS低电平有效的从机选择线。NSS引脚是可选的一般选择用软件管理。 3.SPI硬件构成 所有SPI设备的SCK、MOSI、MISO分别连在一起主机另外引出多条NSS控制线分别接到各从机的NSS引脚输出引脚配置为推挽输出输入引脚配置为浮空或上拉输入。 4.位传输 1起始信号  SS引脚从高电平切换到低电平 。 2终止信号  SS引脚从低电平切换到高电平 。 5.数据传输模式  在使用STM32的SPI外设时需要设置时钟相位CPHA)和时钟极性CPOL。  1模式0 CPOL0空闲状态时SCK为低电平 CPHA0SCK第一个边沿移入数据第二个边沿移出数据 2模式1 CPOL0空闲状态时SCK为低电平 CPHA1SCK第一个边沿移出数据第二个边沿移入数据 3模式2 CPOL1空闲状态时SCK为高电平 CPHA0SCK第一个边沿移入数据第二个边沿移出数据 4模式3 CPOL1空闲状态时SCK为高电平 CPHA1SCK第一个边沿移出数据第二个边沿移入数据 二、STM32的SPI外设 1.STM32的SPI外设的特性 8位或16位传输帧格式可选的时钟频率、高/低位先行支持多主模式可触发中断的专用发送和接收标志、主模式故障、过载以及CRC错误标志SPI总线忙状态标志支持DMA功能的1字节发送和接收缓冲器产生发送和接收请求兼容I2S协议 2.STM32 SPI外设的基本结构 3.状态标志 应用程序可以通过TXE、RXNE和BUSY三个状态标志来完全监控SPI总线的状态。 1发送缓冲器空闲标志TXE)  此标志为1时表示发送缓冲器为空可以写下一个待发送的数据进入缓冲器中。  2接收缓冲器非空标志RXNE 此标志为1时表示接收缓冲器中包含有效的接收数据。  3忙标志BUSY 此标志为1时表示SPI正忙于通信但有一个例外在主模式下的双向接收模式下在接收期间BUSY标志保持为低。 三、STM32 SPI外设的通信方式  1.主模式 在SPI主模式下MOSI引脚是数据输出而MISO是数据输入SCK引脚产生串行时钟。  2.从模式 在 SPI从模式下MOSI引脚是数据输入而MISO是数据输出SCK引脚用于接收来自主机的串行时钟。 四、STM32 SPI外设使用流程  虽然不同器件实现的功能不同但是只要遵循SPI协议其通信方式都是一样的配置流程也基本相同。对于STM32首先要对SPI进行配置使其能够正常工作再结合不同器件的驱动程序完成STM32与不同器件的数据传输。这里只介绍STM32作为主机的使用流程使用流程和参考代码如下 配置GPIO配置SPI写一个产生起始条件的函数写一个产生终止条件的函数写一个交换数据的函数 void SPI_W_SS(uint8_t Bit) //根据Bit设置SS引脚的电平 {GPIO_WriteBit(GPIOA, GPIO_Pin_4, (BitAction)Bit); }void SPI_Init(void) //配置GPIO和SPI {RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE);RCC_APB2PeriphClockCmd(RCC_APB2Periph_SPI1, ENABLE);GPIO_InitTypeDef GPIO_InitStructure;GPIO_InitStructure.GPIO_Mode GPIO_Mode_Out_PP;GPIO_InitStructure.GPIO_Pin GPIO_Pin_4;GPIO_InitStructure.GPIO_Speed GPIO_Speed_50MHz;GPIO_Init(GPIOA, GPIO_InitStructure); //将PA4引脚初始化为推挽输出作为NSS片选引脚GPIO_InitStructure.GPIO_Mode GPIO_Mode_AF_PP;GPIO_InitStructure.GPIO_Pin GPIO_Pin_5 | GPIO_Pin_7;GPIO_InitStructure.GPIO_Speed GPIO_Speed_50MHz;GPIO_Init(GPIOA, GPIO_InitStructure); //将PA5和PA7引脚初始化为复用推挽输出即配置SCK和MOSIGPIO_InitStructure.GPIO_Mode GPIO_Mode_IPU;GPIO_InitStructure.GPIO_Pin GPIO_Pin_6;GPIO_InitStructure.GPIO_Speed GPIO_Speed_50MHz;GPIO_Init(GPIOA, GPIO_InitStructure); //将PA6引脚初始化为上拉输入即配置为MISOSPI_InitTypeDef SPI_InitStructure; SPI_InitStructure.SPI_Mode SPI_Mode_Master; //模式选择为SPI主模式SPI_InitStructure.SPI_Direction SPI_Direction_2Lines_FullDuplex;//方向选择2线全双工SPI_InitStructure.SPI_DataSize SPI_DataSize_8b; //数据宽度选择为8位SPI_InitStructure.SPI_FirstBit SPI_FirstBit_MSB; //先行位选择高位先行SPI_InitStructure.SPI_BaudRatePrescaler SPI_BaudRatePrescaler_128; //波特率分频选择128分频SPI_InitStructure.SPI_CPOL SPI_CPOL_Low; //SPI极性选择低极性SPI_InitStructure.SPI_CPHA SPI_CPHA_1Edge; //SPI相位选择第一个时钟边沿采样极性和相位决定选择SPI模式0SPI_InitStructure.SPI_NSS SPI_NSS_Soft; //NSS选择由软件控制SPI_InitStructure.SPI_CRCPolynomial 7; //CRC多项式暂不用给默认值7SPI_Init(SPI1, SPI_InitStructure); SPI_Cmd(SPI1, ENABLE); //使能SPI1开始运行MySPI_W_SS(1); //NSS默认高电平 }void MySPI_Start(void) //产生起始信号 {MySPI_W_SS(0); //拉低SS }void MySPI_Stop(void) //产生终止信号 {MySPI_W_SS(1); //拉高SS }uint8_t MySPI_SwapByte(uint8_t ByteSend) //交换一个字节数据 {while (SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_TXE) ! SET); //等待发送数据寄存器空SPI_I2S_SendData(SPI1, ByteSend); //写入数据到发送数据寄存器开始产生时序while (SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_RXNE) ! SET); //等待接收数据寄存器非空return SPI_I2S_ReceiveData(SPI1); //读取接收到的数据并返回 }代码仅供参考具体使用需要结合相关从机器件的开发文档。
http://www.hkea.cn/news/14379246/

相关文章:

  • 静态宠物网站设计论文青岛网站制作服务商
  • 公众号建网站家具网站开发
  • 做网站市场价金华网站建设电话
  • 百度站长平台账号购买社交app定制
  • 高端的丹阳网站建设wordpress评论添加验证
  • 湖北网站建设哪里有福州网络营销推广公司
  • 学网站开发需要会什么app免费下载入口
  • 网站逻辑结构优化国外的建筑设计案例网站
  • 潍坊网站建设app个人简历模板大全
  • 网站流量超限html怎么写
  • 汕头做网站清晰化网站
  • 网站加载慢菜单制作软件app
  • 做网站听的纯音乐做企业网站前期需要准备什么资料
  • 手机网站wap软件开发去哪里学
  • 昆山市建设监察大队网站成立公司协议
  • 衡水建设网站公司专业做网站设计的公司
  • SEO案例网站建设价格无锡网站改版多少钱
  • wordpress一栏主题百度搜索引擎优化相关性评价
  • 建设厅网站怎么打印不出来网站的建立步骤
  • 更改网站备案新遵义
  • 建立属于自己的网站玩具网站开发背景
  • 建设银行个人登录网站龙岩网站设计
  • 大连百度关键词优化有必要买优化大师会员吗
  • 网站建设人员需求下述不属于网页制作工具
  • 网站开发模块公司网站可以自己做么
  • 用墨刀做视频网站网站与客户互动
  • 外贸推广建站公司园区门户网站建设
  • 网站服务器 英文wordpress保存帖子数据库
  • 上海知名网站制作公司WordPress修改网站背景
  • 网站运维律所网站建设国队男子接力赛