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

📄 pass5.dat

📁 UART transmitter and receiver mocros
💻 DAT
📖 第 1 页 / 共 5 页
字号:
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;
    ADDRESS-000
      LABEL-
  FORMATTED-
  LOGFORMAT-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;UART character strings will be stored in scratch pad memory ending in carriage return.
    ADDRESS-000
      LABEL-
  FORMATTED-
  LOGFORMAT-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;A string can be up to 16 characters with the start location defined by this constant.
    ADDRESS-000
      LABEL-
  FORMATTED-
  LOGFORMAT-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;
    ADDRESS-000
      LABEL-
  FORMATTED-CONSTANT string_start, 20
  LOGFORMAT-CONSTANT string_start, 20
INSTRUCTION-CONSTANT
   OPERAND1-string_start
  OP1 VALUE-string_start
   OPERAND2-20
  OP2 VALUE-20
    COMMENT-
    ADDRESS-000
      LABEL-
  FORMATTED-
  LOGFORMAT-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;
    ADDRESS-000
      LABEL-
  FORMATTED-
  LOGFORMAT-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;
    ADDRESS-000
      LABEL-
  FORMATTED-
  LOGFORMAT-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;Initialise the system
    ADDRESS-000
      LABEL-
  FORMATTED-
  LOGFORMAT-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;
    ADDRESS-000
      LABEL-
  FORMATTED-
  LOGFORMAT-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;
    ADDRESS-000
      LABEL-cold_start
  FORMATTED-LOAD s0, 00
  LOGFORMAT-LOAD s0, 00
INSTRUCTION-LOAD
   OPERAND1-s0
  OP1 VALUE-s0
   OPERAND2-00
  OP2 VALUE-00
    COMMENT-;clear all time values
    ADDRESS-001
      LABEL-
  FORMATTED-STORE s0, us_time_stamp_lsb
  LOGFORMAT-STORE s0, us_time_stamp_lsb[00]
INSTRUCTION-STORE
   OPERAND1-s0
  OP1 VALUE-s0
   OPERAND2-us_time_stamp_lsb
  OP2 VALUE-00
    COMMENT-
    ADDRESS-002
      LABEL-
  FORMATTED-STORE s0, us_time_stamp_msb
  LOGFORMAT-STORE s0, us_time_stamp_msb[01]
INSTRUCTION-STORE
   OPERAND1-s0
  OP1 VALUE-s0
   OPERAND2-us_time_stamp_msb
  OP2 VALUE-01
    COMMENT-
    ADDRESS-003
      LABEL-
  FORMATTED-STORE s0, us_time_lsb
  LOGFORMAT-STORE s0, us_time_lsb[02]
INSTRUCTION-STORE
   OPERAND1-s0
  OP1 VALUE-s0
   OPERAND2-us_time_lsb
  OP2 VALUE-02
    COMMENT-
    ADDRESS-004
      LABEL-
  FORMATTED-STORE s0, us_time_msb
  LOGFORMAT-STORE s0, us_time_msb[03]
INSTRUCTION-STORE
   OPERAND1-s0
  OP1 VALUE-s0
   OPERAND2-us_time_msb
  OP2 VALUE-03
    COMMENT-
    ADDRESS-005
      LABEL-
  FORMATTED-STORE s0, ms_time_lsb
  LOGFORMAT-STORE s0, ms_time_lsb[04]
INSTRUCTION-STORE
   OPERAND1-s0
  OP1 VALUE-s0
   OPERAND2-ms_time_lsb
  OP2 VALUE-04
    COMMENT-
    ADDRESS-006
      LABEL-
  FORMATTED-STORE s0, ms_time_msb
  LOGFORMAT-STORE s0, ms_time_msb[05]
INSTRUCTION-STORE
   OPERAND1-s0
  OP1 VALUE-s0
   OPERAND2-ms_time_msb
  OP2 VALUE-05
    COMMENT-
    ADDRESS-007
      LABEL-
  FORMATTED-STORE s0, real_time_hours
  LOGFORMAT-STORE s0, real_time_hours[06]
INSTRUCTION-STORE
   OPERAND1-s0
  OP1 VALUE-s0
   OPERAND2-real_time_hours
  OP2 VALUE-06
    COMMENT-
    ADDRESS-008
      LABEL-
  FORMATTED-STORE s0, real_time_minutes
  LOGFORMAT-STORE s0, real_time_minutes[07]
INSTRUCTION-STORE
   OPERAND1-s0
  OP1 VALUE-s0
   OPERAND2-real_time_minutes
  OP2 VALUE-07
    COMMENT-
    ADDRESS-009
      LABEL-
  FORMATTED-STORE s0, real_time_seconds
  LOGFORMAT-STORE s0, real_time_seconds[08]
INSTRUCTION-STORE
   OPERAND1-s0
  OP1 VALUE-s0
   OPERAND2-real_time_seconds
  OP2 VALUE-08
    COMMENT-
    ADDRESS-00A
      LABEL-
  FORMATTED-STORE s0, alarm_time_hours
  LOGFORMAT-STORE s0, alarm_time_hours[09]
INSTRUCTION-STORE
   OPERAND1-s0
  OP1 VALUE-s0
   OPERAND2-alarm_time_hours
  OP2 VALUE-09
    COMMENT-
    ADDRESS-00B
      LABEL-
  FORMATTED-STORE s0, alarm_time_minutes
  LOGFORMAT-STORE s0, alarm_time_minutes[0A]
INSTRUCTION-STORE
   OPERAND1-s0
  OP1 VALUE-s0
   OPERAND2-alarm_time_minutes
  OP2 VALUE-0A
    COMMENT-
    ADDRESS-00C
      LABEL-
  FORMATTED-STORE s0, alarm_time_seconds
  LOGFORMAT-STORE s0, alarm_time_seconds[0B]
INSTRUCTION-STORE
   OPERAND1-s0
  OP1 VALUE-s0
   OPERAND2-alarm_time_seconds
  OP2 VALUE-0B
    COMMENT-
    ADDRESS-00D
      LABEL-
  FORMATTED-STORE s0, alarm_status
  LOGFORMAT-STORE s0, alarm_status[0C]
INSTRUCTION-STORE
   OPERAND1-s0
  OP1 VALUE-s0
   OPERAND2-alarm_status
  OP2 VALUE-0C
    COMMENT-;clear and disable alarm
    ADDRESS-00E
      LABEL-
  FORMATTED-CALL alarm_drive
  LOGFORMAT-CALL alarm_drive[0A4]
INSTRUCTION-CALL
   OPERAND1-alarm_drive
  OP1 VALUE-0A4
   OPERAND2-
  OP2 VALUE-
    COMMENT-;turn off alarm control output port
    ADDRESS-00F
      LABEL-
  FORMATTED-LOAD int_counter_lsb, 00
  LOGFORMAT-LOAD int_counter_lsb[sD], 00
INSTRUCTION-LOAD
   OPERAND1-int_counter_lsb
  OP1 VALUE-sD
   OPERAND2-00
  OP2 VALUE-00
    COMMENT-;clear 'us' interrupt counter
    ADDRESS-010
      LABEL-
  FORMATTED-LOAD int_counter_msb, 00
  LOGFORMAT-LOAD int_counter_msb[sC], 00
INSTRUCTION-LOAD
   OPERAND1-int_counter_msb
  OP1 VALUE-sC
   OPERAND2-00
  OP2 VALUE-00
    COMMENT-
    ADDRESS-011
      LABEL-
  FORMATTED-ENABLE INTERRUPT
  LOGFORMAT-ENABLE INTERRUPT
INSTRUCTION-ENABLE
   OPERAND1-INTERRUPT
  OP1 VALUE-INTERRUPT
   OPERAND2-
  OP2 VALUE-
    COMMENT-;enable the 1us interrupts
    ADDRESS-012
      LABEL-
  FORMATTED-
  LOGFORMAT-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;
    ADDRESS-012
      LABEL-
  FORMATTED-
  LOGFORMAT-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;
    ADDRESS-012
      LABEL-
  FORMATTED-
  LOGFORMAT-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;Start of the main program loop.
    ADDRESS-012
      LABEL-
  FORMATTED-
  LOGFORMAT-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;
    ADDRESS-012
      LABEL-
  FORMATTED-
  LOGFORMAT-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;A prompt is transmitted to the UART transmitter and then
    ADDRESS-012
      LABEL-
  FORMATTED-
  LOGFORMAT-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;a command can be entered and interpreted.
    ADDRESS-012
      LABEL-
  FORMATTED-
  LOGFORMAT-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;
    ADDRESS-012
      LABEL-
  FORMATTED-
  LOGFORMAT-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;
    ADDRESS-012
      LABEL-prompt_input
  FORMATTED-CALL send_prompt
  LOGFORMAT-CALL send_prompt[115]
INSTRUCTION-CALL
   OPERAND1-send_prompt
  OP1 VALUE-115
   OPERAND2-
  OP2 VALUE-
    COMMENT-;Prompt 'KCPSM3>'
    ADDRESS-013
      LABEL-
  FORMATTED-CALL receive_string
  LOGFORMAT-CALL receive_string[0C3]
INSTRUCTION-CALL
   OPERAND1-receive_string
  OP1 VALUE-0C3
   OPERAND2-
  OP2 VALUE-
    COMMENT-;obtain input string and maintain the time
    ADDRESS-014
      LABEL-
  FORMATTED-
  LOGFORMAT-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;
    ADDRESS-014
      LABEL-
  FORMATTED-
  LOGFORMAT-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;
    ADDRESS-014
      LABEL-
  FORMATTED-
  LOGFORMAT-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;Parse the string and perform actions as required
    ADDRESS-014
      LABEL-
  FORMATTED-
  LOGFORMAT-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;
    ADDRESS-014
      LABEL-
  FORMATTED-
  LOGFORMAT-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;
    ADDRESS-014
      LABEL-
  FORMATTED-
  LOGFORMAT-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;
    ADDRESS-014
      LABEL-
  FORMATTED-LOAD s1, string_start
  LOGFORMAT-LOAD s1, string_start[20]
INSTRUCTION-LOAD
   OPERAND1-s1
  OP1 VALUE-s1
   OPERAND2-string_start
  OP2 VALUE-20
    COMMENT-
    ADDRESS-015
      LABEL-
  FORMATTED-CALL fetch_char_from_memory
  LOGFORMAT-CALL fetch_char_from_memory[091]
INSTRUCTION-CALL
   OPERAND1-fetch_char_from_memory
  OP1 VALUE-091
   OPERAND2-
  OP2 VALUE-
    COMMENT-
    ADDRESS-016
      LABEL-
  FORMATTED-COMPARE s0, character_CR
  LOGFORMAT-COMPARE s0, character_CR[0D]
INSTRUCTION-COMPARE
   OPERAND1-s0
  OP1 VALUE-s0
   OPERAND2-character_CR
  OP2 VALUE-0D
    COMMENT-;carriage return does nothing
    ADDRESS-017
      LABEL-
  FORMATTED-JUMP Z, prompt_input
  LOGFORMAT-JUMP Z, prompt_input[012]
INSTRUCTION-JUMP
   OPERAND1-Z
  OP1 VALUE-Z
   OPERAND2-prompt_input
  OP2 VALUE-012
    COMMENT-
    ADDRESS-018
      LABEL-
  FORMATTED-COMPARE s0, character_T
  LOGFORMAT-COMPARE s0, character_T[54]
INSTRUCTION-COMPARE
   OPERAND1-s0
  OP1 VALUE-s0
   OPERAND2-character_T
  OP2 VALUE-54
    COMMENT-;start of 'TIME' command?
    ADDRESS-019
      LABEL-
  FORMATTED-JUMP Z, test_for_TIME
  LOGFORMAT-JUMP Z, test_for_TIME[01E]
INSTRUCTION-JUMP
   OPERAND1-Z
  OP1 VALUE-Z
   OPERAND2-test_for_TIME
  OP2 VALUE-01E
    COMMENT-
    ADDRESS-01A
      LABEL-
  FORMATTED-COMPARE s0, character_A
  LOGFORMAT-COMPARE s0, character_A[41]
INSTRUCTION-COMPARE
   OPERAND1-s0
  OP1 VALUE-s0
   OPERAND2-character_A
  OP2 VALUE-41
    COMMENT-;start of 'ALARM' command?
    ADDRESS-01B
      LABEL-
  FORMATTED-JUMP Z, test_for_ALARM
  LOGFORMAT-JUMP Z, test_for_ALARM[037]
INSTRUCTION-JUMP
   OPERAND1-Z
  OP1 VALUE-Z
   OPERAND2-test_for_ALARM
  OP2 VALUE-037
    COMMENT-
    ADDRESS-01C
      LABEL-
  FORMATTED-
  LOGFORMAT-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;
    ADDRESS-01C
      LABEL-
  FORMATTED-
  LOGFORMAT-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;trap other command starts here
    ADDRESS-01C
      LABEL-
  FORMATTED-
  LOGFORMAT-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;
    ADDRESS-01C
      LABEL-bad_input_command
  FORMATTED-CALL send_Syntax_Error
  LOGFORMAT-CALL send_Syntax_Error[0ED]
INSTRUCTION-CALL
   OPERAND1-send_Syntax_Error
  OP1 VALUE-0ED
   OPERAND2-
  OP2 VALUE-
    COMMENT-;no valid command
    ADDRESS-01D
      LABEL-
  FORMATTED-JUMP Z, prompt_input
  LOGFORMAT-JUMP Z, prompt_input[012]
INSTRUCTION-JUMP
   OPERAND1-Z
  OP1 VALUE-Z
   OPERAND2-prompt_input
  OP2 VALUE-012
    COMMENT-
    ADDRESS-01E
      LABEL-
  FORMATTED-
  LOGFORMAT-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;
    ADDRESS-01E
      LABEL-
  FORMATTED-
  LOGFORMAT-
INSTRUCTION-
   OPERAND1-
  OP1 VALUE-
   OPERAND2-
  OP2 VALUE-
    COMMENT-;
    ADDRESS-01E
      LABEL-test_for_TIME
  FORMATTED-CALL fetch_char_from_memory
  LOGFORMAT-CALL fetch_char_from_memory[091]
INSTRUCTION-CALL
   OPERAND1-fetch_char_from_memory
  OP1 VALUE-091
   OPERAND2-
  OP2 VALUE-
    COMMENT-
    ADDRESS-01F
      LABEL-
  FORMATTED-COMPARE s0, character_I
  LOGFORMAT-COMPARE s0, character_I[49]
INSTRUCTION-COMPARE
   OPERAND1-s0
  OP1 VALUE-s0
   OPERAND2-character_I
  OP2 VALUE-49
    COMMENT-;test for rest of 'TIME'
    ADDRESS-020
      LABEL-
  FORMATTED-JUMP NZ, bad_input_command
  LOGFORMAT-JUMP NZ, bad_input_command[01C]
INSTRUCTION-JUMP
   OPERAND1-NZ
  OP1 VALUE-NZ
   OPERAND2-bad_input_command
  OP2 VALUE-01C
    COMMENT-
    ADDRESS-021
      LABEL-
  FORMATTED-CALL fetch_char_from_memory
  LOGFORMAT-CALL fetch_char_from_memory[091]
INSTRUCTION-CALL
   OPERAND1-fetch_char_from_memory
  OP1 VALUE-091
   OPERAND2-
  OP2 VALUE-
    COMMENT-
    ADDRESS-022
      LABEL-
  FORMATTED-COMPARE s0, character_M
  LOGFORMAT-COMPARE s0, character_M[4D]
INSTRUCTION-COMPARE
   OPERAND1-s0
  OP1 VALUE-s0
   OPERAND2-character_M
  OP2 VALUE-4D
    COMMENT-
    ADDRESS-023
      LABEL-
  FORMATTED-JUMP NZ, bad_input_command
  LOGFORMAT-JUMP NZ, bad_input_command[01C]
INSTRUCTION-JUMP
   OPERAND1-NZ
  OP1 VALUE-NZ
   OPERAND2-bad_input_command
  OP2 VALUE-01C
    COMMENT-
    ADDRESS-024
      LABEL-

⌨️ 快捷键说明

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