如何學好單片機?
單片機越來越多的受到電子產(chǎn)品研發(fā)人員和我國高等技術類學校的應用與重視。本文在多年實際經(jīng)驗的基礎上,從單片機結(jié)構(gòu)、邏輯思維、和微觀理念方面著手,詳細介紹了如何學好單片機這門應用技術的幾點經(jīng)驗之談。
2.理清邏輯思維
學習單片機是最重要的一點就是不能糊涂,不能把邏輯關系搞得亂七八糟。對于初學單片機時,要學會把一個程式的邏輯性關系用流程圖的形式清楚的表示出來。至于用來編寫程式的單片機的語言是很簡單的,不要把它想象得很神秘,不管是匯編語言、C語言、還是更高級的VC++和圖示化語言(如LABVIEW),都只不過是把我們清楚的邏輯思維告訴單片機處理器,并指令它將要被如何進行邏輯操作。把單片機的指令看得很重要應該是我們大家在學習單片機時的一個最大的誤區(qū),老是擔心指令記不住、不會用,這也是學習單片機還沒入門、上路的主要表現(xiàn)。其實這樣有什么擔心的呢,記不住就不要強求好了,把指令放在旁邊,當把邏輯關系清理好之后,再來對著指令表確定哪個邏輯關系由哪些指令來完成,當一條指令運用得幾次后,根本就用不著擔心不知道指令不會用了。退一步講,即使真的記不得指令,參照書本的指令用法也完全可行,現(xiàn)在的知識量是海量,全把所學的知識死記在腦子里肯定會把腦袋漲破。在寫程序時,只要程序的邏輯關系調(diào)理清楚了,寫起來就好比做簡單的翻譯工作,把邏輯關系翻譯成計算機語言來表示。如下圖3和圖4是一個簡單的鍵掃描電路和程式流程圖,我們根據(jù)這個流程圖就很快能用目前非常普遍的C51匯編語言來寫出這個程序。 KEY_SCAN: PUSH A ;保存寄存器A INC R1 ; AND R1,00000011B MOV R2,3 MOVC DPHL,TABLE ;取表首址 MOVC A,@DPHL+R1 ;讀取表中數(shù)據(jù) AND A,00001111B ;保留低4位 MOV P1,A ;按所取表中數(shù)據(jù)由P1低4位輸出 CALL DELAY_TIME ;延時 MOV A,P1 ;讀取P1端口 AND A,11100000B ;保留P14、P16、P17 LOOP: RLC A ;左移A一位到位寄存器“C” JC R1,LOOP1 ;判斷位寄存器“C”是否為“0” CALL KEY_CAL ;調(diào)用鍵碼計算子程序 LOOP1: DJNE R2,LOOP ;判斷是否已移3位 POP A ;恢復寄存器A RTI ;本次掃描結(jié)束 KEY_CAL: ;鍵碼計算子程序 … … … RTS DELAY_TIME: ;延時子程序 … … … |
【溫馨提示】本頻道長期接受投稿,內(nèi)容可以是:
1.行業(yè)新聞、市場分析。 2.新品新技術(最新研發(fā)出來的產(chǎn)品技術介紹,包括產(chǎn)品性能參數(shù)、作用、應用領域及圖片); 3.解決方案/專業(yè)論文(針對問題及需求,提出一個解決問題的執(zhí)行方案); 4.技術文章、白皮書,光學軟件運用技術(光電行業(yè)內(nèi)技術文檔);
如果想要將你的內(nèi)容出現(xiàn)在這里,歡迎聯(lián)系我們,投稿郵箱:service@opticsky.cn
1.行業(yè)新聞、市場分析。 2.新品新技術(最新研發(fā)出來的產(chǎn)品技術介紹,包括產(chǎn)品性能參數(shù)、作用、應用領域及圖片); 3.解決方案/專業(yè)論文(針對問題及需求,提出一個解決問題的執(zhí)行方案); 4.技術文章、白皮書,光學軟件運用技術(光電行業(yè)內(nèi)技術文檔);
如果想要將你的內(nèi)容出現(xiàn)在這里,歡迎聯(lián)系我們,投稿郵箱:service@opticsky.cn
文章點評