那曲檬骨新材料有限公司

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

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

3天內不再提示

MSPM0L1306開發板教程-SPI

創易棧 ? 來源:創易棧 ? 2023-07-08 10:56 ? 次閱讀

MSPM0L系列的SPI控制器最大頻率是16MHz,支持3線和4線的模式,帶有4個片選(CS),其中CS3支持命令模式(Command Mode)。

34378a2c-1cae-11ee-962d-dac502259ad0.png

SPI控制器有獨立的4個字節接收和4個字節發送FIFO,主機數據位從7-16bit選擇,從機數據位可以從4-16位選擇。

3470e920-1cae-11ee-962d-dac502259ad0.png

下面通過配置一個操作外部SPI FLASH的程序來講下SPI控制器的配置,FLASH的型號是華邦的W25Q128。

在SYSCONFIG中,添加一個SPI外設,頻率最高16MHz,根據自己的需要選擇,幀格式選擇4線模式,8位數據位,高位在前,也就是MSB,時鐘極性選擇Low,也就是沒有時鐘的時候管腳是低電平,其他默認就可以。

34a19f84-1cae-11ee-962d-dac502259ad0.png

先來看下W25Q64的時序,我們用一個讀芯片ID的時序來說明。

34ca519a-1cae-11ee-962d-dac502259ad0.png

SPI發送90h指令,地址為000000h,FLASH芯片就會返回工廠ID ,EFh和設備ID,這顆芯片ID是16h。

也就是說,SPI發送0x90,0x00,0x00,0x00這三個字節數據,芯片就會返回0xEF和0x16
需要注意的是,由于整個時序中,片選是要一直拉低的,而SPI 外設的片選在每次發送和接收完一幀后會拉高,所以FLASH的芯片的片選需要用MCU的IO口獨立控制,沒有辦法使用SPI外設的CS管腳。

所以在SYSCONFIG里還配置了一個CS的GPIO。

34fbc0b8-1cae-11ee-962d-dac502259ad0.png

由于SPI的通訊時鐘只能在發送操作的時候發出,讀取操作是沒有時鐘信號發出的,所以在做讀取操作的時候,其實需要發送操作,一般我們會發送同樣與接收數據相同數量的0x00。

MSPM0L系列的SPI的控制寄存器CLT1中有一個REPEATTX,可以用來做重復發送操作,最高可以重復256次,例如我需要FLASH芯發送200幀數據,則REPEATTX為199,當我在程序中發送0x00的時候,SPI 控制器會發送200個0x00,形成200幀通訊時鐘,程序比較簡單。

351fa15e-1cae-11ee-962d-dac502259ad0.png

使用邏輯分析儀可以看到整個過程與FLASH芯片要求的時序一致。3551e93e-1cae-11ee-962d-dac502259ad0.png







審核編輯:劉清

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

    關注

    112

    文章

    16444

    瀏覽量

    179420
  • SPI接口
    +關注

    關注

    0

    文章

    259

    瀏覽量

    34547
  • FIFO存儲
    +關注

    關注

    0

    文章

    103

    瀏覽量

    6033
  • SPI Flash
    +關注

    關注

    1

    文章

    13

    瀏覽量

    10421

原文標題:MSPM0L1306開發板教程11 - SPI

文章出處:【微信號:創易棧,微信公眾號:創易棧】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    MSPM0L1306開發板教程之OPA

    MSPM0L系列的OPA是一個軌到軌輸入輸出的可編程運算放大器,最大為32x,可以軟件配置為零漂移斬波放大器以提高精度和漂移性能,有專門優化的輸入管腳的型號可以達到10pA的輸入偏置電流,標準模式為6MHz帶寬,低功耗模式下帶寬為1MHz,電流100uA。
    發表于 07-15 09:58 ?2074次閱讀
    <b class='flag-5'>MSPM0L1306</b><b class='flag-5'>開發板</b>教程之OPA

    電賽:mspm0l1306開發板可以燒錄程序,但是程序運行不了,怎么解決這個問題?

    mspm0l1306開發板可以燒錄程序,但是程序運行不了,怎么解決這個問題?
    發表于 08-01 00:53

    MSPM0L1306開發板教程之開發環境搭建

    TI的MSPM0L系列的開發,可以使用KEIL,IAR,CCS等開發環境。仿真器可以使用ARM開發常用的JLINK,以及TI的XDS仿真器。
    的頭像 發表于 04-23 10:11 ?1.1w次閱讀
    <b class='flag-5'>MSPM0L1306</b><b class='flag-5'>開發板</b>教程之<b class='flag-5'>開發</b>環境搭建

    MSPM0L1306開發板教程之GPIO輸入輸出

    GPIO算是所有MCU入門的第一步,今天的教程就來教大家設置MSPM0L系列的GPIO的輸入輸出功能。
    的頭像 發表于 05-04 17:22 ?6486次閱讀
    <b class='flag-5'>MSPM0L1306</b><b class='flag-5'>開發板</b>教程之GPIO輸入輸出

    MSPM0L1306開發板教程之運行模式

    今天的教程講下MSPM0L系列的運行模式。
    的頭像 發表于 05-29 11:21 ?3086次閱讀
    <b class='flag-5'>MSPM0L1306</b><b class='flag-5'>開發板</b>教程之運行模式

    MSPM0L1306開發板教程之DMA

    DMA使用是一個不需要CPU干預,自己搬運數據的模塊,在前面講中斷事件的章節里面,就有提到過事件的DMA通道,DMA事件路由(DMA Event Route)。
    的頭像 發表于 06-09 18:21 ?2783次閱讀
    <b class='flag-5'>MSPM0L1306</b><b class='flag-5'>開發板</b>教程之DMA

    MSPM0L1306開發板教程之ADC

    MSPM0L系列的ADC是一個12bit的SAR ADC,采樣頻率最高1.45MHz,最高可做到11.2位的實際有效位(ENOB)。
    的頭像 發表于 06-10 10:16 ?3803次閱讀
    <b class='flag-5'>MSPM0L1306</b><b class='flag-5'>開發板</b>教程之ADC

    MSPM0L1306開發板教程之通用定時器

    MSPM0L系列的通用定時器(TIMG)是一個16位的自動重裝定時器,支持向下和上下計數兩種模式,同時帶有兩個比較捕獲單元,可以做到輸出比較,輸入捕獲,PWM輸出,單脈沖輸出等功能。
    的頭像 發表于 06-30 15:50 ?4357次閱讀
    <b class='flag-5'>MSPM0L1306</b><b class='flag-5'>開發板</b>教程之通用定時器

    MSPM0L1306開發板教程之I2C

    MSPM0L系列的I2C支持主從模式,有7位地址位可以設置,速率最大1Mbps,無論是主機或者從機,發送和接收都有獨立的8個字節FIFO。
    的頭像 發表于 06-30 15:50 ?4276次閱讀
    <b class='flag-5'>MSPM0L1306</b><b class='flag-5'>開發板</b>教程之I2C

    MSPM0L1306開發板教程- NVM(FLASH)

    MSPMPL系列中的NVM(Non Volatile Memory)非易失性存儲,也就是我們常說的FLASH。
    的頭像 發表于 07-08 10:52 ?2998次閱讀
    <b class='flag-5'>MSPM0L1306</b><b class='flag-5'>開發板</b>教程- NVM(FLASH)

    MSPM0L1306開發板教程之COMP

    MSPM0L帶有模擬比較器功能,可以用于模擬信號的比較,用于中斷MCU或者觸發MCU其他外設。
    的頭像 發表于 07-15 09:56 ?2159次閱讀
    <b class='flag-5'>MSPM0L1306</b><b class='flag-5'>開發板</b>教程之COMP

    MSPM0L1306開發板教程之WWDT

    窗口看門狗WWDT,MSPM0L系列的看門狗的時鐘使用的是32KHz的LFCLK,計數器有25位,寄存器可以有8個可選的計數周期,加上時鐘的最大8分頻,也就是有64檔計數周期可選,從1.95ms到8190s,有兩個閾值,關閉窗口(closed window)和打開窗口(open window)。
    的頭像 發表于 07-15 10:01 ?1470次閱讀
    <b class='flag-5'>MSPM0L1306</b><b class='flag-5'>開發板</b>教程之WWDT

    TI MSPM0L1306開發板簡介

    看參考設計的時候看到了這個芯片,和以往爛大街的芯片不一樣,它發布于今年3月。這個芯片更是TI這個老師傅狠狠的將活注入到MCU里面產生的奇妙產物。
    的頭像 發表于 12-15 10:00 ?6827次閱讀
    TI <b class='flag-5'>MSPM0L1306</b><b class='flag-5'>開發板</b>簡介

    MSPM0 L系列MCU硬件開發指南

    電子發燒友網站提供《MSPM0 L系列MCU硬件開發指南.pdf》資料免費下載
    發表于 09-07 11:12 ?2次下載
    <b class='flag-5'>MSPM0</b> <b class='flag-5'>L</b>系列MCU硬件<b class='flag-5'>開發</b>指南

    MSPM0L1306 LaunchPad開發套件(LP?MSPM0L1306)

    電子發燒友網站提供《MSPM0L1306 LaunchPad開發套件(LP?MSPM0L1306).pdf》資料免費下載
    發表于 10-29 09:44 ?1次下載
    <b class='flag-5'>MSPM0L1306</b> LaunchPad<b class='flag-5'>開發</b>套件(LP?<b class='flag-5'>MSPM0L1306</b>)
    百家乐官网高科技| 百家乐九| 同花顺百家乐官网娱乐城| 百家乐博彩平| 合肥百家乐赌博游戏机| 百家乐视频官方下载| 百家乐游戏软件出售| 平注打百家乐的方法| 百家乐大赢家小说| 属蛇和属猪做生意吗| 网络百家乐官网开户网| 网上玩百家乐官网的玩法技巧和规则| 电子百家乐官网打法| 阴宅24山坟前放水口| 百家乐注册18元体验金| 尊龙百家乐娱乐城| 百家乐旺门打| 香港六合彩信息| 在线娱乐城注册送彩金| 10BET娱乐城| 赌场百家乐官网技巧| 百家乐官网模拟游戏下载| 百家乐官网推二八杠| 嘉禾百家乐官网的玩法技巧和规则| 租房做生意如何注意风水问题| 百家乐开户优惠多的平台是哪家| 百家乐波音平台开户导航| 百家乐赌博凯时娱乐| 试玩百家乐游戏机| 大发888注册网址| 百家乐官网策略详解| 百家乐官网正规站| 百家乐破解策略| 大发888合营商| 大发888 zhidu| 澳门百家乐官网公试打法| 任我赢百家乐官网自动投注分析系统 | 百家乐官网打法心得| 百家乐官网平注秘籍| 玩百家乐澳门368娱乐城| 百家乐英皇娱乐|