pass3.dat
来自「FPGA 基于PICOBLAZE内核的LCD显示程序,完整,XILINX」· DAT 代码 · 共 3,451 行 · 第 1/5 页
DAT
3,451 行
INSTRUCTION-
OPERAND1-
OPERAND2-
COMMENT-;**************************************************************************************
ADDRESS-01A
LABEL-
INSTRUCTION-
OPERAND1-
OPERAND2-
COMMENT-; Routines to display hexadecimal values on LCD display
ADDRESS-01A
LABEL-
INSTRUCTION-
OPERAND1-
OPERAND2-
COMMENT-;**************************************************************************************
ADDRESS-01A
LABEL-
INSTRUCTION-
OPERAND1-
OPERAND2-
COMMENT-;
ADDRESS-01A
LABEL-
INSTRUCTION-
OPERAND1-
OPERAND2-
COMMENT-;
ADDRESS-01A
LABEL-
INSTRUCTION-
OPERAND1-
OPERAND2-
COMMENT-; Convert hexadecimal value provided in register s0 into ASCII characters
ADDRESS-01A
LABEL-
INSTRUCTION-
OPERAND1-
OPERAND2-
COMMENT-;
ADDRESS-01A
LABEL-
INSTRUCTION-
OPERAND1-
OPERAND2-
COMMENT-; The value provided must can be any value in the range 00 to FF and will be converted into
ADDRESS-01A
LABEL-
INSTRUCTION-
OPERAND1-
OPERAND2-
COMMENT-; two ASCII characters.
ADDRESS-01A
LABEL-
INSTRUCTION-
OPERAND1-
OPERAND2-
COMMENT-; The upper nibble will be represented by an ASCII character returned in register s3.
ADDRESS-01A
LABEL-
INSTRUCTION-
OPERAND1-
OPERAND2-
COMMENT-; The lower nibble will be represented by an ASCII character returned in register s2.
ADDRESS-01A
LABEL-
INSTRUCTION-
OPERAND1-
OPERAND2-
COMMENT-;
ADDRESS-01A
LABEL-
INSTRUCTION-
OPERAND1-
OPERAND2-
COMMENT-; The ASCII representations of '0' to '9' are 30 to 39 hexadecimal which is simply 30 hex
ADDRESS-01A
LABEL-
INSTRUCTION-
OPERAND1-
OPERAND2-
COMMENT-; added to the actual decimal value. The ASCII representations of 'A' to 'F' are 41 to 46
ADDRESS-01A
LABEL-
INSTRUCTION-
OPERAND1-
OPERAND2-
COMMENT-; hexadecimal requiring a further addition of 07 to the 30 already added.
ADDRESS-01A
LABEL-
INSTRUCTION-
OPERAND1-
OPERAND2-
COMMENT-;
ADDRESS-01A
LABEL-
INSTRUCTION-
OPERAND1-
OPERAND2-
COMMENT-; Registers used s0, s2 and s3.
ADDRESS-01A
LABEL-
INSTRUCTION-
OPERAND1-
OPERAND2-
COMMENT-;
ADDRESS-01A
LABEL-hex_byte_to_ASCII
INSTRUCTION-LOAD
OPERAND1-s2
OPERAND2-s0
COMMENT-;remember value supplied
ADDRESS-01B
LABEL-
INSTRUCTION-SR0
OPERAND1-s0
OPERAND2-
COMMENT-;isolate upper nibble
ADDRESS-01C
LABEL-
INSTRUCTION-SR0
OPERAND1-s0
OPERAND2-
COMMENT-
ADDRESS-01D
LABEL-
INSTRUCTION-SR0
OPERAND1-s0
OPERAND2-
COMMENT-
ADDRESS-01E
LABEL-
INSTRUCTION-SR0
OPERAND1-s0
OPERAND2-
COMMENT-
ADDRESS-01F
LABEL-
INSTRUCTION-CALL
OPERAND1-hex_to_ASCII
OPERAND2-
COMMENT-;convert
ADDRESS-020
LABEL-
INSTRUCTION-LOAD
OPERAND1-s3
OPERAND2-s0
COMMENT-;upper nibble value in s3
ADDRESS-021
LABEL-
INSTRUCTION-LOAD
OPERAND1-s0
OPERAND2-s2
COMMENT-;restore complete value
ADDRESS-022
LABEL-
INSTRUCTION-AND
OPERAND1-s0
OPERAND2-0F
COMMENT-;isolate lower nibble
ADDRESS-023
LABEL-
INSTRUCTION-CALL
OPERAND1-hex_to_ASCII
OPERAND2-
COMMENT-;convert
ADDRESS-024
LABEL-
INSTRUCTION-LOAD
OPERAND1-s2
OPERAND2-s0
COMMENT-;lower nibble value in s2
ADDRESS-025
LABEL-
INSTRUCTION-RETURN
OPERAND1-
OPERAND2-
COMMENT-
ADDRESS-026
LABEL-
INSTRUCTION-
OPERAND1-
OPERAND2-
COMMENT-;
ADDRESS-026
LABEL-
INSTRUCTION-
OPERAND1-
OPERAND2-
COMMENT-; Convert hexadecimal value provided in register s0 into ASCII character
ADDRESS-026
LABEL-
INSTRUCTION-
OPERAND1-
OPERAND2-
COMMENT-;
ADDRESS-026
LABEL-
INSTRUCTION-
OPERAND1-
OPERAND2-
COMMENT-;Register used s0
ADDRESS-026
LABEL-
INSTRUCTION-
OPERAND1-
OPERAND2-
COMMENT-;
ADDRESS-026
LABEL-hex_to_ASCII
INSTRUCTION-SUB
OPERAND1-s0
OPERAND2-0A
COMMENT-;test if value is in range 0 to 9
ADDRESS-027
LABEL-
INSTRUCTION-JUMP
OPERAND1-C
OPERAND2-number_char
COMMENT-
ADDRESS-028
LABEL-
INSTRUCTION-ADD
OPERAND1-s0
OPERAND2-07
COMMENT-;ASCII char A to F in range 41 to 46
ADDRESS-029
LABEL-number_char
INSTRUCTION-ADD
OPERAND1-s0
OPERAND2-3A
COMMENT-;ASCII char 0 to 9 in range 30 to 40
ADDRESS-02A
LABEL-
INSTRUCTION-RETURN
OPERAND1-
OPERAND2-
COMMENT-
ADDRESS-02B
LABEL-
INSTRUCTION-
OPERAND1-
OPERAND2-
COMMENT-;
ADDRESS-02B
LABEL-
INSTRUCTION-
OPERAND1-
OPERAND2-
COMMENT-;
ADDRESS-02B
LABEL-
INSTRUCTION-
OPERAND1-
OPERAND2-
COMMENT-; Display the two character HEX value of the register contents 's0' on the LCD
ADDRESS-02B
LABEL-
INSTRUCTION-
OPERAND1-
OPERAND2-
COMMENT-; at the current cursor position.
ADDRESS-02B
LABEL-
INSTRUCTION-
OPERAND1-
OPERAND2-
COMMENT-;
ADDRESS-02B
LABEL-
INSTRUCTION-
OPERAND1-
OPERAND2-
COMMENT-; Registers used s0, s1, s2, s3, s4, s5
ADDRESS-02B
LABEL-
INSTRUCTION-
OPERAND1-
OPERAND2-
COMMENT-;
ADDRESS-02B
LABEL-display_hex_byte
INSTRUCTION-CALL
OPERAND1-hex_byte_to_ASCII
OPERAND2-
COMMENT-
ADDRESS-02C
LABEL-
INSTRUCTION-LOAD
OPERAND1-s5
OPERAND2-s3
COMMENT-
ADDRESS-02D
LABEL-
INSTRUCTION-CALL
OPERAND1-LCD_write_data
OPERAND2-
COMMENT-
ADDRESS-02E
LABEL-
INSTRUCTION-LOAD
OPERAND1-s5
OPERAND2-s2
COMMENT-
ADDRESS-02F
LABEL-
INSTRUCTION-CALL
OPERAND1-LCD_write_data
OPERAND2-
COMMENT-
ADDRESS-030
LABEL-
INSTRUCTION-RETURN
OPERAND1-
OPERAND2-
COMMENT-
ADDRESS-031
LABEL-
INSTRUCTION-
OPERAND1-
OPERAND2-
COMMENT-;
ADDRESS-031
LABEL-
INSTRUCTION-
OPERAND1-
OPERAND2-
COMMENT-;
ADDRESS-031
LABEL-
INSTRUCTION-
OPERAND1-
OPERAND2-
COMMENT-;
ADDRESS-031
LABEL-
INSTRUCTION-
OPERAND1-
OPERAND2-
COMMENT-; Display the 32-bit value stored in 4 ascending memory locations as an 8 character
ADDRESS-031
LABEL-
INSTRUCTION-
OPERAND1-
OPERAND2-
COMMENT-; HEX value at the current cursor position. Register s7 must contain the memory
ADDRESS-031
LABEL-
INSTRUCTION-
OPERAND1-
OPERAND2-
COMMENT-; location of the most significant byte (which is also the highest address).
ADDRESS-031
LABEL-
INSTRUCTION-
OPERAND1-
OPERAND2-
COMMENT-;
ADDRESS-031
LABEL-
INSTRUCTION-
OPERAND1-
OPERAND2-
COMMENT-; Registers used s0, s1, s2, s3, s4, s5, s6, s7
ADDRESS-031
LABEL-
INSTRUCTION-
OPERAND1-
OPERAND2-
COMMENT-;
ADDRESS-031
LABEL-display_hex_32_bit
INSTRUCTION-LOAD
OPERAND1-s6
OPERAND2-04
COMMENT-;4 bytes to display
ADDRESS-032
LABEL-disp32_loop
INSTRUCTION-FETCH
OPERAND1-s0
OPERAND2-(s7)
COMMENT-;read byte
ADDRESS-033
LABEL-
INSTRUCTION-CALL
OPERAND1-display_hex_byte
OPERAND2-
COMMENT-;display byte
ADDRESS-034
LABEL-
INSTRUCTION-SUB
OPERAND1-s7
OPERAND2-01
COMMENT-;decrement pointer
ADDRESS-035
LABEL-
INSTRUCTION-SUB
OPERAND1-s6
OPERAND2-01
COMMENT-;count bytes displayed
ADDRESS-036
LABEL-
INSTRUCTION-RETURN
OPERAND1-Z
OPERAND2-
COMMENT-
ADDRESS-037
LABEL-
INSTRUCTION-JUMP
OPERAND1-disp32_loop
OPERAND2-
COMMENT-
ADDRESS-038
LABEL-
INSTRUCTION-
OPERAND1-
OPERAND2-
COMMENT-;
ADDRESS-038
LABEL-
INSTRUCTION-
OPERAND1-
OPERAND2-
COMMENT-;
ADDRESS-038
LABEL-
INSTRUCTION-
OPERAND1-
OPERAND2-
COMMENT-;**************************************************************************************
ADDRESS-038
LABEL-
INSTRUCTION-
OPERAND1-
OPERAND2-
COMMENT-;LCD text messages
ADDRESS-038
LABEL-
INSTRUCTION-
OPERAND1-
OPERAND2-
COMMENT-;**************************************************************************************
ADDRESS-038
LABEL-
INSTRUCTION-
OPERAND1-
OPERAND2-
COMMENT-;
ADDRESS-038
LABEL-
INSTRUCTION-
OPERAND1-
OPERAND2-
COMMENT-;
ADDRESS-038
LABEL-
INSTRUCTION-
OPERAND1-
OPERAND2-
COMMENT-;Display 'Frequency' on LCD at current cursor position
ADDRESS-038
LABEL-
INSTRUCTION-
OPERAND1-
OPERAND2-
COMMENT-;
ADDRESS-038
LABEL-disp_Frequency
INSTRUCTION-LOAD
OPERAND1-s5
OPERAND2-character_F
COMMENT-
ADDRESS-039
LABEL-
INSTRUCTION-CALL
OPERAND1-LCD_write_data
OPERAND2-
COMMENT-
ADDRESS-03A
LABEL-
INSTRUCTION-LOAD
OPERAND1-s5
OPERAND2-character_r
COMMENT-
ADDRESS-03B
LABEL-
INSTRUCTION-CALL
OPERAND1-LCD_write_data
OPERAND2-
COMMENT-
ADDRESS-03C
LABEL-
INSTRUCTION-LOAD
OPERAND1-s5
OPERAND2-character_e
COMMENT-
ADDRESS-03D
LABEL-
INSTRUCTION-CALL
OPERAND1-LCD_write_data
OPERAND2-
COMMENT-
ADDRESS-03E
LABEL-
INSTRUCTION-LOAD
OPERAND1-s5
OPERAND2-character_q
COMMENT-
ADDRESS-03F
LABEL-
INSTRUCTION-CALL
OPERAND1-LCD_write_data
OPERAND2-
COMMENT-
ADDRESS-040
LABEL-
INSTRUCTION-LOAD
OPERAND1-s5
OPERAND2-character_u
COMMENT-
ADDRESS-041
LABEL-
INSTRUCTION-CALL
OPERAND1-LCD_write_data
OPERAND2-
COMMENT-
ADDRESS-042
LABEL-
INSTRUCTION-LOAD
OPERAND1-s5
OPERAND2-character_e
COMMENT-
ADDRESS-043
LABEL-
INSTRUCTION-CALL
OPERAND1-LCD_write_data
OPERAND2-
COMMENT-
ADDRESS-044
LABEL-
INSTRUCTION-LOAD
OPERAND1-s5
OPERAND2-character_n
COMMENT-
ADDRESS-045
LABEL-
INSTRUCTION-CALL
OPERAND1-LCD_write_data
OPERAND2-
COMMENT-
ADDRESS-046
LABEL-
INSTRUCTION-LOAD
OPERAND1-s5
OPERAND2-character_c
COMMENT-
ADDRESS-047
LABEL-
INSTRUCTION-CALL
OPERAND1-LCD_write_data
OPERAND2-
COMMENT-
ADDRESS-048
LABEL-
INSTRUCTION-LOAD
OPERAND1-s5
OPERAND2-character_y
COMMENT-
ADDRESS-049
LABEL-
INSTRUCTION-CALL
OPERAND1-LCD_write_data
OPERAND2-
COMMENT-
ADDRESS-04A
LABEL-
INSTRUCTION-RETURN
OPERAND1-
OPERAND2-
COMMENT-
ADDRESS-04B
LABEL-
INSTRUCTION-
OPERAND1-
OPERAND2-
COMMENT-;
ADDRESS-04B
LABEL-
INSTRUCTION-
OPERAND1-
OPERAND2-
COMMENT-;Display 'Generator' on LCD at current cursor position
ADDRESS-04B
LABEL-
INSTRUCTION-
OPERAND1-
OPERAND2-
COMMENT-;
ADDRESS-04B
LABEL-disp_Generator
INSTRUCTION-LOAD
OPERAND1-s5
OPERAND2-character_G
COMMENT-
ADDRESS-04C
LABEL-
INSTRUCTION-CALL
OPERAND1-LCD_write_data
OPERAND2-
COMMENT-
ADDRESS-04D
LABEL-
INSTRUCTION-LOAD
OPERAND1-s5
OPERAND2-character_e
COMMENT-
ADDRESS-04E
LABEL-
INSTRUCTION-CALL
OPERAND1-LCD_write_data
OPERAND2-
COMMENT-
ADDRESS-04F
LABEL-
INSTRUCTION-LOAD
OPERAND1-s5
OPERAND2-character_n
COMMENT-
ADDRESS-050
LABEL-
INSTRUCTION-CALL
OPERAND1-LCD_write_data
OPERAND2-
COMMENT-
ADDRESS-051
LABEL-
INSTRUCTION-LOAD
OPERAND1-s5
OPERAND2-character_e
COMMENT-
ADDRESS-052
LABEL-
INSTRUCTION-CALL
OPERAND1-LCD_write_data
OPERAND2-
COMMENT-
ADDRESS-053
LABEL-
INSTRUCTION-LOAD
OPERAND1-s5
OPERAND2-character_r
COMMENT-
ADDRESS-054
LABEL-
INSTRUCTION-CALL
OPERAND1-LCD_write_data
OPERAND2-
COMMENT-
ADDRESS-055
LABEL-
INSTRUCTION-LOAD
OPERAND1-s5
OPERAND2-character_a
COMMENT-
ADDRESS-056
LABEL-
INSTRUCTION-CALL
OPERAND1-LCD_write_data
OPERAND2-
COMMENT-
ADDRESS-057
LABEL-
INSTRUCTION-LOAD
OPERAND1-s5
OPERAND2-character_t
COMMENT-
ADDRESS-058
LABEL-
INSTRUCTION-CALL
OPERAND1-LCD_write_data
OPERAND2-
COMMENT-
ADDRESS-059
LABEL-
INSTRUCTION-LOAD
OPERAND1-s5
OPERAND2-character_o
COMMENT-
ADDRESS-05A
LABEL-
INSTRUCTION-CALL
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?