一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

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

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

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

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

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

掃碼添加小助手

加入工程師交流群

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

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

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

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

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

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

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

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


審核編輯 :李倩


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

    關(guān)注

    2293

    文章

    11032

    瀏覽量

    364977
  • 51單片機(jī)
    +關(guān)注

    關(guān)注

    277

    文章

    5711

    瀏覽量

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

    關(guān)注

    15

    文章

    1588

    瀏覽量

    79943

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

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

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

掃碼添加小助手

加入工程師交流群

    評論

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

    STM32F10xxx單片機(jī)編程手冊

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

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

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

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

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

    單片機(jī)學(xué)習(xí)—C51源代碼和Proteus仿真文件

    單片機(jī)學(xué)習(xí)—C51源代碼和Proteus仿真文件.zip, 有各種例子
    發(fā)表于 02-10 13:46 ?1次下載

    STM32單片機(jī)+MPU6050設(shè)計(jì)個(gè)電子水平儀

    本項(xiàng)目基于STM32F103C8T6單片機(jī)設(shè)計(jì)款電子水平儀。STM32F103C8T6作為種性能強(qiáng)大的微控制器,具有較高的計(jì)算能力和豐富
    的頭像 發(fā)表于 01-09 11:14 ?1898次閱讀
    <b class='flag-5'>STM32</b><b class='flag-5'>單片機(jī)</b>+MPU6050設(shè)計(jì)<b class='flag-5'>一</b>個(gè)電子水平儀

    STM32單片機(jī)的特點(diǎn)介紹

    STM32系列單片機(jī)是由ST廠商推出的單片機(jī),基于專為高性能、低成本、低功耗嵌入式應(yīng)用設(shè)計(jì)的ARM Cortex-M內(nèi)核,具備流的外設(shè)配置,使其在功耗和集成度方面表現(xiàn)出色,
    的頭像 發(fā)表于 09-25 17:19 ?4196次閱讀

    基于STM32單片機(jī)的智能加濕器設(shè)計(jì)

    本文介紹了種基于STM32單片機(jī)的智能加濕器。該加濕器配備了DHT11溫濕度傳感器、水位傳感器和濁度傳感器,數(shù)據(jù)通過單片機(jī)處理并顯示在OLED屏幕上。用戶可通過按鍵模塊設(shè)置閾值,并在
    的頭像 發(fā)表于 09-14 08:04 ?2603次閱讀
    基于<b class='flag-5'>STM32</b><b class='flag-5'>單片機(jī)</b>的智能加濕器設(shè)計(jì)

    單片機(jī)STM32可以用Python寫嗎?可以的開發(fā)板有哪些?

    近年來,隨著嵌入式技術(shù)的發(fā)展,Python語言逐漸被引入到單片機(jī)開發(fā)中,尤其是些高性能的單片機(jī)上。這趨勢給開發(fā)者帶來了極大的便利,尤其是在快速原型設(shè)計(jì)和實(shí)驗(yàn)中。本文將詳細(xì)探討
    的頭像 發(fā)表于 09-05 08:00 ?7605次閱讀
    <b class='flag-5'>單片機(jī)</b><b class='flag-5'>STM32</b>可以用Python寫嗎?可以的開發(fā)板有哪些?

    十天學(xué)會(huì)單片機(jī)可能嗎?單片機(jī)入門需要多久?

    學(xué)習(xí)單片機(jī)的過程,就像學(xué)習(xí)任何其他技能樣,不僅在于書本上的知識(shí),更在于實(shí)踐和應(yīng)用的能力。許多人可能會(huì)問:十天能學(xué)會(huì)單片機(jī)嗎?答案是:可以,
    的頭像 發(fā)表于 09-05 08:00 ?2474次閱讀
    十天學(xué)會(huì)<b class='flag-5'>單片機(jī)</b>可能嗎?<b class='flag-5'>單片機(jī)</b>入門需要多久?

    stm32單片機(jī)用什么軟件編程

    STM32單片機(jī)種廣泛應(yīng)用于嵌入式系統(tǒng)領(lǐng)域的微控制器,具有高性能、低功耗、豐富的外設(shè)接口等特點(diǎn)。要對STM32單片機(jī)進(jìn)行編程,需要選擇合
    的頭像 發(fā)表于 09-02 10:16 ?3480次閱讀

    stm32單片機(jī)引腳介紹及功能

    STM32系列單片機(jī)是STMicroelectronics(意法半導(dǎo)體)推出的款基于ARM Cortex-M內(nèi)核的32位微控制器。STM32單片機(jī)
    的頭像 發(fā)表于 09-02 09:38 ?1.3w次閱讀

    stm32和51單片機(jī)的區(qū)別是什么

    架構(gòu)差異: STM32是基于ARM Cortex-M系列內(nèi)核的32位微控制器,具有更高效的處理能力和更豐富的外設(shè)。 51單片機(jī)是基于8051內(nèi)核的8位微控制器,處理能力相對較低,外設(shè)也相對有限
    的頭像 發(fā)表于 09-02 09:33 ?1690次閱讀

    文讀懂什么單片機(jī):組成結(jié)構(gòu)與應(yīng)用

    歡迎來到單片機(jī)的世界,這是種微小(但功能強(qiáng)大)的設(shè)備,改變了嵌入式系統(tǒng)的面貌。在本文中,您將了解單片機(jī)些基本知識(shí)、單片機(jī)的結(jié)構(gòu)以及微處
    的頭像 發(fā)表于 08-09 11:49 ?2407次閱讀
    <b class='flag-5'>一</b>文讀懂什么<b class='flag-5'>單片機(jī)</b>:組成結(jié)構(gòu)與應(yīng)用

    stm32單片機(jī)的優(yōu)勢有哪些?

    。 STM32作為款強(qiáng)大而多功能的單片機(jī),憑借其性能、功能、開發(fā)者生態(tài)系統(tǒng)以及廣泛的應(yīng)用領(lǐng)域,成為了眾多單片機(jī)中的佼佼者。無論是專業(yè)開發(fā)者還是學(xué)習(xí)
    發(fā)表于 07-29 09:29

    從菜鳥到大牛!嵌入式完整學(xué)習(xí)路線:STM32單片機(jī)-RTOS-Linux

    ?嵌入式系統(tǒng)是許多現(xiàn)代電子設(shè)備和智能系統(tǒng)的核心,掌握嵌入式系統(tǒng),意味著能夠設(shè)計(jì)和開發(fā)更加智能化的產(chǎn)品。本文為所有想進(jìn)入嵌入式領(lǐng)域的初學(xué)者提供個(gè)完整系統(tǒng)學(xué)習(xí)的路線圖,按照“STM32單片機(jī)
    的頭像 發(fā)表于 07-23 16:11 ?6604次閱讀
    從菜鳥到大牛!嵌入式完整<b class='flag-5'>學(xué)習(xí)</b>路線:<b class='flag-5'>STM32</b><b class='flag-5'>單片機(jī)</b>-RTOS-Linux