chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

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

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

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

STM32F0xx _USART收發(fā)配置詳細(xì)過程

黃工的嵌入式技術(shù)圈 ? 來源:黃工的嵌入式技術(shù)圈 ? 2020-04-08 09:28 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

前言

串口對于處理器來說算是一種標(biāo)配,也是在軟件開發(fā)中必不可少的,那就是使用串口來調(diào)試信息(打印出相應(yīng)的信息)。STM32F0系列的芯片,串口根據(jù)型號不同,數(shù)量也不同,從1個到8個不等。

今天主要總結(jié)串口簡單且常用的功能,發(fā)送字符和中斷接收字符。今天提供的串口發(fā)送功能將在后面的各個模塊總結(jié)中都需要使用到,主要用于驗(yàn)證和測試各項(xiàng)功能的正確性。

下載

ST標(biāo)準(zhǔn)外設(shè)庫和參考手冊、數(shù)據(jù)手冊等都可以在ST官網(wǎng)下載,你也可以到我的360云盤下載。關(guān)于F0系列芯片的參考手冊有多個版本(針對F0不同芯片),但有一個通用版本,就是“STM32F0x128參考手冊V8(英文)2015-07”建議參考該手冊,以后如果你換用一種型號芯片也方便了解。

今天的軟件工程下載地址(360云盤):

https://yunpan.cn/cS5TeTVUWdc7V訪問密碼 9b8c

STM32F0xx的資料可以在我360云盤下載:

https://yunpan.cn/cS2PVuHn6X2Bj訪問密碼 8c37

準(zhǔn)備工作

①新建源程序文件

一個工程項(xiàng)目在增加模塊功能的時候,一般都需要新增加模塊源程序的文件。今天提供的工程由于增加USART模塊,因此針對昨天(上一篇文章)的軟件工程需要增加模塊USART的文件(usart.c 和 usart.h)。

新建了源程序文件,還要添加到工程中進(jìn)行編譯才行。還有需要添加我們使用到的標(biāo)準(zhǔn)外設(shè)庫文件到工程,我已經(jīng)將文件新建,并添加到軟件工程中,如下圖:


注意:

文件所在位置最好對應(yīng)目錄,方便管理。比如:usart.c放在bsp文件下,添加在工程中Bsp組下面。

源代碼詳情

①RCC時鐘


該函數(shù)位于bsp.c文件下面;

我個人習(xí)慣第一步配置時鐘,ST官方提供的例程也是把配置時鐘放在前面。關(guān)于RCC時鐘的配置比較重要,有好幾次我就是由于沒有配置相應(yīng)RCC時鐘,讓我找了很久的問題。

②USART引腳配置


該函數(shù)位于usart.c文件下面;

這里的配置就是對串口收發(fā)引腳進(jìn)行配置(具體參數(shù)說明請看上一篇文章)。

注意:

上面紅色框里面的配置是重點(diǎn),必須對應(yīng)配置才行。這里第三個參數(shù)“GPIO_AF_1”需要和你使用的外設(shè)對應(yīng)。

③USART配置


該函數(shù)位于usart.c文件下面;

這里是串口相關(guān)參數(shù)進(jìn)行配置,詳情請看中文注釋。具體每一個參數(shù)的意思,可以參看昨天方式,go to definition...

注意:

上面紅色框處,如果要使用中斷(我們工程是接收),必須對應(yīng)配置才行。

④NVIC配置


該函數(shù)位于bsp.c文件下面;

要使用中斷,必須配置NVIC,這點(diǎn)也不能忘記。

⑤串口中斷接收函數(shù)


該函數(shù)位于stm32f0xx_it.c文件下面;

中斷接收到一個字符,就發(fā)送出去(可以通過電腦串口發(fā)送字符,STM32F0接收到該字符又發(fā)送給電腦)。

說明

STM32F0的芯片軟件兼容性很好,可以適用于F0其他很多型號的芯片(具體請看手冊、或者親自測試)。

以上實(shí)例總結(jié)僅供參考,若有不對之處,敬請諒解。

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

    關(guān)注

    68

    文章

    20239

    瀏覽量

    251566
  • USART
    +關(guān)注

    關(guān)注

    1

    文章

    202

    瀏覽量

    33122
  • STM32F0
    +關(guān)注

    關(guān)注

    0

    文章

    61

    瀏覽量

    17855
  • STM32F0XX
    +關(guān)注

    關(guān)注

    0

    文章

    11

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

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

    LAT1171+STM32F745 USART1 Bootloader 失敗原因分析與解決

    使用 STM32F745 進(jìn)行產(chǎn)品開發(fā)的時候,出現(xiàn)了使用 STM32CubeProgramer 無法通過 USART1 Bootloader 進(jìn)行程序升級的問題。為了解決客戶的問題,我在 NUCLEO-
    發(fā)表于 01-11 17:33 ?0次下載

    在標(biāo)準(zhǔn)庫下配置stm32f103x的spi在引入rtthread后收發(fā)的消息就錯了,為什么?

    我在標(biāo)準(zhǔn)庫下配置stm32f103x的spi在引入rtthread后收發(fā)的消息就錯了,引入之前沒問題,請問這是啥情況
    發(fā)表于 10-13 08:07

    SDK資源包bug drv_usart.c不能使用UART9及以上的串口怎么解決?

    問題一: 用Studio生成STM32F4工程,發(fā)現(xiàn)在board.h 配置串口9(BSP_USING_UART9)有問題,觀察drv_usart.c文件發(fā)現(xiàn)沒有串口8以上的代碼。 注:stm3
    發(fā)表于 09-25 06:37

    GD32的串口DMA收發(fā)數(shù)據(jù)失敗怎么解決?

    我在使用RTT的GD32F303的BSP時,配置使用串口DMA收發(fā)(rt_device_open),發(fā)現(xiàn)錯誤,最終無法收發(fā)數(shù)據(jù),對比了STM32
    發(fā)表于 09-17 06:04

    制作STM32F1開發(fā)板的BSP失敗的原因?

    _HAL\\STM32F1xx_HAL_Driver\\Src\\stm32f1xx_hal_nor.c: 0 warnings, 1 error compiling
    發(fā)表于 08-29 07:42

    STM32F10xxx參考手冊

    STM32F1XX數(shù)據(jù)手冊中文版
    發(fā)表于 07-10 16:09 ?10次下載

    stm32N657配置USART2,可以發(fā)送,但是為什么無法進(jìn)入接收中斷呢?

    https://gitee.com/liu-qingchang/code/tree/master/stm32n6 main函數(shù)和usart代碼 使用stm32N657這塊評估板,使用cubeMX
    發(fā)表于 06-18 07:13

    STM32F4標(biāo)準(zhǔn)外設(shè)庫資料

    stm32f4xx.h,標(biāo)準(zhǔn)外設(shè)庫
    發(fā)表于 06-08 09:49 ?5次下載

    STM32F40xxx和STM32f41xx flash編程手冊

    PM0081_STM32F40xxx and STM32F41xxx單片機(jī)編程手冊
    發(fā)表于 06-06 17:02 ?5次下載

    0STM32中的SysTick是個啥?咋用?(可下載)

    中的使能位清除,就永不停息。SysTick在《STM32xx中文參考手冊》里面基本沒有介紹,其詳細(xì)介紹,內(nèi)核編程手冊中。在工程中我們將以STM32F373為例,為SysTick配置1m
    發(fā)表于 04-01 14:52 ?0次下載

    STM32F103×8/STM32F103×B MCU手冊

    本文提供了STM32F103x8和STM32F103xB中密度高性能系列微控制器的訂購信息和機(jī)械器件特性。有關(guān)整個STMicroelectronics STM32F103xx系列的更多信息,請
    發(fā)表于 03-18 16:37 ?0次下載

    STM32F107的USART2為什么進(jìn)不了中斷?

    剛開始學(xué)STM32,手里有一塊公司的板子,板子上的USB接到FT232R,再從FT232R接到MCU的PD5(USART2TX)和PD6(USART2RX)。 我嘗試了公司的代碼,應(yīng)該是用標(biāo)準(zhǔn)庫寫
    發(fā)表于 03-14 16:57

    stm32g0b1中的usart5進(jìn)不去HAL_UARTEx_RxEventCallback,為什么?

    請教一下關(guān)于stm32g系列的問題,stm32g0b1中的usart5進(jìn)不去HAL_UARTEx_RxEventCallback,cudemx上配置跟其他串口也是一樣的,都打開中斷了,
    發(fā)表于 03-13 06:51

    stm32f103USART2為什么無法收發(fā)信息?

    include \"usart.h\" int fputc(int ch, FILE *f){Serial_SendByte(ch); return ch;} void
    發(fā)表于 03-12 06:22

    STM32L451CEU6發(fā)送0x80會收到0x00的數(shù)據(jù),發(fā)送0x01會收到0x7F的數(shù)據(jù),為什么?

    使用STM32L451CEU6型號的芯片,在用usart(PA9、PA10)進(jìn)行串口通信時,發(fā)送0x55在PC端可以收到正確的數(shù)據(jù),但是發(fā)送0x80會收到
    發(fā)表于 03-07 08:44