freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內容

畢業(yè)設計論文-基于arm的gps定位信息顯示器的軟件設計(編輯修改稿)

2024-12-20 19:56 本頁面
 

【文章內容簡介】 R1, [R0] 。 LDR R0, =BCFG1 LDR R1, =((128)+(0x411)+(110)+(0x45)+(0x01))。 STR R1, [R0] 。 LDR R0, =BCFG2。 LDR R1, =((028)+(0x611)+(110)+(0x65)+(0x01)) 。 STR R1, [R0] LDR R0, =BCFG3 。 設置 BCFG3 寄存器 LDR R1,= ((128)+(0x511)+(110)+(0x55)+(0x01))。 STR R1, [R0] 本設計分別把 IS61LV25616AL、 SST39VF1601 分配到 BANK0、 BANK1,IS61LV25616AL、 SST39VF1601 都是 16 位的外部存儲器 ,因此 MW(29~28)設為1,IS61LV25616AL 高速訪問時間分別為 10ns、 90ns,以上的程序把對這兩個外部存儲器的讀寫配置成最快速度。 堆棧初始化 每個異常模式都有自身堆??臻g ,異常處理程序通常將其它要使用的寄存器保存到這個堆棧。以下為初始化堆棧的代碼 。 InitStack MOV R0, LR 。設置中斷模式堆棧 MSR CPSR_c, 0xd2 LDR SP, StackIrq 。設置快速中斷模式堆棧 MSR CPSR_c, 0xd1 LDR SP, StackFiq 。設置中止模式堆棧 MSR CPSR_c, 0xd7 LDR SP, StackAbt 廣西工學院 2020 屆畢業(yè)設計 基于 ARM 的 GPS 定位信息顯示器的軟件設計 9 。設置未定義模式堆棧 MSR CPSR_c, 0xdb LDR SP, StackUnd 。設置系統(tǒng)模式堆棧 MSR CPSR_c, 0xdf LDR SP, =StackUsr MOV PC, R0 StackIrq DCD IrqStackSpace + (IRQ_STACK_LEGTH 1)* 4 StackFiq DCD FiqStackSpace + (FIQ_STACK_LEGTH 1)* 4 StackAbt DCD AbtStackSpace + (ABT_STACK_LEGTH 1)* 4 StackUnd DCD UndtStackSpace + (UND_STACK_LEGTH 1)* 4 AREA MyStacks, DATA, NOINIT, ALIGN=2 IrqStackSpace SPACE IRQ_STACK_LEGTH * 4 。中斷模式堆??臻g FiqStackSpace SPACE FIQ_STACK_LEGTH * 4 ??焖僦袛嗄J蕉褩?臻g AbtStackSpace SPACE ABT_STACK_LEGTH * 4 。中止義模式堆??臻g UndtStackSpace SPACE UND_STACK_LEGTH * 4 。未定義模式堆棧 MSR 為寫狀態(tài)寄存器指令 ,該指令可以直接設置狀態(tài)寄存器 CPSR 或 SPSR,上述代碼的 MSR 指令都是設置 CPSR 的 控制域 psr[7:0],接著指令 LDR 是設置各個模式的專用的堆棧指針 SP的地址。用偽操作 AREA 聲明名為 MyStatus 的數據段 ,數據偽操作 SPACE為各個堆棧分配內存單元 ,并用 0初始化內存單元 ,從程序中可以看出中止模式、未定義模式堆棧空間都被初始化為 0,是因為在這些異常模式下都是執(zhí)行一個死循環(huán)不需要保存數據。由于 CPU 要進行模式切換即由管理模式切換到系統(tǒng)模式 ,不能由系統(tǒng)模式的 LR 正確返回子程序 ,所以在初始化堆棧程序的入口處保存鏈接寄存器 LR(模式自身的 LR(R14)用于保存子程序返回地址 )到R0,同時用 R0 返回子程序。 目標板初始化 根據目標板的外圍電路設置存儲器映射控制寄存器 MEMMAP、分頻器寄存器VPB、 PLL 倍頻值寄存器 PLLCFG[4:0]、 MAM 定時寄存器。以下為初始化目標板代碼。 ifdef __DEBUG MEMMAP = 0x3。 //remap endif 廣西工學院 2020 屆畢業(yè)設計 基于 ARM 的 GPS 定位信息顯示器的軟件設計 10 ifdef __OUT_CHIP MEMMAP = 0x3。 //remap endif ifdef __IN_CHIP MEMMAP = 0x1。 //remap endif /* 設置系統(tǒng)各部分時鐘 */ PLLCON = 1。 if (Fpclk / (Fcclk / 4)) == 1 //fcclk==4 倍的 Fpclk VPBDIV = 0。 endif if (Fpclk / (Fcclk / 4)) == 2//fcclk==2 倍的 Fpclk VPBDIV = 2。 endif if (Fpclk / (Fcclk / 4)) == 4//fcclk==1 倍的 Fpclk VPBDIV = 1。 endif if (Fcco / Fcclk) == 2 PLLCFG = ((Fcclk / Fosc) 1) | (0 5)。 endif if (Fcco / Fcclk) == 4 PLLCFG = ((Fcclk / Fosc) 1) | (1 5)。 endif if (Fcco / Fcclk) == 8 PLLCFG = ((Fcclk / Fosc) 1) | (2 5)。 endif if (Fcco / Fcclk) == 16 PLLCFG = ((Fcclk / Fosc) 1) | (3 5)。 endif PLLFEED = 0xaa。 PLLFEED = 0x55。 while((PLLSTAT amp。 (1 10)) == 0)。 PLLCON = 3。 PLLFEED = 0xaa。 PLLFEED = 0x55。 廣西工學院 2020 屆畢業(yè)設計 基于 ARM 的 GPS 定位信息顯示器的軟件設計 11 MAMCR = 0。 if Fcclk 20200000 MAMTIM = 1。 else if Fcclk 40000000 MAMTIM = 2。 else MAMTIM = 3。 endif endif MAMCR = 2。 存儲器映射控制寄存器的配置是根據用戶使用何種方式啟動 ARM,在調試前若選擇 RelOutChip 則編譯器會執(zhí)行 ifdef __OUT_CHIP MEMMAP = 0x3。 //remap endif 把 MEMAP 設置為 0x3,即選擇用戶外部存儲器模式 ,從 0x80000000 處開始執(zhí)行程序, 這樣 0x800000000x8000003C 異常向量表便映射 0x00000000 0x00 00003C。 同樣的 ,若選擇 RelInChip 則編譯器會執(zhí)行 ifdef __IN_CHIP MEMMAP = 0x1。 //remap endif 選擇用戶 Flash 模式 ,ARM 直接從 0x00000000 執(zhí)行程序。 在本設計中使用 ,倍增器 值 M=4,所以處理器時鐘( Fcclk)為 。為了使電流控制振蕩器頻率( Fcco)滿足 156320MHz, 選 擇 分頻器的值 P=2,使得 Fcco=Fcclk2P= MHz。取 VPB分頻器的分頻值為 1/4,所以外設時鐘( Fpclk) = Fcclk/4=,為了使 PLLCON和 PLLCFG寄存器的更改生效 ,必須將正確的饋送序列寫入 PLLFEED寄存器。饋送序列是將值 0xAA 寫入 PLLFEED, 接著將值 0x55寫入 PLLFEED。 while((PLLSTAT amp。 (1 10)) == 0)。是等待 PLL處于鎖定狀態(tài) , MAM定時寄存器決定使用多少個 cclk周期訪問 Flash存儲器。這樣可調整 MAM時序使其匹配處理器操作頻率 ,在本設置所使用的處理器時鐘較快 ,把 MAMTIM配置為 3,即使用 3個處理器時鐘訪問外部 FLASH。 經過 了初始化中斷向量表、配置外部總線、初始化各模式堆棧、設置系統(tǒng)各部分時鐘、設置存儲加速模塊 ARM 后 , ARM 將進入用戶主程序,執(zhí)行用戶代碼。 廣西工學院 2020 屆畢業(yè)設計 基于 ARM 的 GPS 定位信息顯示器的軟件設計 12 移殖μ COSⅡ到 LPC2292 嵌入實時操作系統(tǒng)μ COSⅡ是一種占先式多任務操作系統(tǒng)??晒袒⒖刹脺p、移植性好,具有良好的可靠性和穩(wěn)定性。它支持 64 個任務,具有信號量、消息郵箱、消息隊列等多種任務間通信機制 ,圖 說明了 181。C/OSⅡ的結構以及它與硬件的關系。 圖 C/OSⅡ的結構以及 它與硬件的關系 μ COSII 中要移植的部分見表 所示。移植μ COSII 到一個新的體系機構上一般需要 3個文件: ( C 語言頭文件)、 (C 程序源文件 )及 (匯編程序源文件 )。由表 可以看出,移植μ COSII 需要在 包含幾個類型的定義和幾個常數的定義;在 和 中包含幾個函數的定義和時鐘節(jié)拍中斷服務程序的代碼。實際上, Applition SoftWare μCOSⅡ (Processer Indentent Code) μCOSⅡ Configuration (Apptication Sepcific) μCOSⅡ Port (Processer Specific Code) 、 、 CPU Timer SoftWare HardWare HardWare 廣西工學院 2020 屆畢業(yè)設計 基于 ARM 的 GPS 定位信息顯示器的軟件設計 13 還有一個 文件需要關注,因為每一個應用都包含獨特的 文件。 表 μ COSII中要移植的部分 移殖內容 類型 所屬文件 描述 BOOLEAN、 INT8U INT8S、INT16U INT16S、 INT32U INT32S 、 FP32 、 FP64 數據類型 與編譯器無關的數據類型 OS_STK 數據類型 堆棧數據類型 OS_ENTER_CRITICAL() 、OS_EXIT_CRITICAL() 宏 開關中斷的代碼 OS_STK_GROWTH 常量 定義堆棧增長方 向 OS_TASK_SW 函數 任務切換時執(zhí)行的代碼 OSTaskStkInit 函數 任務堆棧初始化函數 OSTaskStkInit() OSTaskCreateHook() OSTaskDelHook() OSTaskSwHook()
點擊復制文檔內容
黨政相關相關推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1