0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

同樣是用STM32點(diǎn)亮一顆LED燈,寄存器和庫有什么區(qū)別?

學(xué)益得智能硬件 ? 來源:學(xué)益得智能硬件 ? 2024-03-14 16:52 ? 次閱讀

同樣是用STM32點(diǎn)亮一顆LED燈,寄存器和庫有什么區(qū)別?

我們先嘗試用寄存器點(diǎn)亮。

首先在創(chuàng)建工程的時候就比較麻煩,新建工程,起個名字,選擇一個合適的芯片,新建main.c,然后隨手來一個main函數(shù)。

32的工程和51還不太一樣,需要在工程里面添加啟動文件,這個啟動文件在ST的官網(wǎng)能找到。

編譯代碼的時候,會提示缺少各種頭文件,這些頭文件,在官網(wǎng)的標(biāo)準(zhǔn)庫里面也能找到,按照提示拷貝進(jìn)去就行。

準(zhǔn)備工作做好了,就是真正開始點(diǎn)燈的時候,這一步必須要借助原理圖和芯片手冊。

配置GPIO時鐘、引腳模式、輸出方式、輸出速度、上拉、輸出高電平,這一波操作下來,如果英文水平一般,那真的很痛苦。

代碼寫的比較隨意,也沒用位移操作,純粹就是為了點(diǎn)個燈。運(yùn)行代碼,燈確實(shí)亮了。

總結(jié)一下,用寄存器點(diǎn)燈確實(shí)麻煩,建立工程麻煩,讀芯片手冊也麻煩。

毫不夸張的說,如果沒有基礎(chǔ),芯片又比較冷門,半天時間,保證你可以從入門到放棄。

而且剪輯視頻的時候,很多細(xì)節(jié)還沒放進(jìn)去,比如微庫,比如重置運(yùn)行,少一個,你都要倒騰半天時間。

再來看下HAL庫點(diǎn)燈,選擇HAL庫,就是因?yàn)樗詈唵巍?/p>

配合cubemx,創(chuàng)建工程也只是分分鐘的事。

打開main函數(shù),其實(shí)步驟跟剛才的差不多,只是配置時鐘,從剛才的寄存器變成了調(diào)用函數(shù),好處就是,記住這個函數(shù)名就行,不用去看芯片手冊。

至于剛才的配置引腳模式、輸出方式等等,都變成了一個結(jié)構(gòu)體,結(jié)合庫手冊,給結(jié)構(gòu)體成員逐個賦值就行。

接下來,再次調(diào)用兩個函數(shù),一個初始化、一個讓引腳輸出。只要你不去刨根問底,用庫來實(shí)現(xiàn)功能,比寄存器簡單的多,對新手也特別的友好。




審核編輯:劉清

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • led燈
    +關(guān)注

    關(guān)注

    22

    文章

    1593

    瀏覽量

    109150
  • 寄存器
    +關(guān)注

    關(guān)注

    31

    文章

    5397

    瀏覽量

    122663
  • STM32
    +關(guān)注

    關(guān)注

    2282

    文章

    10986

    瀏覽量

    361085
  • HAL庫
    +關(guān)注

    關(guān)注

    1

    文章

    121

    瀏覽量

    6627

原文標(biāo)題:同樣是點(diǎn)燈,看看寄存器和庫的區(qū)別

文章出處:【微信號:學(xué)益得智能硬件,微信公眾號:學(xué)益得智能硬件】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    如何去實(shí)現(xiàn)用STM32點(diǎn)亮LED

    STM32點(diǎn)亮LED-
    發(fā)表于 08-03 06:16

    寄存器點(diǎn)亮led

    本篇文章介紹了STM32的基本知識,以及寄存器編程,映射等有關(guān)知識,最后實(shí)例為寄存器點(diǎn)亮led
    發(fā)表于 08-24 06:57

    如何用STM32點(diǎn)亮LED?

    如何用STM32點(diǎn)亮LED?
    發(fā)表于 10-11 08:44

    如何利用STM32點(diǎn)亮LED

    如何利用STM32點(diǎn)亮LED?
    發(fā)表于 11-29 06:57

    使用STM32點(diǎn)亮LED的方法

    led,大家大致看下點(diǎn)燈流程和點(diǎn)燈環(huán)境以及點(diǎn)燈流程,就能大概的了解下三者的區(qū)別,可以
    發(fā)表于 11-29 06:14

    認(rèn)識STM32寄存器點(diǎn)亮LED

    STM32初學(xué)者,寫博客只是為了記錄學(xué)習(xí),希望能有大神指點(diǎn)下初學(xué)者入門書有沒有推薦的開始通過51來認(rèn)識STM32
    發(fā)表于 11-30 07:22

    如何利用stm32點(diǎn)亮led

    stm32點(diǎn)亮ledstm32點(diǎn)燈原理建立工程文件三級目錄
    發(fā)表于 01-07 07:08

    如何利用Stduino IDE點(diǎn)亮一顆LED

    一顆LED從TB買回來STM32小藍(lán)板,為了點(diǎn)亮一顆
    發(fā)表于 01-10 07:30

    基于固件寄存器stm32程序編寫的區(qū)別

    、基于固件寄存器stm32程序編寫的區(qū)別1.基于固件
    發(fā)表于 01-18 09:25

    STM32點(diǎn)亮LED包括寄存器和庫函數(shù)兩種方法

    STM32點(diǎn)亮LED包括寄存器和庫函數(shù)兩種方法同時也有關(guān)于庫函數(shù)的代碼
    發(fā)表于 01-24 07:55

    STM32寄存器點(diǎn)亮LED簡介

    STM32點(diǎn)亮LED 寄存器方式IO簡介1、每個IO可以自由編程,但是IO口寄存器必須按照32位字被訪問。2、每個IO端口都有7個
    發(fā)表于 02-28 06:51

    使用寄存器點(diǎn)亮LED

    stm32是我們會寄存器點(diǎn)亮LED
    發(fā)表于 12-01 15:30 ?0次下載

    如何使用寄存器點(diǎn)亮LED

    本文檔的主要內(nèi)容詳細(xì)介紹的是如何使用寄存器點(diǎn)亮LED。
    發(fā)表于 04-15 17:00 ?10次下載
    如何使用<b class='flag-5'>寄存器</b><b class='flag-5'>點(diǎn)亮</b><b class='flag-5'>LED</b><b class='flag-5'>燈</b>

    寄存器與靜態(tài)

    實(shí)現(xiàn)初始化時鐘LED初始化LED閃爍三、庫函數(shù)例程0.準(zhǔn)備階段1.目標(biāo)任務(wù)拆分2.目標(biāo)實(shí)現(xiàn)初始化時鐘LED
    發(fā)表于 01-13 12:43 ?3次下載
    <b class='flag-5'>寄存器</b>與靜態(tài)<b class='flag-5'>庫</b>

    配置STM32寄存器控制GPIO點(diǎn)亮LED

    STM32點(diǎn)亮LED 寄存器方式IO簡介1、每個IO可以自由編程,但是IO口寄存器必須按照32位字被訪問。2、每個IO端口都有7個
    發(fā)表于 01-13 16:15 ?3次下載
    配置<b class='flag-5'>STM32</b><b class='flag-5'>寄存器</b>控制GPIO<b class='flag-5'>點(diǎn)亮</b><b class='flag-5'>LED</b>

    電子發(fā)燒友

    中國電子工程師最喜歡的網(wǎng)站

    • 2931785位工程師會員交流學(xué)習(xí)
    • 獲取您個性化的科技前沿技術(shù)信息
    • 參加活動獲取豐厚的禮品