當(dāng)前位置:首頁 > 單片機(jī) > 單片機(jī)
[導(dǎo)讀]1、 AHB系統(tǒng)總線分為APB1(36MHz)和APB2(72MHz),其中2>1,意思是APB2接高速設(shè)備2、Stm32f10x.h相當(dāng)于reg52.h(里面有基本的位操作定義),另一個為stm32f10x_conf.h專門控制外圍器件的配置,也就是開關(guān)頭文件的作

1、 AHB系統(tǒng)總線分為APB1(36MHz)和APB2(72MHz),其中2>1,意思是APB2接高速設(shè)備

2、Stm32f10x.h相當(dāng)于reg52.h(里面有基本的位操作定義),另一個為stm32f10x_conf.h專門控制外圍器件的配置,也就是開關(guān)頭文件的作用

3、 HSE Osc(High Speed External Oscillator)高速外部晶振,一般為8MHz,HSI RC(High Speed InternalRC)高速內(nèi)部RC,8MHz

4、 LSE Osc(Low Speed External Oscillator)低速外部晶振,一般為32.768KHz,LSI RC(Low Speed InternalRC)低速內(nèi)部晶振,大概為40KHz左右,提供看門狗時鐘和自動喚醒單元時鐘源

5、 SYSCLK時鐘源有三個來源:HSI RC、HSE OSC、PLL

6、 MCO[2:0]可以提供4源不同的時鐘同步信號,PA8

7、 GPIO口貌似有兩個反向串聯(lián)的二極管用作鉗位二極管。

8、 總線矩陣采用輪換算法對系統(tǒng)總線和DMA進(jìn)行仲裁

9、 ICode總線,DCode總線、系統(tǒng)總線、DMA總線、總線矩陣、AHB/APB橋

10、在使用一個外設(shè)之前,必須設(shè)置寄存器RCC_AHBENR來打開該外設(shè)的時鐘

11、數(shù)據(jù)字節(jié)以小端存儲形式保存在存儲器中

12、 內(nèi)存映射區(qū)分為8個大塊,每個塊為512MB

13、 FLASH的一頁為1K(小容量和中容量),大容量是2K。

14、 系統(tǒng)存儲區(qū)(SystemMemory)為ST公司出廠配置鎖死,用戶無法編輯,用于對FLASH區(qū)域進(jìn)行重新編程。所以我們燒寫程序務(wù)必選擇BOOT1 = 0,這樣通過內(nèi)嵌的自舉程序?qū)LASH進(jìn)行燒寫,比如中斷向量表和代碼

15、 STM32核心電壓為1.8V

16、 STM32復(fù)位有三種:系統(tǒng)復(fù)位、上電復(fù)位、備份區(qū)域復(fù)位。其中系統(tǒng)復(fù)位除了RCC_CSR中的復(fù)位標(biāo)志和BKP中的數(shù)值不復(fù)位之外,其他的所有寄存器全部復(fù)位。觸發(fā)方式例如外部復(fù)位、看門狗復(fù)位、軟件復(fù)位等;電源復(fù)位由于外部電源的上電/掉電復(fù)位或者待機(jī)模式返回。復(fù)位除了BKP中的寄存器值不動,其他全部復(fù)位;備份區(qū)域復(fù)位的觸發(fā)源為軟件復(fù)位或者VDD和VBAT全部掉電時。

17、 單片機(jī)復(fù)位后所有I/O口均為浮空輸入狀態(tài)

18、 68個可屏蔽中斷通道,16個可編程優(yōu)先級,16個內(nèi)核中斷,一共68+16=84個中斷。103系列只有60個中斷,107系列才有68個中斷

19、 系統(tǒng)啟動從0x00000004開始,0x000 0000保留

20、 (NestedVectored Interrupt Controller)NVIC嵌套向量中斷控制器,分為兩種:搶先式優(yōu)先級(可嵌套)和中斷優(yōu)先級(副優(yōu)先級,不能嵌套)。兩種優(yōu)先級由4位二進(jìn)制位決定。分配下來有十六種情況:


21、0號搶先優(yōu)先級的中斷,可以打斷任何中斷搶先優(yōu)先級為非0號的中斷;1號搶先優(yōu)先級的中斷,可以打斷任何中斷搶先優(yōu)先級為2、3、4號的中斷;……;構(gòu)成中斷嵌套。如果兩個中斷的搶先優(yōu)先級相同,誰先出現(xiàn),就先響應(yīng)誰,不構(gòu)成嵌套。如果一起出現(xiàn)(或掛在那里等待),就看它們2個誰的子優(yōu)先級高了,如果子優(yōu)先級也相同,就看它們的中斷向量位置了。原來中斷向量的位置是最后的決定因素!?。?!

22、%20上電初始化后AIRC初始化為0,為16個搶先式優(yōu)先級,但是由于所有的外部通道中斷優(yōu)先級控制字PRI_n為0,所以搶先式優(yōu)先級相同,此時就不能嵌套了

23、%20NVI中有ISER[2](Interrupt%20Set-Enable%20Registers),ICER[2](Interrupt%20Clear-Enable%20Registers),ISPR[2](Interrupt%20Set-Pending%20Registers),ICPR[2](Interrupt%20Clear-Pending%20Registers),IABR[2](Active%20Bit%20Registers),IPR[15](InterruptPriority%20Registers)定義。其中ISER和ICER分別為中斷使能和中斷失能寄存器,都是寫1來使能/失能中斷的。為什么寫1?為什么不采用一個寄存器而用兩個寄存器來表示中斷使能/失能狀態(tài)?由于硬件,寫0比較復(fù)雜,并且可能造成其他位的狀態(tài)改變,所以用1來表示打開或者關(guān)斷是比較合理的

24、%20中斷標(biāo)志位需要手動清除

25、%20配置外圍器件的一般步驟:1、打開端口時鐘。2、定義初始化結(jié)構(gòu)體并初始化。3、調(diào)用

26、串口的奇偶校驗:如果是奇偶校驗,那么USART_InitStructure.USART_WordLength=%20USART_WordLength_9b;這個數(shù)據(jù)的長度必須設(shè)定為9位!

27、ADC的規(guī)則組可以自定義轉(zhuǎn)換通道順序和轉(zhuǎn)換的通道個數(shù)。在實際應(yīng)用中,有時候希望有一些特別的通道具有很高的優(yōu)先權(quán),需要在規(guī)則組進(jìn)行轉(zhuǎn)換的時候強(qiáng)制打斷,進(jìn)行另一個通道的轉(zhuǎn)換,這樣一組通道,叫做注入組。

28、定時器的輸出比較模式:Timing(凍結(jié),什么都不做,普通定時),Active(OCxREF輸出高電平有效),Inactive(OCxREF輸出低電平),Toggle(比較成功后翻轉(zhuǎn)電平)。

29、STM32的定時器從0開始計數(shù),滿足一些條件,給出標(biāo)志位(比如匹配成功、時間更新、溢出等)然后從0開始計數(shù)。這一點和51不同。

30、OCx=OCxREF+極性

31、自動裝載寄存器和影子寄存器:前者相當(dāng)于51當(dāng)中的溢出設(shè)定數(shù)值。而影子寄存器顧名思義是影子,就是寄存器的另一分copy。實際起作用的是影子寄存器,而程序員操縱的則是自動裝載寄存器。如果APPE位使能,表明自動裝載寄存器的值在下一次更新事件發(fā)生后才寫入新值。否則,寫入自動裝載寄存器的值會被立即更新到影子寄存器。

32、RCC_PCLK1Config(RCC_HCLK_Div4);PCLK1的4分頻給定時器基準(zhǔn)時鐘

33、定時器配置:RCC、NVIC、GPIO(OC輸出或者PWM)、TIMx

34、通用定時器可以輸出4路不同的PWM,高級定時器可以輸出4路不同的PWM外,還可以輸出3路互補(bǔ)的PWM信號(驅(qū)動三相電機(jī)),一共有7路。這樣算出來STM32可以產(chǎn)生30路PWM=7*2+4*4

35、

36、高級定時器時鐘源掛在了APB2上,而通用定時器掛在APB1上。AHB(72mhz)→APB1分頻器(默認(rèn)2)→APB1時鐘信號(36mhz)→倍頻器(*2倍)→通用定時器時鐘信號(72mhz)。如果APB1沒有分頻,那么通用定時器的時鐘信號頻率就直接等于APB1的時鐘頻率,沒有上述的倍頻器*2過程。TIM_SetAutoreload()用來改變PWM的頻率,TIM_SetCompare1()用來改變占空比

37、有刷電機(jī)一般啟動力矩大一些,無刷電機(jī)啟動力矩小,運(yùn)行起來力矩大。有刷電機(jī)采用電刷機(jī)械電流換向,而無刷電機(jī)則通過霍爾傳感器測出轉(zhuǎn)子的電流來判斷電機(jī)的運(yùn)動位置和方向,返回給控制回路。

38、死區(qū)是必須要有的,因為這涉及到電路的短路問題。晶閘管在換向的時候需要死區(qū)時間來徹底關(guān)斷線路

39、剎車功能用來在控制回路出現(xiàn)問題時,硬件自動給予外部電機(jī)進(jìn)行緊急剎車制動,反應(yīng)在PWM上持續(xù)給出一個固定的占空比?(三相驅(qū)動也是?)

40、PWM輸出最好采用PWM模式,其他的比較輸出模式相位會慢慢改變,不精準(zhǔn)

41、對FLASH的讀寫需要先解鎖后加鎖。FLASH寫0容易,寫1難。

42、下載程序有兩種方式,一種為ICP(在線編程),適用于JTAG或SWD協(xié)議下的燒寫程序。另一種成為IAP(在應(yīng)用編程),適用于很多接口(USB,串口,CAN)下載到存儲器中,IAP允許在程序運(yùn)行時重新燒寫FLASH

43、FLASH分為主存儲器(這里放置用戶的程序代碼)和信息塊(啟動代碼),除此之外,還有一部分叫做系統(tǒng)存儲器,這一塊用戶不可操作,為ST公司出產(chǎn)后固化,為系統(tǒng)的上電自舉程序

44、FLASH在寫的時候,一定不能讀,如果有讀操作,那么將會鎖住總線

45、對FLASH操作時,必須打開HIS

46、STM32有兩種看門狗(IWDG獨立看門狗《獨立時鐘》,WWDG窗口看門狗《由APB1分頻而來》)

47、SPI的的最高頻率為36MHz(fpclk/2)

48、 TIM1和TIM8高級定時器在輸出PWM時,需要配置一下主輸出功能(CtrlPWMOutputs)才能輸出PWM。其他的通用定時器不需要這樣配置。但是TIM6和TIM7沒有PWM輸出功能。

49、Code為程序代碼部分

RO-data表示程序定義的常量(如:const temp等);

RW-data表示已初始化的全局變量

ZI-data表示未初始化的全局變量,以及初始化為0的變量

Code, RO-data,RW-data..............flash

RW-data, ZIdata...................RAM

初始化時RW-data從flash拷貝到RAM

50、STM32F103ZET6有144個引腳(Z為144),其中,可用IO口為112個(7X16=112,ABCDEFG口)

51、ARM公司只生產(chǎn)內(nèi)核標(biāo)準(zhǔn),不生產(chǎn)芯片。ST、TI這樣的公司從ARM公司那里購買內(nèi)核,然后外加自己的總線結(jié)構(gòu)、外設(shè)、存儲器、始終和復(fù)位、I/O后就組成了自己的芯片。

52、CMSIS標(biāo)準(zhǔn)用于在向上的用戶層和下面的硬件層交換信息。這個架構(gòu)當(dāng)然可以自己定義,但是這樣的話就會沒有標(biāo)準(zhǔn)。所以強(qiáng)制使用CMSISI標(biāo)準(zhǔn)來設(shè)計芯片。通俗點的講就是系統(tǒng)初始化的函數(shù)名稱CMSIS定義為SystemInit(),GPIO_ResetBits()等

53、端口復(fù)用和端口重映射是兩個概念:前者在使能其對應(yīng)的端口和對應(yīng)的功能時鐘即可。后者需要打開AFIO時鐘,然后進(jìn)行端口的重映射GPIO_PinRemapConfig()

54、下載程序只能使用串口1,在硬件設(shè)計時一定要注意!

55、J-TAG調(diào)試頻率一般設(shè)定為2MHz,而SWD調(diào)試頻率可以設(shè)定為10MHz

56、SysTick的中斷實現(xiàn)可以有兩種方式:循環(huán)等待和中斷法。推薦用循環(huán)等待,中斷法可能會出問題而且占用資源。

57、部分I/O引腳是5V兼容的。單個I/O的最大驅(qū)動電流和灌入電流均為25mA。整個芯片的電流為150mA

58、KEIL支持位段操作,可以利用C語言中的位段知識定義位段結(jié)構(gòu)體,然后對單獨的寄存器進(jìn)行單獨的位操作。

59、關(guān)于內(nèi)部上下拉電阻的設(shè)置:如果外部的按鍵另一頭接地,那么需要設(shè)置成上拉電阻。(理由是當(dāng)沒有按下按鍵

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫毥谦F公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險,如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點: 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運(yùn)營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團(tuán))股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉