A. 大工二零秋單片機原理及作用在線作業一
大工20秋《單片機原理及應用》在線作業1-輔導資料
第1題(單選題)以下關於ARM7系列內核說法正確的是( )。
A、馮-諾依曼結構,ARMv4指令集
B、5級流水線
C、執行ARMv7-M架構
D、哈佛結構,同時讀取/存儲數據
答:A
第2題(單選題)Bit-band區域的存儲器以( )位的方式進行訪問。
A、8
B、16
C、32
D、64
答:C
第3題(單選題)以下( )適用於高速運算及大數據處理。
A、嵌入式微控制器
B、嵌入式片上系統
C、嵌入式數字信號處理器
D、嵌入式微處理器
答:C
第4題(單選題)計數器方向控制由TIMx_CR1中的( )位控制。
A、APRE
B、DIR
C、OPM
D、CEN
答:B
第5題(單選題)以下關於Cortex-M3內核說法錯誤的是( )。
A、採用ARMv7-M架構,Thumb2指令架構(ISA)子集
B、哈佛結構,同時讀取/存儲數據
C、5級流水線
D、單周期32位乘法器
答:C
B. 單片機原理及應用張岩
單片機(Microcontrollers)是一種集成電路晶元,是採用超大規模集成電路技術把具有數據處理能力的中央處理器CPU、隨機存儲器RAM、只讀存儲器ROM、多種I/O口和中斷系統、定時器/計數器等功能(可能還包括顯示驅動電路、脈寬調制電路、模擬多路轉換器、A/D轉換器等電路)集成到一塊矽片上構成的一個小而完善的微型計算機系統,在各個領域廣泛應用。
諸如手機、汽車電子、工業上的步進馬達、機器手臂的控制等,都可見到單片機的身影。單片機的特點是編程、維護相對復雜,編程方式常用C語言或者匯編語言,成本較低,I/O介面相對有限。
PLC與單片機的區別
PLC是應用單片機構成的比較成熟的控制系統,是已經調試成熟穩定的單片機應用系統的產品,有較強的通用性。
單片機可以構成各種各樣的應用系統,使用范圍更廣,但單就「單片機」而言,它只是一種集成電路,還必須與其它元器件及軟體構成系統才能應用。
從工程的使用來看,對單項工程或重復數極少的項目,採用PLC快捷方便,成功率高,可靠性好,但成本較高。
對於量大的配套項目,採用單片機系統具有成本低、效益高的優點,但這要有相當的研發力量和行業經驗才能使系統穩定。
從本質上說,PLC其實就是一套已經做好的單片機(單片機范圍很廣泛)系統。
PLC的特點
PLC廣泛使用梯形圖代替計算機語言,對編程有一定的優勢。你可以把梯形圖理解成是與匯編等計算器語言一樣,是一種編程語言,只是使用范圍不同。而且通常做法是由PLC軟體把你的梯形圖轉換成C或匯編語言(由PLC所使用的CPU決定),然後利用匯編或C編譯系統編譯成機器碼。PLC運行的只是機器碼而已,梯形圖只是讓使用者更加容易使用而已。
如所說,MCS-51單片機也可以用於PLC製作,只是8位CPU在一些高級應用如:大量運算(包括浮點運算)、嵌入式系統(現在UCOS也能移植到MCS-51)等,有些力不從心而已。不過加上DSP就已經能滿足一般要求了,而且同樣使用梯形圖編程,我們可把梯形圖轉化為C51再利用KEIL的C51進行編譯。不難發現不同型號的PLC會選用不同的CPU,其實也說明PLC就是一套已經做好的單片機系統。
這樣一看PLC其實並不神秘,不少PLC是很簡單的,其內部的CPU除了速度快之外,其他功能還不如普通的單片機。通常PLC採用16位或32位的CPU,帶1或2個的串列通道與外界通訊,內部有一個定時器即可,若要提高可靠性再加一個看家狗定時器問題就解決了。
另外,PLC的關鍵技術在於其內部固化了一個能解釋梯形圖語言的程序及輔助通訊程序,梯形圖語言的解釋程序的效率決定了PLC的性能,通訊程序決定了PLC與外界交換信息的難易。對於簡單的應用,通常以獨立控制器的方式運作,不需與外界交換信息,只需內部固化有能解釋梯形圖語言的程序即可。
實際上,設計PLC的主要工作就是開發解釋梯形圖語言的程序。現在的單片機完全可以取代PLC。以前的單片機由於穩定性和抗電磁干擾能力比較的弱和PLC是沒有辦法相比的,現在的單片機已經做到了高穩定性和很強的抗干擾能力在某些領域已經實現了替換。
單片機可以取代PLC嗎?
有人說這是個偽問題,單片機是元器件,PLC是由元器件以及龐大的軟體構成的系統,兩者在這一方面沒有可比性 —— 大多PLC的控制晶元實際上就是單片機,也就是說可以將PLC看成是單片機的二次開發。單論工業防護等級,單片機的穩定性和可靠性能根本比不了PLC這種IP67類的產品( IP為標記字母,第一標記數字表示接觸保護和外來物保護等級,第二標記數字表示防水保護等級)。而且就PLC這種能應對工業惡劣環境的產品還開發出一套冗餘系統。
C. 單片機原理與應用陳勇版課後習題答案
最近論壇上發了一個連載帖子——吳鑒鷹單片機實戰項目精講,因此受到不少網友的關注,在這里吳鑒謝謝各位網友的支持、關心和信任。
在帖子中留了幾個群號,有兩千多讀者加了群,通過QQ向我詢問了很多問題,如果在工作不是太忙的時候我看到了就會回答,但是有時候做項目太忙就沒時間解答。
為此,在這里應群內成員以及一些網友的要求,專門寫一篇文章來針對這些問題做一個總結。希望能為大家的疑惑有一點點幫助就足以。不足之處,也希望大家客觀指出,君子和而不同。
1、學習單片機有用嗎?
有很多初學者有這樣的困惑,單片機初學者感覺入門很難,學著學著,就會產生這樣的疑問——自己辛辛苦苦學習單片機,將來有用嗎?
單片機只是一個工具,重要的還是思想,有了自己的想法,電子行業地域遼闊,隨便你闖。單片機這個切入點入手還是不錯的,可以讓你盡快進入電子殿堂的大門,如果你還在上學,不要眼睛裡面只盯著暫時的薪水,哪怕是畢業兩三年的也一樣。重要的是掌握程度和對技術的理解程度,有句話叫「水到渠成」,到時候再去研究工資的事情也不晚。
2、學習嵌入式編程有必要從51單片機開始嗎?
我原本來在讀大學的時候,有很多同學聽說學習ARM很牛逼,於是就跑到圖書館借了一兩本關於ARM的書,學一兩天後發現跟自己想的不太像,於是學著學著就慢慢放棄了。所以我總結一下,與其邁很大的步子,不如放慢腳步一步步走。從最基本的做起,一步步走,等單片機學會之後再進行像ARM,DSP之類高端處理器的運用,也就能得心應手了,如果想一口吃成一個胖子,只怕最後沒胖起來,倒把自己給噎死了!
3、會用高端處理器就牛了嗎?
不少網友問我:是不是學會了ARM、嵌入式操作系統就會很牛?是不是單片機就是運用在低檔產品上,ARM做出來的產品就高端了。
首先,從本質上說,是同一類東西,都是嵌入式應用方面的主力。十八般兵器,沒有優劣之分,只是在乎持兵器的人修為高低,當年解放軍憑借小米加步槍不也取得了抗戰勝利。
微處理器,單片機、DSP、FPGA、ARM,每一種都有自己的側重點,都具備自己的優勢和劣勢。
單片機:技術比較成熟,運用在工控領域比較多,但進行嵌入式應用顯得太龐大,因而派生出ARM單片機進行高端應用,可以進行操作系統的移植,但是現在一些高端單片機也可以移植操作系統,單片機跟ARM並沒有什麼本質的區別。
DSP:是數據處理的縮寫。也可以做控制運用,它的優勢是運算,主要用在運算量大的領域,如數字信號處理,圖像處理,視屏處理,導彈雷達上也等等。如果要用的好,需要學會很多高深的演算法,需要有較強的數學功底。
FPGA:可編程邏輯陣列的縮寫。實際上就是做一個晶元,用軟體實現它的內部連接,達到用軟體的方法實現硬體的目標。是用硬體實現的一種方法。是早期單片機(功能簡單的邏輯應用)的現代實現方法。
總結:一個嵌入式軟體工程師,其實核心競爭力不是你會運用什麼晶元,當你會了一兩種以後,再學其他的,就會覺得很容易了。一個真正的有競爭力的工程師,應該是具備良好的編程習慣,編程思路,還應該具備扎實的數學功底。只有把握核心的東西,才能走的更遠。
4、單片機行業技術研發有前途嗎?
這也是初學者最為關心的一個話題,單片機行業的技術研發將來前途如何?
著名的高爾夫球手,老虎伍茲說過一句話:我只需成為高爾夫數一數二的高手,錢自然會追著我來。
單片機技術研發,也就是一個類型的職業崗位,同樣叫做「單片機工程師」,能力、經驗、學歷,參差不齊,因此待遇肯定也不盡相同。
高待遇者,年薪數百萬也有,低收入者,養家糊口都難。
只有倒閉的企業,沒有倒閉的行業!
不是行業沒有前景,只能反思自己為何沒有足夠的優秀。
5、單片機技術研發太苦太累,值得去堅持嗎?
在論壇里看到很多人在抱怨:現在電子行業的研發做起來太累,待遇又不是很好,感覺沒什麼出路。
既然我們選擇了單片機行業,就堅持做下去,不要輕信別人講的:單片機研發工程師沒有前途,太苦太累。
學好單片機你至少可以找一份技術性的工作,就算目前累一點,至少你可以看到希望,隨著自己經驗的積累,未來的路會越走越寬!至少可以坐在辦公室裡面,有自由的時間可以支配。
你知道那種專業課沒學好,只能去車間做一線工人的感覺嗎?坐在車間里像一個機器人一樣每天重復同樣的工作嗎?你喜歡過那種一點自由都沒有,在流水線上忙碌著,連上廁所時間都沒有的工作嗎?我相信沒有人喜歡!
所有不要被一些工作了幾年的工程師的話語所迷惑,說做技術很苦,拿的錢又少,當你真正有一天想去做技術,發現原來因為自己缺少知識的積累,沒有公司願意要你。
簡單地分享了自己對單片機領域一些問題的看法,歡迎同行積極分享自己的心得,能讓更多初學者少走彎路,擺正心態進行單片機的學習。