日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當前位置:首頁 > 嵌入式 > 程序員小哈
[導讀]學習目標 STM32F103C8T6芯片簡介 核心板原理圖 搭建流水燈電路 修改工程模板 代碼實現(xiàn) 成果展示 資料獲取 推薦閱讀 后臺網(wǎng)友建議制作一個流水燈,正好發(fā)現(xiàn)自己有之前購買的STM32F103C8T6核心板,今天搭建一個流水燈,正好學習一下STM32 GPIO輸出如何實現(xiàn),將

  • 學習目標

  • STM32F103C8T6芯片簡介

  • 核心板原理圖

  • 搭建流水燈電路

  • 修改工程模板

  • 代碼實現(xiàn)

  • 成果展示

  • 資料獲取

  • 推薦閱讀



后臺網(wǎng)友建議制作一個流水燈,正好發(fā)現(xiàn)自己有之前購買的STM32F103C8T6核心板,今天搭建一個流水燈,正好學習一下STM32 GPIO輸出如何實現(xiàn),將來驅(qū)動蜂鳴器、繼電器等都會使用的。


流水燈相當于計算機語言中的“Hello World”,照著做一遍,實現(xiàn)了它,基本你就入門了。


學習目標

  • STM32F103C8T6最小系統(tǒng)板的使用

  • 面包板搭建流水燈電路的方法

  • 將STM32F103RCT6工程模板修改為STM32F103C8T6的工程模板

  • 熟悉STM32 單片機GPIO作為輸出的使用方法


STM32F103C8T6芯片簡介

根據(jù)STM32&STM8產(chǎn)品型號命名規(guī)則(參考:STM32單片機最小系統(tǒng)詳解)可知:
STM32F103C8T6這個命名中:

  • STM32代表STM32家族,32位MCU;

  • F代表產(chǎn)品類型為基礎型;

  • 103代表特定功能為STM32基礎型;

  • C代表引腳數(shù)為48&49引腳;

  • 8代表內(nèi)存容量為64KB;

  • T代表封裝為QFP;

  • 6代表溫度范圍為-40到+85℃。


核心板原理圖


通過原理圖我們可知:

  • 板子供電有兩種方式:

  1. 通過U3 USB-micro接口提供5V供電,然后經(jīng)過板載的LDO芯片轉(zhuǎn)為VCC3V3;

  2. 通過P2 接口,即SWD下載接口中的VCC3V3給核心板供電。

  • 核心板上有兩個LED,其中一個為電源指示燈PWR,另外一個LED與PC13引腳相連,當PC13置高時,LED滅;當PC13置低時,LED亮;

  • 核心板上的跳線是為了選擇啟動模式使用。我們?yōu)榱俗尦绦蛞灾鏖W存存儲器作為啟動區(qū)域,需要將BOOT0置低,BOOT1隨意,此種啟動模式是最常用的用戶FLASH啟動,為默認啟動模式;

  • 核心板上的按鍵為RESET復位按鍵;

  • P2接口為SWD下載模式對應的引腳接口;


  • 搭建流水燈電路

    1. 準備元器件

    注意:
    電阻使用的是2K,作為限流使用;
    LED注意正負極,直插發(fā)光二極管,引腳長的為正極,短的為負極;如果引腳被剪過了,一樣長了,查看發(fā)光二極管管體內(nèi)部金屬極大小,金屬極較小的是正極,大的片狀的是負極。

    1. 搭建電路
      按照如下原理圖搭建電路


    搭建完畢效果圖


    修改工程模板

    在基于STM32固件庫的MDK5工程建立基礎上,將STM32F103RCT6工程模板修改為STM32F103C8T6的工程模板。

    修改點:

    1. 替換啟動文件,將startup_stm32f10x_hd.s更換為startup_stm32f10x_md.s,startup_stm32f10x_md.s為中等容量產(chǎn)品使用的啟動文件,對應FLASH的大小范圍為:64K≤FLASH≤128K。



    1. 修改全局宏定義,將STM32F10X_HD修改為STM32F10X_MD。



    1. 更改使用的芯片型號



    1. 設置下載的Flash容量


    注意:
    網(wǎng)上說STM32F103C8T6和STM32F103CBT6 是在同一圓晶上制造的,但測試時,只測試手冊提供的參數(shù)范圍所包含的內(nèi)容,也就意味著 STM32F103C8T6也是128k Flash,只不過只測試了前面64k,然后打上 STM32F103C8T6標注(當然內(nèi)部就寫上 C8T6 的 ID);所以我們在添加Flash的時候,只能找到128K的STM32F103,而找不到64K的Flash。


    代碼實現(xiàn)

    1. 設置PA5、PA6、PA7為輸出

    GPIO_InitTypeDef GPIO_InitStructure;RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE);GPIO_InitStructure.GPIO_Pin = GPIO_Pin_5|GPIO_Pin_6|GPIO_Pin_7;GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;GPIO_Init(GPIOA, &GPIO_InitStructure);


    1. 初始化GPIO為高電平,高電平的時候,LED滅

    GPIO_SetBits(GPIOA,GPIO_Pin_5);GPIO_SetBits(GPIOA,GPIO_Pin_6);GPIO_SetBits(GPIOA,GPIO_Pin_7);


    1. 流水燈代碼具體實現(xiàn)

    #include "stm32f10x.h"
    void Delay(u32 count){ u32 i=0; for(;i<count;i++);}
    int main(void){ GPIO_InitTypeDef GPIO_InitStructure; RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE); GPIO_InitStructure.GPIO_Pin = GPIO_Pin_5|GPIO_Pin_6|GPIO_Pin_7; GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; GPIO_Init(GPIOA, &GPIO_InitStructure); GPIO_SetBits(GPIOA,GPIO_Pin_5); GPIO_SetBits(GPIOA,GPIO_Pin_6); GPIO_SetBits(GPIOA,GPIO_Pin_7); while(1) { GPIO_ResetBits(GPIOA,GPIO_Pin_5); GPIO_SetBits(GPIOA,GPIO_Pin_6); GPIO_SetBits(GPIOA,GPIO_Pin_7); Delay(1000000);Delay(1000000);Delay(1000000); GPIO_SetBits(GPIOA,GPIO_Pin_5); GPIO_ResetBits(GPIOA,GPIO_Pin_6); GPIO_SetBits(GPIOA,GPIO_Pin_7); Delay(1000000);Delay(1000000);Delay(1000000); GPIO_SetBits(GPIOA,GPIO_Pin_5); GPIO_SetBits(GPIOA,GPIO_Pin_6); GPIO_ResetBits(GPIOA,GPIO_Pin_7); Delay(1000000);Delay(1000000);Delay(1000000); }}


    成果展示


    資料獲取

    微信公眾號后臺回復“流水燈”,可以下載工程源碼。
    微信公眾號后臺回復“STM32F103核心板”,可以下載STM32F103C8T6核心板資料


    推薦閱讀

    STM32單片機最小系統(tǒng)詳解

    基于STM32固件庫的MDK5工程建立

    修改Keil工程名稱并添加其他模塊文件




    喜歡請關注微信公眾號:程序員小哈
    若覺得本次分享的文章對您有幫助,隨手點[在看]并轉(zhuǎn)發(fā)分享,也是對我的支持。




    公眾號內(nèi)容面向在校大學生、電子愛好者、嵌入式工程師;
    涉及電子制作、模塊使用、單片機技術、物聯(lián)網(wǎng)相關知識分享;
    軟硬件全棧工程師,玩模塊,學硬件,帶你從0走到1

    ?

    免責聲明:本文內(nèi)容由21ic獲得授權后發(fā)布,版權歸原作者所有,本平臺僅提供信息存儲服務。文章僅代表作者個人觀點,不代表本平臺立場,如有問題,請聯(lián)系我們,謝謝!

    本站聲明: 本文章由作者或相關機構授權發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權益,請及時聯(lián)系本站刪除。
    換一批
    延伸閱讀

    LED驅(qū)動電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

    關鍵字: 驅(qū)動電源

    在工業(yè)自動化蓬勃發(fā)展的當下,工業(yè)電機作為核心動力設備,其驅(qū)動電源的性能直接關系到整個系統(tǒng)的穩(wěn)定性和可靠性。其中,反電動勢抑制與過流保護是驅(qū)動電源設計中至關重要的兩個環(huán)節(jié),集成化方案的設計成為提升電機驅(qū)動性能的關鍵。

    關鍵字: 工業(yè)電機 驅(qū)動電源

    LED 驅(qū)動電源作為 LED 照明系統(tǒng)的 “心臟”,其穩(wěn)定性直接決定了整個照明設備的使用壽命。然而,在實際應用中,LED 驅(qū)動電源易損壞的問題卻十分常見,不僅增加了維護成本,還影響了用戶體驗。要解決這一問題,需從設計、生...

    關鍵字: 驅(qū)動電源 照明系統(tǒng) 散熱

    根據(jù)LED驅(qū)動電源的公式,電感內(nèi)電流波動大小和電感值成反比,輸出紋波和輸出電容值成反比。所以加大電感值和輸出電容值可以減小紋波。

    關鍵字: LED 設計 驅(qū)動電源

    電動汽車(EV)作為新能源汽車的重要代表,正逐漸成為全球汽車產(chǎn)業(yè)的重要發(fā)展方向。電動汽車的核心技術之一是電機驅(qū)動控制系統(tǒng),而絕緣柵雙極型晶體管(IGBT)作為電機驅(qū)動系統(tǒng)中的關鍵元件,其性能直接影響到電動汽車的動力性能和...

    關鍵字: 電動汽車 新能源 驅(qū)動電源

    在現(xiàn)代城市建設中,街道及停車場照明作為基礎設施的重要組成部分,其質(zhì)量和效率直接關系到城市的公共安全、居民生活質(zhì)量和能源利用效率。隨著科技的進步,高亮度白光發(fā)光二極管(LED)因其獨特的優(yōu)勢逐漸取代傳統(tǒng)光源,成為大功率區(qū)域...

    關鍵字: 發(fā)光二極管 驅(qū)動電源 LED

    LED通用照明設計工程師會遇到許多挑戰(zhàn),如功率密度、功率因數(shù)校正(PFC)、空間受限和可靠性等。

    關鍵字: LED 驅(qū)動電源 功率因數(shù)校正

    在LED照明技術日益普及的今天,LED驅(qū)動電源的電磁干擾(EMI)問題成為了一個不可忽視的挑戰(zhàn)。電磁干擾不僅會影響LED燈具的正常工作,還可能對周圍電子設備造成不利影響,甚至引發(fā)系統(tǒng)故障。因此,采取有效的硬件措施來解決L...

    關鍵字: LED照明技術 電磁干擾 驅(qū)動電源

    開關電源具有效率高的特性,而且開關電源的變壓器體積比串聯(lián)穩(wěn)壓型電源的要小得多,電源電路比較整潔,整機重量也有所下降,所以,現(xiàn)在的LED驅(qū)動電源

    關鍵字: LED 驅(qū)動電源 開關電源

    LED驅(qū)動電源是把電源供應轉(zhuǎn)換為特定的電壓電流以驅(qū)動LED發(fā)光的電壓轉(zhuǎn)換器,通常情況下:LED驅(qū)動電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

    關鍵字: LED 隧道燈 驅(qū)動電源
    關閉