嵌入式学习笔记——基于Cortex-M的单片机介绍
基于Cortex-M的單片機介紹
- 前言
- 1生產廠商及其產品線
- 1.1ARM單片機的產品線
- 1.2命名規則
- 作業1
- 2習單片機的資料準備
- 2.1STM32開發所需手冊
- 2.1.1芯片的數據手冊
- 芯片基本信息
- 內部結構
- 掛接結構
- 作業2
- 引腳數以及片內外設數量
- 2.1.2對應系列的編程手冊
- 2.1.3開發板對應的手冊
- 2.1.4片外外設芯片手冊
- 本文重點
- M4系列目錄
前言
本文繼續接著上一篇中關于Cortex-M的介紹,來記錄一些關于ARM系單片機的知識。
1生產廠商及其產品線
芯片廠商在拿到ARM的授權后,會在之前的內核基礎上添加自己的片內外設形成自家的單片機產品,ST(意法半導體)、GD(國產兆易創新)、NXP(恩智浦)、CW(武漢鑫源半導體)等等都是此類單片機生產廠商。還有廠家為了進一步簡化電路結構還會在單片機內部添加部分運算放大器、柵極驅動以及電源管理等電路,MM(靈動微電子)Infineon(英飛凌)等等廠商都有類似的產品,例如MM32SPIN27。想要詳細了解的同學可以去他們的官網查詢芯片手冊和產品介紹。這里著重介紹ST與GD的32為單片機。
1.1ARM單片機的產品線
在上一篇中我們知道了ARM的Cortex-M架構又細分了八個種類,在工作中最常用的是M3、M4系列,下面我們就來看看ST與GD兩家廠商關于這兩類內核單片機的具體產品。
首先是ST的,查詢單片機以及相關資料的最好方式就是找對應公司的官網,官網上能找到絕大部分我們所需要的開發資料。
ST的中文官網鏈接——https://www.st.com/content/st_com/zh.html
進入官網后按照如下步驟即可進入到ST的32位單片機的產品頁面。
在該界面我們可以查看我們想要看的單片機的參數
當然也可以直接在搜索框搜索例如搜索STM32F103C8T6就可以查看到關于這個單片機的數據手冊等相關文件。
以此類推關于GD32的資料獲取以及產品預覽也可以在其官網進行搜索或者查詢,兆易創新官網——https://www.gigadevice.com.cn/
通過兩家的官網信息我們可以發現,兩家的F1xx系列都是通用性單片機,主打一個性價比,F4xx是一個相對高端的單片機,而xxxLxx是主打低功耗的單片機、xxHxx是主打高性能可以做圖像處理等復雜操作的單片機。
稍稍一對比就不難發現這兩家的產品都大同小異,我們拿兩家的F103C8T6來做個簡單的對比
STM32F103C8T6:
GD32F103C8T6:
大致預覽一下它們各自數據手冊的內部結構圖,可以發現,二者除了CPU主頻不一樣以外,其他幾乎一致,截圖不太清晰,為了方便大家對比,上面貼了二者數據手冊的地址,可以下載下來用PDF閱讀器查看。
瀏覽了兩家產品線后,不難看出,M3系列的內核主要用在F1系列的通用性單片機上,M4系類的內核就相對高端一些,主要應用在F4系列,帶有一些更高級的功能。
1.2命名規則
看完這么多產品后,是不是感覺他們的命名有些太長了,搞工科的一般都是求簡,怎么簡單怎么來,那么為什么關于單片機的命名要弄得如此復雜呢,答案在芯片手冊中已經給出了,單片機這么長的命名,每一個字符都有其意義。
如上圖關于STM32F103C8T6的命名規則介紹
首先STM代表生產廠家
STM----意法半導體
GD----兆易創新
F代表General-purpose也就是通用型單片機
103代表該芯片的具體型號
C代表引腳數(48PIN)
8代表64K的Flash(存代碼的)決定代碼量
T代表封裝類型,是LQFP四面表貼型
6代表使用溫度為-40度到85度
看明白了命名規則我們就能根據芯片命名去了解到他的一些具體參數了,這對于項目選型有很大的益處。
作業1
這里還放一個命名,大家可以根據一下提示寫出對應的信息,評論區見
STM32F407VET6
2習單片機的資料準備
在弄明白主流芯片的命名規則后,對于一個項目,選型已經搞定了,接下來就是如何操作芯片實現對應功能了,也就是開發了,開發一款單片機的時候,我們需要盡可能的找到他的手冊。
2.1STM32開發所需手冊
2.1.1芯片的數據手冊
這個是重中之重,我們以STM32F103ZET6為例,首先在上面給出的ST官網下載他的數據手冊
芯片基本信息
打開數據手冊,第一頁告知了此芯片的內核Arm? 32-bit Cortex?-M3 CPU,主頻72MHZ,內存:256 to 512 Kbytes of Flash memory
內部結構
然后是其內部結構,一般在數據手冊第二章,或者在該芯片的介紹頁,下圖就是介紹頁的內部結構示意圖,其中深藍色的部分是ARM公司提供的內核或者叫他微處理器(FPU、CPU),而淺藍色的部分則是由ST公司自己設計的片內外設。
掛接結構
而在其數據手冊還有更為詳細的結構圖,它描述了片內外設與微處理器的連接方式,如下圖所示:
其中紅色框代表的是ARM提供的內核,主頻為48/72MHZ,
綠色框代表的是AHB總線,主頻為48/72MHZ,它連接了APB1、APB2以及內核
橙色框代表的是APB2總線主頻為48/72MHZ,它主要是掛接了GPIO模塊以及TIM1等等片內外設
藍色框代表的是APB1總線,主頻為24/36MHZ,它連接了TIM2、TIM3、USART2、UART4、SPI2等等片內外設
以上這些對于我們編程具有很好地輔助作用,是本文的一個重點,希望大家看了有所收獲
既然這么重要,那就再留一個作業,大家有興趣的可以寫在評論區。
作業2
STM32F407VE的結構圖
引腳數以及片內外設數量
在芯片手冊第二章就可以查閱到對應型號的GPIO數量、外設數量等等,這里有一點需要注意,
12-bitADC的通道有16個,而不是片內ADC模塊有16個,片內ADC模塊只有兩個。
有關數據手冊更多的信息,放到后面再進行補充,此處主要是需要掌握內部結構圖,片內外設信息這些。
2.1.2對應系列的編程手冊
數據手冊可以使我們直觀了解這款芯片的資源,片內外設的連接方式,以及其工作的必要條件;編程手冊則可以讓我們知道該怎么去控制這款芯片實現我們想要的功能。編程手冊可以在官網搜索查詢,但是是英語手冊,如果需要中文手冊需要自己去百度搜索。官網的地址:https://www.st.com/zh/microcontrollers-microprocessors/stm32f103/documentation.html
關于這個手冊在此不做介紹,后面記錄片內外設以及操作芯片時再進一步記錄。
2.1.3開發板對應的手冊
這個就需要找對應廠商或者是與自己對接的硬件工程師要,主要作用是搞清楚片外外設與單片機的引腳了解方式。這里借用正點原子的戰艦V3原理圖來展示,具體引用也留到后面記錄。
2.1.4片外外設芯片手冊
這個與上一個開發板對應手冊一致,也是找芯片廠商以及硬件工程師尋找,具體作用就是方便后面對照手冊對片外外設進行操作。
本文重點
1.單片機的命名規則;
2.數據手冊的查詢;
3.芯片內部結構以及外設掛接結構。
M4系列目錄
1.嵌入式學習筆記——概述
2.嵌入式學習筆記——基于Cortex-M的單片機介紹
3.嵌入式學習筆記——STM32單片機開發前的準備
4.嵌入式學習筆記——STM32硬件基礎知識
5.嵌入式學習筆記——認識STM32的 GPIO口
6.嵌入式學習筆記——使用寄存器編程操作GPIO
7.嵌入式學習筆記——寄存器實現控制LED小燈
8.嵌入式學習筆記——使用寄存器編程實現按鍵輸入功能
9.嵌入式學習筆記——STM32的USART通信概述
10.嵌入式學習筆記——STM32的USART相關寄存器介紹及其配置
11.嵌入式學習筆記——STM32的USART收發字符串及串口中斷
12.嵌入式學習筆記——STM32的中斷控制體系
13.嵌入式學習筆記——STM32寄存器編程實現外部中斷
14.嵌入式學習筆記——STM32的時鐘樹
15.嵌入式學習筆記——SysTick(系統滴答)
16.嵌入式學習筆記——M4的基本定時器
17.嵌入式學習筆記——通用定時器
18.嵌入式學習筆記——PWM與輸入捕獲(上)
19.嵌入式學習筆記——PWM與輸入捕獲(下)
20.嵌入式學習筆記——ADC模數轉換器
21.嵌入式學習筆記——DMA
22.嵌入式學習筆記——SPI通信
23.嵌入式學習筆記——SPI通信的應用
24嵌入式學習筆記——IIC通信
總結
以上是生活随笔為你收集整理的嵌入式学习笔记——基于Cortex-M的单片机介绍的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 第9章 结构
- 下一篇: 暴走:从核弹级技术Deepfake与区块