【问题标题】:How to get user input PIC assembly如何获取用户输入的 PIC 程序集
【发布时间】:2021-02-15 16:07:18
【问题描述】:

我之前在这里写过的一个汇编程序有问题。所以问题是

R = 23 + A.6 - 101

我怎样才能让用户输入A?另外,我怎样才能获得参与变量的数据内存分配。这是我之前发布的代码。

LIST P=16C73A
    #INCLUDE <P16C73A.inc> ;
    ORG 0 ;PROGRAM MEMORY ADDRESS =0x0000
    GOTO MAIN

N1      EQU 70      
RL      EQU 71      
RH      EQU 72      

    ORG 30
MAIN:   
    MOVLW .6    
    MOVWF N1    
    MOVLW .10   
    CLRF RL 
    CLRF RH 

UP:     ADDWF RL ;RL=W+RL       
    BTFSC STATUS,C ; CHECK C FLAG IN STATUS 
    INCF RH         ;IF(C==1 THEN RH=RH+1) ;
    DECFSZ N1       ;N1=N1-1 ;Декрементация
    GOTO UP         ;IF(N1!=0) THEN GOTO UP LABEL
    
ADD:
    MOVLW .23   
    ADDWF RL    
    CLRW        
    MOVLW .101
    SUBWF RL 
   HERE:    GOTO HERE
    END 

我正在使用 MPLAB IDE。

【问题讨论】:

  • 你打算使用什么硬件让用户可以用 输入 A?

标签: assembly user-input pic microchip


【解决方案1】:

如果你想在 PIC 程序集中分配内存,你可以这样做;

Bank_0    udata 0x020
  A            RES 1                    ;reserve 1 Byte at address 0x20
  B            RES 1                    ;reserve 1 Byte at address 0x21
  C            RES 1                    ;reserve 1 Byte at address 0x22

或使用共享银行

Bank0_shr  udata_shr 0x70
  W_safe       RES 1                  ;reserve 1 Byte at address 0x70

您可以输入一个值,例如通过控制器端口以二进制格式。

【讨论】:

    猜你喜欢
    • 2019-05-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-09-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多