我來發(fā)表一下對arm的觀點(討論篇)
zhangzhe12 發(fā)表于 2006-3-23 11:41 ARM 論壇 ←返回版面
看了半年的arm,看了半年的21ic,我也來談?wù)勎业挠^點。
1把arm當(dāng)超級單片機用,一個高手的觀點,初學(xué)者不能跟著學(xué),學(xué)習(xí)為了什么,為了更好的使用,如果當(dāng)一個超級單片機學(xué)習(xí)那你什么都學(xué)不到,你看周立功的easy arm好是好,提供了很多模版,但學(xué)了半天感覺還是51。為了好好學(xué)arm還是從頭學(xué)把引導(dǎo)程序,終端看仔細(xì)了,很多人連lpc的時鐘配置也不明白,但敢說他會arm,我曾進也是其中一員。
2我只對硬件感興趣,arm已經(jīng)把硬軟件的界限打破,如果還硬件管硬件,軟件歸軟件,那你還不如回到51,arm是能同意處理多任務(wù)系統(tǒng),51就不行了,你不在軟件上下功夫,那你對不起arm 以上僅是比人愚見,一起討論
---------------
同意樓上的觀點
hanyafeng 發(fā)表于 2006-3-23 19:57 ARM 論壇 ←返回版面
連硬件的io口以及外圍設(shè)備都沒有精心設(shè)計過,誰會相信你做的軟件可以緊貼硬件,得到最佳的工作效率呢?
如果小的嵌入式系統(tǒng)都沉浸在用高速io口模擬什么時序,誰又能保證你能將arm所有的潛力發(fā)揮出來呢?大家知道,如果用io口模擬會使指令流打差不多10倍折扣。
現(xiàn)代mcu都是基于編譯器原理設(shè)計出來的,我們在做設(shè)計時必須兼顧軟硬件兩個方面,不能將二者完全分開。
arm內(nèi)核那么多層的代碼運行級別本身就給我們工程師許多想象的空間,我們?yōu)槭裁床话l(fā)揮一下呢?
-------------------
我的看法
微風(fēng) 發(fā)表于 2006-3-24 12:58 ARM 論壇 ←返回版面
對于一個有8位單片機基礎(chǔ)的人,將arm作為超級單片機來作入門學(xué)習(xí),我覺得沒什么不妥,學(xué)習(xí)由淺入深挺好的。對于這個人來說,他最熟悉的是原來8位的單片機,剛接觸ARM的時候先撇開操作系統(tǒng)又暫時不去管bootloader的操作,那么就會發(fā)現(xiàn)其實arm和8位單片機操作起來其實是相似的。等到了解一些內(nèi)容后,再進一步去學(xué)習(xí)boot、學(xué)習(xí)操作系統(tǒng)那相對就會容易一點了。
51也有人拿來跑操作系統(tǒng),不過估計是玩的成份居多,而AVR跑操作系統(tǒng)則是有實際應(yīng)用的。一個人的精力有限,不可能什么都面面俱到,總該有一個側(cè)重的方向。做一個項目,通常需要一個團隊,這個團隊里面有軟件工程師也有硬件工程師,大家各司其職,又相互配合。搞軟件的人懂一點硬件會對寫程序有幫助,搞硬件的人也應(yīng)該懂一點軟件。軟件工程師可以專門負(fù)責(zé)操作系統(tǒng)里面的任務(wù)處理,硬件工程師除了完成硬件電路的設(shè)計外還需要編寫一些硬件驅(qū)動程序。如果一個軟件工程師不知道什么是串口,那么他就可能會不理解用串口發(fā)送數(shù)據(jù)和普通I/O操作有什么不一樣。如果一個硬件工程師沒有地址的概念、不知道數(shù)據(jù)位寬,那么他就可能不會理解給ARM系統(tǒng)接一塊16位的FLASH的時候地址線為什么要偏移一位。