<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 單片機的“語言”規(guī)范

          單片機的“語言”規(guī)范

          作者: 時間:2013-01-26 來源:網(wǎng)絡(luò) 收藏
            我在多年教學(xué)中發(fā)現(xiàn),的學(xué)習(xí),還是以編程為難點。翻開現(xiàn)在的教材,硬件部分與知識講解部分基本上都是大同小異,唯有程序編寫部分,真可謂是五花八門,異彩紛呈。試想一下,面對五花八門的程序編寫資料,學(xué)生們又如何能知道從哪兒下手呢?這也難怪多數(shù)同學(xué)認(rèn)為,編程只是個別學(xué)生的事情,與他們無關(guān)了。

            這是在學(xué)校里面的教學(xué)情況,社會上學(xué)習(xí)單片機的情況又怎樣呢?隨著電子元器件技術(shù)的發(fā)展,硬件電路的制作越來越簡單容易,有些器件可以直接把管腳焊接在一起,甚至無需用電路板連接即可使用,讓大家感到頭疼的還是編程。

            尤其是業(yè)余單片機愛好者,沒有受過專業(yè)的訓(xùn)練,大多數(shù)情況下是使用別人寫好的程序,最多是在別人的程序上修改。我們看有關(guān)單片機制作的文章,內(nèi)容大都是介紹原理,說到編程,往往只是說可以到哪兒下載。說實在的,就是出現(xiàn)在文章里,懂得的人不必去看,不懂的人看也看不懂,也是費力不討好。

            難道學(xué)習(xí)編程真的是"無章可循",教編程只能是"即興發(fā)揮"式的嗎?經(jīng)過多年的教學(xué)實踐,我摸索出了一種編程的方法,取得了很好的教學(xué)效果,我暫且把它稱作--單片機的"語言"

            單片機如何"說話"單片機的匯編語言,既然稱作"語言",它跟我們的自然語言是有相似之處的。比如它有語句,語句要符合語法規(guī)則。

            說到""二字,有的朋友會說,既然是"語言",只要語句正確,語法正確,想怎么說就怎么說,想怎么寫就怎么寫,只要編譯通過,功能能夠?qū)崿F(xiàn)就可以,難道還要有什么""不成?答案是,當(dāng)然需要。我們在學(xué)習(xí)自然語言時也是要有規(guī)范的。語文課本里的文章,我們不是把它們叫做"范文"嗎。當(dāng)然,自然語言的使用可以非常靈活自由,但也要看是哪一類的文章。像詩歌、散文這類的文章,語言的使用可以非常靈活,而像一些應(yīng)用文,語言的使用就要受到限制,如我們學(xué)習(xí)寫請假條,尋人啟事,會議通知之類的文章,就要遵守一定的格式。我們在進行應(yīng)用文寫作的時候,只有遵守這些"格式",才能寫出合格的應(yīng)用文來。

            匯編語言是我們跟單片機打交道所使用的語言,我們使用匯編語言跟單片機"說話",讓它聽從我們的指揮,首先是讓它能聽懂我們的"說話",那就是要正確使用指令。單片機的"大腦"還沒有我們?nèi)四X這么聰明,我們在說話時能揣測對方的意思,而單片機只能嚴(yán)格按照我們的約定來執(zhí)行我們的命令。其次是如何"說話".匯編語言屬于工程語言,工程語言的精髓就是規(guī)范。它的規(guī)則更加嚴(yán)謹(jǐn),書寫要求更加嚴(yán)格。越是規(guī)范嚴(yán)謹(jǐn)?shù)恼Z言,學(xué)習(xí)起來就越應(yīng)該有法可依。而找到了這個"法",我們的學(xué)習(xí)就會向前邁出一大步。匯編語言里有什么樣的規(guī)范呢?

            在進行匯編語言的教學(xué)時,我們首先向?qū)W生們強調(diào),匯編語言程序由三部分組成:①預(yù)定義部分;②主程序部分;③子程序部分。這就是匯編語言程序編寫的規(guī)范格式。當(dāng)然,有些簡單的程序,可能會缺少某一部分,但是我們還是從一開始就向?qū)W生們強調(diào),簡單的程序也要盡量寫出這三部分。因為隨著程序內(nèi)容的增加,這三部分的結(jié)構(gòu)與層次的重要意義就會越發(fā)地顯現(xiàn)出來。下面我們以一個最簡單的單片機控制電路為例子,介紹這種規(guī)范程序的寫法,并逐一介紹每部分的內(nèi)容與含義。

            圖1是單片機系統(tǒng)的三個管腳p0.1,p0.2,p0.3與三個發(fā)光二極管的電路連接圖。從圖1中我們可以看到,只要控制單片機p0這三個腳的電位,我們就可以隨意控制這三個LED燈的亮滅。我們的控制要求是:LED1亮1s滅1s,接著LED2亮1s滅1s,接著LED3亮1s滅1s,結(jié)束。

          單片機的“語言”規(guī)范

          圖1 單片機系統(tǒng)與LED的電路連接圖

            電路功能很簡單,編程思路可以這樣來敘述。如圖2。

          單片機的“語言”規(guī)范

          圖2 電路編輯思路

            程序編寫也很簡單,大多數(shù)人認(rèn)為程序可以直接寫出來,請看下面的程序示例一。

            //程序功能:三個LED燈依次各亮滅1s

            start: clr p0.0 //點亮第一個LED燈

            acall delay1s

            setb p0.0 //熄滅第一個LED燈

            acall delay1s

            clr p0.1 //點亮第二個LED燈

            acall delay1s

            setb p0.1 //熄滅第二個LED燈

            acall delay1s

            clr p0.2 //點亮第三個LED燈

            acall delay1s

            setb p0.2 //熄滅第三個LED燈

            acall delay1s

            ajmp $ //待機狀態(tài)

            delay1s: //延時1s子程序

            mov r5,#50

            d3: mov r6,#100

            d2: mov r7,#100

            d1: djnz r7,d1

            djnz r6,d2

            djnz r5,d3

            ret

            end //程序結(jié)束


          上一頁 1 2 3 下一頁

          關(guān)鍵詞: 單片機 編程語言 規(guī)范

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();