⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 pass4.dat

📁 FPGA 基于PICOBLAZE内核的LCD显示程序,完整,XILINX
💻 DAT
📖 第 1 页 / 共 5 页
字号:
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;
    ADDRESS-067
      LABEL-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;
    ADDRESS-067
      LABEL-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;**************************************************************************************
    ADDRESS-067
      LABEL-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;Software delay routines
    ADDRESS-067
      LABEL-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;**************************************************************************************
    ADDRESS-067
      LABEL-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;
    ADDRESS-067
      LABEL-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;
    ADDRESS-067
      LABEL-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;
    ADDRESS-067
      LABEL-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;Delay of 1us.
    ADDRESS-067
      LABEL-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;
    ADDRESS-067
      LABEL-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;Constant value defines reflects the clock applied to KCPSM3. Every instruction
    ADDRESS-067
      LABEL-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;executes in 2 clock cycles making the calculation highly predictable. The '6' in
    ADDRESS-067
      LABEL-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;the following equation even allows for 'CALL delay_1us' instruction in the initiating code.
    ADDRESS-067
      LABEL-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;
    ADDRESS-067
      LABEL-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-; delay_1us_constant =  (clock_rate - 6)/4       Where 'clock_rate' is in MHz
    ADDRESS-067
      LABEL-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;
    ADDRESS-067
      LABEL-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;Registers used s0
    ADDRESS-067
      LABEL-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;
    ADDRESS-067
      LABEL-delay_1us
INSTRUCTION-LOAD
   OPERAND1-s0
  OP1 VALUE-s0
   OPERAND2-delay_1us_constant
  OP2 VALUE-0B
    COMMENT-
    ADDRESS-068
      LABEL-wait_1us
INSTRUCTION-SUB
   OPERAND1-s0
  OP1 VALUE-s0
   OPERAND2-01
  OP2 VALUE-01
    COMMENT-
    ADDRESS-069
      LABEL-
INSTRUCTION-JUMP
   OPERAND1-NZ
  OP1 VALUE-NZ
   OPERAND2-wait_1us
  OP2 VALUE-068
    COMMENT-
    ADDRESS-06A
      LABEL-
INSTRUCTION-RETURN
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-
    ADDRESS-06B
      LABEL-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;
    ADDRESS-06B
      LABEL-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;Delay of 40us.
    ADDRESS-06B
      LABEL-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;
    ADDRESS-06B
      LABEL-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;Registers used s0, s1
    ADDRESS-06B
      LABEL-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;
    ADDRESS-06B
      LABEL-delay_40us
INSTRUCTION-LOAD
   OPERAND1-s1
  OP1 VALUE-s1
   OPERAND2-28
  OP2 VALUE-28
    COMMENT-;40 x 1us = 40us
    ADDRESS-06C
      LABEL-wait_40us
INSTRUCTION-CALL
   OPERAND1-delay_1us
  OP1 VALUE-067
   OPERAND2-
  OP2 VALUE-
    COMMENT-
    ADDRESS-06D
      LABEL-
INSTRUCTION-SUB
   OPERAND1-s1
  OP1 VALUE-s1
   OPERAND2-01
  OP2 VALUE-01
    COMMENT-
    ADDRESS-06E
      LABEL-
INSTRUCTION-JUMP
   OPERAND1-NZ
  OP1 VALUE-NZ
   OPERAND2-wait_40us
  OP2 VALUE-06C
    COMMENT-
    ADDRESS-06F
      LABEL-
INSTRUCTION-RETURN
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-
    ADDRESS-070
      LABEL-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;
    ADDRESS-070
      LABEL-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;
    ADDRESS-070
      LABEL-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;Delay of 1ms.
    ADDRESS-070
      LABEL-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;
    ADDRESS-070
      LABEL-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;Registers used s0, s1, s2
    ADDRESS-070
      LABEL-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;
    ADDRESS-070
      LABEL-delay_1ms
INSTRUCTION-LOAD
   OPERAND1-s2
  OP1 VALUE-s2
   OPERAND2-19
  OP2 VALUE-19
    COMMENT-;25 x 40us = 1ms
    ADDRESS-071
      LABEL-wait_1ms
INSTRUCTION-CALL
   OPERAND1-delay_40us
  OP1 VALUE-06B
   OPERAND2-
  OP2 VALUE-
    COMMENT-
    ADDRESS-072
      LABEL-
INSTRUCTION-SUB
   OPERAND1-s2
  OP1 VALUE-s2
   OPERAND2-01
  OP2 VALUE-01
    COMMENT-
    ADDRESS-073
      LABEL-
INSTRUCTION-JUMP
   OPERAND1-NZ
  OP1 VALUE-NZ
   OPERAND2-wait_1ms
  OP2 VALUE-071
    COMMENT-
    ADDRESS-074
      LABEL-
INSTRUCTION-RETURN
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-
    ADDRESS-075
      LABEL-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;
    ADDRESS-075
      LABEL-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;Delay of 20ms.
    ADDRESS-075
      LABEL-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;
    ADDRESS-075
      LABEL-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;Delay of 20ms used during initialisation.
    ADDRESS-075
      LABEL-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;
    ADDRESS-075
      LABEL-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;Registers used s0, s1, s2, s3
    ADDRESS-075
      LABEL-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;
    ADDRESS-075
      LABEL-delay_20ms
INSTRUCTION-LOAD
   OPERAND1-s3
  OP1 VALUE-s3
   OPERAND2-14
  OP2 VALUE-14
    COMMENT-;20 x 1ms = 20ms
    ADDRESS-076
      LABEL-wait_20ms
INSTRUCTION-CALL
   OPERAND1-delay_1ms
  OP1 VALUE-070
   OPERAND2-
  OP2 VALUE-
    COMMENT-
    ADDRESS-077
      LABEL-
INSTRUCTION-SUB
   OPERAND1-s3
  OP1 VALUE-s3
   OPERAND2-01
  OP2 VALUE-01
    COMMENT-
    ADDRESS-078
      LABEL-
INSTRUCTION-JUMP
   OPERAND1-NZ
  OP1 VALUE-NZ
   OPERAND2-wait_20ms
  OP2 VALUE-076
    COMMENT-
    ADDRESS-079
      LABEL-
INSTRUCTION-RETURN
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-
    ADDRESS-07A
      LABEL-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;
    ADDRESS-07A
      LABEL-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;Delay of approximately 1 second.
    ADDRESS-07A
      LABEL-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;
    ADDRESS-07A
      LABEL-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;Registers used s0, s1, s2, s3, s4
    ADDRESS-07A
      LABEL-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;
    ADDRESS-07A
      LABEL-delay_1s
INSTRUCTION-LOAD
   OPERAND1-s4
  OP1 VALUE-s4
   OPERAND2-32
  OP2 VALUE-32
    COMMENT-;50 x 20ms = 1000ms
    ADDRESS-07B
      LABEL-wait_1s
INSTRUCTION-CALL
   OPERAND1-delay_20ms
  OP1 VALUE-075
   OPERAND2-
  OP2 VALUE-
    COMMENT-
    ADDRESS-07C
      LABEL-
INSTRUCTION-SUB
   OPERAND1-s4
  OP1 VALUE-s4
   OPERAND2-01
  OP2 VALUE-01
    COMMENT-
    ADDRESS-07D
      LABEL-
INSTRUCTION-JUMP
   OPERAND1-NZ
  OP1 VALUE-NZ
   OPERAND2-wait_1s
  OP2 VALUE-07B
    COMMENT-
    ADDRESS-07E
      LABEL-
INSTRUCTION-RETURN
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-
    ADDRESS-07F
      LABEL-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;
    ADDRESS-07F
      LABEL-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;
    ADDRESS-07F
      LABEL-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;
    ADDRESS-07F
      LABEL-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;**************************************************************************************
    ADDRESS-07F
      LABEL-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;LCD Character Module Routines
    ADDRESS-07F
      LABEL-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;**************************************************************************************
    ADDRESS-07F
      LABEL-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;
    ADDRESS-07F
      LABEL-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;LCD module is a 16 character by 2 line display but all displays are very similar
    ADDRESS-07F
      LABEL-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;The 4-wire data interface will be used (DB4 to DB7).
    ADDRESS-07F
      LABEL-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;
    ADDRESS-07F
      LABEL-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;The LCD modules are relatively slow and software delay loops are used to slow down
    ADDRESS-07F
      LABEL-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;KCPSM3 adequately for the LCD to communicate. The delay routines are provided in
    ADDRESS-07F
      LABEL-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;a different section (see above in this case).
    ADDRESS-07F
      LABEL-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;
    ADDRESS-07F
      LABEL-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;
    ADDRESS-07F
      LABEL-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;Pulse LCD enable signal 'E' high for greater than 230ns (1us is used).
    ADDRESS-07F
      LABEL-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;
    ADDRESS-07F
      LABEL-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;Register s4 should define the current state of the LCD output port.
    ADDRESS-07F
      LABEL-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;
    ADDRESS-07F
      LABEL-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;Registers used s0, s4
    ADDRESS-07F
      LABEL-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;
    ADDRESS-07F
      LABEL-LCD_pulse_E
INSTRUCTION-XOR
   OPERAND1-s4
  OP1 VALUE-s4
   OPERAND2-LCD_E
  OP2 VALUE-01
    COMMENT-;E=1
    ADDRESS-080
      LABEL-
INSTRUCTION-OUTPUT
   OPERAND1-s4
  OP1 VALUE-s4
   OPERAND2-LCD_output_port
  OP2 VALUE-40
    COMMENT-
    ADDRESS-081
      LABEL-
INSTRUCTION-CALL
   OPERAND1-delay_1us
  OP1 VALUE-067
   OPERAND2-
  OP2 VALUE-
    COMMENT-
    ADDRESS-082
      LABEL-
INSTRUCTION-XOR
   OPERAND1-s4
  OP1 VALUE-s4
   OPERAND2-LCD_E
  OP2 VALUE-01
    COMMENT-;E=0
    ADDRESS-083
      LABEL-
INSTRUCTION-OUTP

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -