00000000 104 ;*** 68 : static void __near r_csi11_interrupt(void) 00000000 105 .LINE "C:/Renesas/RL78/issue_20191009/csp_projects/RL78G13/src/r_cg_serial_user.c", 68 00000000 C1 106 push ax 00000001 C3 107 push bc 00000002 C5 108 push de 00000003 C7 109 push hl 00000004 8EFD 110 mov a, es 00000006 70 111 mov x, a 00000007 8EFC 112 mov a, cs 00000009 C1 113 push ax 0000000A C7 114 push hl 0000000B 115 ;*** 69 : { 0000000B 116 ;*** 70 : volatile uint8_t err_type; 0000000B 117 ;*** 71 : 0000000B 118 ;*** 72 : err_type = (uint8_t)(SSR03 & _0001_SAU_OVERRUN_ERROR); 0000000B 119 .LINE "C:/Renesas/RL78/issue_20191009/csp_projects/RL78G13/src/r_cg_serial_user.c", 72 0000000B AF0601 120 movw ax, !0x0106 0000000E 60 121 mov a, x 0000000F 5C01 122 and a, #0x01 00000011 9800 123 mov [sp+0x00], a 00000013 124 ;*** 73 : SIR03 = (uint16_t)err_type; 00000013 125 .LINE "C:/Renesas/RL78/issue_20191009/csp_projects/RL78G13/src/r_cg_serial_user.c", 73 00000013 8800 126 mov a, [sp+0x00] 00000015 318E 127 shrw ax, 8+0x00000 00000017 BF0E01 128 movw !0x010E, ax 0000001A 129 ;*** 74 : 0000001A 130 ;*** 75 : if (1U == err_type) 0000001A 131 .LINE "C:/Renesas/RL78/issue_20191009/csp_projects/RL78G13/src/r_cg_serial_user.c", 75 0000001A 8800 132 mov a, [sp+0x00] 0000001C 91 133 dec a 0000001D DF00 134 bnz $.BB@LABEL@1_2 0000001F 135 .BB@LABEL@1_1: ; if_then_bb 0000001F 136 ;*** 76 : { 0000001F 137 ;*** 77 : r_csi11_callback_error(err_type); /* overrun error occurs */ 0000001F 138 .LINE "C:/Renesas/RL78/issue_20191009/csp_projects/RL78G13/src/r_cg_serial_user.c", 77 0000001F 8800 139 mov a, [sp+0x00] 00000021 FC000000 140 call !!_r_csi11_callback_error@1 00000025 EF00 141 br $.BB@LABEL@1_8 00000027 142 .BB@LABEL@1_2: ; if_else_bb 00000027 143 ;*** 78 : } 00000027 144 ;*** 79 : else 00000027 145 ;*** 80 : { 00000027 146 ;*** 81 : if (g_csi11_tx_count > 0U) 00000027 147 .LINE "C:/Renesas/RL78/issue_20191009/csp_projects/RL78G13/src/r_cg_serial_user.c", 81 00000027 AF0000 148 movw ax, !LOWW(_g_csi11_tx_count) 0000002A 6168 149 or a, x 0000002C DF00 150 bnz $.BB@LABEL@1_9 0000002E 151 .BB@LABEL@1_3: ; if_else_bb34 0000002E 152 ;*** 82 : { 0000002E 153 ;*** 83 : if (g_csi11_tx_count != (g_csi11_send_length - 1U)) 0000002E 154 ;*** 84 : { 0000002E 155 ;*** 85 : *gp_csi11_rx_address = SIO11; 0000002E 156 ;*** 86 : gp_csi11_rx_address++; 0000002E 157 ;*** 87 : } 0000002E 158 ;*** 88 : 0000002E 159 ;*** 89 : SIO11 = *gp_csi11_tx_address; 0000002E 160 ;*** 90 : gp_csi11_tx_address++; 0000002E 161 ;*** 91 : g_csi11_tx_count--; 0000002E 162 ;*** 92 : } 0000002E 163 ;*** 93 : else 0000002E 164 ;*** 94 : { 0000002E 165 ;*** 95 : if ((SMR03 & _0001_SAU_BUFFER_EMPTY) == 1U) 0000002E 166 .LINE "C:/Renesas/RL78/issue_20191009/csp_projects/RL78G13/src/r_cg_serial_user.c", 95 0000002E AF1601 167 movw ax, !0x0116 00000031 60 168 mov a, x 00000032 310300 169 bt a.0, $.BB@LABEL@1_5 00000035 170 .BB@LABEL@1_4: ; if_else_bb58 00000035 171 ;*** 96 : { 00000035 172 ;*** 97 : r_csi11_callback_sendend(); /* complete send */ 00000035 173 ;*** 98 : *gp_csi11_rx_address = SIO11; 00000035 174 ;*** 99 : gp_csi11_rx_address++; 00000035 175 ;*** 100 : 00000035 176 ;*** 101 : if ((SSR03 & _0040_SAU_UNDER_EXECUTE) == 0U) 00000035 177 ;*** 102 : { 00000035 178 ;*** 103 : *gp_csi11_rx_address = SIO11; 00000035 179 ;*** 104 : r_csi11_callback_receiveend(); /* complete receive */ 00000035 180 ;*** 105 : } 00000035 181 ;*** 106 : else 00000035 182 ;*** 107 : { 00000035 183 ;*** 108 : SMR03 &= ~_0001_SAU_BUFFER_EMPTY; 00000035 184 ;*** 109 : } 00000035 185 ;*** 110 : } 00000035 186 ;*** 111 : else 00000035 187 ;*** 112 : { 00000035 188 ;*** 113 : *gp_csi11_rx_address = SIO11; 00000035 189 .LINE "C:/Renesas/RL78/issue_20191009/csp_projects/RL78G13/src/r_cg_serial_user.c", 113 00000035 EB0000 190 movw de, !LOWW(_gp_csi11_rx_address) 00000038 EF00 191 br $.BB@LABEL@1_6 0000003A 192 .BB@LABEL@1_5: ; if_then_bb40 0000003A 193 .LINE "C:/Renesas/RL78/issue_20191009/csp_projects/RL78G13/src/r_cg_serial_user.c", 97 0000003A FC000000 194 call !!_r_csi11_callback_sendend@1 0000003E 195 .LINE "C:/Renesas/RL78/issue_20191009/csp_projects/RL78G13/src/r_cg_serial_user.c", 98 0000003E EB0000 196 movw de, !LOWW(_gp_csi11_rx_address) 00000041 8E46 197 mov a, 0xFFF46 00000043 99 198 mov [de], a 00000044 199 .LINE "C:/Renesas/RL78/issue_20191009/csp_projects/RL78G13/src/r_cg_serial_user.c", 99 00000044 AF0000 200 movw ax, !LOWW(_gp_csi11_rx_address) 00000047 A1 201 incw ax 00000048 14 202 movw de, ax 00000049 BF0000 203 movw !LOWW(_gp_csi11_rx_address), ax 0000004C 204 .LINE "C:/Renesas/RL78/issue_20191009/csp_projects/RL78G13/src/r_cg_serial_user.c", 101 0000004C AF0601 205 movw ax, !0x0106 0000004F 60 206 mov a, x 00000050 316300 207 bt a.6, $.BB@LABEL@1_7 00000053 208 .BB@LABEL@1_6: ; if_then_bb51 00000053 209 .LINE "C:/Renesas/RL78/issue_20191009/csp_projects/RL78G13/src/r_cg_serial_user.c", 0 00000053 8E46 210 mov a, 0xFFF46 00000055 99 211 mov [de], a 00000056 FC000000 212 call !!_r_csi11_callback_receiveend@1 0000005A EF00 213 br $.BB@LABEL@1_8 0000005C 214 .BB@LABEL@1_7: ; if_else_bb54 0000005C 341601 215 movw de, #0x0116 0000005F 216 .LINE "C:/Renesas/RL78/issue_20191009/csp_projects/RL78G13/src/r_cg_serial_user.c", 108 0000005F A9 217 movw ax, [de] 00000060 08 218 xch a, x 00000061 5CFE 219 and a, #0xFE 00000063 08 220 xch a, x 00000064 B9 221 movw [de], ax 00000065 222 .BB@LABEL@1_8: ; if_else_bb54 00000065 223 .LINE "C:/Renesas/RL78/issue_20191009/csp_projects/RL78G13/src/r_cg_serial_user.c", 0 00000065 C6 224 pop hl 00000066 C0 225 pop ax 00000067 9EFC 226 mov cs, a 00000069 60 227 mov a, x 0000006A 9EFD 228 mov es, a 0000006C C6 229 pop hl 0000006D C4 230 pop de 0000006E C2 231 pop bc 0000006F C0 232 pop ax 00000070 233 .LINE "C:/Renesas/RL78/issue_20191009/csp_projects/RL78G13/src/r_cg_serial_user.c", 118 00000070 61FC 234 reti 00000072 235 .BB@LABEL@1_9: ; if_then_bb15 00000072 236 .LINE "C:/Renesas/RL78/issue_20191009/csp_projects/RL78G13/src/r_cg_serial_user.c", 83 00000072 DB0000 237 movw bc, !LOWW(_g_csi11_tx_count) 00000075 F6 238 clrw ax 00000076 B1 239 decw ax 00000077 020000 240 addw ax, !LOWW(_g_csi11_send_length) 0000007A 43 241 cmpw ax, bc 0000007B DD00 242 bz $.BB@LABEL@1_11 0000007D 243 .BB@LABEL@1_10: ; if_then_bb22 0000007D 244 .LINE "C:/Renesas/RL78/issue_20191009/csp_projects/RL78G13/src/r_cg_serial_user.c", 85 0000007D EB0000 245 movw de, !LOWW(_gp_csi11_rx_address) 00000080 8E46 246 mov a, 0xFFF46 00000082 99 247 mov [de], a 00000083 248 .LINE "C:/Renesas/RL78/issue_20191009/csp_projects/RL78G13/src/r_cg_serial_user.c", 86 00000083 A20000 249 incw !LOWW(_gp_csi11_rx_address) 00000086 250 .BB@LABEL@1_11: ; if_break_bb 00000086 251 .LINE "C:/Renesas/RL78/issue_20191009/csp_projects/RL78G13/src/r_cg_serial_user.c", 89 00000086 EB0000 252 movw de, !LOWW(_gp_csi11_tx_address) 00000089 89 253 mov a, [de] 0000008A 9E46 254 mov 0xFFF46, a ← ★★★★送信データレジスタへの書き込み★★★★ 0000008C 255 .LINE "C:/Renesas/RL78/issue_20191009/csp_projects/RL78G13/src/r_cg_serial_user.c", 90 0000008C A5 256 incw de 0000008D 15 257 movw ax, de 0000008E BF0000 258 movw !LOWW(_gp_csi11_tx_address), ax 00000091 259 .LINE "C:/Renesas/RL78/issue_20191009/csp_projects/RL78G13/src/r_cg_serial_user.c", 91 00000091 B20000 260 decw !LOWW(_g_csi11_tx_count) 00000094 EF00 261 br $.BB@LABEL@1_8 00000000 262 .SECTION .textf,TEXTF 00000000 263 _r_csi11_callback_receiveend@1: 00000000 264 .STACK _r_csi11_callback_receiveend@1 = 4 00000000 265 ;*** 114 : r_csi11_callback_receiveend(); /* complete receive */ 00000000 266 ;*** 115 : } 00000000 267 ;*** 116 : } 00000000 268 ;*** 117 : } 00000000 269 ;*** 118 : }