機(jī)電之家資源網(wǎng)
單片機(jī)首頁(yè)|單片機(jī)基礎(chǔ)|單片機(jī)應(yīng)用|單片機(jī)開(kāi)發(fā)|單片機(jī)文案|軟件資料下載|音響制作|電路圖下載 |嵌入式開(kāi)發(fā)
培訓(xùn)信息
贊助商
Windows下PIC 8位單片機(jī)源程序匯編和固化(二)
Windows下PIC 8位單片機(jī)源程序匯編和固化(二)
 更新時(shí)間:2008-7-26 17:05:54  點(diǎn)擊數(shù):3
【字體: 字體顏色
2 在MPLAB中建立PIC單片機(jī)源程序
  筆者將以附圖的PIC16C55脈沖計(jì)數(shù)試驗(yàn)電路(計(jì)數(shù)時(shí),RA1口為十進(jìn)制碼輸入,RB口為二進(jìn)制碼輸出)的源程序PIC count.ASM為例,介紹在MPLAB集成開(kāi)發(fā)環(huán)境下編輯(建立)PIC單片機(jī)源程序的方法。其操作步驟如下。
  (1)打開(kāi)MPLAB桌面(窗口)和空白編輯窗口 開(kāi)啟PC機(jī),啟動(dòng)運(yùn)行Windows,在Windows的管理程序下,用鼠標(biāo)點(diǎn)擊顯示屏上的圖標(biāo)Microchip(快捷),即可啟動(dòng)運(yùn)行MPLAB集成開(kāi)發(fā)軟件,此時(shí)屏幕上將顯示MPLAB的桌面(見(jiàn)今年第25期本版的《源程序的匯編和固化(一)》文中的附圖)。從已打開(kāi)的MPLAB的桌面(窗口)上,用鼠標(biāo)點(diǎn)擊MPLAB菜單欄中最左邊的File(文件),即可打開(kāi)File的下拉菜單,再用鼠標(biāo)點(diǎn)擊下拉菜單中的命令New Source(新建源程序),即可打開(kāi)一個(gè)空白的編輯窗口,在此窗口中用鍵盤(pán)鍵入PIC 16C55 COUNTASM源程序再對(duì)其進(jìn)行編輯(以MPLAB V301版為例):
     LIST P=16C55
     #INCLUDE P16C5XINC
     COUNT EQU 1EH
     ORG     0
START
     MOVLW 0
     MOVWF PORTB ;設(shè)置B口為輸出
     TRIS PORTB
     CLRF COUNT ;置計(jì)數(shù)器COUNT為零
LOOP
     BTFSS PORTA,1;判斷開(kāi)關(guān)K按下否?
     GOTO INCOUNT;按下開(kāi)關(guān)K,跳轉(zhuǎn)執(zhí)行IN-
             ;COUNT
ENDLOOP
     GOTO LOOP ;開(kāi)關(guān)未按下,繼續(xù)循環(huán)
             ;判斷
INCOUNT
     INCF COUNT,1  ;計(jì)數(shù)器COUNT+1
     MOVF COUNT,W
     MOVWF PORTB ;從B口輸出計(jì)數(shù)值
DEBOUNCE
     BTFSS PORTA,1 ;判斷開(kāi)關(guān)K釋放否?
     GOTO DEBOUNCE ;沒(méi)有釋放繼續(xù)判斷
      GOTO LOOP  ;開(kāi)關(guān)K釋放重新開(kāi)始
      ORG 0x1FF   ;復(fù)位向量
      GOTO START
      END
  說(shuō)明:在MPLAB集成開(kāi)發(fā)環(huán)境下建立源程序時(shí),其源程序文件的開(kāi)始應(yīng)使用偽指令List(列表選擇指令)指示符,指定處理的類(lèi)型(對(duì)象)。所以,上述的源程序的開(kāi)始處為L(zhǎng)ist P=16C55。其中的“P=”是處理類(lèi)型,代表設(shè)置微控制器為16C55(芯片)。接著又用了偽指令#include P16C5XINC,代表MPLAB應(yīng)把要處理(類(lèi)型)的微控器F16C55的所有已設(shè)置的文件,在需要時(shí)就讀入這里的源程序中。這條偽指令就為源程序中的代碼設(shè)置大為簡(jiǎn)化,例如PORTB、TRIS以及其它特殊功能寄存器,就不再用EQU偽指令給它們賦值了。
  源程序中緊接著上面的偽指令為ORG,代表存放程序的起始地址。所以在一個(gè)源程序中,可以根據(jù)需要多次使用ORG偽指令定位。在上述的源程序中,使用了兩次ORG 。值得注意,在PIC系列單片機(jī)中,對(duì)初級(jí)產(chǎn)品PIC16C54/55的復(fù)位向量為1FFH;PIC16C56為3FFH;PIC16C57/58為7FF;對(duì)中級(jí)和高級(jí)產(chǎn)品的復(fù)位向量為000H和0000H。由此可見(jiàn)在建立PIC單片機(jī)源程序時(shí),使用一些偽指令是很有必要的,用它可以為建立源程序完成一些特定功能,使編制的源程序大大簡(jiǎn)化。源程序后面的各條指令功能均已在注釋中給了說(shuō)明,這里不再?gòu)?fù)述。</P><P>知識(shí)競(jìng)賽試題:
   27若將上文中的源程序PIC16C55ASM移植成PIC16F84 COUNTASM,文中編輯的源程序應(yīng)作何修改?

  • 上一篇: Windows下PIC 8位單片機(jī)源程序匯編和固化(三)
  • 下一篇: Windows下PIC8位單片機(jī)源程序匯編和固化(一)
  • 發(fā)表評(píng)論   告訴好友   打印此文  收藏此頁(yè)  關(guān)閉窗口  返回頂部
    熱點(diǎn)文章
     
    推薦文章
     
    相關(guān)文章
    網(wǎng)友評(píng)論:(只顯示最新5條。)
    關(guān)于我們 | 聯(lián)系我們 | 廣告合作 | 付款方式 | 使用幫助 | 機(jī)電之家 | 會(huì)員助手 | 免費(fèi)鏈接

    點(diǎn)擊這里給我發(fā)消息66821730(技術(shù)支持)點(diǎn)擊這里給我發(fā)消息66821730(廣告投放) 點(diǎn)擊這里給我發(fā)消息41031197(編輯) 點(diǎn)擊這里給我發(fā)消息58733127(審核)
    本站提供的機(jī)電設(shè)備,機(jī)電供求等信息由機(jī)電企業(yè)自行提供,該企業(yè)負(fù)責(zé)信息內(nèi)容的真實(shí)性、準(zhǔn)確性和合法性。
    機(jī)電之家對(duì)此不承擔(dān)任何保證責(zé)任,有侵犯您利益的地方請(qǐng)聯(lián)系機(jī)電之家,機(jī)電之家將及時(shí)作出處理。
    Copyright 2007 機(jī)電之家 Inc All Rights Reserved.機(jī)電之家-由機(jī)電一體化網(wǎng)更名-聲明
    電話:0571-87774297 傳真:0571-87774298
    杭州濱興科技有限公司提供技術(shù)支持

    主辦:杭州市高新區(qū)(濱江)機(jī)電一體化學(xué)會(huì)
    中國(guó)行業(yè)電子商務(wù)100強(qiáng)網(wǎng)站

    網(wǎng)站經(jīng)營(yíng)許可證:浙B2-20080178-1