STM32F103C8T6最小系統搭建及應用案例

一、選型及介紹

1.選型

STM32F103C8T6是家族系列中的一員,是帶有ARM® Cortex®-M3內核的32位MCU。它是一款性價比很高的MCU,像單片機初學者或者MCU教學實驗等各方面語言,都是不錯的選擇。

2.介紹

通過在正面放大鏡查看,可以看出主控芯片上印有:
STM32F103C8T6
GD32
339B
CCC 1942

其中,STM32F103C8T6是芯片的型號;GD32是粵東南科技生產商;339B是芯片版本號;CCC 1942則是芯片生產批次號。

二、硬件及軟件環境準備

1.硬件環境準備

STM32F103C8T6最小系統的硬件組成及連接方式如下:

    _________________ 紅板_____________________
   |                                           |
   |                                           |
   |                                           |
   |                                           |
   |                                           |
   |                                           |
   |                                           |
   |                                           |
   |                                           |
   |                                           |
   |                                           |
   |                                           |
   |                                           |
   |                                           |
   |_______________________綠板_________________|
   

2.軟件環境準備

(1)使用事先下載的Keil MDK軟件。
(2)使用「TeraTerm」串口調試助手,打開後設置波特率為:115200bit/s,8bit,no parity bit, 1stop bit,baudrate。

三、開發與調試

1.開發

按照最小系統原理圖接線之後,通過USB線連接開發板與PC,正常情況下,PC會提示找到新硬件。
打開Keil軟件,新建立一個工程,選擇STM32F103C8T6芯片及對應的底層文件,通過編寫代碼的方式,可以實現各種不同功能。

2.調試

在Keil軟件上完成代碼的編寫之後,可通過把代碼下載到單片機,通過串口與PC進行通信,進而進行調試。
連接好串口調試助手之後,上電,即可看到電腦端通過串口打印出一堆有意義的字符串,這意味着單片機可以正常啟動並運行指定程序。
其中,串口調試可以通過Keil軟件調試功能,或者自己利用USART進行二次開發。

四、案例分析

1.案例:LED閃爍

(1)硬件連接方式:
將LED負極連接至開發板PB2管腳,正極連接至板載5V。
(2)代碼實現:

/**
* @brief Main program
* @param None
* @retval None
*/
int main(void)
{
  // 第1步:啟動系統時鐘
  SystemInit();
  // 第2步:初始化外設GPIO
  LED_GPIO_Config();
  // 第3步:得到要設置GPIO的端口及引腳
  LED_Pin = GPIO_Pin_2;
  LED_GPIO = GPIOB;
  
  while (1)
  {
    Delay(500);
    
    GPIO_SetBits(LED_GPIO, LED_Pin);
    Delay(500);
    GPIO_ResetBits(LED_GPIO, LED_Pin);
  }
}

2.案例:按鍵實現LED開關

(1)硬件連接方式:
SWDIO連接PB14管腳,VCC連接板載5V,GND接GND,將按鍵負極連接至開發板GND管腳,正極連接至PB6管腳。
(2)代碼實現:

/**
* @brief Main program
* @param None
* @retval None
*/
int main(void)
{
  // 第1步:啟動系統時鐘
  SystemInit();
  // 第2步:初始化外設GPIO
  LED_GPIO_Config();
  KEY_GPIO_Config();
  // 第3步:得到要設置GPIO的端口及引腳
  LED_Pin = GPIO_Pin_2;
  LED_GPIO = GPIOB;
  
  while (1)
  {
    if(KEY_UP == 0)
    {
      Delay(10);//按鍵防抖
      if(KEY_UP == 0)
      {
        while(KEY_UP == 0);
        LED_State = !LED_State;
        if(LED_State)
          GPIO_SetBits(LED_GPIO, LED_Pin);
        else
          GPIO_ResetBits(LED_GPIO, LED_Pin);
      }
    }
  }
}

五、總結

本文主要介紹了STM32F103C8T6最小系統搭建及應用案例。通過對硬件及軟件環境的準備,與開發及調試的實踐,對學習者來說具有一定的參考價值。

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/277107.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-19 13:20
下一篇 2024-12-19 13:20

相關推薦

  • Python數據統計案例的實現

    Python作為一個高級編程語言,擁有着豐富的數據處理庫和工具,能夠快速、高效地進行各類數據處理和分析。本文將結合實例,從多個方面詳細闡述Python數據統計的實現。 一、數據讀取…

    編程 2025-04-29
  • Deepin系統分區設置教程

    本教程將會詳細介紹Deepin系統如何進行分區設置,分享多種方式讓您了解如何規劃您的硬盤。 一、分區的基本知識 在進行Deepin系統分區設置之前,我們需要了解一些基本分區概念。 …

    編程 2025-04-29
  • 如何在樹莓派上安裝Windows 7系統?

    隨着樹莓派的普及,許多用戶想在樹莓派上安裝Windows 7操作系統。 一、準備工作 在開始之前,需要準備以下材料: 1.樹莓派4B一台; 2.一張8GB以上的SD卡; 3.下載並…

    編程 2025-04-29
  • Java任務下發回滾系統的設計與實現

    本文將介紹一個Java任務下發回滾系統的設計與實現。該系統可以用於執行複雜的任務,包括可回滾的任務,及時恢復任務失敗前的狀態。系統使用Java語言進行開發,可以支持多種類型的任務。…

    編程 2025-04-29
  • 分銷系統開發搭建

    本文主要介紹如何搭建一套完整的分銷系統,從需求分析、技術選型、開發、部署等方面進行說明。 一、需求分析 在進行分銷系統的開發之前,我們首先需要對系統進行需求分析。一般來說,分銷系統…

    編程 2025-04-29
  • EulerOS V2R7:企業級開發首選系統

    本文將從多個方面為您介紹EulerOS V2R7,包括系統簡介、安全性、易用性、靈活性和應用場景等。 一、系統簡介 EulerOS V2R7是一個華為公司開發的企業級操作系統,該系…

    編程 2025-04-28
  • 雲盤開源系統哪個好?

    本文將會介紹幾種目前主流的雲盤開源系統,從不同方面對它們做出分析比較,以此來確定哪個雲盤開源系統是最適合您的。 一、Seafile Seafile是一款非常出色的雲盤開源系統,它的…

    編程 2025-04-28
  • Python找出列表中最小的數

    Python是一種高級編程語言,它具有清晰簡潔的語法和豐富的內置函數。在Python中找出列表中最小的數非常簡單。下面將從算法、語法、函數等多個方面進行詳細的闡述。 一、算法 找出…

    編程 2025-04-28
  • 基於Python點餐系統的實現

    在當前瞬息萬變的社會,餐飲行業也在加速發展,如何更好地為客戶提供更加便捷、高效、個性化的點餐服務,成為每個餐飲企業需要思考的問題。本文以基於Python的點餐系統為例,通過優化用戶…

    編程 2025-04-28
  • Ubuntu系統激活Python環境

    本文將從以下幾個方面詳細介紹在Ubuntu系統中如何激活Python環境: 一、安裝Python 在Ubuntu系統中默認已經預裝了Python解釋器,可以通過以下命令來檢查: $…

    編程 2025-04-28

發表回復

登錄後才能評論