pic編譯
『壹』 一般8位PIC單片機使用c語言還是匯編語言編程,好像編譯器不是支持所有類型的單片機
PIC單片機的C語言編譯器是分類支持各類PIC單片機的。
一般做工業產品的公司大多用匯編來編寫程序,原因有:
1:pic的8位單片機一般ROM和RAM都相對較小,而現在的PIC的C編譯器在優化方面做的不是很好,簡單的一個C語句編譯器能編出很多行匯編代碼。所以有些開發人員認為用c還不如直接用匯編寫。
2:因為PIC的C編譯器不是免費的,破解版的又存在一些邏輯漏洞什麼的。而用pic單片機應用的大多是一些需要穩定性極高的控制場合,所以很多開發公司都乾脆直接使用匯編來寫。
『貳』 編譯GNU/Linux共享庫,為什麼要用PIC編譯
不是共享庫,而是動態庫 (dynamic library)。 動態庫的意思是庫內的地址是在load時刻才由loader動態決定的,所以和靜態庫不同,編譯出來的動態庫代碼必須是 「位置無關代碼」 (PIC: position-independant code)
『叄』 PIC MPLAB編譯器到底用哪個
首先你說的這些都是PIC單片機的C語言編譯器。PICC都是HITECH公司針對PIC系列的C語言編譯器。CCS是另一個公司的。他們跟Microchip(PIC單片機的生產商)都沒有關系,屬於第三方軟體。在MPLAB里出現只是他們公司間的合作,捆綁上這些編譯器的試用版(試用三十天)。
如果你用PIC18、pic24或dsPIC30/33這些單片機的話。推薦使用Microchip自己出的C編譯器MPLAB C18(對應PIC18),MPLAB C30(pic24和dsPIC30/33)。因為這些編譯器的編譯效率要優於其他第三方,並且有Microchip的官方應用文檔支持。
而pic10、pic12、pic16等系列的8位單片機因為內部的程序區比較小,Microchip並沒有推出針對他們的C語言編譯器。而CCS和HITECH則有針對他們的c語言編譯器。就編譯效率來說。CCS是最好的,但它在中國的的技術支持卻很少。大部分的軟體使用文檔都是英文的。在國內的應用也沒有HITECH的picc那麼好。如果這三種系列的單片機,推薦用PICC。
另外,上述的所有編譯器除了MPLAB C30在ICD2附送的光碟里有學生版(只針對dsPIC30/33,免費版)外,其他的所有針對PIC單片機的C編譯器都是收費的。最便宜的是PICC for pic12/16 ,好像才800多。
不過…… …………………… 網上有破解版本的。哈哈。
另外,如果是用pic10、pic12、pic16等系列的8位單片機,推薦不要先用C語言寫程序。用MPLAB捆綁的匯編編譯器(這是免費送的)。雖然學起來比較費勁,但能讓你更好的了解PIC單片機。畢竟現在外頭好多用PIC單片機的企業都要求用匯編寫程序(就為了最大效率的使用程序存儲器)。
『肆』 PIC的編譯器CCS與PICC的語言有什麼不同的地方,兩者可以相互移植嗎
對於標準的ANSC C語言部分沒什麼問題,如用C語言的數據類型寫的簡單演算法之類,可以互相移植。
對於單片機編譯而言,
PICC的C語言按ANSI C來定義,並進行了C語言的擴展。PICC和ANSI C有一個根本的區別就是,PICC不支持函數的遞歸調用。
CCS也是C語言,但也不是標準的ANSI C語言,它的頭文件定義與ANSI C語言不同,所以它的程序和PICC不能混著編譯,兩者之間也不能混著移值。針對CCS編寫的程序只能用CCS的編譯器編譯,用PICC編譯只能報錯,反之亦然。
『伍』 PIC單片機16系列的使用什麼編譯器
編譯器使用的XC8,16系列是8位的單片機用的比較多的就是XC8
『陸』 pic單片機可以用c編程嗎用什麼編譯軟體他是屬於51系列的嗎
PIC單片機可以用C,
編譯環境(也就是編程軟體)為MPLAB,他不屬於51系列.