历史上的今天

今天是:2024年10月05日(星期六)

正在发生

2018年10月05日 | 关于STM32中NSS位的用法

发布者:正在搬砖的河马71 来源: eefocus关键字:STM32  NSS位 手机看文章 扫描二维码
随时随地手机看文章

我们都知道STM32中的SPI一共有四根线,分别是MISO,MOSI,NSS,SCK

MISO跟MOSI是双向数据线,SCK是时钟线。

我们下面来介绍一下关于NSS是什么作用。

在标准的SPI通信协议中除了上面的三根线,还有一根是CS线即片选线,所以在这里,NSS也是片选,只不过此片选线相对复杂了点。

对于STM32来说,NSS线既可以作输入,又可以作输出。所谓输入就是外部NSS输入给自己。输出就是将NSS的信号送出去。输入与输出的配置,可以通过SPI_CR2寄存器的SSOE位,当此位为1时,且SPI为主机时,NSS就输出低电平,也就是拉低,因此当其他SPI设备的NSS引脚与它相连,必然接收到低电平,则片选成功,都成为从设备了。

NSS输入时,分为两种情况,一种是软件模式,一种是硬件模式。

软件模式

  1 对于SPI主机来说

需要设置SPI_CR1寄存器的SSM为1和SSI位为1,SSM为1是为了使能软件管理。NSS有内部和外部引脚。这时候,外部引脚留作他用(可以用来作为GPIO驱动从设备的片选信号)。内部NSS引脚电平则通过SPI_CRL寄存器的SSI位来驱动。SSI位为1是为了使NSS内电平为高电平。

STM32手册上说,要保持MSTR和SPE位为1,也就是说要保持主机模式,只有NSS接到高电平信号时,这两位才能保持置1.也就是说对于STM32的SPI,要保持为主机状态,内部输入的NSS电平必须为高。当然这里在硬件模式下也是如此。

2 对于SPI 从机来说

     主机自己的内部NSS高电平解决了,那么SPI从机的NSS片选低电平也得解决啊。

如果从机选择STM32的一个SPI,譬如主机选为SPI1,从机选为SPI2,则要按照以下操作手册说,NSS引脚在完成字节传输之前必须连接到一个低电平信号。在软件模式下,则需要设置SPI_CR1寄存器的SSM为1(软件管理使能)和SSI位为0.果然如此。SSI必须要为0,也就是SPI2的片选为低,则片选成功。

对于主机,我们的NSS可以直接接到高电平,对于从机,NSS接低就可以。

当然我们上面提过当一个主机的SSOE为1时,主机工作在输出模式,而且NSS拉低了,我们要让从机片选,只要将CS接到主机的NSS上,CS自动拉低。

  SPI_InitStructure.SPI_Direction = SPI_Direction_2Lines_FullDuplex;

  SPI_InitStructure.SPI_Mode = SPI_Mode_Master;      //这里设置SPI1为主模式,设置SSI为1

  SPI_InitStructure.SPI_DataSize = SPI_DataSize_8b;

  SPI_InitStructure.SPI_CPOL = SPI_CPOL_Low;

  SPI_InitStructure.SPI_CPHA = SPI_CPHA_2Edge;

  SPI_InitStructure.SPI_NSS = SPI_NSS_Soft;           //这里设置SSM为1,软件管理

  

  SPI_InitStructure.SPI_BaudRatePrescaler = SPI_BaudRatePrescaler_4;

  SPI_InitStructure.SPI_FirstBit = SPI_FirstBit_LSB;

  SPI_InitStructure.SPI_CRCPolynomial = 7;

  SPI_Init(SPI1, &SPI_InitStructure);

 

  SPI_InitStructure.SPI_Mode = SPI_Mode_Slave;//这里设置SPI2为从模式SSI为0


  //因为SPI2和SPI1用的是同一个SPI_InitStructure,所以SSM位已经为1

  SPI_Init(SPI2, &SPI_InitStructure);

对于SPI2的配置,和SPI1用的是同一个结构体,只需要把模式和SSI一改就行,其他的譬如软件使能,还有时序什么的都不用改。这样SPI1和SPI2就配置好了。以后就可以传输数据了。


关键字:STM32  NSS位 引用地址:关于STM32中NSS位的用法

上一篇:ARM学习_六大类指令集
下一篇:【STM32电机方波】记录4——PWM输出配置

推荐阅读

太久没写过像样的文,先从学习笔记开始,之后逐渐补充这个月以来的单片机学习笔记。 -------------------------------------我是分界线你看不见------------------------------------------- 1.RTC简介(关于stm32的实时时钟RTC的介绍,参考手册甚是详细,自可参考,编程时不懂查阅即可,不必死背硬记。)STM32的实时时钟(RTC)是一个独立的定时器,RTC模...
2018年底:德州仪器(以下简称TI)正式取消新晔代理权,引元器件圈广泛热议。至此,TI 的代理商只剩下安富利,艾睿,文晔和世平四家。昨天,又一劲爆消息传来!TI 将取消全球第二大代理商:安富利代理权!据Seeking Alpha消息,安富利在10月4日提交给美国证券交易委员会的文件中表明,TI 在本周二(10月1日)通知安富利,将于2020年12月31日结束与安富...
谈到医疗机器人,许多人都会起到美国Intuitive surgical公司研发的达芬奇机器人,它是世界第一款手术机器人,代表着机器人在医疗行业应用的重要里程碑。不过,达芬奇仍然是由人类控制的机器系统。随着人工智能技术的进步发展,医疗行业又发生了巨大的变化。利用机器学习的方法,可以对不同病例进行学习,再结合所有医学知识库的知识,能够快速诊断出病情...

史海拾趣

问答坊 | AI 解惑

基于DSP的PCI总线数据采集系统的研究

1 引言随着数字信号处理器性能的不断提高及其成本与售价的大幅下降,数字信号处理应用领域飞速扩展,信号处理进入了一个新的发展时期。同时随着计算机技术以及互联网络技术的不断发展,越来越多的数据需要经过计算机来进行处理、存储、传输筹操 ...…

查看全部问答∨

DSP算法大全C语言版本

请先登陆再下载 没有阅读器的朋友请在这里下载 PDF软件: -------------------------------------- 超星浏览器 …

查看全部问答∨

【转帖】单片机系统软件抗干扰方法

在提高硬件系统抗干扰能力的同时,软件抗干扰以其设计灵活、节省硬件资源、可靠性好越来越受到重视。下面以MCS-51单片机系统为例,对微机系统软件抗干扰方法进行研究。 1 软件抗干扰方法的研究 在工程实践中,软件抗干扰研究的内容主要 ...…

查看全部问答∨

重发《51汇编语言指令集 下载!》

论坛上有一个帖子是《51汇编语言指令集 下载!》看到有那么多的人下载,唉,没下载前还以为是什么好东西呢,其实就是51单片机的指令集呀,也没有什么可以值得下载的吗,凡是教材上都有哇,下载的人一定会觉得上当了。再说了,直接帖上就好了,何必 ...…

查看全部问答∨

什么是智能豪宅

一、 国内外豪宅定义、特征     第一代、第二代住宅只是简单地解决基本的居住问题,更多的是追求生存空间的数量,而第三代、第四代住宅已逐渐过渡到追求生活空间的质量和住宅产品的品质,发展到第五代住宅已开始着眼于环境,追求生存空 ...…

查看全部问答∨

DSP大家一般画几层板?

大家用DSP的时候一般画几层板?有没有什么选定标准?…

查看全部问答∨

非技术问题!!!!

我的智能手机是mobile6.0系统,原来在电脑上,装了activesyn软件可以拷贝东西通信,然后有一天突然变成了一个U盘,后就不能用activesyn来连接了,只能进到存储卡里面,但是进不到手机里面了。 怎么办?有谁遇到过这种情况吗?…

查看全部问答∨

做一个虚拟设备的驱动大概多少钱?

没弄过驱动,不知道行情怎么样? 具体就是做一个虚拟的游戏摇杆的驱动,他的输入我们用别的方法来进行! 大概多少钱?…

查看全部问答∨

请教大家2440如何在休眠时候降低功耗

RT. 我用的三星2440,在休眠时候把没用的IO都设置成了 input,并且上拉有效,奇怪的是电流一直在0.05A降不下来。 大家有什么高招吗? …

查看全部问答∨

wince如何直接连接sql server 2000?

如题,由于公司要求wince直连桌面PC数据库(说是为了实时传输数据,所以不考虑合并复制或RDA方式),那么wince环境下如何直连sql server 2000,我的数据库是运行在WIN XP SP2下的,在VS2008 C#开发环境下,已经在项目里添加了System.Data.SqlClient ...…

查看全部问答∨
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
随便看看

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved