娇小w搡bbbb搡bbb,《第一次の人妻》,中国成熟妇女毛茸茸,边啃奶头边躁狠狠躁视频免费观看

一文詳解stm32 spi nss相關知識

發布者:EtherealGaze最新更新時間:2024-08-29 來源: elecfans關鍵字:stm32  spi  nss 手機看文章 掃描二維碼
隨時隨地手機看文章

1.概述

目前網絡上使用stm32 spi的nss,基本上都使用的是nss的軟件管理模式。對于nss的硬件管理模式,程序的配置以及對nss的軟件管理模式與硬件管理模式的說明,真的少之又少。這可能跟stm32官方文檔對nss的描述不清也有很大關系吧,下面就帶大家理解理解nss,當然了這篇文章是筆者閱讀了stm32 spi官方文檔再結合網友的一些文章,最終以自己個人對nss理解來編寫的,如果有錯誤之處,還請指正。


2.nss的管理模式

nss的管理模式分為:硬件管理和軟件管理。nss的管理模式由SSM決定。

nss其實分為外部引腳和內部引腳的。外部nss引腳就是芯片上肉眼可見的與GPIO復用的引腳;內部nss引腳就是stm32芯片里集成的spi模塊引腳,肉眼不可見。換句話說,真正與spi通信控制器連接的是內部nss引腳,外部nss引腳不能直接連到芯片內部的spi模塊,而是先連接內部nss引腳,通過內部nss引腳作用spi模塊。

3.nss的管理模式配置

SSM在SPI_CR1控制器里,默認為0。

SSM可以控制內部nss引腳與SSI(一個寄存器,軟件模式)相連,還是與外部nss引腳(真正的STM32引腳,硬件模式)相連。真正起作用的是內部nss引腳(內部nss引腳才真正連接到SPI通信控制器上)。

當SSM=0:說明使用硬件管理模式,內部nss引腳與外部nss引腳相連,忽視SSI位,對SPI_CR1的SSI位的寫操作無效;

當SSM=1:說明使用軟件管理模式,內部nss引腳與SSI相連,忽視外部nss引腳,我們可以把外部nss引腳當做普通IO口;

4.spi從模式配置(MSTR=0)

(1).nss硬件模式(SSM=0)

當外部nss引腳為低電平時,內部nss也為低電平,相當于片選該從器件,此時spi可以傳輸數據。外部nss引腳需要配置為復用功能。

(2).nss軟件模式(SSM=1)

SSM=1并且SSI=0,STM32芯片讓內部nss引腳為低電平,相當于片選該從器件,此時spi可以傳送數據。

外部nss引腳被釋放,可做普通IO作為其他用途使用。

5.spi主模式配置(MSTR=1)

(1).nss硬件模式(SSM=0)

在spi主模式下,nss硬件模式又分為輸入模式和輸出模式,由SSOE位決定。

a.輸入模式(SSOE=0)

在外部nss引腳為高電平,內部nss引腳也為高電平,此時才能進行數據傳輸。如果要使能從設備,還需要一個GPIO引腳。

在此情況下,外部nss要是被接低電平,則會進入主模式故障,MSTR會清零,由主模式進入從模式。

外部nss引腳需要配置為復用功能,并且外部nss引腳必須接入一個高電平,它才能維持主模式狀態。stm32官方手冊spi章節有說明,也就一句話,如果你不注意,可能就無法發現,如下圖:

462e6ccc-7a01-11ee-939d-92fbcf53809c.png

Snipaste_2020-09-01_11-14-17

b.輸出模式(SSOE=1)

當使能spi模塊時,外部nss引腳會被芯片自動輸出低電平,使能從設備,進行數據傳輸,不需要額外的GPIO引腳就能片選從設備(輸出模式時,貌似不需要遵循上圖框出來的內容,那段話可能就是針對輸入模式寫的,輸出模式是spi模塊控制內部nss引腳,因此也就不必遵循那段話)。

外部NSS引腳需要配置為復用功能,再把此引腳連接到從器件的CS引腳,因此外部NSS引腳就相當于片選引腳了。

(2).nss軟件模式(SSM=1)

SSM=1,并且SSI=1,將內部nss引腳設置為高電平,這樣隨時可以傳輸數據(這句話遵循上圖框出來的內容)。當然多數情況還需要一個GPIO引腳輸出低電平,來使能從設備,讓從設備可以接收數據。

綜上所述,nss引腳就是片選CS引腳是很不負責任的說法。


關鍵字:stm32  spi  nss 引用地址:一文詳解stm32 spi nss相關知識

上一篇:stm32變量能存進flash中嗎
下一篇:STM32CubeMx入門教程(1):點亮LED

推薦閱讀最新更新時間:2025-06-18 14:32

初探STM32 SPI2中斷接收多組數據的處理方式
一、描述 兩塊STM32板子之間進行SPI通訊,都使用的是SPI2。主機連續發送多組數據(數據的格式為半字,即16位),從機采用SPI2中斷方式接受主機發過來的多組數據。 針對從機中斷接受方法我嘗試了兩種方案: 方案一:從機每接收主機發來的一組數據就進入中斷一次,即主機發來幾組數據從機就進入幾次中斷。 方案二:僅當主機發來第一組數據時,從機才觸發一次中斷,然后關閉中斷,以循環接受的方式接受主機發過來的剩下幾組數據,當所有數據接受完后,再打開從機的接受中斷。 二、程序 因為兩種方案的主機程序是一樣的,如下: uint16_t ADC_ConvertedValueLocal ; uint8_
[單片機]
stm32SPI總結
引腳介紹 SPI 包含 4 條總線,SPI 總線包含 4 條總線,分別為 ——SS 、SCK、MOSI、MISO。它們的作用介紹如下 : 1)SS ( Slave Select):片選信號線,當有多個 SPI 設備與 MCU 相連時,每個設備 的這個片選信號線是與 MCU 單獨的引腳相連的,而其他的 SCK、MOSI、MISO線則為多個設備并聯到相同的 SPI 總線上,見圖 15- 1。當 SS 信號線為低電平時,片選有效,開始SPI 通信。 2)SCK (Serial Clock):時鐘信號線,由主通信設備產生,不同的設備支持的時鐘 頻率不一樣,如 STM32 的 SPI 時鐘頻率最大為 f PCLK /2。 3)MOSI (M
[單片機]
<font color='red'>stm32</font>的<font color='red'>SPI</font>總結
Linux中SPI子系統圖解和mini2440下的SPI驅動移植
1.SPI子系統框圖詳解: SPI總線上有兩類設備:一類是主控端,通常作為SOC系統的一個子模塊出現,比如很多嵌入式MPU中都常常包含SPI模塊。一類是受控端,例如一些SPI接口的Flash、傳感器等等。主控端是SPI總線的控制者,通過使用SPI協議主動發起SPI總線上的會話。而受控端則被動接受SPI主控端的指令,并作出響應的響應。 如圖1所示,linux下的spi子系統主要涉及3個部分:spi核心、spiprotocol驅動和spi主控制器驅動。如圖1.1,spi核心負責抽象出所有控制器都具備的功能代碼,同時向上為spiprotocol驅動提供接口比如spi_message、spi_transfer,spi_async等,具
[單片機]
Linux中<font color='red'>SPI</font>子系統圖解和mini2440下的<font color='red'>SPI</font>驅動移植
【51單片機】普通I/O口模擬SPI口C語言程序
89C51系列單片機都不帶SPI口,所在在這種情況下,我們可以模擬SPI口來現實我們要的功能,程序如下: //-----------------------函數聲明,變量定義------------ #include #include sbit SCK=P1^0; // 將p1.0口模擬時鐘輸出 sbit MOSI=P1^1; // 將p1.1口模擬主機輸出 sbit MISO=P1^2; // 將p1.1口模擬主機輸入 sbit SS1=P1^3; // 將p1.1口模擬片選 #define delayNOP(); {_nop_();_nop_();_nop_();_nop_();}; //-------------------
[單片機]
SPI串行總線協議
一、SPI接口簡介 SPI(Serial Peripheral interface--串行外設接口)總線系統是一種同步串行外設接口,它可以使MCU與各種外圍設備以串行方式進行通信以交換信息。該接口一般使用4條線:串行時鐘線(SCLK)、主機輸入/從機輸出線(MISO)、主機輸出/從機輸入線(MOSI)和從機選擇線SS。 SPI是一個環形總線結構,由SS(CS)、SCK、SDI、SDO構成,其時序比較簡單,主要是在SCK的控制下,兩個雙向移位寄存器進行數據交換。 主要概括為: 上升沿發送、下降沿接受,高位在前、低位在后; 上升沿到來時,SDO電平將被送到從設備的寄存器中;下降沿到來時,SDI電平將被接收到主設備的
[單片機]
<font color='red'>SPI</font>串行總線協議
MSP430 F5529 硬件SPI OLED 單片機 0.96英寸7針OLED SPI 6針OL
https://www.ti.com.cn/cn/lit/ds/symlink/msp430f5529.pdf?ts=1600611951477&ref_url=https%253A%252F%252Fwww.ti.com.cn%252Fproduct%252Fcn%252FMSP430F5529 https://www.ti.com/lit/ug/slau533d/slau533d.pdf UCA0 用了這個串口就不能用了 P2.7//UCA0CLK P3.2//UCA0STE P3.3/UCA0TXD/UCA0SIMO P3.4/UCA0RXD/UCA0SOMI #include msp430.h #incl
[單片機]
MSP430 F5529 硬件<font color='red'>SPI</font> OLED 單片機 0.96英寸7針OLED <font color='red'>SPI</font> 6針OL
【STM8】SPI通訊
這篇內容有點長,如果有人想透過我的博客學習STM8的SPI,那是我的榮幸 首先我要先說大綱,這樣大家心里比較有底,可以把精力都用在SPI理解上 【SPI初步介紹】:介紹SPI如何接線、名稱解釋、通訊注意事項 【SPI引腳 - 初始化(上)】:相對于STM8,SPI的引腳位置說明,還有引腳的設置,另外還有初始化的部分代碼 【SPI寄存器 - 初始化(下)】:使用寄存器做一些設定,例如波特率、SPI開啟或關閉、SPI中斷、傳輸方式。。。太多了,要看寄存器手冊,我有整理圖片出來,另外還包括完整的初始化代碼 【SPI通訊】:SPI發送數據、SPI輪詢方式接收數據、SPI中斷方式接收數據 【SPI初步介紹】 下圖是SPI的通訊方式
[單片機]
【STM8】<font color='red'>SPI</font>通訊
數字溫度傳感器系統接口:SPI、I2C 、SMBus如何選
  對于需要經常進行數據流傳輸的系統數據,SPI是首選,因為它擁有較快的時鐘速率,速率可從幾兆赫茲到幾十兆赫茲。然而,對于系統管理活動,如讀取溫度傳感器的讀數和查詢多個從器件的狀態,或者需要多個主器件共存于同一系統總線上(系統冗余常會要求這一點),或者面向低功耗應用,這時I2C 或 SMBus將是首選接口。   圖1:數字溫度傳感器簡化框圖   下面幾部分將介紹每種串行總線及其優缺點。   1. SPI   SPI 是一種四線制串行總線接口,為主/從結構,四條導線分別為串行時鐘(SCLK)、主出從入(MOSI)、主入從出(MISO)和從選(SS)信號。主器件為時鐘提供者,可發起讀從器件或寫從器件操作。這時主器件將與一個從器件進行
[嵌入式]
小廣播
設計資源 培訓 開發板 精華推薦

最新單片機文章
何立民專欄 單片機及嵌入式寶典

北京航空航天大學教授,20余年來致力于單片機與嵌入式系統推廣工作。

 
EEWorld訂閱號

 
EEWorld服務號

 
汽車開發圈

 
機器人開發圈

電子工程世界版權所有 京ICP證060456號 京ICP備10001474號-1 電信業務審批[2006]字第258號函 京公網安備 11010802033920號 Copyright ? 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
主站蜘蛛池模板: 和政县| 柏乡县| 朝阳区| 雷波县| 唐河县| 当阳市| 健康| 墨玉县| 南涧| 西藏| 炉霍县| 东台市| 阿拉善右旗| 信阳市| 屏南县| 福建省| 白山市| 孙吴县| 固安县| 渭源县| 自治县| 县级市| 望奎县| 神木县| 灵川县| 姜堰市| 琼中| 定安县| 长垣县| 交城县| 民乐县| 宣汉县| 思南县| 潜山县| 东乡族自治县| 清远市| 农安县| 宁陕县| 武鸣县| 天峻县| 穆棱市|