RM新时代网站-首页

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

FIFO中斷通信邏輯介紹

科技綠洲 ? 來源:中科昊芯 ? 作者:中科昊芯 ? 2022-05-16 09:53 ? 次閱讀

中科昊芯推出專題講解SCI串口通信以來,第一期主要講解SCI串口FIFO通信原理,第二期主要講解SCI串口自動波特率,本期主要講解FIFO中斷通信邏輯。

HX2000系列SCI模塊原理與中斷邏輯如下,中斷邏輯為:當(dāng)SCITXBUF數(shù)據(jù)被傳輸?shù)絋XSHF寄存器時,將通過SCICTL[TXRDY]產(chǎn)生一個發(fā)送中斷,使能SCICTL[TXINTENA]打開發(fā)送中斷信號,將通過PIE響應(yīng)CPU執(zhí)行,使得CPU可以連續(xù)寫數(shù)據(jù)到SCITXBUF,使得SCI模塊可以向PC端連續(xù)發(fā)送數(shù)據(jù)。當(dāng)SCI接收一個完整幀,并將RXSHF寄存器中的數(shù)據(jù)傳輸?shù)絊CIRXBUF寄存器中,將通過SCIRXST[RXRDY]產(chǎn)生一個接收中斷,使能SCICTL[RXBKINTENA]打開接收中斷信號,將通過PIE響應(yīng)CPU執(zhí)行,使得CPU讀取PC端發(fā)送的數(shù)據(jù)幀。

poYBAGKBrkuAAcZ0AAEszP6LZCE026.png

由此設(shè)計SCI串口FIFO中斷通信實例:采用SCI與串口CH340,連續(xù)發(fā)送數(shù)據(jù),PC端接收發(fā)送的數(shù)據(jù);通過串口調(diào)試助手,向CPU發(fā)送任意一組數(shù)據(jù),CPU接收發(fā)送的數(shù)據(jù)。

基于以上分析,在CDK上開發(fā)SCI串口FIFO中斷通信輸出程序,代碼包括:SCI GPIO外設(shè)引腳配置,F(xiàn)IFO功能配置,發(fā)送與接收中斷程序,主程序調(diào)用執(zhí)行。主要代碼如下:

poYBAGKBrluAMB23AACXuyzWME0040.png

CDK上開發(fā)SCI串口FIFO中斷通信程序,其編譯結(jié)果為:

poYBAGKBrmeACK4IAAKFKUgLOr4694.png

編譯通過后,就可以開始調(diào)試了,DSP端連續(xù)發(fā)送數(shù)據(jù)的調(diào)試結(jié)果如下:

pYYBAGKBrm6AV1d-AAKxnh5HnFc502.png

PC端發(fā)送數(shù)據(jù)的調(diào)試結(jié)果如下:

pYYBAGKBrnaAaSb9AAKi-QqRnno213.png

調(diào)試后,可通過串口調(diào)試助手查看發(fā)送與接收到的數(shù)據(jù)如下圖:

poYBAGKBroCAHIs0AAO_RNBC514727.png

審核編輯:彭靜
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • dsp
    dsp
    +關(guān)注

    關(guān)注

    553

    文章

    7987

    瀏覽量

    348739
  • 寄存器
    +關(guān)注

    關(guān)注

    31

    文章

    5336

    瀏覽量

    120230
  • 數(shù)據(jù)
    +關(guān)注

    關(guān)注

    8

    文章

    7002

    瀏覽量

    88940
  • 串口通信
    +關(guān)注

    關(guān)注

    34

    文章

    1624

    瀏覽量

    55507
收藏 人收藏

    評論

    相關(guān)推薦

    AFE4960如何正確的從FIFO中讀取樣本呢?

    我有一些問題想請教。 在雙芯片串行模式下,MCU 收到 AFE4960 發(fā)送的 FIFO_RDY 中斷信號后,開始通過 SPI 通信從 AFE4960 的 FIFO 中讀取樣本。 具
    發(fā)表于 11-14 06:41

    FIFO Generator的Xilinx官方手冊

    FIFO作為FPGA崗位求職過程中最常被問到的基礎(chǔ)知識點,也是項目中最常被使用到的IP,其意義是非常重要的。本文基于對FIFO Generator的Xilinx官方手冊的閱讀與總結(jié),匯總主要知識點
    的頭像 發(fā)表于 11-12 10:46 ?333次閱讀
    <b class='flag-5'>FIFO</b> Generator的Xilinx官方手冊

    陀螺儀LSM6DSOW開發(fā)(4)----中斷獲取FIFO數(shù)據(jù)

    估計。本文將介紹如何初始化和配置MotionFX庫,使用中斷機制讀取FIFO中的傳感器數(shù)據(jù)。FIFO可以作為數(shù)據(jù)緩沖區(qū),存儲傳感器的臨時數(shù)據(jù),防止數(shù)據(jù)丟失,特別是在處理器忙于其他任務(wù)時
    的頭像 發(fā)表于 08-08 16:03 ?655次閱讀
    陀螺儀LSM6DSOW開發(fā)(4)----<b class='flag-5'>中斷</b>獲取<b class='flag-5'>FIFO</b>數(shù)據(jù)

    驅(qū)動LSM6DS3TR-C實現(xiàn)高效運動檢測與數(shù)據(jù)采集(8)----中斷獲取FIFO數(shù)據(jù)并應(yīng)用MotionFX庫解析空間坐標(biāo)

    估計。本文將介紹如何初始化和配置MotionFX庫,使用中斷機制讀取FIFO中的傳感器數(shù)據(jù)。FIFO可以作為數(shù)據(jù)緩沖區(qū),存儲傳感器的臨時數(shù)據(jù),防止數(shù)據(jù)丟失,特別是在處理器忙于其他任務(wù)時
    的頭像 發(fā)表于 07-21 10:02 ?679次閱讀
    驅(qū)動LSM6DS3TR-C實現(xiàn)高效運動檢測與數(shù)據(jù)采集(8)----<b class='flag-5'>中斷</b>獲取<b class='flag-5'>FIFO</b>數(shù)據(jù)并應(yīng)用MotionFX庫解析空間坐標(biāo)

    陀螺儀LSM6DSV16X與AI集成(9)----中斷獲取FIFO數(shù)據(jù)并應(yīng)用MotionFX庫解析空間坐標(biāo)

    估計。本文將介紹如何初始化和配置MotionFX庫,使用中斷機制讀取FIFO中的傳感器數(shù)據(jù)。FIFO可以作為數(shù)據(jù)緩沖區(qū),存儲傳感器的臨時數(shù)據(jù),防止數(shù)據(jù)丟失,特別是在處理器忙于其他任務(wù)時
    的頭像 發(fā)表于 07-18 10:46 ?1037次閱讀
    陀螺儀LSM6DSV16X與AI集成(9)----<b class='flag-5'>中斷</b>獲取<b class='flag-5'>FIFO</b>數(shù)據(jù)并應(yīng)用MotionFX庫解析空間坐標(biāo)

    具有FIFO的雙異步通信元件TL16C552A數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《具有FIFO的雙異步通信元件TL16C552A數(shù)據(jù)表.pdf》資料免費下載
    發(fā)表于 06-26 11:28 ?0次下載
    具有<b class='flag-5'>FIFO</b>的雙異步<b class='flag-5'>通信</b>元件TL16C552A數(shù)據(jù)表

    上位機與pLc通訊中斷如何判斷

    在工業(yè)自動化領(lǐng)域,上位機與PLC(可編程邏輯控制器)之間的通信至關(guān)重要。通信中斷可能導(dǎo)致生產(chǎn)線停滯,影響生產(chǎn)效率和產(chǎn)品質(zhì)量。本文將詳細(xì)介紹如何判斷上位機與PLC之間的
    的頭像 發(fā)表于 06-06 09:55 ?2282次閱讀

    同步FIFO和異步FIFO區(qū)別介紹

    1. FIFO簡介 FIFO是一種先進(jìn)先出數(shù)據(jù)緩存器,它與普通存儲器的區(qū)別是沒有外部讀寫地址線,使用起來非常簡單,缺點是只能順序讀寫,而不能隨機讀寫。 2. 使用場景 數(shù)據(jù)緩沖:也就是數(shù)據(jù)寫入過快
    的頭像 發(fā)表于 06-04 14:27 ?1564次閱讀
    同步<b class='flag-5'>FIFO</b>和異步<b class='flag-5'>FIFO</b>區(qū)別<b class='flag-5'>介紹</b>

    DMA產(chǎn)生FIFO error interrupt錯誤的原因?

    DMA用于接收采集AD轉(zhuǎn)化數(shù)據(jù),而且AD每間隔50us采集一次,DMA配置成單次模式,并收數(shù)長度50次,未啟用FIFO模式,但是當(dāng)外部中斷非常頻繁時,DMA不知怎么回事,產(chǎn)生了FIFO 錯誤,按道理
    發(fā)表于 05-15 06:34

    STM32F407的CAN通訊接收長數(shù)據(jù),用keil調(diào)試時每次進(jìn)中斷FIFO就已經(jīng)數(shù)據(jù)溢出了怎么解決?

    CAN_IT_RX_FIFO0_MSG_PENDING中斷在接收到第一幀數(shù)據(jù)時就進(jìn)中斷,但是用keil調(diào)試的時候每次進(jìn)中斷FIFO就已經(jīng)數(shù)
    發(fā)表于 03-12 07:55

    使用SPI通信發(fā)送128字節(jié)的FIFO,清空緩沖區(qū)需要多少時間?

    我正在使用 SPI 通信發(fā)送 128 字節(jié)的 FIFO。 設(shè)置源頻率為 80MHZ,SPI 速率為 5MHZ。 我想檢查清空緩沖區(qū)需要多少時間。 在配置下方設(shè)置。 .spiMode
    發(fā)表于 03-05 07:08

    TC375上的I2C編寫了EVAL_BDPS_DRIVER,RX FIFO下溢中斷是怎么來的?

    請求。 但是,在最后一個脈沖串請求之后,我又收到了一個由 RX FIFO 下溢引起的錯誤中斷。 為什么會這樣? 我?guī)缀蹩梢钥隙?,在處理完最后一個脈沖串請求后,我沒有讀取 RXD 寄存器。 我還已經(jīng)
    發(fā)表于 03-05 07:01

    如何清除SPI通信中的TX_FIFO和RX_FIFO

    你好, 如何清除 SPI通信中的 TX_FIFO 和 RX_FIFO?是否有任何 API 可以清除接收數(shù)據(jù)緩沖區(qū)。
    發(fā)表于 02-27 07:16

    將TC275的CAN_RX_FIFO例程移植到TC234上運行報錯的原因?

    FIFO溢出中斷。但是移植到TC234后,RX FIFO溢出會掉入如下error: 1,請問從什么手冊上可以查詢到這種error是由什么引起的?以及對該error的介紹? 2,請問
    發(fā)表于 02-02 07:35

    ADXL345設(shè)置FIFO中斷,多字節(jié)讀操作,讀出的第一數(shù)據(jù)FIFO[0]和后邊的數(shù)據(jù)有明顯差別是怎么回事?

    ADXL345設(shè)置FIFO中斷FIFO中斷出現(xiàn)后,多字節(jié)讀操作,讀出的第一數(shù)據(jù)FIFO[0]和后邊的數(shù)據(jù)有明顯差別。
    發(fā)表于 12-27 07:39
    RM新时代网站-首页