PIC单片机必须配置字吗?

2019-03-25 18:48发布

这个月买了块PIC的开发板子玩,在板子上烧C可以工作,烧汇编者按就不行,PIC单片机必须配置字吗?
这是下面的汇编程序,哪位大神帮忙看下,是不是哪有错啊,在MPLAB可以编译过去。汇编程序里面在哪可以配置字?

status    equ   3h       ;定义状态寄存器地址
portd     equ    8h      ;定义端口C的数据寄存器地址
trisd     equ   88h      ;定义端口C的方向控制寄存器地址
;***********************************************************
       org   000h          ;定义程序存放区域的起始地址
       nop                 ;放置一条ICD必须的空操用指令
main   bsf     status,5    ;设置文件寄存器的体1
       movlw   0x00        ;对端口C的方向控制码00H先送W
       movwf   trisd       ;再由W转移到方向控制寄存器
       bcf    status,5     ;恢复到文件寄存器体0
       movlw  0xff         ;将00000001B先送W
       movwf  portd        ;再由W转移到数据寄存器,让RC0输出高电平点亮LED
       call  delay         ;调用廷时子程序
           call   delay
       goto   main         ;循环
;-------------------------廷时子程序----------------------------
delay                       ;子程序名,也是子程序入口地址
       movlw   0x0f         ;将外层循环参数值FFH经过W
       movwf   20h          ;送入用作外循环变量的20H单元
lp0    movlw   0xff          ;将第二层循环参数值FFH经过W
       movwf   21h           ;送入用作内循环变量的21H单元
lp1    movlw   0xff          ;将内层循环参数值FFH经过W
       movwf   22h           ;送入用作内循环变量的22H单元
lp2    decfsz   22h,1        ;变量22H内容递减,若为0跳跃
       goto     lp2          ;跳转到LP2处
       decfsz    21h,1       ;变量21H内容递减,若为0跳跃
       goto     lp1          ;跳跃到LP1处
       decfsz    20h,1       ;变量20H内容递减,若为0跳跃
       goto     lp0          ;跳跃到LP0处
       retlw     0           ;返回主程序
       end                   ;源程序结束


此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
15条回答
dingzy_2002
2019-03-26 12:02
本帖最后由 dingzy_2002 于 2017-8-25 14:36 编辑

C语言的器件配置一般是:__config 0x****,或者是类似这样:
__CONFIG(        VCAPEN_RA6        );        //Vcap引脚选择:RA6
而汇编一般是在开发环境中设置或者,强行定义,如:
ORG 2007H
DATA 0x314A

一周热门 更多>