历史上的今天
返回首页

历史上的今天

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

正在发生

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

2018-10-05 来源:eefocus

我们都知道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就配置好了。以后就可以传输数据了。


推荐阅读

史海拾趣

Hpc Technology Inc公司的发展小趣事

HPC Technology Inc公司发展的五个故事

故事一:初创与技术创新

HPC Technology Inc公司成立于2003年,总部位于中国台湾台北县三重市。创立之初,公司便专注于连接器与电缆组件的研发与生产,致力于为客户提供全面解决方案和优质服务。在电子行业快速发展的背景下,HPC Technology Inc公司敏锐捕捉到高性能计算(HPC)市场的潜力,开始逐步涉足该领域。通过不断的技术创新,公司推出了一系列高性能、高可靠性的连接器产品,逐渐在HPC市场中崭露头角。

故事二:市场拓展与品牌建设

随着技术的不断成熟和市场的认可,HPC Technology Inc公司开始积极拓展海外市场。公司参加了多个国际性的电子展会,与全球客户建立了广泛的联系。同时,公司注重品牌建设,通过优质的产品和服务赢得了客户的信赖和好评。在国际市场上,HPC Technology Inc公司的品牌知名度逐渐提升,产品销量也稳步增长。

故事三:技术合作与产业升级

为了进一步提升技术实力和市场竞争力,HPC Technology Inc公司积极寻求与国内外知名企业的技术合作。公司与多家国际知名的电子企业建立了长期合作关系,共同开展技术研发和产品创新。通过技术合作,公司不仅获得了先进的技术支持,还实现了产业升级和产品结构优化。这些合作成果为公司在HPC领域的持续发展奠定了坚实基础。

故事四:绿色环保与可持续发展

随着全球对环保问题的日益关注,HPC Technology Inc公司积极响应号召,致力于绿色环保和可持续发展。公司投入大量资金研发环保型连接器产品,采用环保材料和绿色生产工艺,减少对环境的影响。同时,公司还建立了完善的废弃物回收和处理机制,确保生产过程中的废弃物得到妥善处理。这些举措不仅提升了公司的社会责任感,也为公司的可持续发展注入了新的动力。

故事五:智能制造与数字化转型

面对制造业的数字化转型浪潮,HPC Technology Inc公司紧跟时代步伐,积极推进智能制造和数字化转型。公司引入了先进的智能制造设备和系统,实现了生产过程的自动化、智能化和数字化。通过数字化转型,公司不仅提高了生产效率和质量稳定性,还降低了生产成本和能耗。同时,公司还利用大数据和人工智能技术优化供应链管理、客户服务和产品研发等环节,进一步提升了企业的竞争力和市场响应速度。

Hifn Inc公司的发展小趣事

机顶盒,全称为数字视频变换盒,是现代家庭娱乐中不可或缺的重要设备。从广义上讲,任何与电视机连接的网络终端设备均可视为机顶盒,它们不仅限于接收和转换电视信号,还具备丰富的网络交互功能。

机顶盒的核心功能在于接收并解码来自有线电缆、卫星天线、宽带网络及地面广播的数字电视信号,将其转换成适合在电视机上播放的格式。这一过程包括接收、解码和显示三个主要步骤,确保了用户能够享受到高清乃至4K的超高清画质和震撼音效。此外,机顶盒还提供了诸如电子节目指南、因特网网页浏览等增值服务,极大地丰富了用户的观看体验。

随着技术的不断进步,机顶盒正朝着智能化、多功能化方向发展。例如,智能推荐算法能够根据用户的观看历史和偏好,提供个性化的节目推荐;语音识别技术则让用户能够通过语音指令控制机顶盒,实现更加便捷的操作体验。同时,机顶盒还支持家庭影院功能,让用户在家中就能享受到电影院般的视听效果。

总的来说,机顶盒作为连接电视与外部信号源的桥梁,不仅提升了电视节目的观看体验,还通过丰富的网络交互功能为用户提供了更加广泛的内容和娱乐选择。随着技术的不断发展和用户需求的日益多样化,机顶盒将继续在家庭娱乐领域发挥重要作用。

Cretex Companies Inc公司的发展小趣事

随着公司实力的增强,Cretex开始将目光投向国际市场。他们积极参与国际电子展会,与全球各地的合作伙伴建立联系。通过引进国外先进的技术和管理经验,Cretex的产品质量和服务水平得到了进一步提升。同时,公司还针对不同国家和地区的市场需求,推出定制化的电子产品,赢得了更多客户的青睐。

Galaxy Semi-Conductor Co Ltd公司的发展小趣事

山西飞虹激光科技有限公司于2010年在中国山西成立,并迅速在北京设立分公司,将北京作为战略重心,拓展全国市场。仅两个月后,飞虹激光的研发&生产中心便设立并投入生产,展现了公司的强大执行力和决心。2012年,飞虹激光积极参与国际展会,如慕尼黑上海光博会,展示了其F3015激光切割机、激光熔覆系统等高端产品,不仅提升了公司知名度,也彰显了其在激光技术领域的专业水平和创新能力。

Custom Components Inc公司的发展小趣事

Custom Components Inc(简称CCI)公司的发展历程始于一个技术突破。在公司成立的初期,CCI的研发团队成功开发了一种新型的电子元件,这种元件在性能和成本上均优于市场上的同类产品。这一技术突破立即引起了行业的关注,多家电子设备制造商纷纷向CCI抛出橄榄枝,希望建立长期合作关系。

随着市场需求的不断增长,CCI逐步扩大了生产规模,并通过技术创新不断提升产品质量。同时,公司还积极开拓国际市场,与海外客户建立了稳定的业务往来。凭借卓越的产品性能和良好的市场口碑,CCI逐渐在电子行业中崭露头角。

All Sensors公司的发展小趣事

All Sensors在传感器技术领域一直保持着世界领先的地位。公司掌握着核心的MEMS传感器技术,如独有的CoBeam2 TM传感器技术等。这些技术的应用使得All Sensors的传感器在精度、稳定性和寿命等方面都达到了行业领先水平。同时,公司还不断投入研发,推出更多创新产品,满足不断变化的市场需求。

问答坊 | AI 解惑

有没有哪位朋友做过关于PT100前端放大的?

我想做一个关于PT100放大的电路,然后用于温度转换,后级单片机处理已经做好了,不知道前级如何做?只要能输出一个线性的0-5V电压或者相关电压都可以了。 有做过的朋友发个图参考一下好吗?多谢了。 89c51cj@163.com…

查看全部问答>

USB驱动分析 绝对经典的一本书

usb源码详析,linux-usb-hub,linux-usb-core, 嬉笑怒骂、娓娓道来。可惜原作者没有署名,在此向原作者致以崇高的敬意!…

查看全部问答>

练练手 来个篮球计时计分器 有程序的

本帖最后由 paulhyde 于 2014-9-15 09:21 编辑 做好了下学期得奖后大家就可以拿这个去打球了  …

查看全部问答>

嵌入式Linux开发公益体验活动介绍(5月16号本周六)

嵌入式Linux开发公益体验活动介绍(5月16号本周六)                 (目前已经只剩6个名额,预报从速!!) 体验活动目标: 本活动针对嵌入式Linux开发的初学人员,能快速了解嵌入式Linux ...…

查看全部问答>

求助,学嵌入式应该,应该没什么路线学习?

求助,学嵌入式应该,应该没什么路线学习?…

查看全部问答>

关于PICC与中文汉字显示不兼容问题

哪位大侠碰到过PICC不兼容中文的情况? 之前用PICC16程序没问题,后来换了18系列的芯片,用UNIVERSAL TOOLSUITE PICC就出现问题了,PICC版本是9.63,MPLAB V8.40,错误提示是:illegal character (0xC9)。其实不换18的芯片,用UNIVERSAL TOOLSUITE P ...…

查看全部问答>

求本书 the indispensable pc hardware book 哪有啊 找了半天了谢谢各位大大了

求本书 the indispensable pc hardware book 哪有啊 找了半天了谢谢各位大大了…

查看全部问答>

求keil uv4 下的LPC2294的工程模板

新手, 现在LPC2294的arm7单片机,求个模板。…

查看全部问答>

TI的图形库

这里借鉴了“https://home.eeworld.com.cn/space.php?uid=139305&op=photo”同学的帖子,也简单的实现了TI的图形库功能,拿来炫炫。因为我选用的屏是320*480的,所以画面显得更好看些~     现在还没有做控件方面的东西,有兴趣的 ...…

查看全部问答>

【MSP430共享】大家一起DIY一块MSP430开发板

最近手里有点430的片子,大家一起想想看做个什么开发板,只限F149和F5438,我只有这两种片子,建议用5438搞,原则是功能外设一定要多,价格成本一定要低,大家多提意见,我选择贡献最大的5名坛友到时每人送一块开发板pcb+430CPU一枚,具体大家可以 ...…

查看全部问答>