1樓:
其實51和arm是一樣的東西,都是微控制器,只不過arm是51的升級,比51更高階一些而已
專,「c語言寫個main函式就可屬
以控制51」是因為在建工程的時候調入了模板,對於片內外設最好在main函式的開始初始化一下(51和arm都要),如果沒有初始化,可能是沒有用這些片內外設,或者程式寫的比較簡單,堆疊在模板中都有設定(51和arm都是),所以如果沒有特殊需要不用設定。
2樓:匿名使用者
arm也可以直bai接祼跑,這是沒du問題的,比如寫一段代zhi碼實現一個埠dao上的回led閃爍,但要注
意這樣幾件答事情,
啟動**的對映
堆疊初始化
時鐘初始化
這幾件事,有的晶片需要做,有的不需要,但你應該保證這些事情都是確定的,如果寫c**,一般在啟動**中都做好了,所以你不需要管,要用匯編,那就要你管了。
另外,埠輸出也不像51,簡單的寫0就完了,可能要配置埠方向,開啟埠的工作時鐘。。。
結論,arm本質上也是一塊晶片,直接用匯編當然可以用,但它比51的功能多太多了,或者說相對於51,它太複雜了,用匯編太容易出錯,還是用c的好些。
請問arm與微控制器用起來有什麼區別?謝謝!
51微控制器程式設計時彙編和c語言如何結合
c語言和組合語言之間主要存在 相互呼叫 混合程式設計等關係,舉例來說吧 1 c語言呼叫匯編子程式 此時,彙編子程式需要申明為外部程式 include extern void delay void sbit pluse p1 0 main 彙編子程式 彙編部分需要做如此處理。public delay ...
51微控制器程式設計,為什麼只有數碼管亮。微控制器是STC89C52RC,程式是看的郭天祥的
解釋一來下wela,dula是指什麼?如果是數原始碼管的公共端,bai那說明一下du是共陰還是共陽?根據我的理解zhi,如果要兩個數dao碼管一起亮,應該把上面的幾句都包含在while 1 迴圈內吧?即 include sbit dula p2 6 sbit wela p2 7 void main ...
51微控制器c語言程式設計能給位賦值麼
keil的話可以。開啟你的reg51 或reg52等 標頭檔案,你就會看到已經宣告的位變數,格式是 sbit 位變數名 sfr名 位地址值 p3也是標頭檔案中最開始部分宣告的 標頭檔案中有 sbit wr p3 6 所以你直接寫 wr 1就行了 c語言中不能直接給二進位制某一位賦值 但是可以通過按位...