問題描述
客戶在調試QSPI模塊過程中,將TC397的QSPI模塊的CPOL位設置為1,但是示波器顯示時鐘引腳輸出信號的空閑狀態并不是高電平,在debug模式下,可觀察到CPOL位已設置為1,這是怎么回事呢?

圖1
設置TC397的QSPI模塊工作在CPOL=1, CPH =1協議模式
解決過程
SpiIf_initChannelConfig()函數在初始化QSPI channel時,提供了很多配置參數項,其中就有clockPolarity,但是單單設置clockPolarity= SpiIf_ClockPolarity_idleHigh,雖然會將CPOL位設置為1,但是捕獲的波形顯示空閑狀態電平并未變成高電平。
這是由于SpiIf_initChannelConfig()函數的默認參數項設置IDLE時序階段時長為0,使得幀傳輸間隙缺少IDLE時序階段,所以需要設置csInactiveDelay > 0(如下所示)來插入IDLE時序階段,如下圖所示。
voidSpiIf_initChannelConfig(SpiIf_ChConfig*config,SpiIf*driver)
{
config->driver=driver;
config->baudrate=0;
config->mode.enabled=1;
config->mode.autoCS=1;
config->mode.loopback=0;
config->mode.clockPolarity=SpiIf_ClockPolarity_idleHigh;
config->mode.shiftClock=SpiIf_ShiftClock_shiftTransmitDataOnLeadingEdge;
config->mode.dataHeading=SpiIf_DataHeading_msbFirst;
config->mode.dataWidth=8;
config->mode.csActiveLevel=Ifx_ActiveState_low;
config->mode.csLeadDelay=SpiIf_SlsoTiming_0;
config->mode.csTrailDelay=SpiIf_SlsoTiming_0;
config->mode.csInactiveDelay=SpiIf_SlsoTiming_2;
config->mode.parityCheck=0;
config->mode.parityMode=Ifx_ParityMode_even;
config->errorChecks.baudrate=0;
config->errorChecks.phase=0;
config->errorChecks.receive=0;
config->errorChecks.transmit=0;
}

圖2
審核編輯:劉清
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。
舉報投訴
-
示波器
+關注
關注
113文章
7075瀏覽量
196081 -
QSPI
+關注
關注
0文章
55瀏覽量
13360 -
CPOL
+關注
關注
0文章
9瀏覽量
10363
原文標題:如何設置TC397的QSPI模塊工作在CPOL=1, CPH =1協議模式
文章出處:【微信號:MCU頻道,微信公眾號:MCU頻道】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
熱點推薦
國產智駕域控上為什么很多是英飛凌TC397?
TC397/TC297的身影。 ? 為什么這個系列的MCU在智駕域控領域這么成功?有相對應的國產芯片可以替代嗎? ? 達到A
如何通過RGMII接口將TC397連接到Marvell 88Q5152?
我們的計劃是通過 RGMII 接口將 TC397 連接到 Marvell 88Q5152,以滿足我們的應用要求。
過去,在Linux系統上,我們設置了一個固定鏈接來直接指定速度和雙工模式
發表于 01-26 06:05
求助,為什么miniWiggler的JTAG信號映射與設備端(TC397)不一致?
/TMS mapping on device side. ”
具體的說,minWiggler的TDO與DAP1是同一個信號;而tc397的TMS與DAP1是同一個信號。
我們希望在設備
發表于 02-01 06:47
將TC397的QSPI模塊的CPOL設置為1,為什么示波器顯示時鐘引腳輸出信號的空閑狀態并不是高電平?
將TC397的QSPI模塊的CPOL設置為1,但是示波器顯示時鐘引腳輸出信號的空閑狀態并不是高電平,請問是為什么?
發表于 02-01 08:34
TC397的TOM和STM會沖突怎么解決?
TC397 我們打開STM中斷和TOM模塊功能,檔兩個模塊單獨工作沒有問題,檔兩個同時工作,運行2秒多,系統中斷就不跑了,各位大俠有什么解決
發表于 02-01 06:17
SCR模式下如何通過TC397喚醒TLF35584進入NORMAL模式?
我通過TC397SPI把TLF35584進入了SLEEP模式,然后TC397也進入了standby模式,SCR模式下我如何通過
發表于 02-02 08:11
TC397 QSPI波特率異常問題怎么解決?
1. TC397 datasheet 描述QSPImax波特率50M;2.在英飛凌官方qspi demo SPI_DMA_1 for KIT
發表于 02-02 14:25
TC397 CAN不能進入normal模式怎么處理?
各位大佬好,請問TC397 CCCRn.INIT無法清零的問題大家遇到過嗎?使用TC387/TC397APPKIT硬件,CAN驅動是通過EB生成的。調試時CCCRn.INIT不能清零,無法進入normal
發表于 02-04 07:08
TC397關于QPSI通信中的CS的問題求解
你好,我正在使用 TC397 開發板。
我參照 SPI_CPU_1_KIT_TC397_TFT 示例進行 QSPI 通信。
CS 引腳被設置為 GPIO 輸出,以控制多個從屬設備。
但
發表于 05-29 07:12
TC397進入SCR模式的條件是什么?
請問tc397 進入SCR模式, 可以在power down的工況,然后只給EVRSB提供3.3V供電,進入SCR模式嘛? 如果不可以的話,需要怎么實現呢?
發表于 05-31 06:36
如何設置TC397的QSPI模塊工作在CPH =1協議模式?
評論