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

📄 main4.lis

📁 Application Note Abstract This Application Note introduces a complete and detailed PSoC&reg project
💻 LIS
📖 第 1 页 / 共 4 页
字号:
 0034 9000      call  RX8_1_Start
 0036 918C      call delay //Prevents serial communication error.
 0038 5065      mov A,<dateandtime
 003A 5C        mov X,A
 003B 5363      mov [temp3],A
 003D 5F6463    mov [msb_dateandtime],[temp3]
 0040 066409    add [msb_dateandtime],9
 0043           
 0043           
 0043           .WAIT_FOR_RX_ACTIVE:
 0043 9000          call   bRX8_1_ReadRxStatus
 0045 2110          and    A, RX8_RX_ACTIVE
 0047 B003          jnz    .WAIT_FOR_RX_COMPLETE 
 0049 AFF9          jz     .WAIT_FOR_RX_ACTIVE          ; data byte has not been received
 004B           
 004B           ; Receiver is actively receiving data, wait for it to complete
 004B           .WAIT_FOR_RX_COMPLETE:
 004B 9000          call   bRX8_1_ReadRxStatus
 004D 08            push   A
 004E 2108          AND    A, RX8_RX_COMPLETE
 0050 B004          jnz    .CHECK_RX_ERRORS
 0052 18            pop    A
 0053 8FF7          jmp    .WAIT_FOR_RX_COMPLETE
 0055           ; Data completely received now check for errors
 0055           .CHECK_RX_ERRORS:
 0055 18            pop    A
 0056 9000          call   bRX8_1_ReadRxStatus         ; get the Rx status register
 0058 21E0          and    A, RX8_RX_NO_ERROR        ; mask off non-status bits
 005A A005          jz     .DATA_RX_WITH_NO_ERRORS      ; data is valid - no error detected
 005C           
 005C           ; Errors detected in received data - return with error condition
 005C           
 005C           ;   1) A is set to FALSE indicating error condition
 005C           
 005C           ;   2) bRxData contains the RX status flags for further processing
 005C           
 005C           .RX_ERRORS_FOUND:
 005C           //    mov    [bRxData], A               ; bRxData contains the status flags
 005C 9000          call   bRX8_1_ReadRxData              ; Read RxData reg to prevent future overrun error
 005E 5000          mov     A, FALSE                  ; Set A to FALSE condition
 0060           //    jmp   receivedata                               
 0060           
 0060           ; No error detected in received data - return with data
 0060           
 0060           ;   1) A is set to TRUE indicating NO error condition
 0060           
 0060           ;   2) bRxData contians the received data byte
 0060           .DATA_RX_WITH_NO_ERRORS:
 0060 9000          call   bRX8_1_ReadRxData              ; get the received data in A
 0062 5863              mov    X,[temp3]
 0064 5400              mov    [X],A
 0066 7663              inc    [temp3]
 0068 5163              mov A,[temp3]
 006A 3A64              cmp A,[msb_dateandtime] ;6Ch
 006C A005              jz end
 006E           //    mov    [bRxData], A              ; bRxData contains received data byte
 006E 5001          mov    A, TRUE                   ; set a to NO error condition
 0070 8FD2              jmp .WAIT_FOR_RX_ACTIVE
 0072           end:
 0072 9000      call  RX8_1_Stop
 0074 914E      call delay //Prevents serial communication error.
 0076 914C      call delay //Prevents serial communication error.
 0078           
 0078           
 0078 5864      mov X,[msb_dateandtime]
 007A 79        dec X
 007B 5200      mov A,[x]
 007D 395A      cmp A,5Ah
 007F BFB4      jnz receivedata
 0081           
 0081           
 0081 5065      mov A,<dateandtime
 0083 5C        mov X,A
 0084           
 0084           
 0084 5200      mov A,[x]
 0086 1130      sub A,30h
 0088 F14B      index asciihextable
 008A 5363      mov [temp3],A
 008C 6B63      rlc [temp3]
 008E 6B63      rlc [temp3]
 0090 6B63      rlc [temp3]
 0092 6B63      rlc [temp3]
 0094 75        inc X
 0095 5200      mov A,[x]
 0097 1130      sub A,30h
 0099 F13A      index asciihextable
 009B 0263      add A,[temp3]
 009D 5351      mov [month],A
 009F           
 009F 75        inc x
 00A0 5200      mov A,[x]
 00A2 1130      sub A,30h
 00A4 F12F      index asciihextable
 00A6 5363      mov [temp3],A
 00A8 6B63      rlc [temp3]
 00AA 6B63      rlc [temp3]
 00AC 6B63      rlc [temp3]
 00AE 6B63      rlc [temp3]
 00B0 75        inc X
 00B1 5200      mov A,[x]
 00B3 1130      sub A,30h
 00B5 F11E      index asciihextable
 00B7 0263      add A,[temp3]
 00B9 5352      mov [day],A
 00BB           
 00BB 75        inc x
 00BC 5200      mov A,[x]
 00BE 1130      sub A,30h
 00C0 F113      index asciihextable
 00C2 5363      mov [temp3],A
 00C4 6B63      rlc [temp3]
 00C6 6B63      rlc [temp3]
 00C8 6B63      rlc [temp3]
 00CA 6B63      rlc [temp3]
 00CC 75        inc X
 00CD 5200      mov A,[x]
 00CF 1130      sub A,30h
 00D1 F102      index asciihextable
 00D3 0263      add A,[temp3]
 00D5 5353      mov [hour],A
 00D7           
 00D7 75        inc x
 00D8 5200      mov A,[x]
 00DA 1130      sub A,30h
 00DC F0F7      index asciihextable
 00DE 5363      mov [temp3],A
 00E0 6B63      rlc [temp3]
 00E2 6B63      rlc [temp3]
 00E4 6B63      rlc [temp3]
 00E6 6B63      rlc [temp3]
 00E8 75        inc X
 00E9 5200      mov A,[x]
 00EB 1130      sub A,30h
 00ED F0E6      index asciihextable
 00EF 0263      add A,[temp3]
 00F1 5354      mov [minute],A
 00F3           
 00F3           
 00F3           //Send data to PC
 00F3           senddata:
 00F3           
 00F3 3C5D0F    cmp [address_msb],0fh
 00F6 B00A      jnz skip
 00F8           
 00F8           checkforRAM:
 00F8 5700      mov X,0h
 00FA 3D00EE    cmp [x],EEh
 00FD B068      jnz sendRAM
 00FF 8083      jmp finished
 0101           
 0101           
 0101           
 0101           
 0101           //mov A,10h
 0101           //mov X,00h
 0101           
 0101           skip:
 0101 555E10    mov [temp_msb],10h
 0104 555F00    mov [temp_lsb],00h
 0107           
 0107           checkforend:
 0107 515E      mov A,[temp_msb]
 0109 3A5D      cmp A,[address_msb]
 010B B007      jnz incrementrom
 010D 515F      mov A,[temp_lsb]
 010F 3A5C      cmp A,[address_lsb]
 0111 A028      jz sendlast40
 0113           //else increment rom
 0113           incrementrom:
 0113 515E      mov A,[temp_msb]
 0115 585F      mov X,[temp_lsb]
 0117 28        romx //sending data
 0118 536D      mov [tempbyte],A
 011A 70FB      and F,FBh //Clear Carry
 011C 21F0      and A,F0h
 011E           
 011E 6D        rrc A
 011F 6D        rrc A
 0120 6D        rrc A
 0121 6D        rrc A
 0122 F0C8      index hextoasciitable
 0124 9095      call sendbyte
 0126 516D      mov A,[tempbyte]
 0128 210F      and A,0Fh
 012A F0C0      index hextoasciitable
 012C 908D      call sendbyte
 012E 765F      inc [temp_lsb]
 0130 515F      mov A,[temp_lsb]
 0132 3900      cmp A,00h
 0134 BFD2      jnz  checkforend
 0136 765E      inc [temp_msb]
 0138 8FCE      jmp checkforend
 013A           
 013A           
 013A           sendlast40:
 013A 556340    mov [temp3],40h
 013D           sendit:
 013D 515E      mov A,[temp_msb]
 013F 585F      mov X,[temp_lsb]
 0141 28        romx //sending data
 0142 536D      mov [tempbyte],A
 0144 70FB      and F,FBh //clear carry
 0146 21F0      and A,F0h
 0148 6D        rrc A
 0149 6D        rrc A
 014A 6D        rrc A
 014B 6D        rrc A
 014C F09E      index hextoasciitable
 014E 906B      call sendbyte
 0150           
 0150 516D      mov A,[tempbyte]
 0152 210F      and A,0Fh
 0154 F096      index hextoasciitable
 0156 9063      call sendbyte
 0158           
 0158 765F      inc [temp_lsb]
 015A 7A63      dec [temp3]
 015C BFE0      jnz sendit
 015E           
 015E 5700      mov X,0h
 0160 5200      mov A,[x]
 0162 39EE      cmp A,EEh
 0164 A01E      jz finished
 0166           
 0166           sendRAM:
 0166 5200      mov A,[X]
 0168 70FB      and F,FBh //clear carry
 016A 21F0      and A,F0h
 016C 6D        rrc A
 016D 6D        rrc A
 016E 6D        rrc A
 016F 6D        rrc A
 0170 F07A      index hextoasciitable
 0172 9047      call sendbyte
 0174           
 0174 5200      mov A,[X]
 0176 210F      and A,0Fh
 0178 F072      index hextoasciitable
 017A 903F      call sendbyte
 017C           
 017C 75        inc X
 017D 5200      mov A,[x]
 017F 39EE      cmp A,EEh
 0181 BFE4      jnz sendRAM
 0183           
 0183           
 0183           
 0183           
 0183           
 0183           
 0183           finished:
 0183 40        nop
 0184 8EAF      jmp receivedata
 0186           //jmp finished
 0186           
 0186           
 0186 7F        ret
 0187           
                export writeflash
 0187           writeflash:
 0187 555500    mov [tel_status],00h //Telephone is closed.
 018A 555A00    mov [te_second],00h
 018D 555900    mov [te_minute],00h
 0190 10        push  X
 0191 4F        mov   X, SP
 0192 5019      mov   A, 25      ; cTemperature argument
 0194 08        push  A
 0195 5000      mov   A, 00              ; wByteCount 

⌨️ 快捷键说明

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