Cortex-M3 技術參考手冊 Cortex-M3是一個32位的核,在傳統的單片機領域中,有一些不同于通用32位CPU應用的要求。譚軍舉例說,在工控領域,用戶要求具有更快的中斷速度,Cortex-M3采用了Tail-Chaining中斷技術,完全基于硬件進行中斷處理,最多可減少12個時鐘周期數,在實際應用中可減少70%中斷。 單片機的另外一個特點是調試工具非常便宜,不象ARM的仿真器動輒幾千上萬。針對這個特點,Cortex-M3采用了新型的單線調試(Single Wire)技術,專門拿出一個引腳來做調試,從而節約了大筆的調試工具費用。同時,Cortex-M3中還集成了大部分存儲器控制器,這樣工程師可以直接在MCU外連接Flash,降低了設計難度和應用障礙。 ARM Cortex-M3處理器結合了多種突破性技術,令芯片供應商提供超低費用的芯片,僅33000門的內核性能可達1.2DMIPS/MHz。該處理器還集成了許多緊耦合系統外設,令系統能滿足下一代產品的控制需求。ARM公司希望Cortex-M3核的推出,能幫助單片機廠商實. Cortex的優勢應該在于低功耗、低成本、高性能3者(或2者)的結合。 Cortex如果能做到 合理的低功耗(肯定要比Arm7 & Arm9要低,但不大可能比430、PIC、AVR低) + 合理的高性能(10~50MIPS是比較可能出現的范圍) + 適當的低成本(1~5$應該不會奇怪)。 簡單的低成本不大可能比典型的8位MCU低。對于已經有8位MCU的廠商來說,比如Philips、Atmel、Freescale、Microchip還有ST和Silocon Lab,不大可能用Cortex來打自己的8位MCU。對于沒有8位MCU的廠商來說,當然是另外一回事,但他們在國內進行推廣的實力在短期內還不夠。 對于已經有32位ARM的廠商來說,比如Philips、Atmel、ST,又不大可能用Cortex來打自己的Arm7/9,對他們來說,比較合理的定位把Cortex與Arm7/9錯開,即<40MIPS的性能+低于Arm7的價格,當然功耗也會更低些;當然這樣做的結果很可能是,斷了16位MCU的后路。 對于仍然在推廣16位MCU的廠商來說,比如Freescal、Microchip,處境比較尷尬,因為Cortex基本上可以完全替代16位MCU。 所以,未來的1~2年,來自新廠商的Cortex比較值得期待-包括國內的供應商;對于已有32位ARM的廠商,情況比較有趣;對于16位MCU的廠商,反應比較有意思。 關于編程模式 Cortex-M3處理器采用ARMv7-M架構,它包括所有的16位Thumb指令集和基本的32位Thumb-2指令集架構,Cortex-M3處理器不能執行ARM指令集。 Thumb-2在Thumb指令集架構(ISA)上進行了大量的改進,它與Thumb相比,具有更高的代碼密度并提供16/32位指令的更高性能。 關于工作模式 Cortex-M3處理器支持2種工作模式:線程模式和處理模式。在復位時處理器進入“線程模式”,異常返回時也會進入該模式,特權和用戶(非特權)模式代碼能夠在“線程模式”下運行。 出現異常模式時處理器進入“處理模式”,在處理模式下,所有代碼都是特權訪問的。 關于工作狀態 Coretx-M3處理器有2種工作狀態。 Thumb狀態:這是16位和32位“半字對齊”的Thumb和Thumb-2指令的執行狀態。 調試狀態:處理器停止并進行調試,進入該狀態。
上傳時間: 2013-12-04
上傳用戶:壞壞的華仔
Keil C51使用詳解Keil C51 是美國Keil Software 公司出品的51 系列兼容單片機C 語言軟件開發系統,與匯編相比,C 語言在功能上、結構性、可讀性、可維護性上有明顯的優勢,因而易學易用。用過匯編語言后再使用C 來開發,體會更加深刻。Keil C51 軟件提供豐富的庫函數和功能強大的集成開發調試工具,全Windows界面。另外重要的一點,只要看一下編譯后生成的匯編代碼,就能體會到Keil C51生成的目標代碼效率非常之高,多數語句生成的匯編代碼很緊湊,容易理解。在開發大型軟件時更能體現高級語言的優勢。下面詳細介紹 Keil C51 開發系統各部分功能和使用。第二節 Keil C51 單片機軟件開發系統的整體結構C51 工具包的整體結構,如圖(1)所示,其中uVision 與Ishell 分別是C51 forWindows 和for Dos 的集成開發環境(IDE),可以完成編輯、編譯、連接、調試、仿真等整個開發流程。開發人員可用IDE 本身或其它編輯器編輯C 或匯編源文件。然后分別由C51 及A51 編譯器編譯生成目標文件(.OBJ)。目標文件可由LIB51 創建生成庫文件,也可以與庫文件一起經L51 連接定位生成絕對目標文件(.ABS)。ABS 文件由OH51 轉換成標準的Hex 文件,以供調試器dScope51 或tScope51 使用進行源代碼級調試,也可由仿真器使用直接對目標板進行調試,也可以直接寫入程序存貯器如EPROM 中。圖(1) C51 工具包整體結構圖第三節 Keil C51 工具包的安裝81. C51 for Dos在 Windows 下直接運行軟件包中DOS\C51DOS.exe 然后選擇安裝目錄即可。完畢后欲使系統正常工作須進行以下操作(設C:\C51 為安裝目錄):修改 Autoexec.bat,加入path=C:\C51\BinSet C51LIB=C:\C51\LIBSet C51INC=C:\C51\INC然后運行Autoexec.bat2. C51 for Windows 的安裝及注意事項:在 Windows 下運行軟件包中WIN\Setup.exe,最好選擇安裝目錄與C51 for Dos相同,這樣設置最簡單(設安裝于C:\C51 目錄下)。然后將軟件包中crack 目錄中的文件拷入C:\C51\Bin 目錄下。第四節 Keil C51 工具包各部分功能及使用簡介1. C51 與A51(1) C51C51 是C 語言編譯器,其使用方法為:C51 sourcefile[編譯控制指令]或者 C51 @ commandfile其中 sourcefile 為C 源文件(.C)。大量的編譯控制指令完成C51 編譯器的全部功能。包控C51 輸出文件C.LST,.OBJ,.I 和.SRC 文件的控制。源文件(.C)的控制等,詳見第五部分的具體介紹。而 Commandfile 為一個連接控制文件其內容包括:.C 源文件及各編譯控制指令,它沒有固定的名字,開發人員可根據自己的習慣指定,它適于用控制指令較多的場合。(2) A51A51 是匯編語言編譯器,使用方法為:9A51 sourcefile[編譯控制指令]或 A51 @ commandfile其中sourcefile 為匯編源文件(.asm或.a51),而編譯控制指令的使用與其它匯編如ASM語言類似,可參考其他匯編語言材料。Commandfile 同C51 中的Commandfile 類似,它使A51 使用和修改方便。2. L51 和BL51(1) L51L51 是Keil C51 軟件包提供的連接/定位器,其功能是將編譯生成的OBJ 文件與庫文件連接定位生成絕對目標文件(.ABS),其使用方法為:L51 目標文件列表[庫文件列表] [to outputfile] [連接控制指令]或 L51 @Commandfile源程序的多個模塊分別經 C51 與A51 編譯后生成多個OBJ 文件,連接時,這些文件全列于目標文件列表中,作為輸入文件,如果還需與庫文件(.LiB)相連接,則庫文件也必須列在其后。outputfile 為輸文件名,缺少時為第一模塊名,后綴為.ABS。連接控制指令提供了連接定位時的所有控制功能。Commandfile 為連接控制文件,其具體內容是包括了目標文件列表,庫文件列表及輸出文件、連接控制命令,以取代第一種繁瑣的格式,由于目標模塊庫文件大多不止1 個,因而第2 種方法較多見,這個文件名字也可由使用者隨意指定。(2) Bl51BL51 也是C51 軟件包的連接/定位器,其具有L51 的所有功能,此外它還具有以下3 點特別之處:a. 可以連接定位大于64kBytes 的程序。b. 具有代碼域及域切換功能(CodeBanking & Bank Switching)c. 可用于RTX51 操作系統RTX51 是一個實時多任務操作系統,它改變了傳統的編程模式,甚至不必用main( )函數,單片機系統軟件向RTOS 發展是一種趨勢,這種趨勢對于186 和38610及68K 系列CPU 更為明顯和必須,對8051 因CPU 較為簡單,程序結構等都不太復雜,RTX51 作用顯得不太突出,其專業版軟件PK51 軟件包甚至不包括RTX51Full,而只有一個RTX51TINY 版本的RTOS。RTX51 TINY 適用于無外部RAM 的單片機系統,因而可用面很窄,在本文中不作介紹。Bank switching 技術因使用很少也不作介紹。3. DScope51,Tscope51 及Monitor51(1) dScope51dScope51 是一個源級調試器和模擬器,它可以調試由C51 編譯器、A51 匯編器、PL/M-51 編譯器及ASM-51 匯編器產生的程序。它不需目標板(for windows 也可通過mon51 接目標板),只能進行軟件模擬,但其功能強大,可模擬CPU 及其外圍器件,如內部串口,外部I/O 及定時器等,能對嵌入式軟件功能進行有效測試。
上傳時間: 2013-11-01
上傳用戶:zhouxuepeng1
就單片機測控技術應用于平板導熱系數儀的研制提出了應用方法,介紹了串行A/D轉換器TLC2543與單片機的硬件連接,熱電偶信號的冷端補償方法以及高精度運算放大器ICL7650的應用,對數字PID算法提出了新的應用方式。
上傳時間: 2013-10-28
上傳用戶:dbs012280
EDA技術課程設計:可控計數器的設計 設計要求:1.設計一個五進制計數器,由兩個控制鍵sel控制不同的計數方式;2.當sel=00時,按0、1、2、3、4、0、1、2、3、4......順序計數;3.當sel=01時,按0、2、4、6、8、0、2、4、6、8......順序計數4.當sel=10時,按1、3、5、7、9、1、3、5、7、9......順序計數5.當sel=11時,按5、4、3、2、1、5、4、3、2、1......順序計數6.由數碼管分別譯碼顯示控制信號和計數狀態,分別用3位數碼管動態顯示;7.給出VHDL設計的源程序。
上傳時間: 2013-12-16
上傳用戶:YYRR
本文提出了一種基于MCS-51 系列單片機的低成本恒溫控制設計方案,用AD590 進行溫度采集,以ADC0804 為AD 轉換裝置,通過LCM 液晶顯示,還兼有整點提醒、臨界溫度預警的功能.電路以及模塊化的程序編寫方法,重點介紹了ADC0804 及相關應用,液晶顯示模塊WG14432B-YYH-N 的特點、使用方法及其與單片機的接口電路。
上傳時間: 2013-10-22
上傳用戶:s363994250
各種測控系統和智能儀器、儀表基本組成包括:傳感器、計算機系統、執行器。現在,傳感器、執行器的通用性越來越好,設計自動測控系統或智能儀器儀表有標準的4~20mA或0~10mA的標準信號輸出的傳感器和接受標準驅動信號的執行器供選擇,因此,設計者只需設計計算機系統部分,計算機系統基本結構是一致的,僅涉及到具體芯片選擇,實現途徑大同小異,加之單片機技術的迅猛發展,其集成度越來越高,功能越來越強,接口更容易,如80C198,內部有4個帶采樣保持的10位A/D通道,4個高速觸發輸入通道,6個高速脈沖發生器的輸出可以觸發外部事件。一套設計完善的計算機系統便具有極好的通用性。
上傳時間: 2013-11-01
上傳用戶:jiwy
針對機艙消防應急救援模擬訓練系統中訓練環境控制的難題,設計了一種以AT89C52單片機為核心的多點溫度煙霧測控系統。該系統可實現對模擬系統中消防環境(煙霧,溫度)的實時測量和控制。根據訓練系統對溫度煙霧指標要求嚴格的特點,引入了基于NCD 與優化函數結合的非線性PID 對PID 參數進行優化整定,實現了實時控制。整個設計簡明,清晰。
上傳時間: 2013-10-21
上傳用戶:lunshaomo
EPCM-2643是EPCM2000系列數據采集工控主板中功能最豐富的產品之一。它不僅擁有完整的底層驅動庫和通信協議,更具有數據采集、大容量存儲、通信及控制等豐富的外圍電路,從而充分減少了您二次開發時間。
上傳時間: 2013-10-17
上傳用戶:hullow
渦卷式空氣壓縮機是一種新型空氣壓縮機,具有噪聲低、體積小、可靠性好等特點。本文提出了一種基于ATMEL 89C52 單片機的渦卷式空氣壓縮機電氣控制系統的實現方案,詳細說明了總體方案設計、硬件設計與軟件設計,并給出了關鍵元器件的選型。實際結果表明:該系統具有可靠性好、控制精度高、操作簡便、配置靈活、直觀的故障指示及完善的自保護等特點,完全滿足了渦卷式空氣壓縮機現場控制的要求,是渦卷式空氣壓縮機的理想配套產品。常規的渦卷式空壓機電控系統主要采用繼電器加壓力開關的方式進行控制,故障率高,可靠性低,控制參數的修改非常不便。本文提出了一種采用智能化微電腦集成設計技術的電控系統實現方案,它通過對關鍵點各種傳感器進行實時檢測來控制整個系統的工作狀態,減少了常規控制方式下的電器元件及執行機構數量,提高了可靠性,降低了運行成本;清晰的實時狀態指示,靈活的控制參數設置,完善的故障診斷,直觀的故障顯示,是空壓機的理想配套產品。
上傳時間: 2013-10-21
上傳用戶:ysystc670
隨著當前電子技術及發動機電控技術的發展,以32位嵌入式微控制器及多任務實時操作系統為基本技術特征的新一代電子控制單元ECU(Electronic Control Unit)的開發已成為汽車電子發展應用的主流。本文在Tonadofor OSEKWorks多任務實時操作系統及32佗Power PC微控制器MPC555的基礎上,介紹高壓共軌柴油發動機電子控制單元的最小系統設計方案。
上傳時間: 2013-10-30
上傳用戶:miaochun888