靈動微MM32F103單片機常見問題解答

靈動微MM32F103系列產品使用高性能內核M3的 32 位微控制器,典型工作頻率可達144MHZ,內置高速存儲器,豐富的增強型 I/O 端口和外設連接到外部總線。提供5種封裝形式,包括 LQFP100、LQFP64、LQFP48、LQFP32 和 QFN32 共 5 種封裝形式。根據不同的封裝形式,器件中的外設配置不盡相同。該產品適合使用在電機驅動和應用控制,醫療和手持設備,工業應用以及警報系統等。

SPI
1 、SPI 支持哪幾種模式
按傳輸方向分

  1. 全雙工模式,同時收發數據,同時使能 TX 和 RX;
  2. 半雙工,在不同時間段進行讀寫,ENABLE TX 時 DISABLE RX,ENABLE RX 時 DISABLE TX;
    按採樣時序分
  3. 模式 0,空閒時時鐘爲低,第一個時鐘沿採樣;
  4. 模式 1,空閒時時鐘爲低,第二個時鐘沿採樣;
  5. 模式 2,空閒時時鐘爲高,第一個時鐘沿採樣;
  6. 模式 3,空閒時時鐘爲高,第二個時鐘沿採樣;

2 、SPI 主機通信不正常有哪些原因
常見原因:

  1. 配置不正確,表現爲無時鐘輸出;
  2. 模式配置不正確,表現爲採樣點與預期不一致(SPI_CCTL bit0 = 0 爲第二個時鐘沿採樣);
  3. 速度配置過快,表現爲波形異常;
  4. 數據位數配置與 device 不一致,表現爲 CLK 個數不對.
  5. CS 信號不正確,表現爲 CS 信號與 device 時序不對應;

Vbat 的電源接入有什麼要求;
如果在應用中沒有外部電池, 建議 VBAT 在外部通過一個 100nF 的陶瓷電容與 VDD 相連. 如外接爲電池,爲保證不損壞,建議在外部 VBAT 和電源之間連接一個低壓降二極管。如無外接電池,即使不用 RTC 功能,也需要給 VBAT 供電;

KEIL 例程編譯失敗可能導致的原因
常見原因:

  1. 沒有安裝 keil4 的兼容包,軟件名稱爲:MDKCM516_legacySupportMDK4(出問題最多)
  2. 移動了 keil 工程文件,導致無法找到相對路徑的文件
  3. 程序太大,超過 FLASH 或者 SRAM 容量
    解決辦法
    針對 1 和 2 的問題,將 BOOT0 和 BOOT1 接到高電平,復位或者重新上電一下,然後再讀 ID。若能讀到 ID,則在此模式下擦除程序,然後再將 BOOT0 和 BOOT1 接低電平,這時候 ID 就能讀到了。

KEIL 程序編譯通過了,可是下載程序失敗
常見原因:

  1. 硬件電路沒有接好,查看 debug 工具是否連接上板子中的 JTAG 或者 SWD,能否讀到芯片IDCODE。
  2. 若是 Debug 工具能讀到芯片 ID,但是無法下載,原因是沒有選擇 Description 型號,具體配置選擇如下圖所示。
    在這裏插入圖片描述

外部高速時鐘接法
外部無源晶振電路如下圖所示,晶振兩腳接約 22pf 電容,並上 1M 反饋電阻。因芯片內部沒有集成反饋電阻,爲保證 XTAL 起振,必須接 1M 歐姆電阻;
在這裏插入圖片描述

外部時鐘異常常見原因
運行程序通常用到外部高速時鐘做系統時鐘源,有時候在調試中會遇到系統時鐘異常導致程序停止運行,以下列出幾點可能的原因:

  1. 外部晶振未加反饋電阻,導致外部無穩定時鐘輸入;
  2. 外部晶振範圍 8~24MHz;
  3. 晶振與芯片引腳間斷路;
  4. 晶振質量問題導致,不正常起振;
  5. 芯片系統時鐘配置過程錯誤等等
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章