91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

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

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

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

學(xué)習(xí)單片機和STM32的一道坎

STM32嵌入式開發(fā) ? 來源:STM32嵌入式開發(fā) ? 2023-01-17 15:10 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

剛開始學(xué)單片機的你,是不是會因用程序把LED點亮而感到高興,會因用程序把數(shù)碼管點亮而感到高興。這是好事,這也是想繼續(xù)學(xué)習(xí)下去的動力。

但是數(shù)據(jù)相關(guān)的實驗是學(xué)習(xí)單片機和STM32的一道坎,此時就需要用好本文要說的串口這個調(diào)試工具。串口通信介紹關(guān)于串口通信的介紹,也可以點擊閱讀之前發(fā)的一篇文章:STM32串口通信基本原理。串口通信是指外設(shè)和計算機間,通過數(shù)據(jù)信號線 、地線、控制線等,按位進行傳輸數(shù)據(jù)的一種通訊方式......這種太過理論了,看似懂了,但又不懂。還是用我筆者自己的話來說吧。串口通信就是可以把程序在單片機或者STM32芯片中運行的結(jié)果發(fā)送到電腦的一種通信方式。1e8eec68-957e-11ed-bfe3-dac502259ad0.png1eb0fd3a-957e-11ed-bfe3-dac502259ad0.png如何使用串口通訊,你需要知道的幾個重要的知識點:
  • 波特率,數(shù)據(jù)傳輸?shù)乃俣龋缟蠄D設(shè)置為9600,那么程序中也要設(shè)置為9600
  • 硬件連接,接收、發(fā)送交叉連接,如上圖TxD->RxD,RxD->TxD
  • 停止位
  • 奇偶校驗
  • 硬件數(shù)據(jù)流
其中,后3項一般不需要改變。學(xué)會串口通信能做什么學(xué)過C語言的人都知道,程序開發(fā)需要不斷調(diào)試不斷驗證。很多的語言編程軟件都有很完整的程序調(diào)試功能。使用起來很方便。而我們的開發(fā)雖然也是用C語言,但我們的程序最終運行的環(huán)境不是在我們的開平臺而是在真正的硬件系統(tǒng)中運行。這時想要查看程序的運行過程或者結(jié)果就不像編程軟件那么方便了。想要解決這個問題,我們這時就可以借助串口通信來把我們需要知道的結(jié)果又或者是程序運行的關(guān)鍵步驟發(fā)送到電腦上,我們就知道程序在硬件系統(tǒng)中運行是否出現(xiàn)問題。51單片機可以用串口來調(diào)試,STM32可以用串口來調(diào)試,Linux開發(fā)板也是使用串口來調(diào)試。當(dāng)你學(xué)會串口通信時,你可以開始玩WIFI模塊、GSM模塊、藍牙模塊、GPS模塊、以及各種使用串口通信的傳感器等等。有能力你還可以編寫上位機軟件通過串口通信來控制設(shè)備。串口通信需要什么如果你只有STM32核心板,那么你還需要一個串口轉(zhuǎn)USB模塊和一個串口數(shù)據(jù)接收軟件還有幾根杜邦線就可以了。如果你的是比較完整的一款開發(fā)板的話,一般都已經(jīng)帶有串口轉(zhuǎn)USB模塊,這樣使用起來就更簡單了。聰明的你是不是發(fā)現(xiàn)還缺少了點什么,對。沒錯因為還缺少了最重要的程序。想要使用串口通信當(dāng)然還需要寫串口通信的程序。下文就教你如何去用,而不是寫。串口實驗關(guān)于串口的實驗,之前錄過一個基于HAL庫來實現(xiàn)的視頻:STM32打印數(shù)據(jù)到串口助手。 而下文中的實驗基于標(biāo)準(zhǔn)庫實現(xiàn)的,與HAL相比思路是一樣的。在做一個實驗時,最好把這個實驗分割成幾個關(guān)鍵的步驟,這樣做的好處就是可以清晰的知道自己需要做什么,以及做完了哪些。還有哪些還沒做。下面把串口實驗分成幾個關(guān)鍵的步驟:1)串口通信使用到的GPIO引腳配置 STM32F103系列的芯片一般都有三個串口以上,用來調(diào)試使用的串口一般都是使用USART1。其他的串口配置都是一樣的。下面這段就是串口配置的程序:

1ecdebc0-957e-11ed-bfe3-dac502259ad0.png

串口使用的的GPIO口是PA9和PA10,所以只需配置這兩個IO口的輸入輸出模式就可以了。2)串口主要參數(shù)設(shè)置(直接看程序)

1edd96e2-957e-11ed-bfe3-dac502259ad0.png

串口參數(shù)配置無法就是配置串口的波特率、數(shù)據(jù)格式、停止位、奇偶校驗、硬件流、收發(fā)模式。除了波特率需要改變其他的參數(shù)都不需要管。直接復(fù)制拿來用。3)串口中斷配置
串口如果使用中斷接收,那么就需要配置串口的中斷參數(shù),配置項無法就是配置那個的中斷源和中斷的優(yōu)先級。

1ef5d2d4-957e-11ed-bfe3-dac502259ad0.png

4)串口使能
就是你需要什么時候開始使用串口功能,就是一句原有的函數(shù)。

1f09a264-957e-11ed-bfe3-dac502259ad0.png

5)編寫串口中斷處理函數(shù)
使用庫函數(shù)開發(fā),所有的中斷函數(shù)都是已經(jīng)存在的,只是中斷函數(shù)里面沒有處理任何事情而已。中斷函數(shù)如下:
1f1c03b4-957e-11ed-bfe3-dac502259ad0.png 完整的串口中斷函數(shù):

1f2f658a-957e-11ed-bfe3-dac502259ad0.png

串口數(shù)據(jù)的接收和發(fā)送的函數(shù)都是庫函數(shù)提供的,想用時只需找到它直接拿來用就可以了。6)實驗現(xiàn)象把程序編譯燒寫到STM32然后用串口轉(zhuǎn)USB模塊連接到電腦,在串口調(diào)試工具設(shè)置好波特率,打開串口。正常的話,那發(fā)送什么到STM32單片機,串口工具上就會收到什么。總結(jié)以上就完成了一個最簡單的串口實驗。本文章主要是說明串口的重要性,用來調(diào)試程序很方便。


審核編輯 :李倩


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

    關(guān)注

    2310

    文章

    11162

    瀏覽量

    373546
  • 51單片機
    +關(guān)注

    關(guān)注

    278

    文章

    5714

    瀏覽量

    134424
  • 串口
    +關(guān)注

    關(guān)注

    15

    文章

    1620

    瀏覽量

    82872

原文標(biāo)題:學(xué)習(xí)STM32單片機,繞不開的串口

文章出處:【微信號:c-stm32,微信公眾號:STM32嵌入式開發(fā)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    單片機物聯(lián)網(wǎng)項目實戰(zhàn):基于LVGL的智能火災(zāi)報警系統(tǒng)-基于STM32F103&ESP32-S3開發(fā)板(附教程/源碼)

    基于STM32F103與ESP32-S3雙核架構(gòu)(STM32和ESP32是單片機初學(xué)的兩大經(jīng)典),今天為大家?guī)?b class='flag-5'>一款了全面覆蓋單片機物聯(lián)網(wǎng)
    的頭像 發(fā)表于 02-11 16:11 ?403次閱讀
    <b class='flag-5'>單片機</b>物聯(lián)網(wǎng)項目實戰(zhàn):基于LVGL的智能火災(zāi)報警系統(tǒng)-基于<b class='flag-5'>STM32</b>F103&amp;amp;ESP32-S3開發(fā)板(附教程/源碼)

    單片機物聯(lián)網(wǎng)項目實戰(zhàn):基于LVGL的智慧大棚農(nóng)業(yè)系統(tǒng)-基于STM32F103&amp;amp;ESP32-S3開發(fā)板(附教程/源碼)

    基于STM32F103與ESP32-S3雙核架構(gòu)(STM32和ESP32是單片機初學(xué)的兩大經(jīng)典),今天為大家?guī)?b class='flag-5'>一款了全面覆蓋單片機物聯(lián)網(wǎng)
    的頭像 發(fā)表于 02-11 15:50 ?219次閱讀
    <b class='flag-5'>單片機</b>物聯(lián)網(wǎng)項目實戰(zhàn):基于LVGL的智慧大棚農(nóng)業(yè)系統(tǒng)-基于<b class='flag-5'>STM32</b>F103&amp;amp;ESP32-S3開發(fā)板(附教程/源碼)

    嵌入式單片機開發(fā)學(xué)習(xí)路徑

    的基本結(jié)構(gòu)和工作原理。過去很多大學(xué)都是從51單片機開始學(xué)習(xí),目前也有很多高校直接從STM32開始學(xué)習(xí)了。不管哪種方式,都能幫助你快速認識單片機
    發(fā)表于 02-09 15:42

    小白也能聽懂的單片機知識路徑

    、低功耗、豐富的外設(shè)資源以及強大的開發(fā)支持,逐漸成為市場的主流選擇。對于想要深入學(xué)習(xí)單片機技術(shù)的你來說,STM32無疑是個不可多得的好平臺。 S
    發(fā)表于 02-04 16:44

    學(xué)習(xí)單片機快速方法

    學(xué)習(xí)單片機的快速方法 先介紹下單片機。把單片機說成是電子信息類專業(yè)最重要的門課程點也不為過,
    發(fā)表于 01-14 07:42

    單片機和嵌入式,到底是什么關(guān)系?

    很多人初次接觸嵌入式開發(fā)時,都會聽到句話:“嵌入式其實就是單片機。”可當(dāng)你真正開始學(xué)習(xí)時,會發(fā)現(xiàn)嵌入式和單片機雖然經(jīng)?!袄墶痹?b class='flag-5'>一起提,但
    的頭像 發(fā)表于 11-14 10:28 ?1560次閱讀
    <b class='flag-5'>單片機</b>和嵌入式,到底是什么關(guān)系?

    學(xué)單片機的誤區(qū)

    任何單片機程序的編寫。根本就不要學(xué)去C語言的高級用法,即使你用C語言的最基礎(chǔ)的語句能夠完成程序的編寫,底層運行的機制是學(xué)習(xí)重中之重! 等你積累自己編寫定的代碼量以后,你再回過頭去學(xué)習(xí)
    發(fā)表于 11-14 07:46

    第1章如何學(xué)習(xí)單片機(1.3 1.4)

    1.3單片機學(xué)習(xí)的準(zhǔn)備工作 1.足夠的信心、恒心和耐心 有同學(xué)問我,單片機這門技術(shù)難不難。這個問題得從兩個方面去分析。 首先,從戰(zhàn)略上藐視它。那么多同學(xué)跟著老師學(xué)段時間就可以做出來小
    的頭像 發(fā)表于 10-10 10:36 ?537次閱讀
    第1章如何<b class='flag-5'>學(xué)習(xí)</b><b class='flag-5'>單片機</b>(1.3 1.4)

    第1章 如何學(xué)習(xí)單片機

    路在何方;也因為作者摸過燒紅的鐵塊,燙了手,所以也可以告訴讀者教訓(xùn)和代價是什么。希望各位都能站在作者的肩膀上,看得更遠! 1.1學(xué)什么類型的單片機 單片機的型號那么多,如何選取款合適的進行學(xué)
    的頭像 發(fā)表于 10-10 10:32 ?528次閱讀

    開發(fā)單片機需要學(xué)習(xí)什么?軟件編程的 4 個關(guān)鍵層次

    ? ? ? ? ? ? ? ? ? ? 開發(fā)單片機需要學(xué)習(xí)什么?軟件編程的 4 個關(guān)鍵層次 單片機的 “智能” 全靠軟件實現(xiàn),編程技能需從基礎(chǔ)語法逐步進階到復(fù)雜邏輯,每個層次對應(yīng)不同的開發(fā)需求
    的頭像 發(fā)表于 08-25 11:32 ?877次閱讀

    51單片機stm32單片機,先學(xué)習(xí)個?

    糾結(jié) 51 單片機STM32 該先學(xué)哪個,就像剛學(xué)開車的人在自動擋和手動擋之間打轉(zhuǎn)。有人上來就愛開自動擋,踩著油門就能跑,不用琢磨換擋踩離合的門道;有人偏要從手動擋練起,哪怕起步時熄十幾次火
    的頭像 發(fā)表于 08-20 13:46 ?1380次閱讀
    51<b class='flag-5'>單片機</b>與<b class='flag-5'>stm32</b><b class='flag-5'>單片機</b>,先<b class='flag-5'>學(xué)習(xí)</b>哪<b class='flag-5'>一</b>個?

    怎么測單片機系統(tǒng)頻率

    單片機系統(tǒng)頻率是指單片機工作時的時鐘頻率,它直接影響單片機的運行速度和處理能力,準(zhǔn)確測量系統(tǒng)頻率對單片機應(yīng)用開發(fā)、程序調(diào)試和性能優(yōu)化具有重要意義。測量
    的頭像 發(fā)表于 07-25 11:39 ?811次閱讀

    STM32F10xxx單片機編程手冊

    電子發(fā)燒友網(wǎng)站提供《STM32F10xxx單片機編程手冊.pdf》資料免費下載
    發(fā)表于 04-14 14:56 ?17次下載

    STM32F103x8 STM32F103xB單片機數(shù)據(jù)手冊

    STM32F103x8STM32F103xB單片機數(shù)據(jù)手冊
    發(fā)表于 04-14 14:55 ?8次下載

    STM32單片機最小系統(tǒng)電路設(shè)計

    單片機最小系統(tǒng)是指用最少的電路組成單片機可以工作的系統(tǒng),通常最小系統(tǒng)包含:電源電路、時鐘電路、復(fù)位電路、調(diào)試/下載電路,對于STM32還需要啟動選擇電路。總之,剛開始如果不太懂電路的話,就抄別人的電路,然后自己拼湊。
    的頭像 發(fā)表于 03-12 14:09 ?2w次閱讀
    <b class='flag-5'>STM32</b><b class='flag-5'>單片機</b>最小系統(tǒng)電路設(shè)計