STM32f103VE學習之預備知識

2021-08-25 17:14:07 字數 3447 閱讀 1697

通訊方式

波特率(bd):可以通俗的理解為乙個裝置在一秒鐘內傳送(或接收)了多少碼元的資料。

如每秒鐘傳送240個字元,而每個字元格式包含10位(1個起始位,1個停止位,8個資料位),這時的波特率為240bd,位元率為10位*240個/秒=2400bps。又比如每秒鐘傳送240個二進位制位,這時的波特率為240bd,位元率也是240bps。

位元率(bps):bit/s = bps。

並行:多個通道同時傳輸。

序列:單個通道傳輸。

keynote

在網路通訊h過程中,通訊雙方要交換資料,需要高度的協同工作。為了正確的解釋訊號,接收方必須確切地知道訊號應當何時接收和處理,因此定時是至關重要的。在計算機網路中,定時的因素稱為位同步。**同步是要接收方按照傳送方傳送的每個位的起止時刻和速率來接收資料,否則會產生誤差。**通常可以採用同步或非同步的傳輸方式對位進行同步處理。

rxd(receive data) :接收方

txd(transmit data) : 傳送方

位同步:位同步是指數字傳輸中,數碼訊號碼元時間對齊的過程從資訊碼流中提取時鐘訊號,並借助於時鐘訊號來識別資訊碼元的定時提取過程。實現位同步的方法主要有外同步法和自同步法兩種:

外同步法:外同步的方法是,傳送端傳送資料之前先傳送同步時鐘訊號,接收方用這一同步訊號來鎖定自己的時鐘脈衝頻率,以此來達到收發雙方位同步的目的;

自同步法:接收方利用包含有同步訊號的特殊編碼(如曼徹斯特編碼)從訊號自身提取同步訊號來鎖定自己的時鐘脈衝頻率,達到同步目的。

同步傳輸

1.接收方和傳送方用同一時鐘源或通過外部線路協調統一時序。

2.面向資料幀,帶同步字元,開銷小。

3.隨著資料幀中實際資料位元位的增加,開銷位元所佔的百分比將相應地減少。但是,資料位元位越長,快取資料所需要的緩衝區也越大,這就限制了乙個幀的大小。另外,幀越大,它佔據傳輸**的連續時間也越長。在極端的情況下,這將導致其他使用者等得太久。

非同步傳輸

1.不要求接收方和傳送方時鐘一致。

2.面向字元,帶開始位和結束位,開銷大。

3.非同步傳輸通過字元起止的開始和停止碼抓住再同步的機會。

同步非同步總結

同步傳輸無論幀內的位還是幀與之間的間隔位都是位同步的;

非同步傳輸字元之間的位是非同步的,字元內是同步的。

摘自

位同步例子

同步非同步傳輸詳解

單工:單向傳輸。

半雙工:單方向傳輸,方向可換。

全雙工:雙方向傳輸。ps:要求一端同時有rxd 和 txd。

序列外設:

uart(全雙工,非同步)

usart (全雙工,同步/非同步)

spii2c

stm32主要由核心和片上外設組成。

核心由arm提供,片上外設由stm設計。

匯流排(bus):連線多個裝置的資料傳輸通道。

icode匯流排:用於取指,核心讀取flash中的code。

dcode匯流排:d 指的是data,資料分兩種:常量和變數,const修飾的常量存放於const flash 中,變數存放於sram中。dcode 用於取數。

dma匯流排:用於傳輸資料,可以是外在的儲存器,也可以是sram,flash。主要是用於儲存器之間資料傳遞。ps: 傳遞資料時無需經過cpu。dma

system匯流排:用於訪問外設暫存器,設定暫存器,用於暫存器程式設計。

ps:dcode匯流排和dma匯流排都可以訪問儲存器進行取數,所以要有個匯流排矩陣進行仲裁。

system匯流排不知道為什麼要經過匯流排矩陣仲裁,有知道的留下言!!

儲存器的對映

儲存器本身不具有位址資訊,它的位址是由晶元廠商或使用者分配,給儲存器分配位址 的過程就稱為儲存器對映

block 2:片上外設 0x4000 0000 ~ 0x5fff ffff(512mb)

block 3:fsmc的 bank1 ~ bank2 0x6000 0000 ~ 0x7fff ffff(512mb)

block 4:fsmc的 bank3 ~ bank4 0x8000 0000 ~ 0x9fff ffff(512mb)

block 5:fsmc 暫存器 0xa000 0000 ~ 0xcfff ffff(512mb)

block 6:沒有使用 0xd000 0000 ~ 0xdfff ffff(512mb)

block 7:cortex-m3內部外設 0xe000 0000 ~ 0xffff ffff(512mb)

block0:

ps: 系統復位或上電後,從0x0000 00000開始啟動。0x0000 0000 的別名由boot[1,0]決定。

上電或復位後,sysclk第四個上公升沿后,boot的引腳值會被鎖存,無法再改變。

預留 0x2001 0000 ~ 0x3fff ffff

sram 64kb 0x2000 0000 ~0x2000 fff

block2:

apb1外設 0x4000 0000 ~ 0x4000 77ff

apb2外設 0x4001 0000 ~ 0x4001 3fff

ahb外設 0x4001 8000 ~ 0x5003 ffff

博主也是在學習中,如有錯誤還望指出。

stm32f103外部中斷

void extix init void 外部中斷0服務程式 void exti9 5 irqhandler void 這是簡單的外部中斷的配置,pc7作為中斷輸入 上面補充io口的初始化 gpio initstructure.gpio mode gpio mode ipu pc6配置為快充指示 1...

STM32F103啟動檔案

目錄 一 概述 二 彙編指令 2.1 equ 2.2 area 2.3 space 2.4 preserve8 2.5 thumb 2.6 export 2.7 dcd 2.8 proc 2.9 ldr 2.10 blx 2.11 bx 2.12 temport 2.13 b 2.14 if,els...

STM32F103ZET6學習總結

1.任何外設在使用之前,必須先使能相應的時鐘。2.使用不同外設時,gpio引腳應該如何配置?1 gpio mode ain 模擬輸入 2 gpio mode in floating 浮空輸入 3 gpio mode ipd 下拉輸入 4 gpio mode ipu 上拉輸入 5 gpio mode ...