• <rt id="imqiw"></rt>
  • <rt id="imqiw"><acronym id="imqiw"></acronym></rt>
    
    
  • 經(jīng)典案例

    聯(lián)系方式

    公司名稱:昆山華航電子有限公司
    公司電話:0512-50139595
    公司郵箱:eric@kshuahang.com
    公司地址:江蘇省昆山市善浦西路

    您當(dāng)前的位置:首頁 > 技術(shù)資源 > PCB設(shè)計技術(shù)

    編程PIC單片機風(fēng)格和格式

      首先我們來看一段程序:
      Tittle ‘Input.asm’ ;標題
      ;這是一個簡樸的輸入實驗
      include
      COUNT EQU 20H ;定義20H寄存器名為COUNT
      ORG 0 ;程序區(qū)將從0000H開始裝載
      GOTO START
      ORG 4 ;間斷進口
      GOTO INTEN ;間斷發(fā)生時跳轉(zhuǎn)到INTEN
      ORG 10 ;START將從第10行開始
      START
      ……
      MAIN
      ……
      GOTO MAIN
      INTSEVER
      ……
      RETFIE ;間斷返回
      END ;程序結(jié)束偽指令,不能少!
      事實上匯編程序并沒有固定的格局,但是它的各部門是有一定的位置鋪排的,習(xí)慣上依次為:
      ①程序標題:用Tittle偽指令定義,可缺省;
      ②程序注釋:請留意必需在程序說明及注釋部門的內(nèi)容前面用“;”號,否則將會泛起編譯錯誤。程序說明及注釋部門均可缺省;
      ③調(diào)用到的.inc文件:用include偽指令來調(diào)用。通常.inc文件是與單片機型號相對應(yīng)的,包括了一些特殊寄存器的定義等內(nèi)容。PIC單片機各種型號的.inc文件在MPLAB目錄中就能找到,不需要自己編寫。假如被調(diào)用的.inc文件遺失,編譯時將會泛起編譯錯誤;
      ④通用寄存器定義:用EQU偽指令定義,格局為“寄存器名稱 EQU 寄存器標號”,寄存器名稱要頂格寫。這是程序編寫職員為所用到的通用寄存器起的名字,對應(yīng)了一個實際的通用積壓器地址;
      ⑤宏定義:在上面的程序中沒有用到宏,缺省;
      ⑥程序初始化:START部門;
      ⑦主程序:MAIN部門;
      ⑧子程序:如本程序的INTSEVER部門。有時候會將子程序放在初始化程序的前面,例如一些查表程序等;
      ⑨程序結(jié)束:END語句,不可缺省。
      以上的部門構(gòu)成了一個完整的PIC匯編程序。在程序編寫過程中需要留意的題目我以為有以下幾點:
      1、編程中首先要避免使用直接地址對寄存器操縱。使用直接地址來操縱寄存器會使程序的可讀性大大的降低,一來輕易和數(shù)據(jù)發(fā)生攪渾,二來也不輕易更改。以上面的程序來說吧,寄存器“COUNT”的直接地址是20H。如果調(diào)試過程中我溘然發(fā)現(xiàn)調(diào)用到COUNT的子程序中其它的寄存器都是在BANK1的,我為了調(diào)用它需要經(jīng)常切換BANK極不利便,因此要將它的地址改為90H。那么現(xiàn)在我只要將定義的語句改為“COUNT EQU 90H ”就可以了,如果我沒有這樣定義,那么我只能去程序中查找20H然后逐一改為90H……
      2、留意子程序標號的可讀性。固然這些標號在被編譯之后是沒有區(qū)別的(當(dāng)然了,地址仍是不一樣的),只是編程職員用以識別的標記(好比:main通常被使用作為程序的主輪回標號,而start則常被用做程序初始化的標號,可以說,標號的命名情況與程序的編譯、運行是沒有太大的影響的。如果你的main標號被改成loop,編譯結(jié)果也是一樣),但是它們的公道與否將會影響到程序的調(diào)試。通常來講,標號最好是能一目了然,甚至要能概括這段程序處理的內(nèi)容。好比延時程序用dealy,間斷服務(wù)用intsever等等。這樣一來程序的可讀性高了,以后要修改調(diào)試起來也很利便。
      3、程序結(jié)構(gòu)要公道。

     


    上一篇:PCB制程中的鉆孔偏移問題
    下一篇ESPU0808安全芯片在防抄板領(lǐng)域技術(shù)解析
    溫馨提示:
    凡在本公司進行電路板克隆業(yè)務(wù)的客戶,必須有合法的PCB設(shè)計版權(quán)來源聲明,以保護原創(chuàng)PCB設(shè)計版權(quán)所有者的合法權(quán)益;
    【 字體: 】【打印此頁】 【返回】【頂部】【關(guān)閉

    主站蜘蛛池模板: 紧窄极品名器美妇灌| 最近中文2019字幕第二页| 洗澡与老太风流69小说| 欧美日本一道高清免费3区| 日本高清无卡码一区二区久久 | 欧美不卡在线视频| 成年丰满熟妇午夜免费视频| 天天躁夜夜躁天干天干2020| 国产无遮挡吃胸膜奶免费看| 午夜无码国产理论在线| 亚洲在成人网在线看| 久久久久亚洲AV成人网人人网站 | 国产精品视频一区二区三区不卡| 国产强被迫伦姧在线观看无码| 午夜毛片在线观看| 亚洲区小说区图片区qvod| 一级毛片完整版免费播放一区| 极品国产高颜值露脸在线| 精品无码久久久久久久久 | 欧美色视频在线观看| 日本高清乱理伦片中文字幕啊| 天天在线综合网| 国产人成免费视频| 亚洲最大av网站在线观看| 中文字幕人成无码人妻| **一级毛片全部免| 精品一区二区久久久久久久网站 | 国产ts人妖另类专区| 亚洲成av人片在线观看无码不卡| 一级片免费网站| 91丨九色丨蝌蚪3p| 欧美精品亚洲精品| 成人午夜在线播放| 国产成人久久久精品二区三区| 亚洲精品中文字幕无乱码 | 久久久久亚洲av成人无码| 18gay台湾男同亚洲男同| 精品一区二区三区无码免费直播| 日韩欧美三级在线| 国产精品成人va在线播放| 内射一区二区精品视频在线观看|