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条回答
电子微创意
1楼-- · 2019-03-27 13:27
dingzy_2002 发表于 2017-8-28 11:50
PIC32用汇编?
那真算你厉害!
到32位时,一般全用C了,主要是调用函数库最为方便,而且,用HUMMY生成的配置 ...

没办法,老板让用汇编,HUMMY什么鬼,你说的是Harmony吧?
dingzy_2002
2楼-- · 2019-03-27 13:39
电子微创意 发表于 2017-8-29 22:19
没办法,老板让用汇编,HUMMY什么鬼,你说的是Harmony吧?

是的,就是那个东东
lmtgd
3楼-- · 2019-03-27 14:18
configure下拉菜单的configuration Bits 就是配置字。汇编用__CONFIG 0xa ,即1010 后面10是内部RC,第三位0是WDT关,第四1是不加密   ( 最多是由bit0~11 12位二进制数对应,0关,1开,但加密位0才是开,最后2位时钟位要查看对应PIC手册决定振荡方式,先用二进制数对应好再转16进制数),或用前面菜单选配置字。

一周热门 更多>