衡阳派盒市场营销有限公司

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

學技術 | XMC?使用Dave4快速開發(五)SPI實驗

大大通 ? 2022-11-24 17:01 ? 次閱讀

上篇文章中講解了在XMC單片機中,如何使用USIC單元配置IIC接口,這篇文章講解如何配置使用另外一個很常用的通信協議SPI。

SPI是串行外設接口(Serial Peripheral Interface)的縮寫,是一種高速的,全雙工,同步的通信總線,SPI簡單易用,與IIC類似,也是采用主從方式工作,一般是由四根線組成,事實上3根也可以(半雙工模式)?;赟PI的設備共有的,四根線分別是MISO(主設備數據輸入)、MOSI(主設備數據輸出)、SCLK(時鐘)、CS(片選)。

(1)MISO– Master Input Slave Output,主設備數據輸入,從設備數據輸出;

(2)MOSI– Master Output Slave Input,主設備數據輸出,從設備數據輸入;

(3)SCLK – Serial Clock,時鐘信號,由主設備產生;

(4)CS – Chip Select,從設備使能信號,由主設備控制。

英飛凌XMC單片機中,SPI可以選擇四種工作方式,分別為標準SPI,三線半雙工SPI、Dual SPI、Quad SPI,標準spi就如上所示四根線全雙工傳輸;三線SPI中,只使用一根數據線進行半雙工通信,速度相比標準spi有所減慢;Dual SPI為四根線,兩根數據線改為同方向,速度是三線的兩倍,而Quad SPI六根線,也是單向通信,傳輸速度是Dual的兩倍。

這次我們使用Dave4的app配置一個標準SPI

1. 先添加SPI_MASTER APP,雙擊打開后展現出以下畫面,Operation mode一欄可以選擇四種工作模式,我們選擇為標準的Full Duplex;

在Desired bus speed可以選擇SPI的時鐘頻率,此頻率和從機的時鐘頻率保持一致即可,其中SPI的最大時鐘頻率由芯片的系統時鐘決定。值得注意的是,時鐘頻率不等同于SPI的傳輸速率,傳輸速率受限于芯片處理SPI數據的能力,最大時鐘頻率只是有可能制約 其傳輸速率;


在Parity selection中可以選擇奇校驗和偶校驗。

9f159ca2-6b89-11ed-b116-dac502259ad0.png

2.在Advanced Setting中,首先我們可以選擇是否啟用中斷處理,這里我們選擇啟用;

Number of slave可以選擇從機數量,這里選擇1,當增加數量時,可以配置為CS的IO口也會隨之增加;

Invert the signal polarity of SELOx signals可以選擇CS引腳的輸出極性;

在Frame and word length中我們可以啟用MSLS信號來進行幀結束控制;

在Control中可以選擇輸出和接收數據位時MSB在先還是LSB在先,還可以選擇時鐘的相位和極性;

在FIFO Setting中可以選擇是否使用FIFO,數據流只需使用 FIFO 數據緩存即可定義完整的數據幀,不必訪問其它控制寄存器。

9f2c0a32-6b89-11ed-b116-dac502259ad0.png

3.在后面的interrupt settings中可以配置中斷相關,Pin Setting中配置引腳狀態,就不多做介紹了。

4.在配置完app后,點擊Manual Pin Allocator即可配置引腳

9f3c824a-6b89-11ed-b116-dac502259ad0.png

5.此外點擊Manual Resource Assignment配置中斷,然后生成代碼即可。

9f589ade-6b89-11ed-b116-dac502259ad0.png

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 通信協議
    +關注

    關注

    28

    文章

    915

    瀏覽量

    40440
  • SPI
    SPI
    +關注

    關注

    17

    文章

    1722

    瀏覽量

    92130
收藏 人收藏

    評論

    相關推薦

    掌握4G模組SPI|技術指南

    本次我要分享的是4G模組SPI技術指南,以合宙Air724UG為例,完本章幫你實現技術提升。
    的頭像 發表于 12-14 09:38 ?777次閱讀
    掌握<b class='flag-5'>4</b>G模組<b class='flag-5'>SPI</b>|<b class='flag-5'>技術</b>指南

    XMC4200 XMC_GPIO_SetOutputHigh無法正常工作的原因?

    with an user error handler. */ XMC_DEBUG(\"DAVE APPs initialization failedn\"); while(1U
    發表于 06-03 09:06

    如何使用Dave 3.1.10在XMC4400微控制器上實現I2c通信協議 軟件?

    我一直在嘗試使用 Dave 3.1.10 與 XMC4400 執行 I2c 通信協議,以實現傳感器接口。 軟件但我做不到。 Dave 3.1.10 的語法有所不同。 我無法使用 Dave
    發表于 06-03 07:21

    DAVE APP生成的XMC4700F-100K1536單片機FOC工程中,進行6路PWM管腳配置為什么和我現在的實際工程無法一致?

    請問用DAVE APP生成的XMC4700F-100K1536 單片機FOC工程中,進行6路PWM管腳配置為什么和我現在的實際工程無法一致?我現在已經用寄存器寫的FOC工程中,配置的引腳是 上橋
    發表于 05-27 07:52

    使用CAN總線XMC4700,如何才能使用超過32個ID?

    我正在嘗試使用 CAN 總線 XMC 4700(250kbps),但它在 DAVE IDE 上只有 32 個 ID 可用,請告訴我如何才能使用超過 32 個 ID。 此外,我還嘗試過使用 Multican,但效果不佳。
    發表于 05-23 06:58

    XMC1400配置為半雙工SPI主站時,SPI_MASTER_Receive功能能否正常工作?

    我正在嘗試使用半雙工 SPI 通信,由 XMC1400 作為主站。 我使用 DAVE 應用程序將 SPI 引腳配置為推挽式,下面是相應的代碼: X
    發表于 05-23 06:44

    下載Dave4為什么失敗?

    大家好,我在下載Dave4時,下載后發現最后提示失敗了,大家有遇到嗎?為什么?因為下載時間比較長,中午掛著,下午一看失敗了
    發表于 05-23 06:00

    XMC1400試了很多次都無法與mfrc522連接,為什么?

    _CH_EnableSlaveSelect(spi_master_ch, XMC_SPI_CH_SLAVE_SELECT_4); XMC_SPI_CH_Transmit(spi_mas
    發表于 05-22 06:38

    DAVE APP進行XMC1302 ADC通道引腳分配的時候為什么只能分配一個通道?

    你好,我用DAVE APP進行 XMC1302 ADC通道引腳分配的時候為什么只能分配一個通道?請問如何分配多個ADC通道?有例程嗎?
    發表于 05-21 06:48

    關于使用DAVE 4開發XMC4200時UART打印的問題求解

    主題關于使用 DAVE 4 開發 XMC4200 時 UART 打印問題的技術詢問 目前,我在使用 DA
    發表于 05-21 06:35

    DAVE生成的1302 ADC移植到MDK不能做AD轉換是怎么回事?

    你好,我用DAVE XMC1302生成的ADC工程,是設置了管腳P2.3 就是G1 CH5 做 AD轉換, 拷貝了用DAVE CE生成的代碼,拷貝DAVE目錄下的Generated目錄
    發表于 05-20 08:24

    DAVE配置XMC1302的兩個引腳為AD引腳,為什么在PIN MAPPING PERSPECTIVE中引腳配置不能同時配置為AD引腳?

    請問用DAVE配置XMC1302的兩個引腳為AD引腳,為什么在PIN MAPPING PERSPECTIVE中引腳配置不能同時配置為AD引腳??
    發表于 05-20 06:22

    XMC440 platform2go在環回模式下進行SPI通信,在CRO中看不到任何時鐘和芯片選擇信號的原因?

    我正在使用 XMC440 platform2go 評估COOLDIM_PRG_BOARD并希望在環回模式下進行 SPI通信。 為此,我指的是DAVE?中存在的 SPI_SLAVE 示例
    發表于 03-05 07:11

    DAP miniwiggler能在DAVE4中使用嗎?

    DAP miniwiggler能在DAVE4中使用嗎?DAP miniwiggler 能在DAVE4中進行仿真嗎?
    發表于 02-20 06:53

    XMC4200用DAVE進行配置,為什么用ADC采樣出來的結果一直是0?

    DAVE進行配置,芯片是XMC4200,用的采樣APP是ADC_MEASUREMENT,但是用ADC_MEASUREMENT_GetResult( ADC_MEASUREMENT_Channel_A)函數得出的結果一直是0.
    發表于 02-20 06:08
    大发888主页优惠| 百家乐tt娱乐| 澳门顶级赌场娱乐场| 188金宝博开户| 广东百家乐桌布| 百家乐tt娱乐| 百家乐最好的投注方法| 尊龙百家乐娱乐网| 百家乐专业术语| 威尼斯人娱乐欢迎您| 大发888全球顶级游戏平台| 大发888娱乐亚洲| bet365娱乐城| 翼城县| 诚信百家乐官网在线平台| 百家乐官网技巧头头娱乐| 百家乐官网玩法教程| KK百家乐官网娱乐城 | 德州扑克计算器| 六合彩官方| 奉化市| 百家乐官网科学| 百家乐现实赌场| 五寨县| 百家乐官网八卦投注法| 澳门百家乐官网路单| 时时彩论坛| 淘金盈开户| 百家乐官网网站新全讯网| 免佣百家乐官网的玩法| 乐天百家乐官网的玩法技巧和规则 | 威尼斯人娱乐城地址| 鼎丰娱乐城开户| 百家乐官网娱乐求指点呀| 伯爵百家乐官网的玩法技巧和规则| 永利百家乐现金网| 百家乐光纤冼牌机| 皇冠在线娱乐| 百家乐官网视频游戏帐号| 云顶国际| 百家乐官网任你博娱乐|