国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

嵌入式學(xué)習(xí)筆記——STM32的USART通信概述

這篇具有很好參考價(jià)值的文章主要介紹了嵌入式學(xué)習(xí)筆記——STM32的USART通信概述。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

前言

上兩篇文章中,已經(jīng)實(shí)現(xiàn)了GPIO的通用輸出以及通用輸出模式,從本文開始,筆者將開始有關(guān)GPIO的復(fù)用功能的介紹,首先是最常用復(fù)用功能——串口,本文主要是介紹一些關(guān)于通信以及串口的基本概念。

常用通信協(xié)議分類及其特征介紹

通信協(xié)議

通信協(xié)議:通信雙方進(jìn)行信息交換(接收或發(fā)送)要滿足的規(guī)則,而這個(gè)規(guī)則,不僅有如下圖所的軟件層的規(guī)則(軟件層主要是雙方互相約定了數(shù)據(jù)每一位的具體含義,以及 ‘?dāng)嗑洹?位置),還需要規(guī)定硬件層怎么連接,用多少線連接,每個(gè)線是什么功能等等。就比如常見的單總線協(xié)議,就只使用了一個(gè)數(shù)據(jù)線連接主從機(jī),當(dāng)然是在共地的情況下;而最常見的串口就是兩個(gè)線,一個(gè)TX,一個(gè)RX,雙方連接過程中還需要交叉連接,這些都是屬于硬件層,或者說是物理連接的規(guī)則。
嵌入式學(xué)習(xí)筆記——STM32的USART通信概述

通信協(xié)議分類

關(guān)于通信協(xié)議的分類有著多種分法,這里選用幾種常見的分類方式來做個(gè)說明。

1.同步異步通信

所謂的同步異步通信,主要區(qū)分在于通信雙方在通信過程中是使用的同一個(gè)時(shí)鐘,一根繩上的螞蚱;還是雙方各自使用自己的時(shí)鐘,自顧自的。如下圖所示,就是一種常見的同步通信,通信雙方使用同一個(gè)時(shí)鐘線,按照時(shí)鐘線上的頻率來傳輸和接收數(shù)據(jù)。
同步通信協(xié)議:**通信雙方在同一個(gè)時(shí)鐘脈沖作用下工作(時(shí)鐘線)**如:IIC SPI
嵌入式學(xué)習(xí)筆記——STM32的USART通信概述
而異步通信,通信雙方?jīng)]有共同的時(shí)鐘線,只有數(shù)據(jù)線;雙方通過約定數(shù)據(jù)發(fā)送的速率以及起始位,停止位數(shù)據(jù)位的方式來實(shí)現(xiàn)數(shù)據(jù)傳輸。
嵌入式學(xué)習(xí)筆記——STM32的USART通信概述
異步通信協(xié)議:通信雙方不在同一個(gè)時(shí)鐘脈沖作用下工作
如:UART USB can 單總線
這種分類方法的區(qū)別方式就是看通信雙方有沒有同步的時(shí)鐘線,有就是同步通信,沒有就是異步通信。

2.全雙工/半雙工/單工

全雙工通信,就是說同一時(shí)間,設(shè)備A既可以給設(shè)備B發(fā)送數(shù)據(jù),也可以接收從設(shè)備B發(fā)送過來的數(shù)據(jù)。全雙工最少要求有兩個(gè)數(shù)據(jù)線,發(fā)送和接收走的不同的數(shù)據(jù)線,且互不干涉,可以同時(shí)進(jìn)行。
嵌入式學(xué)習(xí)筆記——STM32的USART通信概述
全雙工:有兩個(gè)數(shù)據(jù)線,發(fā)送線和接收線
如:UART SPI
半雙工一般就只有一根數(shù)據(jù)了,也就是同一時(shí)間,只能一個(gè)設(shè)備發(fā)送數(shù)據(jù),另一個(gè)設(shè)備接收數(shù)據(jù),不能兩個(gè)設(shè)備同時(shí)發(fā)送和同時(shí)接收數(shù)據(jù)。半雙工既能實(shí)現(xiàn)接收也能實(shí)現(xiàn)發(fā)送,但是同一時(shí)刻同一設(shè)備只能接收或者只能發(fā)送,不能同時(shí)進(jìn)行。
嵌入式學(xué)習(xí)筆記——STM32的USART通信概述
半雙工:有一根數(shù)據(jù)線,可以發(fā)可以收,但不能同時(shí)進(jìn)行
如:?jiǎn)慰偩€
單工 :有一根數(shù)據(jù)線,要么只能發(fā)送,要么只能接收(一般很少遇到,大多數(shù)的外設(shè)都是需要發(fā)送和接收的)

3.現(xiàn)場(chǎng)總線/板級(jí)總線

現(xiàn)場(chǎng)協(xié)議主要是應(yīng)用在工業(yè)控制現(xiàn)場(chǎng),由于使用環(huán)境變得復(fù)雜,各種干擾會(huì)出現(xiàn)并對(duì)通信造成影響,所以這類通信協(xié)議一般采用差分信號(hào)或者提高高低電壓范圍的方式來提高抗干擾能力,不同協(xié)議有不同的電壓信號(hào)代表邏輯值0和1。
嵌入式學(xué)習(xí)筆記——STM32的USART通信概述
此圖來自百度百科關(guān)于現(xiàn)場(chǎng)總線的解釋。
現(xiàn)場(chǎng)總線:工業(yè)控制現(xiàn)場(chǎng)總線(可遠(yuǎn)距離傳輸數(shù)據(jù))
如:485總線—千米級(jí)別
can總線—十千米級(jí)
板級(jí)通信見名知意,就是應(yīng)用在PCB板上的的通信協(xié)議,主要是指SPI、IIC、UART、1-Wire這一類。
例如下圖中白色的SCL與SDA這兩個(gè)線就屬于板級(jí)總線。
嵌入式學(xué)習(xí)筆記——STM32的USART通信概述
板級(jí)總線:芯片之間通信(距離長(zhǎng)會(huì)被干擾)
如:IIC/SPI/8080

4. 串行/并行通信

按位傳輸,一位一位的發(fā)送,其優(yōu)勢(shì)在于傳輸數(shù)據(jù)所用的線極少,一個(gè)數(shù)據(jù)線即可完成數(shù)據(jù)傳輸。但是速度不如并行通信。
嵌入式學(xué)習(xí)筆記——STM32的USART通信概述
并行:一次發(fā)多位, 多根線,其優(yōu)勢(shì)是傳輸數(shù)據(jù)的速度快,但是需要占用較多的IO口。
嵌入式學(xué)習(xí)筆記——STM32的USART通信概述

5. 有線通信、無線通信

有線通信就是通過線纜進(jìn)行傳輸數(shù)據(jù),其優(yōu)勢(shì)在于可靠性強(qiáng),但缺點(diǎn)也在于對(duì)于復(fù)雜項(xiàng)目,線纜過長(zhǎng)會(huì)造成現(xiàn)場(chǎng)混亂。
而無線通信好處在于不需要線纜,會(huì)比較方便,但是相對(duì)也沒有有線通信的穩(wěn)定性高。GSM , 藍(lán)牙, 433(500m),2.4G,wifi這些都是常用的無線通信。

STM32通信協(xié)議的配置方式

使用STM32實(shí)現(xiàn)上面的那些通信協(xié)議時(shí)一般有兩種方案,一種是使用IO口模擬協(xié)議的時(shí)序,另一種就是配置對(duì)應(yīng)通信協(xié)議的片上外設(shè),通過片上外設(shè)來處理和獲取數(shù)據(jù)。

使用通信協(xié)議控制器實(shí)現(xiàn)

配置好對(duì)應(yīng)協(xié)議控制的功能
協(xié)議控制器會(huì)自己發(fā)送
不需要看相應(yīng)時(shí)序
看框圖,找配置流程,寫初始化函數(shù)
IO口配置成復(fù)用功能

使用IO口模擬的方式實(shí)現(xiàn)

通過IO口模仿對(duì)應(yīng)協(xié)議的控制器
通過高低電平實(shí)現(xiàn)通信時(shí)序的功能
相對(duì)于控制器來說不是很穩(wěn)定
IO口配置成通用功能
需要看時(shí)序圖

STM32串口通信概述

在了解了上面那么多有關(guān)通信的內(nèi)容后,現(xiàn)在開始進(jìn)入主題,什么是串口通信,串口通信能干什么,串口通信要怎么使用。

什么是串口通信

串口通信是一種設(shè)備間常用的串行通信方式,串口按位(bit)發(fā)送和接收字節(jié)。盡管比特字(byte)的串行通信慢,但是串口可以在使用一根線發(fā)送數(shù)據(jù)的同時(shí)用另一根線接收數(shù)據(jù)。

STM32F407的串口

通用同步異步收發(fā)器 (USART) 也就是STM32上的串口,注意還有另外一種名稱——UART;二者的區(qū)別在于,USART內(nèi)部有智能卡協(xié)議、紅外協(xié)議,而UART則沒有。
這里的命名既說了同步又說了異步收發(fā),按照上面的協(xié)議分類,他應(yīng)該只能屬于一種協(xié)議才對(duì),是這樣的,STM32的USART設(shè)置的有同步時(shí)鐘線,如果硬件連接這個(gè)時(shí)鐘線,那就是同步通信,如果不連接這個(gè)線,那么就是異步通信,在實(shí)際應(yīng)用中,大多使用異步通信。
所以參照上面的協(xié)議介紹,串口通信屬于,異步、串行、全雙工、有線通信。
那么STM32F407的串口一共有多少組呢,這個(gè)在數(shù)據(jù)手冊(cè)是有介紹的,一共有六組,其中USART有四組,UART有兩組。
嵌入式學(xué)習(xí)筆記——STM32的USART通信概述
既然看了數(shù)量,那在順便瞅一眼他們各自掛接的時(shí)鐘線,可以發(fā)現(xiàn),對(duì)于F407來說,USART1與USART6掛接在APB2上,而USART2、USART3、USAR4、USART5則是掛接在APB1上的,每個(gè)串口對(duì)應(yīng)在哪個(gè)時(shí)鐘線上,這點(diǎn)是需要知道的,因?yàn)楹筚I編程需要使用。
嵌入式學(xué)習(xí)筆記——STM32的USART通信概述

STM32串口通信的數(shù)據(jù)幀

所謂數(shù)據(jù)幀就是串口每次發(fā)出的數(shù)據(jù)包內(nèi)容,前面提到了,串口通信在發(fā)送數(shù)據(jù)的時(shí)候是按照一位一位去發(fā)送的,也就是單次發(fā)送的只有0或者1,為了將這些“00100110101”解析成對(duì)應(yīng)的數(shù)據(jù),通信雙方需要約定幀格式。
嵌入式學(xué)習(xí)筆記——STM32的USART通信概述
例如上圖這個(gè)傳輸過程就是傳輸了一個(gè)ascll 碼為0x4D的字符 ‘M’ ;
在STM32的串口通信中常用的數(shù)據(jù)幀格式為:
一個(gè)起始位 八位數(shù)據(jù)位 一個(gè)停止位,沒有使用奇偶校驗(yàn),例如我們發(fā)送一個(gè)字符A的數(shù)據(jù)幀就是如下圖所示:STM32 使用的是小端模式,也就是說,當(dāng)我們給一個(gè)int型的變量存入0x12345678時(shí),其低地址存放的就是78h,高地址存放的是12h。
嵌入式學(xué)習(xí)筆記——STM32的USART通信概述
數(shù)據(jù)幀:傳輸一包數(shù)據(jù) 一幀數(shù)據(jù)
一幀發(fā)一個(gè)字節(jié)數(shù)據(jù)(只能發(fā)送字符char類型的)
起始位(1) 數(shù)據(jù)位(8-9)可配置 停止位(0.5/1/2)可配置

STM32串口通信硬件連接

由于STM32的串口輸出是TTL電平的,如果要與其他工控機(jī)通信的話,需要使用到SP3232IDR的電平轉(zhuǎn)換芯片才可以通信。
嵌入式學(xué)習(xí)筆記——STM32的USART通信概述

我們平時(shí)與PC機(jī)通信使用的大多是USB口,USB的電平與TTL也不一樣,所以還也需要有電平轉(zhuǎn)換的IC來實(shí)現(xiàn)中轉(zhuǎn),這里常用的就是USB—TTL的CH340芯片,在使用CH340之前需要我們安裝其對(duì)應(yīng)的驅(qū)動(dòng),這也是為什么在之前搭建開發(fā)環(huán)境時(shí)需要安裝這個(gè)驅(qū)動(dòng)的原因。
嵌入式學(xué)習(xí)筆記——STM32的USART通信概述嵌入式學(xué)習(xí)筆記——STM32的USART通信概述
一般的開發(fā)板外接USB轉(zhuǎn)串口都是用使用的PA9和PA10這一組管腳,沒有統(tǒng)一的標(biāo)準(zhǔn),但是很多板子都是這么做的。

STM32串口通信的四要素

前面說了一堆關(guān)于串口的知識(shí),在這里做個(gè)小結(jié), 串口收發(fā)的本質(zhì)實(shí)際上就是 接收和發(fā)送字符,需要掌握的無非也就是串口的四個(gè)要素:
串口的四要素分為:波特率 數(shù)據(jù)位 停止位 奇偶校驗(yàn)位
串口通信的必要條件:
兩臺(tái)設(shè)備進(jìn)行通信要確保雙方的四要素保持一致才能通信,下圖是PC端得四要素配置,也就是說,如果板子要和PC能夠通信,那么板子端的四要素也得跟PC端的配置一樣。
嵌入式學(xué)習(xí)筆記——STM32的USART通信概述
那么怎么配置板子端的四要素呢,繼續(xù)往下看。

STM32的串口框圖

在弄清了STM32串口的硬件連接方式以及通信數(shù)據(jù)幀格式后,就該選取配置方案了,對(duì)于串口這個(gè)模塊,絕大多數(shù)都是用的USART的控制器來實(shí)現(xiàn)的,幾乎沒有人使用IO口模擬來做,只有I2C、單總線才會(huì)更多的偏向使用IO口模擬通信。
關(guān)于怎么配置的問題,參考前面學(xué)習(xí)GPIO的配置流程,首先肯定要去查看其對(duì)應(yīng)的框圖,根據(jù)框圖搞清楚大致的通信流程,然后再去查看對(duì)應(yīng)的寄存器,最后根據(jù)流程編寫代碼。
那么接下來開始分析USART的框圖:
串口的整體框圖如下圖所示,一共分為了三個(gè)部分:
1.最上端叫做串口數(shù)據(jù)的收發(fā)過程;
2.中間叫做串口的控制過程;
3.最下面叫做波特率的計(jì)算過程。
嵌入式學(xué)習(xí)筆記——STM32的USART通信概述
和之前的GPIO一樣,為了方便理解,還是將框圖拆開來一個(gè)個(gè)的分析。

串口數(shù)據(jù)的收發(fā)過程

如下圖所示:其中的TX、RX就是STM32的串口通信管腳,TX對(duì)應(yīng)的是STM32的發(fā)送腳,從圖中可以看出,TX的數(shù)據(jù)來自發(fā)送移位寄存器,而且是通過串行傳輸方式,一位一位的傳輸?shù)模轿灰萍拇嫫鞯臄?shù)據(jù)又是來自上方的發(fā)送數(shù)據(jù)寄存器,且是并行傳輸,也就是說,需要發(fā)送數(shù)據(jù)時(shí),CPU通過總線將數(shù)據(jù)寫入到發(fā)送數(shù)據(jù)寄存器中,發(fā)送數(shù)據(jù)寄存器直接并行傳輸,一次性將一個(gè)字符存入發(fā)送位移寄存器,然后發(fā)送位移寄存器一位一位的將數(shù)據(jù)傳輸?shù)酵饨油ㄐ旁O(shè)備。
這里有幾個(gè)需要注意和思考的點(diǎn)
1.CPU寫數(shù)據(jù)到發(fā)送數(shù)據(jù)寄存器之前要檢測(cè)之前的發(fā)送是否完成,上一幀數(shù)據(jù)發(fā)送完成了才可以寫到發(fā)送數(shù)據(jù)寄存器,如果上一幀數(shù)據(jù)發(fā)送未完成則要等待發(fā)送完成;
2.那么CPU如何檢測(cè)之前的數(shù)據(jù)是否發(fā)送完成?這是由于在內(nèi)部有相應(yīng)的發(fā)送完成標(biāo)志位,當(dāng)數(shù)據(jù)發(fā)送完成后會(huì)有對(duì)應(yīng)的寄存器被置位,具體的到后面的寄存器講解部分再做介紹。
嵌入式學(xué)習(xí)筆記——STM32的USART通信概述
然后是接收部分,同樣的,外界的數(shù)據(jù)通過RX一位一位的進(jìn)入接收移位寄存器,當(dāng)接收移位寄存器檢測(cè)到接收完成時(shí),會(huì)將數(shù)據(jù)傳輸給接收數(shù)據(jù)寄存器,然后CPU再?gòu)慕邮諗?shù)據(jù)寄存器中將接收到的數(shù)據(jù)讀走。
注意:CPU在讀數(shù)據(jù)前要檢測(cè)是否接收完成, 接收完成就可以讀到變量中,如果沒有接收完成,要等待接收完成再讀到變量中。
思考:如何檢測(cè)是否接收完成?與發(fā)送一樣內(nèi)部也有相應(yīng)的接收完成標(biāo)志位,通過檢測(cè)對(duì)應(yīng)的寄存器即可,這個(gè)在后面的寄存器介紹中會(huì)詳細(xì)描述。

開發(fā)人員需要做的工作:
如果是發(fā)送數(shù)據(jù),判斷上一幀有沒有發(fā)送完,發(fā)送完了就往發(fā)送數(shù)據(jù)寄存器中寫入數(shù)據(jù)(1幀),沒有發(fā)送完就繼續(xù)等待接收完成。
如果是接收數(shù)據(jù),判斷上一幀數(shù)據(jù)有沒有接收完畢,接收完畢了就從接收數(shù)據(jù)寄存器中讀取數(shù)據(jù)(1幀),沒有接收完畢就等待接收完畢。
這一塊的偽代碼:

發(fā)送數(shù)據(jù)的過程
{
  等待發(fā)送移位寄存器為空  (確保每一幀 每一幀是分開的)
  發(fā)送數(shù)據(jù)
}

接收過程
{
   等待接收移位寄存器為滿
   接收數(shù)據(jù)
}

串口的控制過程

如下圖所示:圖中看得出來有很多的寄存器對(duì)發(fā)送控制和接收控制單元進(jìn)行配置了,具體的配置放到后面的寄存器介紹再說,然后兩個(gè)橙色框內(nèi)的硬件流以及同步時(shí)鐘引腳這些我們都用不到,所以暫時(shí)也不看。
嵌入式學(xué)習(xí)筆記——STM32的USART通信概述
這部分我們需要知道就是以下三點(diǎn):
1.此部分是配置串口發(fā)送和接收的使能以及前面提到的四要素中的絕大部分,具體怎么配置再下一篇的寄存器中描述,只需要知道這部分就是代碼中初始化串口所需要進(jìn)行配置的就行了。
2.上一步的發(fā)送位移寄存器是受到本部分的發(fā)送控制器控制的;
3.上一步接收移位寄存器實(shí)受到本部分的接收控制器控制的。
偽代碼以及配置了流程也留到下一篇的寄存器介紹中。

波特率的計(jì)算過程

最后是框圖的第三部分,也就是波特率的計(jì)算過程,
所謂的波特率就是表示數(shù)據(jù)的傳輸速率,常用的就是115200與9600,使用的時(shí)候注意將通信雙方配置為波特率一致即可,上一步驟配置了四要素中的三個(gè),這一步是專門用來管理第四個(gè)要素波特率的。
嵌入式學(xué)習(xí)筆記——STM32的USART通信概述
這個(gè)框圖也不需要看的太過認(rèn)真,需要了解的就是DIV_Mantissa存放的是USARTDIV的整數(shù)位,DIV_Fraction存放的是USARTDIV的小數(shù)位,
這個(gè)計(jì)算過程參考下面的這個(gè)公式即可,,實(shí)際上也就是上圖下方的公式做了變形:
嵌入式學(xué)習(xí)筆記——STM32的USART通信概述
整個(gè)公式中,fck是對(duì)應(yīng)時(shí)鐘線的頻率,這個(gè)是通過數(shù)據(jù)手冊(cè)可以查到的,就用USART1來說,它在APB2上,時(shí)鐘頻率為86 000 000HZ;
然后波特率我們也知道,要與上位機(jī)一致,這里設(shè)置為115200,
然后是OVER8這個(gè)是串口的8倍過采和16倍過采,在寄存器中有介紹,我們一般選擇16倍超采,也就是OVER8的值為0,
這樣一替換就只剩下了USARTDIV是一個(gè)未知數(shù),也就是說,我們需要對(duì)應(yīng)配置的只有這個(gè)USARTDIV,上面提到了由于它有小數(shù),所以在寫入U(xiǎn)SART_BRR寄存器時(shí)需要做一點(diǎn)處理,這里我們舉個(gè)栗子,以串口USART1 16倍過采來做個(gè)計(jì)算,看最終USART_BRR的數(shù)據(jù)如何寫入。
公式轉(zhuǎn)換:
USARTDIV=FCK/過采樣/波特率
USARTDIV=fck/(過采樣*波特率)

使用串口1
波特率:115200  時(shí)鐘大?。?span id="n5n3t3z"    class="token number">84000000  過采樣:16

float USARTDIV;
unsigned int  DIV_M;
unsigned int  DIV_F;
USARTDIV=84000000/16/115200;  // 45.57291666666667
DIV_M =(u32) USARTDIV;//讀取整數(shù)部分
DIV_F = (USARTDIV- DIV_M)*16+0.5 f  //考慮四舍五入
USART1->BRR = DIV_M<<4 | DIV_F;

總結(jié)

關(guān)于串口的基礎(chǔ)概述就寫到這,下一篇分析寄存器以及編寫初始化代碼實(shí)現(xiàn)串口的通信。文中如有不妥之處歡迎大家批評(píng)指正。

M4系列目錄

1.嵌入式學(xué)習(xí)筆記——概述
2.嵌入式學(xué)習(xí)筆記——基于Cortex-M的單片機(jī)介紹
3.嵌入式學(xué)習(xí)筆記——STM32單片機(jī)開發(fā)前的準(zhǔn)備
4.嵌入式學(xué)習(xí)筆記——STM32硬件基礎(chǔ)知識(shí)
5.嵌入式學(xué)習(xí)筆記——認(rèn)識(shí)STM32的 GPIO口
6.嵌入式學(xué)習(xí)筆記——使用寄存器編程操作GPIO
7.嵌入式學(xué)習(xí)筆記——寄存器實(shí)現(xiàn)控制LED小燈
8.嵌入式學(xué)習(xí)筆記——使用寄存器編程實(shí)現(xiàn)按鍵輸入功能
9.嵌入式學(xué)習(xí)筆記——STM32的USART通信概述
10.嵌入式學(xué)習(xí)筆記——STM32的USART相關(guān)寄存器介紹及其配置
11.嵌入式學(xué)習(xí)筆記——STM32的USART收發(fā)字符串及串口中斷
12.嵌入式學(xué)習(xí)筆記——STM32的中斷控制體系
13.嵌入式學(xué)習(xí)筆記——STM32寄存器編程實(shí)現(xiàn)外部中斷
14.嵌入式學(xué)習(xí)筆記——STM32的時(shí)鐘樹
15.嵌入式學(xué)習(xí)筆記——SysTick(系統(tǒng)滴答)
16.嵌入式學(xué)習(xí)筆記——M4的基本定時(shí)器
17.嵌入式學(xué)習(xí)筆記——通用定時(shí)器
18.嵌入式學(xué)習(xí)筆記——PWM與輸入捕獲(上)
19.嵌入式學(xué)習(xí)筆記——PWM與輸入捕獲(下)
20.嵌入式學(xué)習(xí)筆記——ADC模數(shù)轉(zhuǎn)換器
21.嵌入式學(xué)習(xí)筆記——DMA
22.嵌入式學(xué)習(xí)筆記——SPI通信
23.嵌入式學(xué)習(xí)筆記——SPI通信的應(yīng)用
24嵌入式學(xué)習(xí)筆記——IIC通信文章來源地址http://www.zghlxwxcb.cn/news/detail-404017.html

到了這里,關(guān)于嵌入式學(xué)習(xí)筆記——STM32的USART通信概述的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • STM32串口通信詳解(嵌入式學(xué)習(xí))

    STM32串口通信詳解(嵌入式學(xué)習(xí))

    時(shí)鐘信號(hào)在電子領(lǐng)域中是指用于同步和定時(shí)電路操作的周期性信號(hào)。它在數(shù)字系統(tǒng)和通信系統(tǒng)中起著至關(guān)重要的作用,用于協(xié)調(diào)各個(gè)組件之間的數(shù)據(jù)傳輸和操作。 時(shí)鐘信號(hào)有以下幾個(gè)重要的方面: 頻率:時(shí)鐘信號(hào)的頻率是指單位時(shí)間內(nèi)信號(hào)周期的數(shù)量。它通常以赫茲(Hz)為

    2024年02月09日
    瀏覽(23)
  • 【嵌入式學(xué)習(xí)筆記】嵌入式基礎(chǔ)9——STM32啟動(dòng)過程

    【嵌入式學(xué)習(xí)筆記】嵌入式基礎(chǔ)9——STM32啟動(dòng)過程

    程序段交叉引用關(guān)系(Section Cross References):描述各文件之間函數(shù)調(diào)用關(guān)系 刪除映像未使用的程序段(Removing Unused input sections from the image):描述工程中未用到被刪除的冗余程序段(函數(shù)/數(shù)據(jù)) 映像符號(hào)表(Image Symbol Table):描述各符號(hào)(程序段/數(shù)據(jù))在存儲(chǔ)器中的地址、類

    2024年02月15日
    瀏覽(64)
  • 嵌入式學(xué)習(xí)筆記——STM32的時(shí)鐘樹

    嵌入式學(xué)習(xí)筆記——STM32的時(shí)鐘樹

    在之前的所有代碼編程的過程中,似乎每次都繞不開一個(gè)叫做時(shí)鐘使能的東西,當(dāng)時(shí)我們是在數(shù)據(jù)手冊(cè)上直接看其掛接在那條時(shí)鐘線上的,那么STM32內(nèi)部的時(shí)鐘到底是怎么一個(gè)構(gòu)型呢,本文來對(duì)此做一個(gè)介紹。 老規(guī)矩,一個(gè)新的名詞出現(xiàn),首先需要搞清楚它是個(gè)啥,下圖中對(duì)

    2024年02月02日
    瀏覽(24)
  • 嵌入式學(xué)習(xí)筆記——STM32硬件基礎(chǔ)知識(shí)

    嵌入式學(xué)習(xí)筆記——STM32硬件基礎(chǔ)知識(shí)

    上一篇中我們重點(diǎn)是講了一下怎么搭建開發(fā)環(huán)境以及怎么下載燒錄的過程,這都是解決的電腦端的開發(fā)環(huán)境問題,還沒有到實(shí)際的開發(fā)板上,我們的單片機(jī)是都是焊接在開發(fā)板上的,PCB上有著它所需的工作電路。并不是直接給供電電壓就可以讓其工作的,本文主要是簡(jiǎn)介一下

    2024年01月22日
    瀏覽(101)
  • 【嵌入式】openmv與stm32的串口通信

    【嵌入式】openmv與stm32的串口通信

    參考:(文中部分圖/文字/代碼來自以下文章,部分內(nèi)容由于時(shí)間久遠(yuǎn)已經(jīng)找不到原作者,可聯(lián)系注明或刪除) PYTHON串口數(shù)據(jù)打包發(fā)送STM32接收數(shù)據(jù)解析 openmv中文文檔 這里以openmv循跡代碼為例 main.py 關(guān)于struct.pack: 函數(shù)原型:struct.pack(fmt, v1, v2, …) fmt是格式字符串 v1,v2是要轉(zhuǎn)

    2024年02月14日
    瀏覽(22)
  • 藍(lán)橋杯嵌入式CT117E-M4學(xué)習(xí)筆記02-STM32G431RBT6芯片學(xué)習(xí)

    藍(lán)橋杯嵌入式CT117E-M4學(xué)習(xí)筆記02-STM32G431RBT6芯片學(xué)習(xí)

    首先學(xué)習(xí)了解一下藍(lán)橋杯嵌入式CT117E-M4開發(fā)板的主控芯片STM32G431RBT6,本文僅為個(gè)人學(xué)習(xí)成果總結(jié),如有錯(cuò)誤,懇請(qǐng)指正。 上圖為STM32CubeMX選型界面,如圖可以看出STM32G431RBT6具有以下特點(diǎn)和硬件集成。 采用Cortex-M4 32位RISC核心架構(gòu),工作頻率最高可達(dá)170Mhz。 128kBytes的FLASH,32

    2023年04月09日
    瀏覽(33)
  • 嵌入式學(xué)習(xí)筆記——IIC通信

    嵌入式學(xué)習(xí)筆記——IIC通信

    本文接著之前的M4系列介紹,對(duì)另外一個(gè)十分常見的通信總線進(jìn)行一個(gè)介紹,就是IIC總線。 首先,還是找個(gè)免費(fèi)勞動(dòng)力來做一個(gè)官方的介紹,下面這一段話非常全面的介紹了IIC的各個(gè)特征,用之前提到的通信特征來總結(jié),IIC是一種串行,同步,半雙工,板級(jí)有線通信。與SPI對(duì)

    2024年02月06日
    瀏覽(92)
  • 嵌入式學(xué)習(xí)筆記——SPI通信

    嵌入式學(xué)習(xí)筆記——SPI通信

    之前已經(jīng)介紹了STM32的ADC、DMA、EXTI、TIME、NVIC、USART以及普通IO模式,此系列筆者還打算寫最后三個(gè)大的內(nèi)容,分別是SPI通信、IIC通信以及看門狗,后面就看大家的需求了,需要什么可以留在評(píng)論區(qū),本文首先來介紹SPI的有關(guān)知識(shí)。 在通信協(xié)議分類的介紹中,提到過SPI,它是一

    2023年04月09日
    瀏覽(30)
  • 通信工程畢設(shè) Stm32酒駕檢查系統(tǒng) - 單片機(jī) 嵌入式 物聯(lián)網(wǎng)

    通信工程畢設(shè) Stm32酒駕檢查系統(tǒng) - 單片機(jī) 嵌入式 物聯(lián)網(wǎng)

    ?? 這兩年開始畢業(yè)設(shè)計(jì)和畢業(yè)答辯的要求和難度不斷提升,傳統(tǒng)的畢設(shè)題目缺少創(chuàng)新和亮點(diǎn),往往達(dá)不到畢業(yè)答辯的要求,這兩年不斷有學(xué)弟學(xué)妹告訴學(xué)長(zhǎng)自己做的項(xiàng)目系統(tǒng)達(dá)不到老師的要求。 為了大家能夠順利以及最少的精力通過畢設(shè),學(xué)長(zhǎng)分享優(yōu)質(zhì)畢業(yè)設(shè)計(jì)項(xiàng)目,今天

    2024年02月19日
    瀏覽(701)
  • STM32的時(shí)鐘系統(tǒng)(嵌入式學(xué)習(xí))

    STM32的時(shí)鐘系統(tǒng)(嵌入式學(xué)習(xí))

    時(shí)鐘是指用于計(jì)量和同步時(shí)間的裝置或系統(tǒng)。時(shí)鐘是嵌入式系統(tǒng)的脈搏,處理器內(nèi)核在時(shí)鐘驅(qū)動(dòng)下完成指令執(zhí)行,狀態(tài)變換等動(dòng)作,外設(shè)部件在時(shí)鐘的驅(qū)動(dòng)下完成各種工作,例如:串口數(shù)據(jù)的發(fā)送、AD轉(zhuǎn)換、定時(shí)器計(jì)數(shù)等。因此時(shí)鐘對(duì)于計(jì)算機(jī)系統(tǒng)是至關(guān)重要的,通常時(shí)鐘系

    2024年02月16日
    瀏覽(29)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包