如何在Segger J-Flash中設置芯片初始化序列?

許多微控制器在燒錄之前需要一個自定義的初始化序列來初始化目標硬件,例如初始化PLL時鐘,關閉看門狗或定義Flash的等待狀態。在使用這些對初始化過程有特殊要求的芯片時,在Segger J-Flash軟件中創建工程時需要設置芯片的初始化序列。

打開J-Flash軟件,在Options->Project settings選項中,可以設置芯片的初始化和燒錄成功後需要執行的動作。

J-Flash支持設置的初始化命令包括讀寫特定地址、校驗、暫停CPU和設置芯片復位方式等。支持的完整的指令列表請參考J-Flash用戶手冊中的介紹。下面簡單介紹一些常用的初始化指令。

Reset:設置芯片的復位方式,如硬件復位或軟件復位等,某些芯片需要的特殊復位方式也需要通過該命令進行設置。

Delay:延時一段時間。

Write 32bit:向指定地址寫入32位的數據。註意所有的 "Write *"命令隻能用於寫入RAM或SFR寄存器,而不能將數據寫入到Flash閃存地址。要修改寫入到Flash區域的數據隻能通過改變燒錄文件來實現。燒錄文件可以通過使用 "Write File*"命令在初始步驟中修改。

Write File 32bit:向燒錄文件中的指定地址中寫入32位的數據,用於修改要燒錄的固件。

Halt:暫停CPU。

Go:CPU開始運行。

下面通過AT91SAM7S256該芯片的初始化序列設置來幫助理解,在Init.steps選項設置的Comment一欄可以添加註釋,用於記錄該行命令所要實現的功能。

如上圖所示,在該芯片的初始化序列中共設置瞭8條指令,下面將介紹這些指令具體完成的工作。

指令0:無延時立即執行復位動作,復位模式是模式8。該復位方式是用於ATMEL AT91SAM7內核芯片的特定復位模式,該模式通過寫芯片的RSTC_CR寄存器來復位外設。復位外設會使所有外設處於定義的復位狀態。這包括內存映射寄存器,這意味著復位後flash被映射到地址0。JLink支持的所有復位模式的介紹請參考J-Link的用戶手冊。

指令1:向0xFFFFFD44(看門狗定時模式寄存器)地址寫入數據0x00008000這個值來關閉看門狗。

指令2:向0xFFFFFF60(MC Flash模式寄存器)地址寫入數據0x00320300這個值來設置flash的等待狀態。

指令3:向0xFFFFFC20(PMC寄存器)地址寫入數據0x00000601這個值來初始化PLL時鐘。

指令4:延時200ms。

指令5:向0xFFFFFC2C(PLL寄存器)地址寫入數據0x00191C05這個值來設置PLL時鐘和分頻系數。

指令6:延時200ms。

指令7:向0xFFFFFC30(PMC寄存器內的特定位)地址寫入數據0x00000007這個值來選擇系統時鐘和外設時鐘。

本文中我們介紹瞭如何在J-Flash中設置芯片的初始化序列,該功能令J-Flash軟件能夠適配更多類型的芯片,進而更好的滿足用戶需求。

发表回复

相关推荐

搬家祝福语大全,这几条真的有用

搬新家是一件非常值得庆祝的一件事,在亲友搬家的时候能够说几句吉祥话,既能拉近彼此的距离,搬新家的人心里也更开心。最近 ...

· 1分钟前

建筑单体设计与节能

一、建筑物体形与节能 1、体形系数定义:建筑物与室外大气接触的外表面积与其所包围的体积的比值。外表面积中,不包括地面和 ...

· 2分钟前

群星3.6版“猎户座”铁人休闲探索战报(4)

群星3.6版“猎户座”铁人休闲探索战报(3) – 知乎 93紫龙:群星3.6版“猎户座”铁人休闲探索战报(3)

· 5分钟前

千门八将:三十六天局七十二地局108局

古老相传千门乃是推演八卦的祖师,伏羲氏所立。女娲造人后,补天而去,伏羲住世观黎民苦厄,而设虔门,希望能传下思想,铸万 ...

· 6分钟前

埋线双眼皮效果好吗?这几类人千万别做埋线

更——最近很多宝宝发照片给我,让我看看自己是否适合埋线,宝贝们,记得最好是发素颜,眼睛平视前方的照片哦,这样军师才能判 ...

· 8分钟前