麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 學院 > 開發設計 > 正文

startup_LPC17XX.s 啟動文件分析

2019-11-11 06:26:54
字體:
來源:轉載
供稿:網友

工程中startup_LPC17XX.s是M3的啟動文件,啟動文件由匯編語言寫的,它的作用一般是下面這幾個:

  1)堆和棧的初始化

  2)中斷向量表定義

  3)地址重映射及中斷向量表的轉移

  4)設置系統時鐘頻率

  5)中斷寄存器的初始化

  6)進入C應用程序

  core_cm3.c與core_cm3.h主要是M3外圍驅動源代碼與頭文件,使用時一般不需要修改,直接調用就可以。system_LPC17xx.c與system_LPC17xx.h是關于系統的文件,里面主要提供了系統初始化函數SystemInit(),文件中默認情況下定義的晶振的大小為12M,使用的是外部晶振,還使用了PLL0倍頻,關于倍頻的問題,以后慢慢再總結。芯片LPC1768的初始化主要包括時鐘配置,電源管理,功耗管理等。相比較而言,時鐘配置相對復雜,因為它包括兩個PLL倍頻電路,一個是主PLL0主要是為系統和USB提供時鐘,另一個是PLL1專門為USB提供48M時鐘,但也可以不使用它們。由于時鐘配置比較靈活,所以相以設置這些參數也比較復雜,但是這些在系統文件中已有明確的定義,所以想要變動時只需修改系統文件中相應的宏或函數即可。

程序完成如下內容的工作:

        開辟一塊大小為Stack_Size的棧空間;

        標號__initial_sp指向棧頂位置;

        定義堆空間大小為Heap_Size;

        建立中斷向量表Vectors,cortex-M3規定起始地址必須存放棧頂地址即__initial_sp,緊接著存放復位入口地址,這樣內核復位后就會自動從起始地址的下32位取出復位地址執行復位中斷服務函數。

        Reset_Handler復位中斷函數中先EXPORT聲明Reset_Handler的全局性,然后分別執行外部的函數SystemInit和__main。

下面對匯編程序中的幾個關鍵字做說明:

        AREA偽指令:用于定義代碼段和數據段,后跟屬性標號。其中“READWRITE”表示可讀寫,“READONLY”只讀屬性。根據LPC1788的數據手冊描述的存儲介質,可知可讀寫段保持在SRAM區,起始地址為0x1000 0000,代碼中的堆棧保存在SRAM空間。只讀段保存在Flash區,起始地址為0x0000 0000,代碼中的中斷向量表保存在Flash空間。 因此可以總結出,在0x0000 0000 存放的是棧頂的地址__initial_sp(即0x1000 0200),在0x0000 0004 存放的是Reset_Handler的地址。

LPCaddresS

圖1:LPC1788 地址映射

memoryLPC

圖2: debug中 0地址的值0x1000 0200 即棧頂地址, 0x0000 0004 地址值為0x0000 00F9(看反匯編可知該值 即Reset_Handler的入口如下圖)

0XF9

     DCD指令:開辟內存空間,中斷向量表建立中使用相當于C語言中的函數指針,每個成員都是函數指針,指向各個中斷服務函數。

        自此分析了LPC1788的啟動,主要包括堆棧初始化,和中斷向量表的初始化。LPC1788有內部Flash,所以上電從內部Flash啟動,內部Flash的起始地址為0x0000 0000,存放棧頂的地址0x1000 0200。 0x0000 0004存放復位中斷的入口地址。LPC1788復位后,從0x0000 0004取出復位入口地址,執行中斷復位函數,從而跳轉到SystemInit和main C語言函數執行


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 久久精品亚洲成在人线av网址 | 97久色| 国产69精品久久久久孕妇黑 | 九九热免费视频在线观看 | 国产一国产一级毛片视频 | 依人在线视频 | 美国一级毛片片aa久久综合 | 久久国产精品电影 | 国产精品久久久网站 | 欧美性生活久久久 | 久久久久国产成人精品亚洲午夜 | 亚洲精品久久久久www | 国产黄色网 | 久久亚洲春色中文字幕久久 | 免费在线观看成人av | 他也色在线视频 | 性片久久 | 欧美亚洲一区二区三区四区 | 国产自在线 | www.99久久久 | 亚洲午夜国产 | 亚洲第一黄色网 | 亚洲视频网 | 鲁丝一区二区三区不属 | 91 在线观看 | 国产伦精品一区二区三区在线 | 久久久久免费精品 | 中文字幕在线观看免费视频 | 午夜视频在线观看免费视频 | 久久人人人 | 手机免费看一级片 | 欧美精品成人一区二区三区四区 | 99热1| 国产亚洲精品久久久久久网站 | 国产精品啪 | 女人叉开腿让男人桶 | 精品亚洲二区 | 国产自在自线午夜精品视频在 | 农村少妇吞精夜夜爽视频 | 欧美久久一区二区 | 久久经典国产视频 |