建議用偉福模擬器,上手容易,keil也不錯
㈡ 單片機內部基本原理 bin文件如何跑起來 編譯器做了什麼
無論是單片機還是cpu內部主要有三種部件 ALU 控制器 寄存器。
這個要從編譯器開始講起,編譯器會給你編寫的軟體增加一個頭部,無論是MDK還是IAR等等,這個頭部是做了什麼工作那?頭部主要利用單片機寄存器上電後從FLASH將全局變數以及全局未初始化變數搬移倒RAM,增加堆棧 復位 中斷向量表 才開始從flash讀取你編寫的程序,因為編譯器已經把程序整個編碼為機器碼放在flash,有不太了解機器碼的可以再去了解,機器碼主要是運算加減搬移的那些操作,只不過單片機它就認識了。
單片機內部的控制器讀取flash的機器碼,通過內部R0-R15做數據中轉和RAM交換數據,通過ALU做運算,ALU非常擅長做邏輯的運算,寄存器是存放需要暫存處理的數據,使得它跑了起來。
編譯器----編譯器的程序----bin文件----機器碼----運行
㈢ PIC單片機用什麼編譯器啊!我的是PIC16F690的單片機,該選用什麼編譯器編程呢
Microchip自己出了一款集成開發環境,叫MPLAB,此套軟體由Microchip免費發放,可以編譯匯編。C編譯器,一般用PICC。
㈣ 單片機有哪些開發工具
不同的型號的單片機需要不同的開發軟體。我們以80C51系列、PIC系列和AVR系列為例分別說明。
單片機程序的編寫不需要任何特殊的軟體,只要是文本編緝軟體就可以了,如WINDOWS自帶的記事本,WORD等,不過這些軟體編寫並不方便,有一些更好的文本編緝器可供選擇,如UltraEdit,PE2等。當然,人們最常用的還是使用開發軟體自帶的編緝器來進行編寫。以80C51系列單片機為例,最為流行的軟體是Keil軟體。Keil軟體是一款綜合開發工具,內置了編緝器,ASM匯編器,C51編譯器,調試器等部分.
㈤ AVR單片機用哪個編譯器好
IAR效率最高,但收費。atmel studio是atmel自己的編譯器,基於gcc,免費。
不二選擇:AVR Studio 4.19 + AVR toolchain。
AVR toolchain 是 atmel 官方製作的 GCC 工具鏈,專門與 AVR Studio 相配。
AVR Studio 支持調試插件(plugins),proteus 專門有針對 AVR Studio 的插件,非常好用。
㈥ 51 單片機程序開發都有什麼開發工具
編譯器:ATMEL一般為keil 其他廠商使用它們自己推薦的編譯器
代碼編輯工具:UE等,這個看自己習慣,現在的編譯器一般自帶代碼編輯的功能但一般功能較弱
模擬工具:proteus 模擬單片機的一個軟體,用用即可,bug比較多
最好弄個開發板,加一套下載工具,然後就可以自己開始了
㈦ 我初學單片機,看網上有人說keil有人說keilC,這兩者有區別嗎是不同的...
這是兩個不同的概念,Keil是軟體,KeilC是語言。Keil是單片機的開發,編譯,調試環境,KeilC是開發單片機所用的語言,也就是C語言在單片機中的應用。現在Keil這種開發環境已經有很多版本了,而且有針對不同的硬體版本,比如說Keil
for
C51,Keil
for
arm。
㈧ PIC單片機16系列的使用什麼編譯器
使用MAPLAB,microchip公司出的開發軟體包。
㈨ 單片機一般是用什麼編程軟體
都用KEIL軟體,版本升級了,支持所以單片機類型的程序編寫。我現在用4的版本
㈩ 主流C51單片機編譯器比對
int short 的大小是因機器而異嘛(准確點應該是編譯器)。你都說了人家規定的是「最小」為16位,又不是只能是16位,也沒有說兩者應該相等(事實上是short不超過int就OK啦)。所以當然可以short類型為半個機器字長,而int類型則為一個機器字長的啦。
「C++標准規定了每個算術類型的最小存儲空間,但他並不自知編譯器使用更大的存儲空間 」
說簡單點就是C++規定了個最小的值,但是將你的代碼編譯成機器碼的編譯器則確定了你這個長度值為多少。因為C++是一種語言,一個規范,或者說只是一種規定,然後要將你按這種規范寫的代碼編譯成能在機器上運行的代碼的是編譯器。而在不同的機器上運行的程序的實際結構是不一樣的,比如單片機與PC相差就很大。要將按相同規范寫的程序在各種各樣亂七八糟的機器上運行,就需要相應的編譯器了。所以實際的大小是由你編譯代碼的編譯器確定的。
PS:當然當前一般的PC上int都是32位,short16位的。因為現在32位的機子是主流嘛。如果你不寫什麼單片機的程序可以不用太在意這個問題。但是寫單片機程序時就要注意了,因為一般一個單片機的編譯器可以編譯很多種型號晶元的代碼,而這些型號有可能從8位到32位都有……