78K0R Assembler W1.31 Date:13 Jun 2010 Page: 1 Command: -c9F0104 -yC:\Program Files\NEC Electronics Tools\DEV -_msgoff inter_asm\led.asm Para-file: In-file: inter_asm\led.asm Obj-file: led.rel Prn-file: led.prn Assemble list ALNO STNO ADRS OBJECT M I SOURCE STATEMENT 1 1 ; 78K0R C Compiler V2.10 Assembler Source Date:13 Jun 2010 Time:19:31:24 2 2 3 3 ; Command : -c9F0104 -yC:\Program Files\NEC Electronics Tools\DEV -_msgoff -i 4 4 ; renge -iC:\Program Files\NEC Electronics Tools\FSL78K0R_Type02ES\ 5 5 ; V1.20\inc78k0r -ms -qvjl3wt -sainter_asm -zp -no led.c 6 6 ; In-file : led.c 7 7 ; Asm-file : inter_asm\led.asm 8 8 ; Para-file : 9 9 10 10 $PROCESSOR(9F0104) 11 11 $DEBUG 12 12 $NODEBUGA 13 13 $KANJICODE SJIS 14 14 $TOL_INF 03FH, 0210H, 02H, 00H, 00H, 00H, 00H 15 15 16 16 $DGS FIL_NAM, .file, 017FH, 0FFFEH, 03FH, 067H, 01H, 00H 17 17 $DGS AUX_FIL, led.c 18 18 $DGS MOD_NAM, led, 00H, 0FFFEH, 00H, 077H, 00H, 00H 19 19 $DGS SEC_NAM, @@BITS, U, U, 00H, 078H, 00H, 00H 20 20 $DGS SEC_NAM, @@CNST, U, U, 00H, 078H, 00H, 00H 21 21 $DGS SEC_NAM, @@R_INIT, U, U, 00H, 078H, 00H, 00H 22 22 $DGS SEC_NAM, @@INIT, U, U, 00H, 078H, 00H, 00H 23 23 $DGS SEC_NAM, @@DATA, U, U, 00H, 078H, 00H, 00H 24 24 $DGS SEC_NAM, @@R_INIS, U, U, 00H, 078H, 00H, 00H 25 25 $DGS SEC_NAM, @@INIS, U, U, 00H, 078H, 00H, 00H 26 26 $DGS SEC_NAM, @@DATS, U, U, 00H, 078H, 00H, 00H 27 27 $DGS SEC_NAM, @@CNSTL, U, U, 00H, 078H, 00H, 00H 28 28 $DGS SEC_NAM, @@RLINIT, U, U, 00H, 078H, 00H, 00H 29 29 $DGS SEC_NAM, @@INITL, U, U, 00H, 078H, 00H, 00H 30 30 $DGS SEC_NAM, @@DATAL, U, U, 00H, 078H, 00H, 00H 31 31 $DGS SEC_NAM, @@CALT, U, U, 00H, 078H, 00H, 00H 32 32 $DGS SEC_NAM, ROM_CODE, U, U, 00H, 078H, 00H, 00H 33 33 $DGS SEC_NAM, @@CODEL, U, U, 00H, 078H, 00H, 00H 34 34 $DGS SEC_NAM, @@BASE, U, U, 00H, 078H, 00H, 00H 35 35 $DGS ENM_TAG, _pwr_state_, 00H, 0FFFEH, 0AH, 0FH, 01H, 00H 36 36 $DGS AUX_TAG, 01H, 01EH 37 37 $DGS MEB_ENM, _OFF_TRIG, 00H, 0FFFFH, 04H, 010H, 00H, 00H 38 38 $DGS MEB_ENM, _OFF, 01H, 0FFFFH, 04H, 010H, 00H, 00H 39 39 $DGS MEB_ENM, _ON_TRIG, 02H, 0FFFFH, 04H, 010H, 00H, 00H 40 40 $DGS MEB_ENM, _ON, 03H, 0FFFFH, 04H, 010H, 00H, 00H 41 41 $DGS MEB_ENM, _SLEEP_TRIG, 04H, 0FFFFH, 04H, 010H, 00H, 00H 42 42 $DGS MEB_ENM, _SLEEP, 05H, 0FFFFH, 04H, 010H, 00H, 00H 43 43 $DGS MEB_ENM, _BT_CHARGE, 06H, 0FFFFH, 04H, 010H, 00H, 00H 44 44 $DGS END_STR, .eos, 01H, 0FFFFH, 00H, 066H, 01H, 00H 45 45 $DGS AUX_EOS, 013H, 01H 46 46 $DGS ENM_TAG, _poweron_reason_, 00H, 0FFFEH, 0AH, 0FH, 01H, 00H 47 47 $DGS AUX_TAG, 01H, 025H 48 48 $DGS MEB_ENM, _NONE, 00H, 0FFFFH, 04H, 010H, 00H, 00H 49 49 $DGS MEB_ENM, _PWSW, 01H, 0FFFFH, 04H, 010H, 00H, 00H 50 50 $DGS MEB_ENM, _RTC_ALARM, 02H, 0FFFFH, 04H, 010H, 00H, 00H 51 51 $DGS END_STR, .eos, 01H, 0FFFFH, 00H, 066H, 01H, 00H 52 52 $DGS AUX_EOS, 01EH, 01H 53 53 $DGS ENM_TAG, _model_, 00H, 0FFFEH, 0AH, 0FH, 01H, 00H 54 54 $DGS AUX_TAG, 01H, 02FH 55 55 $DGS MEB_ENM, _MODEL_JIKKI, 00H, 0FFFFH, 04H, 010H, 00H, 00H 56 56 $DGS MEB_ENM, _MODEL_TS_BOARD, 01H, 0FFFFH, 04H, 010H, 00H, 00H 57 57 $DGS MEB_ENM, _MODEL_SHIROBAKO, 02H, 0FFFFH, 04H, 010H, 00H, 00H 58 58 $DGS MEB_ENM, _MODEL_RESERVED1, 03H, 0FFFFH, 04H, 010H, 00H, 00H 59 59 $DGS MEB_ENM, _MODEL_RESERVED2, 04H, 0FFFFH, 04H, 010H, 00H, 00H 60 60 $DGS MEB_ENM, _MODEL_RESERVED3, 05H, 0FFFFH, 04H, 010H, 00H, 00H 61 61 $DGS END_STR, .eos, 01H, 0FFFFH, 00H, 066H, 01H, 00H 62 62 $DGS AUX_EOS, 025H, 01H 63 63 $DGS STR_STR, .0fake, 00H, 0FFFEH, 08H, 0AH, 01H, 00H 64 64 $DGS AUX_TAG, 04H, 041H 65 65 $DGS MEB_STR, _pwr_state, 00H, 0FFFFH, 0AH, 08H, 01H, 00H 66 66 $DGS AUX_STR, 013H, 00H, 01H, 00H, 00H, 00H, 00H, 00H 67 67 $DGS MEB_STR, _poweron_reason, 01H, 0FFFFH, 0AH, 08H, 01H, 00H 68 68 $DGS AUX_STR, 01EH, 00H, 01H, 00H, 00H, 00H, 00H, 00H 69 69 $DGS BIT_FLD, _dipsw0, 010H, 0FFFFH, 0CH, 012H, 01H, 00H 70 70 $DGS AUX_BIT, 00H, 01H 71 71 $DGS BIT_FLD, _dipsw1, 011H, 0FFFFH, 0CH, 012H, 01H, 00H 72 72 $DGS AUX_BIT, 00H, 01H 73 73 $DGS BIT_FLD, _dipsw2, 012H, 0FFFFH, 0CH, 012H, 01H, 00H 74 74 $DGS AUX_BIT, 00H, 01H 75 75 $DGS BIT_FLD, _reboot, 013H, 0FFFFH, 0CH, 012H, 01H, 00H 76 76 $DGS AUX_BIT, 00H, 01H 77 77 $DGS MEB_STR, _model, 03H, 0FFFFH, 0AH, 08H, 01H, 00H 78 78 $DGS AUX_STR, 025H, 00H, 01H, 00H, 00H, 00H, 00H, 00H 79 79 $DGS END_STR, .eos, 04H, 0FFFFH, 00H, 066H, 01H, 00H 80 80 $DGS AUX_EOS, 02FH, 04H 81 81 $DGS LAB_SYM, bs_S0172, U, U, 00H, 06H, 00H, 00H 82 82 $DGS LAB_SYM, es_S0172, U, U, 00H, 06H, 00H, 00H 83 83 $DGS LAB_SYM, bs_S0173, U, U, 00H, 06H, 00H, 00H 84 84 $DGS LAB_SYM, es_S0173, U, U, 00H, 06H, 00H, 00H 85 85 $DGS LAB_SYM, bs_S0174, U, U, 00H, 06H, 00H, 00H 86 86 $DGS LAB_SYM, es_S0174, U, U, 00H, 06H, 00H, 00H 87 87 $DGS LAB_SYM, bs_S0175, U, U, 00H, 06H, 00H, 00H 88 88 $DGS LAB_SYM, es_S0175, U, U, 00H, 06H, 00H, 00H 89 89 $DGS STA_SYM, _lpf_coeff, U, U, 05002H, 03H, 01H, 03H 90 90 $DGS AUX_STR, 00H, 00H, 02FH, 02FH, 00H, 00H, 00H, 00H 91 91 $DGS STA_SYM, _MSG_MAIL, U, U, 05002H, 03H, 01H, 03H 92 92 $DGS AUX_STR, 00H, 00H, 04H, 04H, 00H, 00H, 00H, 00H 93 93 $DGS GLV_SYM, _LED_init, U, U, 01H, 026H, 01H, 02H 94 94 $DGS AUX_FUN, 00H, U, U, 057H, 00H, 00H 95 95 $DGS BEG_FUN, ??bf_LED_init, U, U, 00H, 065H, 01H, 00H 96 96 $DGS AUX_BEG, 028H, 00H, 051H 97 97 $DGS BEG_BLK, ??bb00_LED_init, U, U, 00H, 064H, 01H, 00H 98 98 $DGS AUX_BEG, 027H, 00H, 00H 99 99 $DGS END_BLK, ??eb00_LED_init, U, U, 00H, 064H, 01H, 00H 100 100 $DGS AUX_END, 02AH 101 101 $DGS END_FUN, ??ef_LED_init, U, U, 00H, 065H, 01H, 00H 102 102 $DGS AUX_END, 02BH 103 103 $DGS GLV_SYM, _LED_stop, U, U, 01H, 026H, 01H, 02H 104 104 $DGS AUX_FUN, 00H, U, U, 05DH, 00H, 00H 105 105 $DGS BEG_FUN, ??bf_LED_stop, U, U, 00H, 065H, 01H, 00H 106 106 $DGS AUX_BEG, 057H, 00H, 05DH 107 107 $DGS END_FUN, ??ef_LED_stop, U, U, 00H, 065H, 01H, 00H 108 108 $DGS AUX_END, 05H 109 109 $DGS GLV_SYM, _tsk_led_pow, U, U, 01H, 026H, 01H, 02H 110 110 $DGS AUX_FUN, 00H, U, U, 06BH, 00H, 00H 111 111 $DGS BEG_FUN, ??bf_tsk_led_pow, U, U, 00H, 065H, 01H, 00H 112 112 $DGS AUX_BEG, 078H, 00H, 061H 113 113 $DGS BEG_BLK, ??bb00_tsk_led_pow, U, U, 00H, 064H, 01H, 00H 114 114 $DGS AUX_BEG, 03H, 00H, 063H 115 115 $DGS BEG_BLK, ??bb01_tsk_led_pow, U, U, 00H, 064H, 01H, 00H 116 116 $DGS AUX_BEG, 07H, 00H, 00H 117 117 $DGS END_BLK, ??eb01_tsk_led_pow, U, U, 00H, 064H, 01H, 00H 118 118 $DGS AUX_END, 012H 119 119 $DGS END_BLK, ??eb00_tsk_led_pow, U, U, 00H, 064H, 01H, 00H 120 120 $DGS AUX_END, 02DH 121 121 $DGS END_FUN, ??ef_tsk_led_pow, U, U, 00H, 065H, 01H, 00H 122 122 $DGS AUX_END, 02FH 123 123 $DGS STA_SYM, _led_pow_normal, U, U, 01H, 03H, 01H, 02H 124 124 $DGS AUX_FUN, 00H, U, U, 096H, 00H, 00H 125 125 $DGS BEG_FUN, ??bf_led_pow_normal, U, U, 00H, 065H, 01H, 00H 126 126 $DGS AUX_BEG, 0AEH, 00H, 070H 127 127 $DGS STA_SYM, _state, ?L0031, U, 0CH, 03H, 00H, 00H 128 128 $DGS BEG_BLK, ??bb00_led_pow_normal, U, U, 00H, 064H, 01H, 00H 129 129 $DGS AUX_BEG, 05H, 00H, 072H 130 130 $DGS BEG_BLK, ??bb01_led_pow_normal, U, U, 00H, 064H, 01H, 00H 131 131 $DGS AUX_BEG, 09H, 00H, 076H 132 132 $DGS END_BLK, ??eb01_led_pow_normal, U, U, 00H, 064H, 01H, 00H 133 133 $DGS AUX_END, 0CH 134 134 $DGS BEG_BLK, ??bb02_led_pow_normal, U, U, 00H, 064H, 01H, 00H 135 135 $DGS AUX_BEG, 0EH, 00H, 07CH 136 136 $DGS END_BLK, ??eb02_led_pow_normal, U, U, 00H, 064H, 01H, 00H 137 137 $DGS AUX_END, 010H 138 138 $DGS END_BLK, ??eb00_led_pow_normal, U, U, 00H, 064H, 01H, 00H 139 139 $DGS AUX_END, 013H 140 140 $DGS BEG_BLK, ??bb03_led_pow_normal, U, U, 00H, 064H, 01H, 00H 141 141 $DGS AUX_BEG, 015H, 00H, 07EH 142 142 $DGS BEG_BLK, ??bb04_led_pow_normal, U, U, 00H, 064H, 01H, 00H 143 143 $DGS AUX_BEG, 018H, 00H, 082H 144 144 $DGS END_BLK, ??eb04_led_pow_normal, U, U, 00H, 064H, 01H, 00H 145 145 $DGS AUX_END, 01AH 146 146 $DGS BEG_BLK, ??bb05_led_pow_normal, U, U, 00H, 064H, 01H, 00H 147 147 $DGS AUX_BEG, 01CH, 00H, 088H 148 148 $DGS END_BLK, ??eb05_led_pow_normal, U, U, 00H, 064H, 01H, 00H 149 149 $DGS AUX_END, 01EH 150 150 $DGS END_BLK, ??eb03_led_pow_normal, U, U, 00H, 064H, 01H, 00H 151 151 $DGS AUX_END, 021H 152 152 $DGS BEG_BLK, ??bb06_led_pow_normal, U, U, 00H, 064H, 01H, 00H 153 153 $DGS AUX_BEG, 023H, 00H, 08AH 154 154 $DGS BEG_BLK, ??bb07_led_pow_normal, U, U, 00H, 064H, 01H, 00H 155 155 $DGS AUX_BEG, 026H, 00H, 08EH 156 156 $DGS END_BLK, ??eb07_led_pow_normal, U, U, 00H, 064H, 01H, 00H 157 157 $DGS AUX_END, 028H 158 158 $DGS BEG_BLK, ??bb08_led_pow_normal, U, U, 00H, 064H, 01H, 00H 159 159 $DGS AUX_BEG, 02AH, 00H, 00H 160 160 $DGS END_BLK, ??eb08_led_pow_normal, U, U, 00H, 064H, 01H, 00H 161 161 $DGS AUX_END, 02CH 162 162 $DGS END_BLK, ??eb06_led_pow_normal, U, U, 00H, 064H, 01H, 00H 163 163 $DGS AUX_END, 02DH 164 164 $DGS END_FUN, ??ef_led_pow_normal, U, U, 00H, 065H, 01H, 00H 165 165 $DGS AUX_END, 030H 166 166 $DGS STA_SYM, _led_pow_hotaru, U, U, 01H, 03H, 01H, 02H 167 167 $DGS AUX_FUN, 00H, U, U, 0D8H, 00H, 00H 168 168 $DGS BEG_FUN, ??bf_led_pow_hotaru, U, U, 00H, 065H, 01H, 00H 169 169 $DGS AUX_BEG, 0E5H, 00H, 09EH 170 170 $DGS STA_SYM, _delay, ?L0052, U, 0CH, 03H, 00H, 00H 171 171 $DGS STA_SYM, _state, ?L0053, U, 0CH, 03H, 00H, 00H 172 172 $DGS STA_SYM, _blue_to, ?L0054, U, 0DH, 03H, 00H, 00H 173 173 $DGS STA_SYM, _red_to, ?L0055, U, 0DH, 03H, 00H, 00H 174 174 $DGS BEG_BLK, ??bb00_led_pow_hotaru, U, U, 00H, 064H, 01H, 00H 175 175 $DGS AUX_BEG, 08H, 00H, 0A2H 176 176 $DGS END_BLK, ??eb00_led_pow_hotaru, U, U, 00H, 064H, 01H, 00H 177 177 $DGS AUX_END, 0BH 178 178 $DGS BEG_BLK, ??bb01_led_pow_hotaru, U, U, 00H, 064H, 01H, 00H 179 179 $DGS AUX_BEG, 0DH, 00H, 0A6H 180 180 $DGS END_BLK, ??eb01_led_pow_hotaru, U, U, 00H, 064H, 01H, 00H 181 181 $DGS AUX_END, 0FH 182 182 $DGS BEG_BLK, ??bb02_led_pow_hotaru, U, U, 00H, 064H, 01H, 00H 183 183 $DGS AUX_BEG, 012H, 00H, 0A8H 184 184 $DGS BEG_BLK, ??bb03_led_pow_hotaru, U, U, 00H, 064H, 01H, 00H 185 185 $DGS AUX_BEG, 014H, 00H, 0ACH 186 186 $DGS END_BLK, ??eb03_led_pow_hotaru, U, U, 00H, 064H, 01H, 00H 187 187 $DGS AUX_END, 016H 188 188 $DGS BEG_BLK, ??bb04_led_pow_hotaru, U, U, 00H, 064H, 01H, 00H 189 189 $DGS AUX_BEG, 018H, 00H, 0B2H 190 190 $DGS END_BLK, ??eb04_led_pow_hotaru, U, U, 00H, 064H, 01H, 00H 191 191 $DGS AUX_END, 01AH 192 192 $DGS END_BLK, ??eb02_led_pow_hotaru, U, U, 00H, 064H, 01H, 00H 193 193 $DGS AUX_END, 01BH 194 194 $DGS BEG_BLK, ??bb05_led_pow_hotaru, U, U, 00H, 064H, 01H, 00H 195 195 $DGS AUX_BEG, 01EH, 00H, 0B4H 196 196 $DGS BEG_BLK, ??bb06_led_pow_hotaru, U, U, 00H, 064H, 01H, 00H 197 197 $DGS AUX_BEG, 020H, 00H, 0B8H 198 198 $DGS END_BLK, ??eb06_led_pow_hotaru, U, U, 00H, 064H, 01H, 00H 199 199 $DGS AUX_END, 022H 200 200 $DGS BEG_BLK, ??bb07_led_pow_hotaru, U, U, 00H, 064H, 01H, 00H 201 201 $DGS AUX_BEG, 024H, 00H, 0BEH 202 202 $DGS END_BLK, ??eb07_led_pow_hotaru, U, U, 00H, 064H, 01H, 00H 203 203 $DGS AUX_END, 026H 204 204 $DGS END_BLK, ??eb05_led_pow_hotaru, U, U, 00H, 064H, 01H, 00H 205 205 $DGS AUX_END, 027H 206 206 $DGS BEG_BLK, ??bb08_led_pow_hotaru, U, U, 00H, 064H, 01H, 00H 207 207 $DGS AUX_BEG, 02AH, 00H, 0C0H 208 208 $DGS BEG_BLK, ??bb09_led_pow_hotaru, U, U, 00H, 064H, 01H, 00H 209 209 $DGS AUX_BEG, 030H, 00H, 0C4H 210 210 $DGS END_BLK, ??eb09_led_pow_hotaru, U, U, 00H, 064H, 01H, 00H 211 211 $DGS AUX_END, 034H 212 212 $DGS BEG_BLK, ??bb0A_led_pow_hotaru, U, U, 00H, 064H, 01H, 00H 213 213 $DGS AUX_BEG, 036H, 00H, 0C8H 214 214 $DGS END_BLK, ??eb0A_led_pow_hotaru, U, U, 00H, 064H, 01H, 00H 215 215 $DGS AUX_END, 039H 216 216 $DGS BEG_BLK, ??bb0B_led_pow_hotaru, U, U, 00H, 064H, 01H, 00H 217 217 $DGS AUX_BEG, 03FH, 00H, 0CCH 218 218 $DGS END_BLK, ??eb0B_led_pow_hotaru, U, U, 00H, 064H, 01H, 00H 219 219 $DGS AUX_END, 041H 220 220 $DGS BEG_BLK, ??bb0C_led_pow_hotaru, U, U, 00H, 064H, 01H, 00H 221 221 $DGS AUX_BEG, 043H, 00H, 0D2H 222 222 $DGS END_BLK, ??eb0C_led_pow_hotaru, U, U, 00H, 064H, 01H, 00H 223 223 $DGS AUX_END, 045H 224 224 $DGS END_BLK, ??eb08_led_pow_hotaru, U, U, 00H, 064H, 01H, 00H 225 225 $DGS AUX_END, 047H 226 226 $DGS BEG_BLK, ??bb0D_led_pow_hotaru, U, U, 00H, 064H, 01H, 00H 227 227 $DGS AUX_BEG, 04AH, 00H, 00H 228 228 $DGS END_BLK, ??eb0D_led_pow_hotaru, U, U, 00H, 064H, 01H, 00H 229 229 $DGS AUX_END, 04CH 230 230 $DGS END_FUN, ??ef_led_pow_hotaru, U, U, 00H, 065H, 01H, 00H 231 231 $DGS AUX_END, 04EH 232 232 $DGS GLV_SYM, _tsk_led_wifi, U, U, 01H, 026H, 01H, 02H 233 233 $DGS AUX_FUN, 00H, U, U, 0106H, 00H, 00H 234 234 $DGS BEG_FUN, ??bf_tsk_led_wifi, U, U, 00H, 065H, 01H, 00H 235 235 $DGS AUX_BEG, 013CH, 00H, 0E0H 236 236 $DGS STA_SYM, _task_interval, ?L0079, U, 0CH, 03H, 00H, 00H 237 237 $DGS STA_SYM, _remain_wifi_tx, ?L0080, U, 0CH, 03H, 00H, 00H 238 238 $DGS STA_SYM, _state_wifi_tx, ?L0081, U, 0CH, 03H, 00H, 00H 239 239 $DGS STA_SYM, _flag_wifi_TX, ?L0082, U, 0CH, 03H, 00H, 00H 240 240 $DGS BEG_BLK, ??bb00_tsk_led_wifi, U, U, 00H, 064H, 01H, 00H 241 241 $DGS AUX_BEG, 09H, 00H, 0E4H 242 242 $DGS END_BLK, ??eb00_tsk_led_wifi, U, U, 00H, 064H, 01H, 00H 243 243 $DGS AUX_END, 0BH 244 244 $DGS BEG_BLK, ??bb01_tsk_led_wifi, U, U, 00H, 064H, 01H, 00H 245 245 $DGS AUX_BEG, 0FH, 00H, 0E6H 246 246 $DGS BEG_BLK, ??bb02_tsk_led_wifi, U, U, 00H, 064H, 01H, 00H 247 247 $DGS AUX_BEG, 011H, 00H, 0ECH 248 248 $DGS END_BLK, ??eb02_tsk_led_wifi, U, U, 00H, 064H, 01H, 00H 249 249 $DGS AUX_END, 014H 250 250 $DGS END_BLK, ??eb01_tsk_led_wifi, U, U, 00H, 064H, 01H, 00H 251 251 $DGS AUX_END, 015H 252 252 $DGS BEG_BLK, ??bb03_tsk_led_wifi, U, U, 00H, 064H, 01H, 00H 253 253 $DGS AUX_BEG, 017H, 00H, 0F0H 254 254 $DGS END_BLK, ??eb03_tsk_led_wifi, U, U, 00H, 064H, 01H, 00H 255 255 $DGS AUX_END, 019H 256 256 $DGS BEG_BLK, ??bb04_tsk_led_wifi, U, U, 00H, 064H, 01H, 00H 257 257 $DGS AUX_BEG, 01DH, 00H, 0F2H 258 258 $DGS BEG_BLK, ??bb05_tsk_led_wifi, U, U, 00H, 064H, 01H, 00H 259 259 $DGS AUX_BEG, 02DH, 00H, 0F4H 260 260 $DGS BEG_BLK, ??bb06_tsk_led_wifi, U, U, 00H, 064H, 01H, 00H 261 261 $DGS AUX_BEG, 030H, 00H, 0F8H 262 262 $DGS END_BLK, ??eb06_tsk_led_wifi, U, U, 00H, 064H, 01H, 00H 263 263 $DGS AUX_END, 038H 264 264 $DGS BEG_BLK, ??bb07_tsk_led_wifi, U, U, 00H, 064H, 01H, 00H 265 265 $DGS AUX_BEG, 03BH, 00H, 0FEH 266 266 $DGS END_BLK, ??eb07_tsk_led_wifi, U, U, 00H, 064H, 01H, 00H 267 267 $DGS AUX_END, 03EH 268 268 $DGS END_BLK, ??eb05_tsk_led_wifi, U, U, 00H, 064H, 01H, 00H 269 269 $DGS AUX_END, 041H 270 270 $DGS BEG_BLK, ??bb08_tsk_led_wifi, U, U, 00H, 064H, 01H, 00H 271 271 $DGS AUX_BEG, 043H, 00H, 00H 272 272 $DGS END_BLK, ??eb08_tsk_led_wifi, U, U, 00H, 064H, 01H, 00H 273 273 $DGS AUX_END, 048H 274 274 $DGS END_BLK, ??eb04_tsk_led_wifi, U, U, 00H, 064H, 01H, 00H 275 275 $DGS AUX_END, 04BH 276 276 $DGS END_FUN, ??ef_tsk_led_wifi, U, U, 00H, 065H, 01H, 00H 277 277 $DGS AUX_END, 04CH 278 278 $DGS GLV_SYM, _tsk_led_notify, U, U, 01H, 026H, 01H, 02H 279 279 $DGS AUX_FUN, 00H, U, U, 014AH, 00H, 00H 280 280 $DGS BEG_FUN, ??bf_tsk_led_notify, U, U, 00H, 065H, 01H, 00H 281 281 $DGS AUX_BEG, 0191H, 02H, 010EH 282 282 $DGS STA_SYM, _task_interval, ?L0107, U, 0CH, 03H, 00H, 00H 283 283 $DGS STA_SYM, _flg_char_space, ?L0108, U, 0CH, 03H, 00H, 00H 284 284 $DGS STA_SYM, _state_notify_led, ?L0109, U, 0CH, 03H, 00H, 00H 285 285 $DGS STA_SYM, _flag_wifi_TX, ?L0110, U, 0CH, 03H, 00H, 00H 286 286 $DGS BEG_BLK, ??bb00_tsk_led_notify, U, U, 00H, 064H, 01H, 00H 287 287 $DGS AUX_BEG, 09H, 00H, 0112H 288 288 $DGS END_BLK, ??eb00_tsk_led_notify, U, U, 00H, 064H, 01H, 00H 289 289 $DGS AUX_END, 0BH 290 290 $DGS BEG_BLK, ??bb01_tsk_led_notify, U, U, 00H, 064H, 01H, 00H 291 291 $DGS AUX_BEG, 0EH, 00H, 0114H 292 292 $DGS BEG_BLK, ??bb02_tsk_led_notify, U, U, 00H, 064H, 01H, 00H 293 293 $DGS AUX_BEG, 01FH, 00H, 0118H 294 294 $DGS END_BLK, ??eb02_tsk_led_notify, U, U, 00H, 064H, 01H, 00H 295 295 $DGS AUX_END, 027H 296 296 $DGS BEG_BLK, ??bb03_tsk_led_notify, U, U, 00H, 064H, 01H, 00H 297 297 $DGS AUX_BEG, 02AH, 00H, 011CH 298 298 $DGS END_BLK, ??eb03_tsk_led_notify, U, U, 00H, 064H, 01H, 00H 299 299 $DGS AUX_END, 02CH 300 300 $DGS BEG_BLK, ??bb04_tsk_led_notify, U, U, 00H, 064H, 01H, 00H 301 301 $DGS AUX_BEG, 032H, 00H, 0120H 302 302 $DGS REG_VAR, _dat, 06H, 0FFFFH, 010CH, 04H, 01H, 00H 303 303 $DGS AUX_STR, 00H, 033H, 01H, 00H, 00H, 00H, 00H, 00H 304 304 $DGS BEG_BLK, ??bb05_tsk_led_notify, U, U, 00H, 064H, 01H, 00H 305 305 $DGS AUX_BEG, 038H, 00H, 0124H 306 306 $DGS END_BLK, ??eb05_tsk_led_notify, U, U, 00H, 064H, 01H, 00H 307 307 $DGS AUX_END, 03CH 308 308 $DGS BEG_BLK, ??bb06_tsk_led_notify, U, U, 00H, 064H, 01H, 00H 309 309 $DGS AUX_BEG, 041H, 00H, 0128H 310 310 $DGS END_BLK, ??eb06_tsk_led_notify, U, U, 00H, 064H, 01H, 00H 311 311 $DGS AUX_END, 043H 312 312 $DGS BEG_BLK, ??bb07_tsk_led_notify, U, U, 00H, 064H, 01H, 00H 313 313 $DGS AUX_BEG, 045H, 00H, 012CH 314 314 $DGS END_BLK, ??eb07_tsk_led_notify, U, U, 00H, 064H, 01H, 00H 315 315 $DGS AUX_END, 047H 316 316 $DGS BEG_BLK, ??bb08_tsk_led_notify, U, U, 00H, 064H, 01H, 00H 317 317 $DGS AUX_BEG, 04BH, 00H, 012EH 318 318 $DGS BEG_BLK, ??bb09_tsk_led_notify, U, U, 00H, 064H, 01H, 00H 319 319 $DGS AUX_BEG, 04FH, 00H, 0132H 320 320 $DGS END_BLK, ??eb09_tsk_led_notify, U, U, 00H, 064H, 01H, 00H 321 321 $DGS AUX_END, 052H 322 322 $DGS BEG_BLK, ??bb0A_tsk_led_notify, U, U, 00H, 064H, 01H, 00H 323 323 $DGS AUX_BEG, 054H, 00H, 0138H 324 324 $DGS END_BLK, ??eb0A_tsk_led_notify, U, U, 00H, 064H, 01H, 00H 325 325 $DGS AUX_END, 057H 326 326 $DGS END_BLK, ??eb08_tsk_led_notify, U, U, 00H, 064H, 01H, 00H 327 327 $DGS AUX_END, 05CH 328 328 $DGS BEG_BLK, ??bb0B_tsk_led_notify, U, U, 00H, 064H, 01H, 00H 329 329 $DGS AUX_BEG, 05EH, 00H, 013AH 330 330 $DGS BEG_BLK, ??bb0C_tsk_led_notify, U, U, 00H, 064H, 01H, 00H 331 331 $DGS AUX_BEG, 060H, 00H, 013EH 332 332 $DGS END_BLK, ??eb0C_tsk_led_notify, U, U, 00H, 064H, 01H, 00H 333 333 $DGS AUX_END, 063H 334 334 $DGS BEG_BLK, ??bb0D_tsk_led_notify, U, U, 00H, 064H, 01H, 00H 335 335 $DGS AUX_BEG, 065H, 00H, 00H 336 336 $DGS END_BLK, ??eb0D_tsk_led_notify, U, U, 00H, 064H, 01H, 00H 337 337 $DGS AUX_END, 068H 338 338 $DGS END_BLK, ??eb0B_tsk_led_notify, U, U, 00H, 064H, 01H, 00H 339 339 $DGS AUX_END, 06AH 340 340 $DGS END_BLK, ??eb04_tsk_led_notify, U, U, 00H, 064H, 01H, 00H 341 341 $DGS AUX_END, 06BH 342 342 $DGS END_BLK, ??eb01_tsk_led_notify, U, U, 00H, 064H, 01H, 00H 343 343 $DGS AUX_END, 06CH 344 344 $DGS END_FUN, ??ef_tsk_led_notify, U, U, 00H, 065H, 01H, 00H 345 345 $DGS AUX_END, 06DH 346 346 $DGS GLV_SYM, _tsk_led_cam, U, U, 01H, 026H, 01H, 02H 347 347 $DGS AUX_FUN, 00H, U, U, 017FH, 00H, 00H 348 348 $DGS BEG_FUN, ??bf_tsk_led_cam, U, U, 00H, 065H, 01H, 00H 349 349 $DGS AUX_BEG, 0208H, 00H, 0151H 350 350 $DGS STA_SYM, _state_led_cam, ?L0142, U, 0CH, 03H, 00H, 00H 351 351 $DGS STA_SYM, _task_interval, ?L0143, U, 0CH, 03H, 00H, 00H 352 352 $DGS STA_SYM, _state_led_cam_twl, ?L0144, U, 0CH, 03H, 00H, 00H 353 353 $DGS BEG_BLK, ??bb00_tsk_led_cam, U, U, 00H, 064H, 01H, 00H 354 354 $DGS AUX_BEG, 07H, 00H, 0155H 355 355 $DGS END_BLK, ??eb00_tsk_led_cam, U, U, 00H, 064H, 01H, 00H 356 356 $DGS AUX_END, 0AH 357 357 $DGS BEG_BLK, ??bb01_tsk_led_cam, U, U, 00H, 064H, 01H, 00H 358 358 $DGS AUX_BEG, 010H, 00H, 0157H 359 359 $DGS BEG_BLK, ??bb02_tsk_led_cam, U, U, 00H, 064H, 01H, 00H 360 360 $DGS AUX_BEG, 01EH, 00H, 015BH 361 361 $DGS END_BLK, ??eb02_tsk_led_cam, U, U, 00H, 064H, 01H, 00H 362 362 $DGS AUX_END, 021H 363 363 $DGS BEG_BLK, ??bb03_tsk_led_cam, U, U, 00H, 064H, 01H, 00H 364 364 $DGS AUX_BEG, 023H, 00H, 015FH 365 365 $DGS END_BLK, ??eb03_tsk_led_cam, U, U, 00H, 064H, 01H, 00H 366 366 $DGS AUX_END, 026H 367 367 $DGS BEG_BLK, ??bb04_tsk_led_cam, U, U, 00H, 064H, 01H, 00H 368 368 $DGS AUX_BEG, 02CH, 00H, 0163H 369 369 $DGS END_BLK, ??eb04_tsk_led_cam, U, U, 00H, 064H, 01H, 00H 370 370 $DGS AUX_END, 030H 371 371 $DGS BEG_BLK, ??bb05_tsk_led_cam, U, U, 00H, 064H, 01H, 00H 372 372 $DGS AUX_BEG, 032H, 00H, 0167H 373 373 $DGS END_BLK, ??eb05_tsk_led_cam, U, U, 00H, 064H, 01H, 00H 374 374 $DGS AUX_END, 034H 375 375 $DGS BEG_BLK, ??bb06_tsk_led_cam, U, U, 00H, 064H, 01H, 00H 376 376 $DGS AUX_BEG, 039H, 00H, 016BH 377 377 $DGS END_BLK, ??eb06_tsk_led_cam, U, U, 00H, 064H, 01H, 00H 378 378 $DGS AUX_END, 03DH 379 379 $DGS BEG_BLK, ??bb07_tsk_led_cam, U, U, 00H, 064H, 01H, 00H 380 380 $DGS AUX_BEG, 03FH, 00H, 016FH 381 381 $DGS END_BLK, ??eb07_tsk_led_cam, U, U, 00H, 064H, 01H, 00H 382 382 $DGS AUX_END, 041H 383 383 $DGS BEG_BLK, ??bb08_tsk_led_cam, U, U, 00H, 064H, 01H, 00H 384 384 $DGS AUX_BEG, 045H, 00H, 0171H 385 385 $DGS BEG_BLK, ??bb09_tsk_led_cam, U, U, 00H, 064H, 01H, 00H 386 386 $DGS AUX_BEG, 04DH, 00H, 0175H 387 387 $DGS END_BLK, ??eb09_tsk_led_cam, U, U, 00H, 064H, 01H, 00H 388 388 $DGS AUX_END, 050H 389 389 $DGS BEG_BLK, ??bb0A_tsk_led_cam, U, U, 00H, 064H, 01H, 00H 390 390 $DGS AUX_BEG, 052H, 00H, 00H 391 391 $DGS END_BLK, ??eb0A_tsk_led_cam, U, U, 00H, 064H, 01H, 00H 392 392 $DGS AUX_END, 055H 393 393 $DGS END_BLK, ??eb08_tsk_led_cam, U, U, 00H, 064H, 01H, 00H 394 394 $DGS AUX_END, 05FH 395 395 $DGS END_BLK, ??eb01_tsk_led_cam, U, U, 00H, 064H, 01H, 00H 396 396 $DGS AUX_END, 060H 397 397 $DGS END_FUN, ??ef_tsk_led_cam, U, U, 00H, 065H, 01H, 00H 398 398 $DGS AUX_END, 062H 399 399 $DGS GLV_SYM, _vreg_ctr, U, U, 0CH, 02H, 01H, 03H 400 400 $DGS AUX_STR, 00H, 00H, 01H, 01H, 00H, 00H, 00H, 00H 401 401 $DGS GLV_SYM, _system_status, U, U, 08H, 02H, 01H, 00H 402 402 $DGS AUX_STR, 02FH, 00H, 04H, 00H, 00H, 00H, 00H, 00H 403 403 $DGS GLV_SYM, _@RTARG0, U, U, 00H, 02H, 00H, 00H 404 404 $DGS GLV_SYM, @@isrem, U, U, 00H, 02H, 00H, 00H 405 405 $DGS GLV_SYM, _vreg_twl, U, U, 0CH, 02H, 01H, 03H 406 406 $DGS AUX_STR, 00H, 00H, 01H, 01H, 00H, 00H, 00H, 00H 407 407 408 408 EXTRN _vreg_ctr 409 409 EXTRN _system_status 410 410 EXTRN _@RTARG0 411 411 EXTRN @@isrem 412 412 EXTRN _vreg_twl 413 413 PUBLIC _LED_init 414 414 PUBLIC _LED_stop 415 415 PUBLIC _tsk_led_pow 416 416 PUBLIC _tsk_led_wifi 417 417 PUBLIC _tsk_led_notify 418 418 PUBLIC _tsk_led_cam 419 419 420 420 ----- @@BITS BSEG 421 421 422 422 ----- @@CNST CSEG MIRRORP 423 423 00000 01 _lpf_coeff: DB 01H ; 1 424 424 00001 02 DB 02H ; 2 425 425 00002 02 DB 02H ; 2 426 426 00003 03 DB 03H ; 3 427 427 00004 03 DB 03H ; 3 428 428 00005 02 DB 02H ; 2 429 429 00006 00 DB 00H ; 0 430 430 00007 FE DB 0FEH ; 254 431 431 00008 FB DB 0FBH ; 251 432 432 00009 F7 DB 0F7H ; 247 433 433 0000A F3 DB 0F3H ; 243 434 434 0000B F0 DB 0F0H ; 240 435 435 0000C F0 DB 0F0H ; 240 436 436 0000D F3 DB 0F3H ; 243 437 437 0000E FA DB 0FAH ; 250 438 438 0000F 04 DB 04H ; 4 439 439 00010 12 DB 012H ; 18 440 440 00011 25 DB 025H ; 37 441 441 00012 38 DB 038H ; 56 442 442 00013 4D DB 04DH ; 77 443 443 00014 5F DB 05FH ; 95 444 444 00015 6E DB 06EH ; 110 445 445 00016 77 DB 077H ; 119 446 446 00017 7A DB 07AH ; 122 447 447 00018 77 DB 077H ; 119 448 448 00019 6E DB 06EH ; 110 449 449 0001A 5F DB 05FH ; 95 450 450 0001B 4D DB 04DH ; 77 451 451 0001C 38 DB 038H ; 56 452 452 0001D 25 DB 025H ; 37 453 453 0001E 12 DB 012H ; 18 454 454 0001F 04 DB 04H ; 4 455 455 00020 FA DB 0FAH ; 250 456 456 00021 F3 DB 0F3H ; 243 457 457 00022 F0 DB 0F0H ; 240 458 458 00023 F0 DB 0F0H ; 240 459 459 00024 F3 DB 0F3H ; 243 460 460 00025 F7 DB 0F7H ; 247 461 461 00026 FB DB 0FBH ; 251 462 462 00027 FE DB 0FEH ; 254 463 463 00028 00 DB 00H ; 0 464 464 00029 02 DB 02H ; 2 465 465 0002A 03 DB 03H ; 3 466 466 0002B 03 DB 03H ; 3 467 467 0002C 02 DB 02H ; 2 468 468 0002D 02 DB 02H ; 2 469 469 0002E 01 DB 01H ; 1 470 470 0002F F6 _MSG_MAIL: DB 0F6H ; 246 471 471 00030 DA DB 0DAH ; 218 472 472 00031 6E DB 06EH ; 110 473 473 00032 94 DB 094H ; 148 474 474 00033 00 DB (1) 475 475 476 476 ----- @@R_INIT CSEG UNIT64KP 477 477 00000 00 DB 00H ; 0 478 478 00001 00 DB (1) 479 479 480 480 ----- @@INIT DSEG BASEP 481 481 00000 ?L0142: DS (1) 482 482 00001 DS (1) 483 483 484 484 ----- @@DATA DSEG BASEP 485 485 00000 ?L0031: DS (1) 486 486 00001 ?L0052: DS (1) 487 487 00002 ?L0053: DS (1) 488 488 00003 DS (1) 489 489 00004 ?L0054: DS (2) 490 490 00006 ?L0055: DS (2) 491 491 00008 ?L0079: DS (1) 492 492 00009 ?L0080: DS (1) 493 493 0000A ?L0081: DS (1) 494 494 0000B ?L0082: DS (1) 495 495 0000C ?L0107: DS (1) 496 496 0000D ?L0108: DS (1) 497 497 0000E ?L0109: DS (1) 498 498 0000F ?L0110: DS (1) 499 499 00010 ?L0143: DS (1) 500 500 00011 ?L0144: DS (1) 501 501 502 502 ----- @@R_INIS CSEG UNIT64KP 503 503 504 504 ----- @@INIS DSEG SADDRP 505 505 506 506 ----- @@DATS DSEG SADDRP 507 507 508 508 ----- @@CNSTL CSEG PAGE64KP 509 509 510 510 ----- @@RLINIT CSEG UNIT64KP 511 511 512 512 ----- @@INITL DSEG UNIT64KP 513 513 514 514 ----- @@DATAL DSEG UNIT64KP 515 515 516 516 ----- @@CALT CSEG CALLT0 517 517 518 518 ; Sub-Routines created by CC78K0R 519 519 520 520 ----- ROM_CODE CSEG BASE 521 521 00000 bs_S0172: 522 522 00000 F1 clrb a ;[INF] 1, 1 523 523 00001 E7 onew bc ;[INF] 1, 1 524 524 00002 240000 subw ax,#00H ; 0 ;[INF] 3, 1 525 525 00005 D7 ret ;[INF] 1, 6 526 526 00006 es_S0172: 527 527 528 528 ----- ROM_CODE CSEG BASE 529 529 00006 bs_S0173: 530 530 00006 RD92800 mov x,!_vreg_ctr+40 ;[INF] 3, 1 531 531 00009 F1 clrb a ;[INF] 1, 1 532 532 0000A BE66 movw TDR03,ax ;[INF] 2, 1 533 533 0000C D7 ret ;[INF] 1, 6 534 534 0000D es_S0173: 535 535 536 536 ----- ROM_CODE CSEG BASE 537 537 0000D bs_S0174: 538 538 0000D RD92800 mov x,!_vreg_ctr+40 ;[INF] 3, 1 539 539 00010 F1 clrb a ;[INF] 1, 1 540 540 00011 BE6A movw TDR05,ax ;[INF] 2, 1 541 541 00013 D7 ret ;[INF] 1, 6 542 542 00014 es_S0174: 543 543 544 544 ----- ROM_CODE CSEG BASE 545 545 00014 bs_S0175: 546 546 00014 RD92800 mov x,!_vreg_ctr+40 ;[INF] 3, 1 547 547 00017 F1 clrb a ;[INF] 1, 1 548 548 00018 BE64 movw TDR02,ax ;[INF] 2, 1 549 549 0001A D7 ret ;[INF] 1, 6 550 550 0001B es_S0175: 551 551 552 552 ; *** Sub-Routine Information *** 553 553 ; 554 554 ; $SUB bs_S0172 555 555 ; CODE SIZE= 6 bytes 556 556 ; 557 557 ; $SUB bs_S0173 558 558 ; CODE SIZE= 7 bytes 559 559 ; 560 560 ; $SUB bs_S0174 561 561 ; CODE SIZE= 7 bytes 562 562 ; 563 563 ; $SUB bs_S0175 564 564 ; CODE SIZE= 7 bytes 565 565 566 566 ; End of Sub-Routines 567 567 568 568 ; line 1 : /* ======================================================== 569 569 ; line 2 : LED.c 570 570 ; line 3 : 571 571 ; line 4 : ======================================================== */ 572 572 ; line 5 : #pragma sfr 573 573 ; line 6 : 574 574 ; line 7 : 575 575 ; line 8 : #include "incs.h" 576 576 ; line 9 : #include "led.h" 577 577 ; line 10 : 578 578 ; line 11 : 579 579 ; line 12 : 580 580 ; line 13 : // ======================================================== 581 581 ; line 14 : // TPS0 582 582 ; line 15 : #define BIT_PRS012 ( 1 << 2 ) 583 583 ; line 16 : #define BIT_PRS002 ( 1 << 6 ) 584 584 ; line 17 : 585 585 ; line 18 : // TMR0 586 586 ; line 19 : #define BIT_CKS0 15 587 587 ; line 20 : #define BIT_CCS0 12 588 588 ; line 21 : #define BIT_MASTER0 11 589 589 ; line 22 : #define BIT_STS0 8 590 590 ; line 23 : #define BIT_CIS0 6 591 591 ; line 24 : #define BIT_MD123 1 592 592 ; line 25 : #define BIT_MD0 0 593 593 ; line 26 : 594 594 ; line 27 : // ======================================================== 595 595 ; line 28 : static void led_pow_normal( ); 596 596 ; line 29 : static void led_pow_hotaru( ); 597 597 ; line 30 : 598 598 ; line 31 : 599 599 ; line 32 : 600 600 ; line 33 : // ======================================================== 601 601 ; line 34 : static const char MSG_MAIL[] = { 0b11110110, 0b11011010, 0b01101 602 602 ; 110, 0b10010100 }; 603 603 ; line 35 : #define MSG_SPD 60 604 604 ; line 36 : // ↑255/3以下であること! 605 605 ; line 37 : 606 606 ; line 38 : // ======================================================== 607 607 ; line 39 : void LED_init( ) 608 608 ; line 40 : { 609 609 610 610 ----- ROM_CODE CSEG BASE 611 611 0001B _LED_init: 612 612 $DGL 1,77 613 613 0001B ??bf_LED_init: 614 614 ; line 41 : /** 615 615 ; line 42 : PWMのセット、とりあえず全部消灯 616 616 ; line 43 : 617 617 ; line 44 : マスタチャネル:0 (P01:/reset2) マスターは偶数チャネルしかで 618 618 ; きない 619 619 ; line 45 : スレーブ    1 SLTO。(3D LED?) 620 620 ; line 46 :         2 カメラ 621 621 ; line 47 :         3 WiFi 622 622 ; line 48 :         4 (ピンはRTC32kHz out に使用) 623 623 ; line 49 :         5 充電 624 624 ; line 50 :         6 電源 L 625 625 ; line 51 :         7 電源 H 626 626 ; line 52 : */ 627 627 ; line 53 : TAU0EN = 1; 628 628 $DGL 0,14 629 629 0001B 7100F200 set1 !PER2.0 ;[INF] 4, 2 630 630 ; line 54 : TPS0 = BIT_PRS012 | BIT_PRS002; // マスタークロックはCK0 631 631 ; 1,8M/2 /2^4 = 250kHz 632 632 $DGL 0,15 633 633 0001F 304400 movw ax,#044H ; 68 ;[INF] 3, 1 634 634 00022 BFB601 movw !TPS0,ax ;[INF] 3, 1 635 635 ; line 55 : 636 636 ; line 56 : TMR00 = 637 637 ; line 57 : 1 << BIT_CKS0 | 0 << BIT_CCS0 | 1 << BIT_MASTER0 | 0 << 638 638 ; BIT_STS0 | 0 639 639 ; line 58 : << BIT_CIS0 | 0 << BIT_MD123 | 1 << BIT_MD0; 640 640 $DGL 0,19 641 641 00025 300188 movw ax,#08801H ; -30719 ;[INF] 3, 1 642 642 00028 BF9001 movw !TMR00,ax ;[INF] 3, 1 643 643 ; line 59 : TMR01 = TMR02 = TMR03 = TMR04 = TMR05 = TMR06 = TMR07 = 644 644 ; line 60 : 1 << BIT_CKS0 | 0 << BIT_CCS0 | 0 << BIT_MASTER0 | 4 << 645 645 ; BIT_STS0 | 0 646 646 ; line 61 : << BIT_CIS0 | 4 << BIT_MD123 | 1 << BIT_MD0; 647 647 $DGL 0,22 648 648 0002B 300984 movw ax,#08409H ; -31735 ;[INF] 3, 1 649 649 0002E BF9E01 movw !TMR07,ax ;[INF] 3, 1 650 650 00031 BF9C01 movw !TMR06,ax ;[INF] 3, 1 651 651 00034 BF9A01 movw !TMR05,ax ;[INF] 3, 1 652 652 00037 BF9801 movw !TMR04,ax ;[INF] 3, 1 653 653 0003A BF9601 movw !TMR03,ax ;[INF] 3, 1 654 654 0003D BF9401 movw !TMR02,ax ;[INF] 3, 1 655 655 00040 BF9201 movw !TMR01,ax ;[INF] 3, 1 656 656 ; line 62 : ISC = 0; 657 657 $DGL 0,23 658 658 00043 F53CFF clrb !ISC ;[INF] 3, 1 659 659 ; line 63 : TOM0 = 0b0000000011111110; // 出力モード。4はPWM出力しないが 660 660 ; 1にしないとTO5以降にクロックが届かない 661 661 $DGL 0,24 662 662 00046 30FE00 movw ax,#0FEH ; 254 ;[INF] 3, 1 663 663 00049 BFBE01 movw !TOM0,ax ;[INF] 3, 1 664 664 ; line 64 : 665 665 ; line 65 : #ifdef _MCU_BSR_ 666 666 ; line 66 : TOL0 = 0b0000000000000000; // 出力を反転させるかフラグ 667 667 $DGL 0,27 668 668 0004C F6 clrw ax ;[INF] 1, 1 669 669 0004D BFBC01 movw !TOL0,ax ;[INF] 3, 1 670 670 ; line 67 : #else 671 671 ; line 68 : TOL0 = 0b0000000000000100; // 出力を反転させるかフラグ 672 672 ; line 69 : #endif 673 673 ; line 70 : 674 674 ; line 71 : TO0 = 0; // タイマー動作中で、タイマー出力 675 675 ; にしてないときのピンのラッチ。タイマー出力を使わないなら0 676 676 $DGL 0,32 677 677 00050 BFB801 movw !TO0,ax ;[INF] 3, 1 678 678 ; line 72 : TOE0 = 0b0000000011101110; // TOxをタイマーモジュールが制御? 679 679 $DGL 0,33 680 680 00053 50EE mov x,#0EEH ; 238 ;[INF] 2, 1 681 681 00055 BFBA01 movw !TOE0,ax ;[INF] 3, 1 682 682 ; line 73 : TS0 = 0b0000000011101111; // 動作開始 683 683 $DGL 0,34 684 684 00058 A1 incw ax ;[INF] 1, 1 685 685 00059 BFB201 movw !TS0,ax ;[INF] 3, 1 686 686 ; line 74 : 687 687 ; line 75 : TDR00 = LED_BRIGHT_MAX - 1; // 10bit, 周期 688 688 $DGL 0,36 689 689 0005C C918FE00 movw TDR00,#0FEH ; 254 ;[INF] 4, 1 690 690 ; line 76 : 691 691 ; line 77 : if( system_status.reboot ) 692 692 $DGL 0,38 693 693 00060 R8F0200 mov a,!_system_status+2 ;[INF] 3, 1 694 694 00063 313507 bf a.3,$?L0003 ;[INF] 3, 5 695 695 ; line 78 : { 696 696 00066 ??bb00_LED_init: 697 697 ; line 79 : vreg_ctr[VREG_C_LED_POW] = LED_POW_ILM_AUTO; 698 698 $DGL 0,40 699 699 00066 RF52900 clrb !_vreg_ctr+41 ;[INF] 3, 1 700 700 ; line 80 : LED_duty_pow_H = LED_BRIGHT_MAX; 701 701 $DGL 0,41 702 702 00069 CB6CFF00 movw TDR06,#0FFH ; 255 ;[INF] 4, 1 703 703 0006D ??eb00_LED_init: 704 704 ; line 81 : } 705 705 0006D ?L0003: 706 706 ; line 82 : } 707 707 $DGL 0,43 708 708 0006D ??ef_LED_init: 709 709 0006D D7 ret ;[INF] 1, 6 710 710 0006E ??ee_LED_init: 711 711 ; line 83 : 712 712 ; line 84 : 713 713 ; line 85 : 714 714 ; line 86 : void LED_stop( ) 715 715 ; line 87 : { 716 716 0006E _LED_stop: 717 717 $DGL 1,87 718 718 0006E ??bf_LED_stop: 719 719 ; line 88 : TT0 = 0b0000000011101111; // 一斉停止(しないとだめ) 720 720 $DGL 0,2 721 721 0006E 30EF00 movw ax,#0EFH ; 239 ;[INF] 3, 1 722 722 00071 BFB401 movw !TT0,ax ;[INF] 3, 1 723 723 ; line 89 : TOE0 = 0b0000000000000000; // TOxをタイマーモジュールが制御? 724 724 ; (GPIOになる) 725 725 $DGL 0,3 726 726 00074 F6 clrw ax ;[INF] 1, 1 727 727 00075 BFBA01 movw !TOE0,ax ;[INF] 3, 1 728 728 ; line 90 : TAU0EN = 0; 729 729 $DGL 0,4 730 730 00078 7108F200 clr1 !PER2.0 ;[INF] 4, 2 731 731 ; line 91 : } 732 732 $DGL 0,5 733 733 0007C ??ef_LED_stop: 734 734 0007C D7 ret ;[INF] 1, 6 735 735 0007D ??ee_LED_stop: 736 736 ; line 92 : 737 737 ; line 93 : 738 738 ; line 94 : 739 739 ; line 95 : 740 740 ; line 96 : /* ======================================================== 741 741 ; line 97 : // 電源LED 742 742 ; line 98 : LED_POW_B,R 6,7 743 743 ; line 99 : 744 744 ; line 100 : TDR00 周期(0x03FF。TPS0で250kHzでカウントアップ。10bitなら250 745 745 ; Hz位になる) 746 746 ; line 101 : TDR0x Duty 0で消灯、TDR00(より大 =0x03FF以上)で点灯です。 747 747 ; line 102 : 748 748 ; line 103 : enum pwr_state_{ 749 749 ; line 104 : OFF_TRIG = 0, 750 750 ; line 105 : OFF, 751 751 ; line 106 : ON_TRIG, 752 752 ; line 107 : ON, 753 753 ; line 108 : SLEEP_TRIG, 754 754 ; line 109 : SLEEP 755 755 ; line 110 : }; 756 756 ; line 111 : 757 757 ; line 112 : enum LED_ILUM_MODE{ 758 758 ; line 113 : LED_POW_ILM_AUTO, 759 759 ; line 114 : LED_POW_ILM_ON, 760 760 ; line 115 : LED_POW_ILM_HOTARU, 761 761 ; line 116 : LED_POW_ILM_CEOFF 762 762 ; line 117 : }; 763 763 ; line 118 : ======================================================== */ 764 764 ; line 119 : void tsk_led_pow( ) 765 765 ; line 120 : { 766 766 0007D _tsk_led_pow: 767 767 $DGL 1,93 768 768 0007D ??bf_tsk_led_pow: 769 769 ; line 121 : switch ( vreg_ctr[VREG_C_LED_POW] ) 770 770 $DGL 0,2 771 771 0007D RD92900 mov x,!_vreg_ctr+41 ;[INF] 3, 1 772 772 00080 RFD0000 call !bs_S0172 ;[INF] 3, 3 773 773 00083 DD11 bz $?L0010 ;[INF] 2, 4 774 774 00085 23 subw ax,bc ;[INF] 1, 1 775 775 00086 DD44 bz $?L0013 ;[INF] 2, 4 776 776 00088 23 subw ax,bc ;[INF] 1, 1 777 777 00089 DD3D bz $?L0012 ;[INF] 2, 4 778 778 0008B 23 subw ax,bc ;[INF] 1, 1 779 779 0008C DD1F bz $?L0011 ;[INF] 2, 4 780 780 0008E 23 subw ax,bc ;[INF] 1, 1 781 781 0008F DD3F bz $?L0015 ;[INF] 2, 4 782 782 00091 23 subw ax,bc ;[INF] 1, 1 783 783 00092 DD44 bz $?L0016 ;[INF] 2, 4 784 784 00094 EF36 br $?L0013 ;[INF] 2, 3 785 785 ; line 122 : { 786 786 00096 ??bb00_tsk_led_pow: 787 787 ; line 123 : // 自動切り替え 788 788 ; line 124 : case ( LED_POW_ILM_AUTO ): 789 789 00096 ?L0010: 790 790 ; line 125 : switch ( system_status.pwr_state ) 791 791 $DGL 0,6 792 792 00096 R8F0000 mov a,!_system_status ;[INF] 3, 1 793 793 00099 318F sarw ax,8 ;[INF] 2, 1 794 794 0009B 240300 subw ax,#03H ; 3 ;[INF] 3, 1 795 795 0009E DD09 bz $?L0021 ;[INF] 2, 4 796 796 000A0 240200 subw ax,#02H ; 2 ;[INF] 3, 1 797 797 000A3 DF3A bnz $?L0009 ;[INF] 2, 4 798 798 ; line 126 : { 799 799 000A5 ??bb01_tsk_led_pow: 800 800 ; line 127 : case SLEEP: 801 801 ; line 128 : led_pow_hotaru( ); 802 802 $DGL 0,9 803 803 000A5 RFD5101 call !_led_pow_hotaru ;[INF] 3, 3 804 804 ; line 129 : break; 805 805 $DGL 0,10 806 806 000A8 D7 ret ;[INF] 1, 6 807 807 ; line 130 : 808 808 ; line 131 : case ON: 809 809 000A9 ?L0021: 810 810 ; line 132 : led_pow_normal( ); 811 811 $DGL 0,13 812 812 000A9 RFDE000 call !_led_pow_normal ;[INF] 3, 3 813 813 ; line 133 : break; 814 814 $DGL 0,14 815 815 000AC D7 ret ;[INF] 1, 6 816 816 ; line 134 : 817 817 ; line 135 : default: 818 818 ; line 136 : break; 819 819 000AD ??eb01_tsk_led_pow: 820 820 ; line 137 : } 821 821 ; line 138 : break; 822 822 ; line 139 : 823 823 ; line 140 : // 強制 824 824 ; line 141 : case ( LED_POW_ILM_OFF ): 825 825 000AD ?L0011: 826 826 ; line 142 : LED_duty_pow_H -= ( LED_duty_pow_H == 0x0000 ) ? 0 : 1; 827 827 $DGL 0,23 828 828 000AD F6 clrw ax ;[INF] 1, 1 829 829 000AE 426CFF cmpw ax,!TDR06 ;[INF] 3, 1 830 830 000B1 61E8 skz ;[INF] 2, 1 831 831 000B3 E6 onew ax ;[INF] 1, 1 832 832 000B4 ?L0026: 833 833 000B4 12 movw bc,ax ;[INF] 1, 1 834 834 000B5 AE6C movw ax,TDR06 ;[INF] 2, 1 835 835 000B7 23 subw ax,bc ;[INF] 1, 1 836 836 000B8 BE6C movw TDR06,ax ;[INF] 2, 1 837 837 ; line 143 : LED_duty_pow_L -= ( LED_duty_pow_L == 0x0000 ) ? 0 : 1; 838 838 $DGL 0,24 839 839 000BA F6 clrw ax ;[INF] 1, 1 840 840 000BB 426EFF cmpw ax,!TDR07 ;[INF] 3, 1 841 841 000BE 61E8 skz ;[INF] 2, 1 842 842 000C0 E6 onew ax ;[INF] 1, 1 843 843 000C1 ?L0028: 844 844 000C1 12 movw bc,ax ;[INF] 1, 1 845 845 000C2 AE6E movw ax,TDR07 ;[INF] 2, 1 846 846 000C4 23 subw ax,bc ;[INF] 1, 1 847 847 000C5 BE6E movw TDR07,ax ;[INF] 2, 1 848 848 ; line 144 : break; 849 849 $DGL 0,25 850 850 000C7 D7 ret ;[INF] 1, 6 851 851 ; line 145 : 852 852 ; line 146 : case ( LED_POW_ILM_HOTARU ): 853 853 000C8 ?L0012: 854 854 ; line 147 : led_pow_hotaru( ); 855 855 $DGL 0,28 856 856 000C8 RFD5101 call !_led_pow_hotaru ;[INF] 3, 3 857 857 ; line 148 : break; 858 858 $DGL 0,29 859 859 000CB D7 ret ;[INF] 1, 6 860 860 ; line 149 : 861 861 ; line 150 : case ( LED_POW_ILM_ON ): 862 862 000CC ?L0013: 863 863 ; line 151 : default: 864 864 ; line 152 : led_pow_normal( ); 865 865 $DGL 0,33 866 866 000CC RFDE000 call !_led_pow_normal ;[INF] 3, 3 867 867 ; line 153 : break; 868 868 $DGL 0,34 869 869 000CF D7 ret ;[INF] 1, 6 870 870 ; line 154 : 871 871 ; line 155 : case ( LED_POW_ILM_ONLY_RED ): 872 872 000D0 ?L0015: 873 873 ; line 156 : LED_duty_pow_H = 0x0000; 874 874 $DGL 0,37 875 875 000D0 F6 clrw ax ;[INF] 1, 1 876 876 000D1 BE6C movw TDR06,ax ;[INF] 2, 1 877 877 ; line 157 : LED_duty_pow_L = LED_BRIGHT_MAX; 878 878 $DGL 0,38 879 879 000D3 CB6EFF00 movw TDR07,#0FFH ; 255 ;[INF] 4, 1 880 880 ; line 158 : break; 881 881 $DGL 0,39 882 882 000D7 D7 ret ;[INF] 1, 6 883 883 ; line 159 : 884 884 ; line 160 : case ( LED_POW_ILM_ONLY_BLUE ): 885 885 000D8 ?L0016: 886 886 ; line 161 : LED_duty_pow_H = LED_BRIGHT_MAX; 887 887 $DGL 0,42 888 888 000D8 CB6CFF00 movw TDR06,#0FFH ; 255 ;[INF] 4, 1 889 889 ; line 162 : LED_duty_pow_L = 0x0000; 890 890 $DGL 0,43 891 891 000DC F6 clrw ax ;[INF] 1, 1 892 892 000DD BE6E movw TDR07,ax ;[INF] 2, 1 893 893 ; line 163 : break; 894 894 000DF ??eb00_tsk_led_pow: 895 895 ; line 164 : } 896 896 000DF ?L0009: 897 897 ; line 165 : 898 898 ; line 166 : } 899 899 $DGL 0,47 900 900 000DF ??ef_tsk_led_pow: 901 901 000DF D7 ret ;[INF] 1, 6 902 902 000E0 ??ee_tsk_led_pow: 903 903 ; line 167 : 904 904 ; line 168 : 905 905 ; line 169 : 906 906 ; line 170 : /* ======================================================== 907 907 ; line 171 : 電池残量で、 青→赤→赤点滅 908 908 ; line 172 : ======================================================== */ 909 909 ; line 173 : static void led_pow_normal( ) 910 910 ; line 174 : { 911 911 000E0 _led_pow_normal: 912 912 $DGL 1,107 913 913 000E0 ??bf_led_pow_normal: 914 914 ; line 175 : static u8 state; 915 915 ; line 176 : 916 916 ; line 177 : if( vreg_ctr[VREG_C_BT_REMAIN] < 3 ) 917 917 $DGL 0,4 918 918 000E0 R400B0003 cmp !_vreg_ctr+11,#03H ; 3 ;[INF] 4, 1 919 919 000E4 DE17 bnc $?L0032 ;[INF] 2, 4 920 920 ; line 178 : { 921 921 000E6 ??bb00_led_pow_normal: 922 922 ; line 179 : // 赤点滅 923 923 ; line 180 : state++; 924 924 $DGL 0,7 925 925 000E6 RA00000 inc !?L0031 ; state ;[INF] 3, 2 926 926 ; line 181 : if( state < 127 ) 927 927 $DGL 0,8 928 928 000E9 R4000007F cmp !?L0031,#07FH ; state,127 ;[INF] 4, 1 929 929 000ED DE07 bnc $?L0034 ;[INF] 2, 4 930 930 ; line 182 : { 931 931 000EF ??bb01_led_pow_normal: 932 932 ; line 183 : LED_duty_pow_H = 0x0000; 933 933 $DGL 0,10 934 934 000EF F6 clrw ax ;[INF] 1, 1 935 935 000F0 BE6C movw TDR06,ax ;[INF] 2, 1 936 936 ; line 184 : LED_duty_pow_L = 0x0000; 937 937 $DGL 0,11 938 938 000F2 BE6E movw TDR07,ax ;[INF] 2, 1 939 939 000F4 ??eb01_led_pow_normal: 940 940 ; line 185 : } 941 941 $DGL 0,12 942 942 000F4 EF06 br $?L0035 ;[INF] 2, 3 943 943 000F6 ?L0034: 944 944 ; line 186 : else 945 945 ; line 187 : { 946 946 000F6 ??bb02_led_pow_normal: 947 947 ; line 188 : LED_duty_pow_L = vreg_ctr[VREG_C_LED_BRIGHT]; 948 948 $DGL 0,15 949 949 000F6 RD92800 mov x,!_vreg_ctr+40 ;[INF] 3, 1 950 950 000F9 F1 clrb a ;[INF] 1, 1 951 951 000FA BE6E movw TDR07,ax ;[INF] 2, 1 952 952 000FC ??eb02_led_pow_normal: 953 953 ; line 189 : } 954 954 000FC ?L0035: 955 955 ; line 190 : return; 956 956 $DGL 0,17 957 957 000FC D7 ret ;[INF] 1, 6 958 958 000FD ??eb00_led_pow_normal: 959 959 ; line 191 : 960 960 ; line 192 : } 961 961 000FD ?L0032: 962 962 ; line 193 : else if( vreg_ctr[VREG_C_BT_REMAIN] < 12 ) 963 963 $DGL 0,20 964 964 000FD R400B000C cmp !_vreg_ctr+11,#0CH ; 12 ;[INF] 4, 1 965 965 00101 DE27 bnc $?L0036 ;[INF] 2, 4 966 966 ; line 194 : { 967 967 00103 ??bb03_led_pow_normal: 968 968 ; line 195 : // 赤点灯 969 969 ; line 196 : if( LED_duty_pow_H != 0x0000 ) 970 970 $DGL 0,23 971 971 00103 F6 clrw ax ;[INF] 1, 1 972 972 00104 426CFF cmpw ax,!TDR06 ;[INF] 3, 1 973 973 00107 61E8 skz ;[INF] 2, 1 974 974 ; line 197 : { // 青フェードアウト 975 975 00109 ??bb04_led_pow_normal: 976 976 ; line 198 : LED_duty_pow_H -= 1; 977 977 $DGL 0,25 978 978 00109 B26CFF decw !TDR06 ;[INF] 3, 2 979 979 0010C ??eb04_led_pow_normal: 980 980 ; line 199 : } 981 981 0010C ?L0038: 982 982 ; line 200 : if( LED_duty_pow_L != vreg_ctr[VREG_C_LED_BRIGHT] ) 983 983 $DGL 0,27 984 984 0010C RD92800 mov x,!_vreg_ctr+40 ;[INF] 3, 1 985 985 0010F F1 clrb a ;[INF] 1, 1 986 986 00110 426EFF cmpw ax,!TDR07 ;[INF] 3, 1 987 987 00113 DD3B bz $?L0048 ;[INF] 2, 4 988 988 ; line 201 : { // 赤フェードイン 989 989 00115 ??bb05_led_pow_normal: 990 990 ; line 202 : LED_duty_pow_L += ( LED_duty_pow_L < vreg_ctr[VREG_C 991 991 ; _LED_BRIGHT] ) ? 1 : -1; 992 992 $DGL 0,29 993 993 00115 RD92800 mov x,!_vreg_ctr+40 ;[INF] 3, 1 994 994 00118 12 movw bc,ax ;[INF] 1, 1 995 995 00119 AE6E movw ax,TDR07 ;[INF] 2, 1 996 996 0011B 43 cmpw ax,bc ;[INF] 1, 1 997 997 0011C DE03 bnc $?L0042 ;[INF] 2, 4 998 998 0011E E6 onew ax ;[INF] 1, 1 999 999 0011F EF02 br $?L0043 ;[INF] 2, 3 1000 1000 00121 ?L0042: 1001 1001 00121 F6 clrw ax ;[INF] 1, 1 1002 1002 00122 B1 decw ax ;[INF] 1, 1 1003 1003 00123 ?L0043: 1004 1004 00123 12 movw bc,ax ;[INF] 1, 1 1005 1005 00124 AE6E movw ax,TDR07 ;[INF] 2, 1 1006 1006 00126 03 addw ax,bc ;[INF] 1, 1 1007 1007 00127 BE6E movw TDR07,ax ;[INF] 2, 1 1008 1008 00129 ??eb05_led_pow_normal: 1009 1009 ; line 203 : } 1010 1010 ; line 204 : return; 1011 1011 $DGL 0,31 1012 1012 00129 D7 ret ;[INF] 1, 6 1013 1013 0012A ??eb03_led_pow_normal: 1014 1014 ; line 205 : 1015 1015 ; line 206 : } 1016 1016 0012A ?L0036: 1017 1017 ; line 207 : else 1018 1018 ; line 208 : { 1019 1019 0012A ??bb06_led_pow_normal: 1020 1020 ; line 209 : // 青点灯 1021 1021 ; line 210 : if( LED_duty_pow_H != vreg_ctr[VREG_C_LED_BRIGHT] ) 1022 1022 $DGL 0,37 1023 1023 0012A RD92800 mov x,!_vreg_ctr+40 ;[INF] 3, 1 1024 1024 0012D F1 clrb a ;[INF] 1, 1 1025 1025 0012E 426CFF cmpw ax,!TDR06 ;[INF] 3, 1 1026 1026 00131 DD14 bz $?L0044 ;[INF] 2, 4 1027 1027 ; line 211 : { 1028 1028 00133 ??bb07_led_pow_normal: 1029 1029 ; line 212 : LED_duty_pow_H += ( LED_duty_pow_H < vreg_ctr[VREG_C 1030 1030 ; _LED_BRIGHT] ) ? 1 : -1; 1031 1031 $DGL 0,39 1032 1032 00133 RD92800 mov x,!_vreg_ctr+40 ;[INF] 3, 1 1033 1033 00136 12 movw bc,ax ;[INF] 1, 1 1034 1034 00137 AE6C movw ax,TDR06 ;[INF] 2, 1 1035 1035 00139 43 cmpw ax,bc ;[INF] 1, 1 1036 1036 0013A DE03 bnc $?L0046 ;[INF] 2, 4 1037 1037 0013C E6 onew ax ;[INF] 1, 1 1038 1038 0013D EF02 br $?L0047 ;[INF] 2, 3 1039 1039 0013F ?L0046: 1040 1040 0013F F6 clrw ax ;[INF] 1, 1 1041 1041 00140 B1 decw ax ;[INF] 1, 1 1042 1042 00141 ?L0047: 1043 1043 00141 12 movw bc,ax ;[INF] 1, 1 1044 1044 00142 AE6C movw ax,TDR06 ;[INF] 2, 1 1045 1045 00144 03 addw ax,bc ;[INF] 1, 1 1046 1046 00145 BE6C movw TDR06,ax ;[INF] 2, 1 1047 1047 00147 ??eb07_led_pow_normal: 1048 1048 ; line 213 : } 1049 1049 00147 ?L0044: 1050 1050 ; line 214 : if( LED_duty_pow_L != 0x0000 ) 1051 1051 $DGL 0,41 1052 1052 00147 F6 clrw ax ;[INF] 1, 1 1053 1053 00148 426EFF cmpw ax,!TDR07 ;[INF] 3, 1 1054 1054 0014B 61E8 skz ;[INF] 2, 1 1055 1055 ; line 215 : { 1056 1056 0014D ??bb08_led_pow_normal: 1057 1057 ; line 216 : LED_duty_pow_L -= 1; 1058 1058 $DGL 0,43 1059 1059 0014D B26EFF decw !TDR07 ;[INF] 3, 2 1060 1060 00150 ??eb08_led_pow_normal: 1061 1061 ; line 217 : } 1062 1062 00150 ?L0048: 1063 1063 00150 ??eb06_led_pow_normal: 1064 1064 ; line 218 : } 1065 1065 ; line 219 : 1066 1066 ; line 220 : return; 1067 1067 ; line 221 : } 1068 1068 $DGL 0,48 1069 1069 00150 ??ef_led_pow_normal: 1070 1070 00150 D7 ret ;[INF] 1, 6 1071 1071 00151 ??ee_led_pow_normal: 1072 1072 ; line 222 : 1073 1073 ; line 223 : 1074 1074 ; line 224 : 1075 1075 ; line 225 : /* ======================================================== 1076 1076 ; line 226 : ホタルパターン 1077 1077 ; line 227 : ======================================================== */ 1078 1078 ; line 228 : static void led_pow_hotaru( ) 1079 1079 ; line 229 : { 1080 1080 00151 _led_pow_hotaru: 1081 1081 $DGL 1,150 1082 1082 00151 ??bf_led_pow_hotaru: 1083 1083 ; line 230 : static u8 delay; 1084 1084 ; line 231 : static u8 state; 1085 1085 ; line 232 : static u16 blue_to; 1086 1086 ; line 233 : static u16 red_to; 1087 1087 ; line 234 : 1088 1088 ; line 235 : if( delay != 0 ) 1089 1089 $DGL 0,7 1090 1090 00151 RD50100 cmp0 !?L0052 ; delay ;[INF] 3, 1 1091 1091 00154 DD04 bz $?L0056 ;[INF] 2, 4 1092 1092 ; line 236 : { 1093 1093 00156 ??bb00_led_pow_hotaru: 1094 1094 ; line 237 : delay -= 1; 1095 1095 $DGL 0,9 1096 1096 00156 RB00100 dec !?L0052 ; delay ;[INF] 3, 2 1097 1097 ; line 238 : return; 1098 1098 $DGL 0,10 1099 1099 00159 D7 ret ;[INF] 1, 6 1100 1100 0015A ??eb00_led_pow_hotaru: 1101 1101 ; line 239 : } 1102 1102 0015A ?L0056: 1103 1103 ; line 240 : else 1104 1104 ; line 241 : { 1105 1105 0015A ??bb01_led_pow_hotaru: 1106 1106 ; line 242 : delay = 10; 1107 1107 $DGL 0,14 1108 1108 0015A RCF01000A mov !?L0052,#0AH ; delay,10 ;[INF] 4, 1 1109 1109 0015E ??eb01_led_pow_hotaru: 1110 1110 ; line 243 : } 1111 1111 ; line 244 : 1112 1112 ; line 245 : if( LED_duty_pow_L != red_to ) 1113 1113 $DGL 0,17 1114 1114 0015E AE6E movw ax,TDR07 ;[INF] 2, 1 1115 1115 00160 R420600 cmpw ax,!?L0055 ; red_to ;[INF] 3, 1 1116 1116 00163 DD13 bz $?L0061 ;[INF] 2, 4 1117 1117 ; line 246 : { 1118 1118 00165 ??bb02_led_pow_hotaru: 1119 1119 ; line 247 : if( LED_duty_pow_L > red_to ) 1120 1120 $DGL 0,19 1121 1121 00165 RAF0600 movw ax,!?L0055 ; red_to ;[INF] 3, 1 1122 1122 00168 426EFF cmpw ax,!TDR07 ;[INF] 3, 1 1123 1123 0016B DE05 bnc $?L0060 ;[INF] 2, 4 1124 1124 ; line 248 : { 1125 1125 0016D ??bb03_led_pow_hotaru: 1126 1126 ; line 249 : LED_duty_pow_L -= 1; 1127 1127 $DGL 0,21 1128 1128 0016D B26EFF decw !TDR07 ;[INF] 3, 2 1129 1129 00170 ??eb03_led_pow_hotaru: 1130 1130 ; line 250 : } 1131 1131 $DGL 0,22 1132 1132 00170 EF06 br $?L0061 ;[INF] 2, 3 1133 1133 00172 ?L0060: 1134 1134 ; line 251 : else 1135 1135 ; line 252 : { 1136 1136 00172 ??bb04_led_pow_hotaru: 1137 1137 ; line 253 : LED_duty_pow_L += 2; 1138 1138 $DGL 0,25 1139 1139 00172 AE6E movw ax,TDR07 ;[INF] 2, 1 1140 1140 00174 A1 incw ax ;[INF] 1, 1 1141 1141 00175 A1 incw ax ;[INF] 1, 1 1142 1142 00176 BE6E movw TDR07,ax ;[INF] 2, 1 1143 1143 00178 ??eb04_led_pow_hotaru: 1144 1144 ; line 254 : } 1145 1145 00178 ?L0061: 1146 1146 00178 ??eb02_led_pow_hotaru: 1147 1147 ; line 255 : } 1148 1148 ; line 256 : 1149 1149 ; line 257 : if( LED_duty_pow_H != blue_to ) 1150 1150 $DGL 0,29 1151 1151 00178 AE6C movw ax,TDR06 ;[INF] 2, 1 1152 1152 0017A R420400 cmpw ax,!?L0054 ; blue_to ;[INF] 3, 1 1153 1153 0017D DD13 bz $?L0065 ;[INF] 2, 4 1154 1154 ; line 258 : { 1155 1155 0017F ??bb05_led_pow_hotaru: 1156 1156 ; line 259 : if( LED_duty_pow_H > blue_to ) 1157 1157 $DGL 0,31 1158 1158 0017F RAF0400 movw ax,!?L0054 ; blue_to ;[INF] 3, 1 1159 1159 00182 426CFF cmpw ax,!TDR06 ;[INF] 3, 1 1160 1160 00185 DE05 bnc $?L0064 ;[INF] 2, 4 1161 1161 ; line 260 : { 1162 1162 00187 ??bb06_led_pow_hotaru: 1163 1163 ; line 261 : LED_duty_pow_H -= 1; 1164 1164 $DGL 0,33 1165 1165 00187 B26CFF decw !TDR06 ;[INF] 3, 2 1166 1166 0018A ??eb06_led_pow_hotaru: 1167 1167 ; line 262 : } 1168 1168 $DGL 0,34 1169 1169 0018A EF06 br $?L0065 ;[INF] 2, 3 1170 1170 0018C ?L0064: 1171 1171 ; line 263 : else 1172 1172 ; line 264 : { 1173 1173 0018C ??bb07_led_pow_hotaru: 1174 1174 ; line 265 : LED_duty_pow_H += 2; 1175 1175 $DGL 0,37 1176 1176 0018C AE6C movw ax,TDR06 ;[INF] 2, 1 1177 1177 0018E A1 incw ax ;[INF] 1, 1 1178 1178 0018F A1 incw ax ;[INF] 1, 1 1179 1179 00190 BE6C movw TDR06,ax ;[INF] 2, 1 1180 1180 00192 ??eb07_led_pow_hotaru: 1181 1181 ; line 266 : } 1182 1182 00192 ?L0065: 1183 1183 00192 ??eb05_led_pow_hotaru: 1184 1184 ; line 267 : } 1185 1185 ; line 268 : 1186 1186 ; line 269 : switch ( state ) 1187 1187 $DGL 0,41 1188 1188 00192 RD90200 mov x,!?L0053 ; state ;[INF] 3, 1 1189 1189 00195 F1 clrb a ;[INF] 1, 1 1190 1190 00196 F7 clrw bc ;[INF] 1, 1 1191 1191 00197 340200 movw de,#02H ; 2 ;[INF] 3, 1 1192 1192 0019A 23 subw ax,bc ;[INF] 1, 1 1193 1193 0019B DD06 bz $?L0067 ;[INF] 2, 4 1194 1194 0019D 25 subw ax,de ;[INF] 1, 1 1195 1195 0019E DD03 bz $?L0067 ;[INF] 2, 4 1196 1196 001A0 25 subw ax,de ;[INF] 1, 1 1197 1197 001A1 DF1F bnz $?L0068 ;[INF] 2, 4 1198 1198 ; line 270 : { 1199 1199 001A3 ??bb08_led_pow_hotaru: 1200 1200 ; line 271 : // フェードイン 1201 1201 ; line 272 : case ( 0 ): 1202 1202 001A3 ?L0067: 1203 1203 ; line 273 : case ( 2 ): 1204 1204 ; line 274 : case ( 4 ): 1205 1205 ; line 275 : if( vreg_ctr[VREG_C_BT_REMAIN] < 12 ) 1206 1206 $DGL 0,47 1207 1207 001A3 R400B000C cmp !_vreg_ctr+11,#0CH ; 12 ;[INF] 4, 1 1208 1208 001A7 DE0C bnc $?L0071 ;[INF] 2, 4 1209 1209 ; line 276 : { 1210 1210 001A9 ??bb09_led_pow_hotaru: 1211 1211 ; line 277 : // 赤いとき 1212 1212 ; line 278 : blue_to = 0; 1213 1213 $DGL 0,50 1214 1214 001A9 F6 clrw ax ;[INF] 1, 1 1215 1215 001AA RBF0400 movw !?L0054,ax ; blue_to ;[INF] 3, 1 1216 1216 ; line 279 : red_to = vreg_ctr[VREG_C_LED_BRIGHT]; 1217 1217 $DGL 0,51 1218 1218 001AD RD92800 mov x,!_vreg_ctr+40 ;[INF] 3, 1 1219 1219 001B0 RBF0600 movw !?L0055,ax ; red_to ;[INF] 3, 1 1220 1220 001B3 ??eb09_led_pow_hotaru: 1221 1221 ; line 280 : } 1222 1222 $DGL 0,52 1223 1223 001B3 EF1F br $?L0066 ;[INF] 2, 3 1224 1224 001B5 ?L0071: 1225 1225 ; line 281 : else 1226 1226 ; line 282 : { 1227 1227 001B5 ??bb0A_led_pow_hotaru: 1228 1228 ; line 283 : blue_to = vreg_ctr[VREG_C_LED_BRIGHT]; 1229 1229 $DGL 0,55 1230 1230 001B5 RD92800 mov x,!_vreg_ctr+40 ;[INF] 3, 1 1231 1231 001B8 F1 clrb a ;[INF] 1, 1 1232 1232 001B9 RBF0400 movw !?L0054,ax ; blue_to ;[INF] 3, 1 1233 1233 ; line 284 : red_to = 0; 1234 1234 $DGL 0,56 1235 1235 001BC F6 clrw ax ;[INF] 1, 1 1236 1236 001BD RBF0600 movw !?L0055,ax ; red_to ;[INF] 3, 1 1237 1237 001C0 ??eb0A_led_pow_hotaru: 1238 1238 ; line 285 : } 1239 1239 ; line 286 : break; 1240 1240 $DGL 0,58 1241 1241 001C0 EF12 br $?L0066 ;[INF] 2, 3 1242 1242 ; line 287 : 1243 1243 ; line 288 : default: 1244 1244 001C2 ?L0068: 1245 1245 ; line 289 : // フェードアウト 1246 1246 ; line 290 : if( vreg_ctr[VREG_C_BT_REMAIN] < 12 ) 1247 1247 $DGL 0,62 1248 1248 001C2 R400B000C cmp !_vreg_ctr+11,#0CH ; 12 ;[INF] 4, 1 1249 1249 001C6 DE07 bnc $?L0073 ;[INF] 2, 4 1250 1250 ; line 291 : { 1251 1251 001C8 ??bb0B_led_pow_hotaru: 1252 1252 ; line 292 : red_to = 2; 1253 1253 $DGL 0,64 1254 1254 001C8 E6 onew ax ;[INF] 1, 1 1255 1255 001C9 A1 incw ax ;[INF] 1, 1 1256 1256 001CA RBF0600 movw !?L0055,ax ; red_to ;[INF] 3, 1 1257 1257 001CD ??eb0B_led_pow_hotaru: 1258 1258 ; line 293 : } 1259 1259 $DGL 0,65 1260 1260 001CD EF05 br $?L0066 ;[INF] 2, 3 1261 1261 001CF ?L0073: 1262 1262 ; line 294 : else 1263 1263 ; line 295 : { 1264 1264 001CF ??bb0C_led_pow_hotaru: 1265 1265 ; line 296 : blue_to = 2; 1266 1266 $DGL 0,68 1267 1267 001CF E6 onew ax ;[INF] 1, 1 1268 1268 001D0 A1 incw ax ;[INF] 1, 1 1269 1269 001D1 RBF0400 movw !?L0054,ax ; blue_to ;[INF] 3, 1 1270 1270 001D4 ??eb0C_led_pow_hotaru: 1271 1271 ; line 297 : } 1272 1272 ; line 298 : break; 1273 1273 001D4 ??eb08_led_pow_hotaru: 1274 1274 ; line 299 : } 1275 1275 001D4 ?L0066: 1276 1276 ; line 300 : 1277 1277 ; line 301 : if( ( LED_duty_pow_H == blue_to ) && ( LED_duty_pow_L == red 1278 1278 ; _to ) ) 1279 1279 $DGL 0,73 1280 1280 001D4 AE6C movw ax,TDR06 ;[INF] 2, 1 1281 1281 001D6 R420400 cmpw ax,!?L0054 ; blue_to ;[INF] 3, 1 1282 1282 001D9 DF0A bnz $?L0075 ;[INF] 2, 4 1283 1283 001DB AE6E movw ax,TDR07 ;[INF] 2, 1 1284 1284 001DD R420600 cmpw ax,!?L0055 ; red_to ;[INF] 3, 1 1285 1285 001E0 61F8 sknz ;[INF] 2, 1 1286 1286 ; line 302 : { 1287 1287 001E2 ??bb0D_led_pow_hotaru: 1288 1288 ; line 303 : state += 1; 1289 1289 $DGL 0,75 1290 1290 001E2 RA00200 inc !?L0053 ; state ;[INF] 3, 2 1291 1291 001E5 ??eb0D_led_pow_hotaru: 1292 1292 ; line 304 : } 1293 1293 001E5 ?L0075: 1294 1294 ; line 305 : return; 1295 1295 ; line 306 : } 1296 1296 $DGL 0,78 1297 1297 001E5 ??ef_led_pow_hotaru: 1298 1298 001E5 D7 ret ;[INF] 1, 6 1299 1299 001E6 ??ee_led_pow_hotaru: 1300 1300 ; line 307 : 1301 1301 ; line 308 : 1302 1302 ; line 309 : 1303 1303 ; line 310 : /* ======================================================== 1304 1304 ; line 311 : * 割り込みそのものは使いません * 1305 1305 ; line 312 : LED_Wifi 3 1306 1306 ; line 313 : todo 直書きの点滅間隔など 1307 1307 ; line 314 : ======================================================== */ 1308 1308 ; line 315 : void tsk_led_wifi( ) 1309 1309 ; line 316 : { 1310 1310 001E6 _tsk_led_wifi: 1311 1311 $DGL 1,216 1312 1312 001E6 ??bf_tsk_led_wifi: 1313 1313 ; line 317 : static u8 task_interval; 1314 1314 ; line 318 : static u8 remain_wifi_tx; 1315 1315 ; line 319 : static u8 state_wifi_tx; 1316 1316 ; line 320 : static u8 flag_wifi_TX; 1317 1317 ; line 321 : 1318 1318 ; line 322 : 1319 1319 ; line 323 : if( task_interval-- != 0 ) 1320 1320 $DGL 0,8 1321 1321 001E6 R8F0800 mov a,!?L0079 ; task_interval ;[INF] 3, 1 1322 1322 001E9 RB00800 dec !?L0079 ; task_interval ;[INF] 3, 2 1323 1323 001EC D1 cmp0 a ;[INF] 1, 1 1324 1324 001ED DF71 bnz $?L0089 ;[INF] 2, 4 1325 1325 ; line 324 : { 1326 1326 001EF ??bb00_tsk_led_wifi: 1327 1327 ; line 325 : return; 1328 1328 001EF ??eb00_tsk_led_wifi: 1329 1329 ; line 326 : } 1330 1330 ; line 327 : 1331 1331 ; line 328 : // 送信パルスのラッチ 1332 1332 ; line 329 : if( vreg_ctr[VREG_C_LED_WIFI] == WIFI_LED_TXAUTO ) 1333 1333 $DGL 0,14 1334 1334 001EF R402A0002 cmp !_vreg_ctr+42,#02H ; 2 ;[INF] 4, 1 1335 1335 001F3 DF0D bnz $?L0085 ;[INF] 2, 4 1336 1336 ; line 330 : { 1337 1337 001F5 ??bb01_tsk_led_wifi: 1338 1338 ; line 331 : if( WIFI_txLatch ) 1339 1339 $DGL 0,16 1340 1340 001F5 31D4D10C bf IF2H.5,$?L0086 ;[INF] 4, 5 1341 1341 ; line 332 : { 1342 1342 001F9 ??bb02_tsk_led_wifi: 1343 1343 ; line 333 : WIFI_txLatch = 0; 1344 1344 $DGL 0,18 1345 1345 001F9 715BD1 clr1 IF2H.5 ;[INF] 3, 2 1346 1346 ; line 334 : flag_wifi_TX = 2; 1347 1347 $DGL 0,19 1348 1348 001FC RCF0B0002 mov !?L0082,#02H ; flag_wifi_TX,2 ;[INF] 4, 1 1349 1349 00200 ??eb02_tsk_led_wifi: 1350 1350 ; line 335 : } 1351 1351 ; line 336 : } 1352 1352 $DGL 0,21 1353 1353 00200 ??eb01_tsk_led_wifi: 1354 1354 00200 EF03 br $?L0086 ;[INF] 2, 3 1355 1355 00202 ?L0085: 1356 1356 ; line 337 : else 1357 1357 ; line 338 : { 1358 1358 00202 ??bb03_tsk_led_wifi: 1359 1359 ; line 339 : flag_wifi_TX = 0; 1360 1360 $DGL 0,24 1361 1361 00202 RF50B00 clrb !?L0082 ; flag_wifi_TX ;[INF] 3, 1 1362 1362 00205 ??eb03_tsk_led_wifi: 1363 1363 ; line 340 : } 1364 1364 00205 ?L0086: 1365 1365 ; line 341 : 1366 1366 ; line 342 : 1367 1367 ; line 343 : switch ( vreg_ctr[VREG_C_LED_WIFI] ) 1368 1368 $DGL 0,28 1369 1369 00205 RD92A00 mov x,!_vreg_ctr+42 ;[INF] 3, 1 1370 1370 00208 RFD0000 call !bs_S0172 ;[INF] 3, 3 1371 1371 0020B DD06 bz $?L0090 ;[INF] 2, 4 1372 1372 0020D 23 subw ax,bc ;[INF] 1, 1 1373 1373 0020E DD0D bz $?L0092 ;[INF] 2, 4 1374 1374 00210 23 subw ax,bc ;[INF] 1, 1 1375 1375 00211 DD14 bz $?L0093 ;[INF] 2, 4 1376 1376 ; line 344 : { 1377 1377 00213 ??bb04_tsk_led_wifi: 1378 1378 ; line 345 : case ( WIFI_LED_OFF ): 1379 1379 00213 ?L0090: 1380 1380 ; line 346 : default: 1381 1381 ; line 347 : LED_duty_WiFi = 0; 1382 1382 $DGL 0,32 1383 1383 00213 F6 clrw ax ;[INF] 1, 1 1384 1384 00214 BE66 movw TDR03,ax ;[INF] 2, 1 1385 1385 ; line 348 : state_wifi_tx = 0; 1386 1386 $DGL 0,33 1387 1387 00216 RF50A00 clrb !?L0081 ; state_wifi_tx ;[INF] 3, 1 1388 1388 ; line 349 : remain_wifi_tx = 0; 1389 1389 $DGL 0,34 1390 1390 00219 RF50900 clrb !?L0080 ; remain_wifi_tx ;[INF] 3, 1 1391 1391 ; line 350 : break; 1392 1392 $DGL 0,35 1393 1393 0021C D7 ret ;[INF] 1, 6 1394 1394 ; line 351 : 1395 1395 ; line 352 : case ( WIFI_LED_ON ): 1396 1396 0021D ?L0092: 1397 1397 ; line 353 : LED_duty_WiFi = vreg_ctr[VREG_C_LED_BRIGHT]; 1398 1398 $DGL 0,38 1399 1399 0021D RFD0600 call !bs_S0173 ;[INF] 3, 3 1400 1400 ; line 354 : state_wifi_tx = 0; 1401 1401 $DGL 0,39 1402 1402 00220 RF50A00 clrb !?L0081 ; state_wifi_tx ;[INF] 3, 1 1403 1403 ; line 355 : remain_wifi_tx = 0; 1404 1404 $DGL 0,40 1405 1405 00223 RF50900 clrb !?L0080 ; remain_wifi_tx ;[INF] 3, 1 1406 1406 ; line 356 : break; 1407 1407 $DGL 0,41 1408 1408 00226 D7 ret ;[INF] 1, 6 1409 1409 ; line 357 : 1410 1410 ; line 358 : case ( WIFI_LED_TXAUTO ): 1411 1411 00227 ?L0093: 1412 1412 ; line 359 : if( flag_wifi_TX != 0 ) // 短いパルスを捕まえるために、割 1413 1413 ; り込みフラグを見る 1414 1414 $DGL 0,44 1415 1415 00227 RD50B00 cmp0 !?L0082 ; flag_wifi_TX ;[INF] 3, 1 1416 1416 0022A DD2D bz $?L0096 ;[INF] 2, 4 1417 1417 ; line 360 : { 1418 1418 0022C ??bb05_tsk_led_wifi: 1419 1419 ; line 361 : // 送信パターン 1420 1420 ; line 362 : switch ( state_wifi_tx ) 1421 1421 $DGL 0,47 1422 1422 0022C RD90A00 mov x,!?L0081 ; state_wifi_tx ;[INF] 3, 1 1423 1423 0022F F1 clrb a ;[INF] 1, 1 1424 1424 00230 E7 onew bc ;[INF] 1, 1 1425 1425 00231 340200 movw de,#02H ; 2 ;[INF] 3, 1 1426 1426 00234 23 subw ax,bc ;[INF] 1, 1 1427 1427 00235 DD06 bz $?L0099 ;[INF] 2, 4 1428 1428 00237 25 subw ax,de ;[INF] 1, 1 1429 1429 00238 DD03 bz $?L0099 ;[INF] 2, 4 1430 1430 0023A 25 subw ax,de ;[INF] 1, 1 1431 1431 0023B DF05 bnz $?L0100 ;[INF] 2, 4 1432 1432 ; line 363 : { 1433 1433 0023D ??bb06_tsk_led_wifi: 1434 1434 ; line 364 : case ( 1 ): 1435 1435 0023D ?L0099: 1436 1436 ; line 365 : case ( 3 ): 1437 1437 ; line 366 : case ( 5 ): 1438 1438 ; line 367 : LED_duty_WiFi = 0; 1439 1439 $DGL 0,52 1440 1440 0023D F6 clrw ax ;[INF] 1, 1 1441 1441 0023E BE66 movw TDR03,ax ;[INF] 2, 1 1442 1442 ; line 368 : break; 1443 1443 $DGL 0,53 1444 1444 00240 EF03 br $?L0098 ;[INF] 2, 3 1445 1445 ; line 369 : default: 1446 1446 00242 ?L0100: 1447 1447 ; line 370 : LED_duty_WiFi = vreg_ctr[VREG_C_LED_BRIGHT]; 1448 1448 $DGL 0,55 1449 1449 00242 RFD0600 call !bs_S0173 ;[INF] 3, 3 1450 1450 00245 ??eb06_tsk_led_wifi: 1451 1451 ; line 371 : } 1452 1452 00245 ?L0098: 1453 1453 ; line 372 : state_wifi_tx++; 1454 1454 $DGL 0,57 1455 1455 00245 RA00A00 inc !?L0081 ; state_wifi_tx ;[INF] 3, 2 1456 1456 ; line 373 : if( state_wifi_tx == 32 ) 1457 1457 $DGL 0,58 1458 1458 00248 R400A0020 cmp !?L0081,#020H ; state_wifi_tx,32 ;[INF] 4, 1 1459 1459 0024C DF06 bnz $?L0103 ;[INF] 2, 4 1460 1460 ; line 374 : { 1461 1461 0024E ??bb07_tsk_led_wifi: 1462 1462 ; line 375 : state_wifi_tx = 0; 1463 1463 $DGL 0,60 1464 1464 0024E RF50A00 clrb !?L0081 ; state_wifi_tx ;[INF] 3, 1 1465 1465 ; line 376 : flag_wifi_TX -= 1; 1466 1466 $DGL 0,61 1467 1467 00251 RB00B00 dec !?L0082 ; flag_wifi_TX ;[INF] 3, 2 1468 1468 00254 ??eb07_tsk_led_wifi: 1469 1469 ; line 377 : } 1470 1470 00254 ?L0103: 1471 1471 ; line 378 : task_interval = 22; 1472 1472 $DGL 0,63 1473 1473 00254 RCF080016 mov !?L0079,#016H ; task_interval,22 ;[INF] 4, 1 1474 1474 ; line 379 : return; 1475 1475 $DGL 0,64 1476 1476 00258 D7 ret ;[INF] 1, 6 1477 1477 00259 ??eb05_tsk_led_wifi: 1478 1478 ; line 380 : } 1479 1479 00259 ?L0096: 1480 1480 ; line 381 : else 1481 1481 ; line 382 : { 1482 1482 00259 ??bb08_tsk_led_wifi: 1483 1483 ; line 383 : // 送信フラグ待ち 1484 1484 ; line 384 : LED_duty_WiFi = vreg_ctr[VREG_C_LED_BRIGHT]; 1485 1485 $DGL 0,69 1486 1486 00259 RFD0600 call !bs_S0173 ;[INF] 3, 3 1487 1487 ; line 385 : task_interval = 200; 1488 1488 $DGL 0,70 1489 1489 0025C RCF0800C8 mov !?L0079,#0C8H ; task_interval,200 ;[INF] 4, 1 1490 1490 ; line 386 : return; 1491 1491 00260 ??eb08_tsk_led_wifi: 1492 1492 ; line 387 : } 1493 1493 ; line 388 : break; 1494 1494 00260 ??eb04_tsk_led_wifi: 1495 1495 ; line 389 : 1496 1496 ; line 390 : } 1497 1497 00260 ?L0089: 1498 1498 ; line 391 : } 1499 1499 $DGL 0,76 1500 1500 00260 ??ef_tsk_led_wifi: 1501 1501 00260 D7 ret ;[INF] 1, 6 1502 1502 00261 ??ee_tsk_led_wifi: 1503 1503 ; line 392 : 1504 1504 ; line 393 : 1505 1505 ; line 394 : 1506 1506 ; line 395 : 1507 1507 ; line 396 : /* ======================================================== 1508 1508 ; line 397 : * 割り込みそのものは使いません * 1509 1509 ; line 398 : LED_Wifi2 P24 (未) 1510 1510 ; line 399 : ======================================================== */ 1511 1511 ; line 400 : void tsk_led_notify( ) 1512 1512 ; line 401 : { 1513 1513 00261 _tsk_led_notify: 1514 1514 $DGL 1,262 1515 1515 00261 C7 push hl ;[INF] 1, 1 1516 1516 00262 ??bf_tsk_led_notify: 1517 1517 ; line 402 : static u8 task_interval; 1518 1518 ; line 403 : static u8 flg_char_space; 1519 1519 ; line 404 : static u8 state_notify_led; // 点灯パターンの進行具合 1520 1520 ; line 405 : static u8 flag_wifi_TX; 1521 1521 ; line 406 : 1522 1522 ; line 407 : 1523 1523 ; line 408 : if( task_interval-- != 0 ) 1524 1524 $DGL 0,8 1525 1525 00262 R8F0C00 mov a,!?L0107 ; task_interval ;[INF] 3, 1 1526 1526 00265 RB00C00 dec !?L0107 ; task_interval ;[INF] 3, 2 1527 1527 00268 D1 cmp0 a ;[INF] 1, 1 1528 1528 00269 61E8 skz ;[INF] 2, 1 1529 1529 0026B RED2703 br !?L0135 ;[INF] 3, 3 1530 1530 ; line 409 : { 1531 1531 0026E ??bb00_tsk_led_notify: 1532 1532 ; line 410 : return; 1533 1533 0026E ??eb00_tsk_led_notify: 1534 1534 ; line 411 : } 1535 1535 ; line 412 : 1536 1536 ; line 413 : switch ( vreg_ctr[VREG_C_LED_NOTIFY] ) 1537 1537 $DGL 0,13 1538 1538 0026E RD92D00 mov x,!_vreg_ctr+45 ;[INF] 3, 1 1539 1539 00271 RFD0000 call !bs_S0172 ;[INF] 3, 3 1540 1540 00274 DD09 bz $?L0114 ;[INF] 2, 4 1541 1541 00276 23 subw ax,bc ;[INF] 1, 1 1542 1542 00277 DD12 bz $?L0116 ;[INF] 2, 4 1543 1543 00279 23 subw ax,bc ;[INF] 1, 1 1544 1544 0027A DD1B bz $?L0117 ;[INF] 2, 4 1545 1545 0027C 23 subw ax,bc ;[INF] 1, 1 1546 1546 0027D DD43 bz $?L0118 ;[INF] 2, 4 1547 1547 ; line 414 : { 1548 1548 0027F ??bb01_tsk_led_notify: 1549 1549 ; line 415 : case ( NOTIFY_LED_OFF ): 1550 1550 0027F ?L0114: 1551 1551 ; line 416 : default: 1552 1552 ; line 417 : LED_duty_NOTIFY = 0; 1553 1553 $DGL 0,17 1554 1554 0027F F6 clrw ax ;[INF] 1, 1 1555 1555 00280 BE6A movw TDR05,ax ;[INF] 2, 1 1556 1556 ; line 418 : state_notify_led = 0; 1557 1557 $DGL 0,18 1558 1558 00282 RF50E00 clrb !?L0109 ; state_notify_led ;[INF] 3, 1 1559 1559 ; line 419 : flg_char_space = 0; 1560 1560 $DGL 0,19 1561 1561 00285 RF50D00 clrb !?L0108 ; flg_char_space ;[INF] 3, 1 1562 1562 ; line 420 : break; 1563 1563 $DGL 0,20 1564 1564 00288 RED2703 br !?L0135 ;[INF] 3, 3 1565 1565 ; line 421 : 1566 1566 ; line 422 : case ( NOTIFY_LED_ON ): 1567 1567 0028B ?L0116: 1568 1568 ; line 423 : LED_duty_NOTIFY = vreg_ctr[VREG_C_LED_BRIGHT]; 1569 1569 $DGL 0,23 1570 1570 0028B RFD0D00 call !bs_S0174 ;[INF] 3, 3 1571 1571 ; line 424 : state_notify_led = 0; 1572 1572 $DGL 0,24 1573 1573 0028E RF50E00 clrb !?L0109 ; state_notify_led ;[INF] 3, 1 1574 1574 ; line 425 : flg_char_space = 0; 1575 1575 $DGL 0,25 1576 1576 00291 RF50D00 clrb !?L0108 ; flg_char_space ;[INF] 3, 1 1577 1577 ; line 426 : break; 1578 1578 $DGL 0,26 1579 1579 00294 RED2703 br !?L0135 ;[INF] 3, 3 1580 1580 ; line 427 : 1581 1581 ; line 428 : case ( NOTIFY_LED_PTN0 ): 1582 1582 00297 ?L0117: 1583 1583 ; line 429 : // ゆっくりバースト 1584 1584 ; line 430 : switch ( state_notify_led ) 1585 1585 $DGL 0,30 1586 1586 00297 RD90E00 mov x,!?L0109 ; state_notify_led ;[INF] 3, 1 1587 1587 0029A F1 clrb a ;[INF] 1, 1 1588 1588 0029B E7 onew bc ;[INF] 1, 1 1589 1589 0029C 340200 movw de,#02H ; 2 ;[INF] 3, 1 1590 1590 0029F 23 subw ax,bc ;[INF] 1, 1 1591 1591 002A0 DD06 bz $?L0122 ;[INF] 2, 4 1592 1592 002A2 25 subw ax,de ;[INF] 1, 1 1593 1593 002A3 DD03 bz $?L0122 ;[INF] 2, 4 1594 1594 002A5 25 subw ax,de ;[INF] 1, 1 1595 1595 002A6 DF05 bnz $?L0123 ;[INF] 2, 4 1596 1596 ; line 431 : { 1597 1597 002A8 ??bb02_tsk_led_notify: 1598 1598 ; line 432 : case ( 1 ): 1599 1599 002A8 ?L0122: 1600 1600 ; line 433 : case ( 3 ): 1601 1601 ; line 434 : case ( 5 ): 1602 1602 ; line 435 : LED_duty_NOTIFY = vreg_ctr[VREG_C_LED_BRIGHT]; 1603 1603 $DGL 0,35 1604 1604 002A8 RFD0D00 call !bs_S0174 ;[INF] 3, 3 1605 1605 ; line 436 : break; 1606 1606 $DGL 0,36 1607 1607 002AB EF03 br $?L0121 ;[INF] 2, 3 1608 1608 ; line 437 : default: 1609 1609 002AD ?L0123: 1610 1610 ; line 438 : LED_duty_NOTIFY = 0; 1611 1611 $DGL 0,38 1612 1612 002AD F6 clrw ax ;[INF] 1, 1 1613 1613 002AE BE6A movw TDR05,ax ;[INF] 2, 1 1614 1614 002B0 ??eb02_tsk_led_notify: 1615 1615 ; line 439 : } 1616 1616 002B0 ?L0121: 1617 1617 ; line 440 : state_notify_led++; 1618 1618 $DGL 0,40 1619 1619 002B0 RA00E00 inc !?L0109 ; state_notify_led ;[INF] 3, 2 1620 1620 ; line 441 : if( state_notify_led == 16 ) 1621 1621 $DGL 0,41 1622 1622 002B3 R400E0010 cmp !?L0109,#010H ; state_notify_led,16 ;[INF] 4, 1 1623 1623 002B7 61F8 sknz ;[INF] 2, 1 1624 1624 ; line 442 : { 1625 1625 002B9 ??bb03_tsk_led_notify: 1626 1626 ; line 443 : state_notify_led = 0; 1627 1627 $DGL 0,43 1628 1628 002B9 RF50E00 clrb !?L0109 ; state_notify_led ;[INF] 3, 1 1629 1629 002BC ??eb03_tsk_led_notify: 1630 1630 ; line 444 : } 1631 1631 002BC ?L0126: 1632 1632 ; line 445 : task_interval = 50; 1633 1633 $DGL 0,45 1634 1634 002BC RCF0C0032 mov !?L0107,#032H ; task_interval,50 ;[INF] 4, 1 1635 1635 ; line 446 : return; 1636 1636 $DGL 0,46 1637 1637 002C0 EF65 br $?L0135 ;[INF] 2, 3 1638 1638 ; line 447 : 1639 1639 ; line 448 : case ( NOTIFY_LED_PTN1 ): 1640 1640 002C2 ?L0118: 1641 1641 ; line 449 : // データテーブルに従って点滅 1642 1642 ; line 450 : { 1643 1643 002C2 ??bb04_tsk_led_notify: 1644 1644 ; line 451 : u8 dat; 1645 1645 ; line 452 : 1646 1646 ; line 453 : task_interval = MSG_SPD; // 共通のため。場合によって 1647 1647 ; 上書き 1648 1648 $DGL 0,53 1649 1649 002C2 RCF0C003C mov !?L0107,#03CH ; task_interval,60 ;[INF] 4, 1 1650 1650 ; line 454 : 1651 1651 ; line 455 : if( flg_char_space != 0 ) 1652 1652 $DGL 0,55 1653 1653 002C6 RD50D00 cmp0 !?L0108 ; flg_char_space ;[INF] 3, 1 1654 1654 002C9 DD08 bz $?L0128 ;[INF] 2, 4 1655 1655 ; line 456 : { 1656 1656 002CB ??bb05_tsk_led_notify: 1657 1657 ; line 457 : LED_duty_NOTIFY = 0; 1658 1658 $DGL 0,57 1659 1659 002CB F6 clrw ax ;[INF] 1, 1 1660 1660 002CC BE6A movw TDR05,ax ;[INF] 2, 1 1661 1661 ; line 458 : flg_char_space = 0; 1662 1662 $DGL 0,58 1663 1663 002CE RF50D00 clrb !?L0108 ; flg_char_space ;[INF] 3, 1 1664 1664 ; line 459 : return; 1665 1665 $DGL 0,59 1666 1666 002D1 EF54 br $?L0135 ;[INF] 2, 3 1667 1667 002D3 ??eb05_tsk_led_notify: 1668 1668 ; line 460 : } 1669 1669 002D3 ?L0128: 1670 1670 ; line 461 : 1671 1671 ; line 462 : // データバッファの見る位置の更新 1672 1672 ; line 463 : dat = ( MSG_MAIL[state_notify_led / 4] << ( ( state_ 1673 1673 ; notify_led % 4 ) * 2 ) ) & 0xC0; 1674 1674 $DGL 0,63 1675 1675 002D3 RD90E00 mov x,!?L0109 ; state_notify_led ;[INF] 3, 1 1676 1676 002D6 F1 clrb a ;[INF] 1, 1 1677 1677 002D7 RBD00 movw _@RTARG0,ax ;[INF] 2, 1 1678 1678 002D9 5004 mov x,#04H ; 4 ;[INF] 2, 1 1679 1679 002DB RFD0000 call !@@isrem ;[INF] 3, 3 1680 1680 002DE 01 addw ax,ax ;[INF] 1, 1 1681 1681 002DF 08 xch a,x ;[INF] 1, 1 1682 1682 002E0 72 mov c,a ;[INF] 1, 1 1683 1683 002E1 08 xch a,x ;[INF] 1, 1 1684 1684 002E2 RD90E00 mov x,!?L0109 ; state_notify_led ;[INF] 3, 1 1685 1685 002E5 F1 clrb a ;[INF] 1, 1 1686 1686 002E6 312F sarw ax,2 ;[INF] 2, 1 1687 1687 002E8 R042F00 addw ax,#loww (_MSG_MAIL) ;[INF] 3, 1 1688 1688 002EB 14 movw de,ax ;[INF] 1, 1 1689 1689 002EC 89 mov a,[de] ;[INF] 1, 1 1690 1690 002ED 318F sarw ax,8 ;[INF] 2, 1 1691 1691 002EF D2 cmp0 c ;[INF] 1, 1 1692 1692 002F0 DD04 bz $?L0130 ;[INF] 2, 4 1693 1693 002F2 ?L0131: 1694 1694 002F2 01 addw ax,ax ;[INF] 1, 1 1695 1695 002F3 92 dec c ;[INF] 1, 1 1696 1696 002F4 DFFC bnz $?L0131 ;[INF] 2, 4 1697 1697 002F6 ?L0130: 1698 1698 002F6 60 mov a,x ;[INF] 1, 1 1699 1699 002F7 5CC0 and a,#0C0H ; 192 ;[INF] 2, 1 1700 1700 002F9 76 mov l,a ;[INF] 1, 1 1701 1701 ; line 464 : if( dat == 0 ) 1702 1702 $DGL 0,64 1703 1703 002FA D1 cmp0 a ;[INF] 1, 1 1704 1704 002FB DF05 bnz $?L0132 ;[INF] 2, 4 1705 1705 ; line 465 : { 1706 1706 002FD ??bb06_tsk_led_notify: 1707 1707 ; line 466 : state_notify_led = 0; 1708 1708 $DGL 0,66 1709 1709 002FD RF50E00 clrb !?L0109 ; state_notify_led ;[INF] 3, 1 1710 1710 00300 ??eb06_tsk_led_notify: 1711 1711 ; line 467 : } 1712 1712 $DGL 0,67 1713 1713 00300 EF03 br $?L0133 ;[INF] 2, 3 1714 1714 00302 ?L0132: 1715 1715 ; line 468 : else 1716 1716 ; line 469 : { 1717 1717 00302 ??bb07_tsk_led_notify: 1718 1718 ; line 470 : state_notify_led += 1; 1719 1719 $DGL 0,70 1720 1720 00302 RA00E00 inc !?L0109 ; state_notify_led ;[INF] 3, 2 1721 1721 00305 ??eb07_tsk_led_notify: 1722 1722 ; line 471 : } 1723 1723 00305 ?L0133: 1724 1724 ; line 472 : 1725 1725 ; line 473 : flg_char_space = 1; 1726 1726 $DGL 0,73 1727 1727 00305 RE50D00 oneb !?L0108 ; flg_char_space ;[INF] 3, 1 1728 1728 ; line 474 : if(( dat & 0b10000000 ) != 0 ) 1729 1729 $DGL 0,74 1730 1730 00308 66 mov a,l ;[INF] 1, 1 1731 1731 00309 5C80 and a,#080H ; 128 ;[INF] 2, 1 1732 1732 0030B D1 cmp0 a ;[INF] 1, 1 1733 1733 0030C DD0F bz $?L0134 ;[INF] 2, 4 1734 1734 ; line 475 : { 1735 1735 0030E ??bb08_tsk_led_notify: 1736 1736 ; line 476 : // 点灯はさせる 1737 1737 ; line 477 : LED_duty_NOTIFY = vreg_ctr[VREG_C_LED_BRIGHT]; 1738 1738 $DGL 0,77 1739 1739 0030E RFD0D00 call !bs_S0174 ;[INF] 3, 3 1740 1740 ; line 478 : if(( dat & 0b01000000 ) == 0 ) 1741 1741 $DGL 0,78 1742 1742 00311 66 mov a,l ;[INF] 1, 1 1743 1743 00312 5C40 and a,#040H ; 64 ;[INF] 2, 1 1744 1744 00314 D1 cmp0 a ;[INF] 1, 1 1745 1745 00315 DD10 bz $?L0135 ;[INF] 2, 4 1746 1746 ; line 479 : { 1747 1747 00317 ??bb09_tsk_led_notify: 1748 1748 00317 ??eb09_tsk_led_notify: 1749 1749 ; line 480 : // 短 1750 1750 ; line 481 : // nothing to do 1751 1751 ; line 482 : } 1752 1752 ; line 483 : else 1753 1753 ; line 484 : { 1754 1754 00317 ??bb0A_tsk_led_notify: 1755 1755 ; line 485 : // 長 1756 1756 ; line 486 : task_interval = ( MSG_SPD * 3 ); 1757 1757 $DGL 0,86 1758 1758 00317 RCF0C00B4 mov !?L0107,#0B4H ; task_interval,180 ;[INF] 4, 1 1759 1759 0031B ??eb0A_tsk_led_notify: 1760 1760 ; line 487 : } 1761 1761 ; line 488 : // 次は単語間休み、とかの判定をさせたかったが 1762 1762 ; line 489 : /// 1バイトに2ビットずつデータが並んでおり、次 1763 1763 ; のバイトに 1764 1764 ; line 490 : /// またがるようなときが面倒なのでやめる 1765 1765 ; line 491 : return; 1766 1766 $DGL 0,91 1767 1767 0031B EF0A br $?L0135 ;[INF] 2, 3 1768 1768 0031D ??eb08_tsk_led_notify: 1769 1769 ; line 492 : } 1770 1770 0031D ?L0134: 1771 1771 ; line 493 : else 1772 1772 ; line 494 : { 1773 1773 0031D ??bb0B_tsk_led_notify: 1774 1774 ; line 495 : if(( dat & 0b01000000 ) == 0 ) 1775 1775 $DGL 0,95 1776 1776 0031D 66 mov a,l ;[INF] 1, 1 1777 1777 0031E 5C40 and a,#040H ; 64 ;[INF] 2, 1 1778 1778 00320 D1 cmp0 a ;[INF] 1, 1 1779 1779 00321 61F8 sknz ;[INF] 2, 1 1780 1780 ; line 496 : { 1781 1781 00323 ??bb0C_tsk_led_notify: 1782 1782 ; line 497 : // 一文終了 1783 1783 ; line 498 : task_interval = ( MSG_SPD * 3 ); 1784 1784 $DGL 0,98 1785 1785 00323 RCF0C00B4 mov !?L0107,#0B4H ; task_interval,180 ;[INF] 4, 1 1786 1786 00327 ??eb0C_tsk_led_notify: 1787 1787 ; line 499 : } 1788 1788 ; line 500 : else 1789 1789 ; line 501 : { 1790 1790 00327 ??bb0D_tsk_led_notify: 1791 1791 00327 ??eb0D_tsk_led_notify: 1792 1792 ; line 502 : // 単語間 1793 1793 ; line 503 : // nothing to do 1794 1794 ; line 504 : } 1795 1795 ; line 505 : return; 1796 1796 00327 ??eb0B_tsk_led_notify: 1797 1797 ; line 506 : } 1798 1798 00327 ?L0135: 1799 1799 00327 ??eb04_tsk_led_notify: 1800 1800 ; line 507 : } 1801 1801 00327 ??eb01_tsk_led_notify: 1802 1802 ; line 508 : } 1803 1803 ; line 509 : } 1804 1804 $DGL 0,109 1805 1805 00327 ??ef_tsk_led_notify: 1806 1806 00327 C6 pop hl ;[INF] 1, 1 1807 1807 00328 D7 ret ;[INF] 1, 6 1808 1808 00329 ??ee_tsk_led_notify: 1809 1809 ; line 510 : 1810 1810 ; line 511 : 1811 1811 ; line 512 : 1812 1812 ; line 513 : 1813 1813 ; line 514 : /******************************************************//** 1814 1814 ; line 515 : LED_Cam TO02 1815 1815 ; line 516 : \n BLINK,*_PLUSE の時は、1周期分は必ずその状態になります。 1816 1816 ; line 517 : \n その間に OFF→BLINK などされると、OFFが無視されます。 1817 1817 ; line 518 : *********************************************************/ 1818 1818 ; line 519 : void tsk_led_cam( ) 1819 1819 ; line 520 : { 1820 1820 00329 _tsk_led_cam: 1821 1821 $DGL 1,330 1822 1822 00329 ??bf_tsk_led_cam: 1823 1823 ; line 521 : static u8 state_led_cam = 0; 1824 1824 ; line 522 : static u8 task_interval; 1825 1825 ; line 523 : static u8 state_led_cam_twl; 1826 1826 ; line 524 : 1827 1827 ; line 525 : if( task_interval != 0 ) 1828 1828 $DGL 0,6 1829 1829 00329 RD51000 cmp0 !?L0143 ; task_interval ;[INF] 3, 1 1830 1830 0032C DD04 bz $?L0145 ;[INF] 2, 4 1831 1831 ; line 526 : { 1832 1832 0032E ??bb00_tsk_led_cam: 1833 1833 ; line 527 : task_interval -= 1; 1834 1834 $DGL 0,8 1835 1835 0032E RB01000 dec !?L0143 ; task_interval ;[INF] 3, 2 1836 1836 ; line 528 : return; 1837 1837 $DGL 0,9 1838 1838 00331 D7 ret ;[INF] 1, 6 1839 1839 00332 ??eb00_tsk_led_cam: 1840 1840 ; line 529 : } 1841 1841 00332 ?L0145: 1842 1842 ; line 530 : 1843 1843 ; line 531 : // ブリンクのように待たせたいとき以外は毎週起動する 1844 1844 ; line 532 : // (レジスタの変更にすぐに反応する) 1845 1845 ; line 533 : 1846 1846 ; line 534 : switch ( vreg_ctr[VREG_C_LED_CAM] ) 1847 1847 $DGL 0,15 1848 1848 00332 RD92B00 mov x,!_vreg_ctr+43 ;[INF] 3, 1 1849 1849 00335 RFD0000 call !bs_S0172 ;[INF] 3, 3 1850 1850 00338 DD0F bz $?L0148 ;[INF] 2, 4 1851 1851 0033A 23 subw ax,bc ;[INF] 1, 1 1852 1852 0033B DD1A bz $?L0151 ;[INF] 2, 4 1853 1853 0033D 23 subw ax,bc ;[INF] 1, 1 1854 1854 0033E DD10 bz $?L0150 ;[INF] 2, 4 1855 1855 00340 23 subw ax,bc ;[INF] 1, 1 1856 1856 00341 DD55 bz $?L0154 ;[INF] 2, 4 1857 1857 00343 23 subw ax,bc ;[INF] 1, 1 1858 1858 00344 DD29 bz $?L0152 ;[INF] 2, 4 1859 1859 00346 23 subw ax,bc ;[INF] 1, 1 1860 1860 00347 DD3A bz $?L0153 ;[INF] 2, 4 1861 1861 ; line 535 : { 1862 1862 00349 ??bb01_tsk_led_cam: 1863 1863 ; line 536 : case ( CAM_LED_OFF ): 1864 1864 00349 ?L0148: 1865 1865 ; line 537 : default: 1866 1866 ; line 538 : LED_duty_CAM = 0; 1867 1867 $DGL 0,19 1868 1868 00349 F6 clrw ax ;[INF] 1, 1 1869 1869 0034A BE64 movw TDR02,ax ;[INF] 2, 1 1870 1870 ; line 539 : state_led_cam = 0; 1871 1871 $DGL 0,20 1872 1872 0034C RF50000 clrb !?L0142 ; state_led_cam ;[INF] 3, 1 1873 1873 ; line 540 : break; 1874 1874 $DGL 0,21 1875 1875 0034F D7 ret ;[INF] 1, 6 1876 1876 ; line 541 : 1877 1877 ; line 542 : case ( CAM_LED_ON ): 1878 1878 00350 ?L0150: 1879 1879 ; line 543 : LED_duty_CAM = vreg_ctr[VREG_C_LED_BRIGHT]; 1880 1880 $DGL 0,24 1881 1881 00350 RFD1400 call !bs_S0175 ;[INF] 3, 3 1882 1882 ; line 544 : state_led_cam = 0; 1883 1883 $DGL 0,25 1884 1884 00353 RF50000 clrb !?L0142 ; state_led_cam ;[INF] 3, 1 1885 1885 ; line 545 : break; 1886 1886 $DGL 0,26 1887 1887 00356 D7 ret ;[INF] 1, 6 1888 1888 ; line 546 : 1889 1889 ; line 547 : case ( CAM_LED_BLINK ): 1890 1890 00357 ?L0151: 1891 1891 ; line 548 : if( state_led_cam == 0 ) 1892 1892 $DGL 0,29 1893 1893 00357 RD50000 cmp0 !?L0142 ; state_led_cam ;[INF] 3, 1 1894 1894 0035A DF08 bnz $?L0157 ;[INF] 2, 4 1895 1895 ; line 549 : { 1896 1896 0035C ??bb02_tsk_led_cam: 1897 1897 ; line 550 : LED_duty_CAM = vreg_ctr[VREG_C_LED_BRIGHT]; 1898 1898 $DGL 0,31 1899 1899 0035C RFD1400 call !bs_S0175 ;[INF] 3, 3 1900 1900 ; line 551 : state_led_cam = 1; 1901 1901 $DGL 0,32 1902 1902 0035F RE50000 oneb !?L0142 ; state_led_cam ;[INF] 3, 1 1903 1903 00362 ??eb02_tsk_led_cam: 1904 1904 ; line 552 : } 1905 1905 $DGL 0,33 1906 1906 00362 EF06 br $?L0158 ;[INF] 2, 3 1907 1907 00364 ?L0157: 1908 1908 ; line 553 : else 1909 1909 ; line 554 : { 1910 1910 00364 ??bb03_tsk_led_cam: 1911 1911 ; line 555 : LED_duty_CAM = 0; 1912 1912 $DGL 0,36 1913 1913 00364 F6 clrw ax ;[INF] 1, 1 1914 1914 00365 BE64 movw TDR02,ax ;[INF] 2, 1 1915 1915 ; line 556 : state_led_cam = 0; 1916 1916 $DGL 0,37 1917 1917 00367 RF50000 clrb !?L0142 ; state_led_cam ;[INF] 3, 1 1918 1918 0036A ??eb03_tsk_led_cam: 1919 1919 ; line 557 : } 1920 1920 0036A ?L0158: 1921 1921 ; line 558 : task_interval = 250; 1922 1922 $DGL 0,39 1923 1923 0036A RCF1000FA mov !?L0143,#0FAH ; task_interval,250 ;[INF] 4, 1 1924 1924 ; line 559 : break; 1925 1925 $DGL 0,40 1926 1926 0036E D7 ret ;[INF] 1, 6 1927 1927 ; line 560 : 1928 1928 ; line 561 : case ( CAM_LED_ON_PLUSE ): 1929 1929 0036F ?L0152: 1930 1930 ; line 562 : if( state_led_cam == 0 ) 1931 1931 $DGL 0,43 1932 1932 0036F RD50000 cmp0 !?L0142 ; state_led_cam ;[INF] 3, 1 1933 1933 00372 DF0B bnz $?L0159 ;[INF] 2, 4 1934 1934 ; line 563 : { 1935 1935 00374 ??bb04_tsk_led_cam: 1936 1936 ; line 564 : LED_duty_CAM = vreg_ctr[VREG_C_LED_BRIGHT]; 1937 1937 $DGL 0,45 1938 1938 00374 RFD1400 call !bs_S0175 ;[INF] 3, 3 1939 1939 ; line 565 : state_led_cam = 1; 1940 1940 $DGL 0,46 1941 1941 00377 RE50000 oneb !?L0142 ; state_led_cam ;[INF] 3, 1 1942 1942 ; line 566 : task_interval = 250; 1943 1943 $DGL 0,47 1944 1944 0037A RCF1000FA mov !?L0143,#0FAH ; task_interval,250 ;[INF] 4, 1 1945 1945 0037E ??eb04_tsk_led_cam: 1946 1946 ; line 567 : } 1947 1947 $DGL 0,48 1948 1948 0037E D7 ret ;[INF] 1, 6 1949 1949 0037F ?L0159: 1950 1950 ; line 568 : else 1951 1951 ; line 569 : { 1952 1952 0037F ??bb05_tsk_led_cam: 1953 1953 ; line 570 : vreg_ctr[VREG_C_LED_CAM] = CAM_LED_OFF; 1954 1954 $DGL 0,51 1955 1955 0037F RF52B00 clrb !_vreg_ctr+43 ;[INF] 3, 1 1956 1956 00382 ??eb05_tsk_led_cam: 1957 1957 ; line 571 : } 1958 1958 ; line 572 : break; 1959 1959 $DGL 0,53 1960 1960 00382 D7 ret ;[INF] 1, 6 1961 1961 ; line 573 : 1962 1962 ; line 574 : case ( CAM_LED_OFF_PLUSE ): 1963 1963 00383 ?L0153: 1964 1964 ; line 575 : if( state_led_cam == 0 ) 1965 1965 $DGL 0,56 1966 1966 00383 RD50000 cmp0 !?L0142 ; state_led_cam ;[INF] 3, 1 1967 1967 00386 DF0B bnz $?L0161 ;[INF] 2, 4 1968 1968 ; line 576 : { 1969 1969 00388 ??bb06_tsk_led_cam: 1970 1970 ; line 577 : LED_duty_CAM = 0; 1971 1971 $DGL 0,58 1972 1972 00388 F6 clrw ax ;[INF] 1, 1 1973 1973 00389 BE64 movw TDR02,ax ;[INF] 2, 1 1974 1974 ; line 578 : state_led_cam = 1; 1975 1975 $DGL 0,59 1976 1976 0038B RE50000 oneb !?L0142 ; state_led_cam ;[INF] 3, 1 1977 1977 ; line 579 : task_interval = 250; 1978 1978 $DGL 0,60 1979 1979 0038E RCF1000FA mov !?L0143,#0FAH ; task_interval,250 ;[INF] 4, 1 1980 1980 00392 ??eb06_tsk_led_cam: 1981 1981 ; line 580 : } 1982 1982 $DGL 0,61 1983 1983 00392 D7 ret ;[INF] 1, 6 1984 1984 00393 ?L0161: 1985 1985 ; line 581 : else 1986 1986 ; line 582 : { 1987 1987 00393 ??bb07_tsk_led_cam: 1988 1988 ; line 583 : vreg_ctr[VREG_C_LED_CAM] = CAM_LED_ON; 1989 1989 $DGL 0,64 1990 1990 00393 RCF2B0002 mov !_vreg_ctr+43,#02H ; 2 ;[INF] 4, 1 1991 1991 00397 ??eb07_tsk_led_cam: 1992 1992 ; line 584 : } 1993 1993 ; line 585 : break; 1994 1994 $DGL 0,66 1995 1995 00397 D7 ret ;[INF] 1, 6 1996 1996 ; line 586 : 1997 1997 ; line 587 : case ( CAM_LED_BY_TWL ): 1998 1998 00398 ?L0154: 1999 1999 ; line 588 : switch ( vreg_twl[ REG_TWL_INT_ADRS_CAM ] ){ // switchの 2000 2000 ; ネストとか… 2001 2001 $DGL 0,69 2002 2002 00398 RD90500 mov x,!_vreg_twl+5 ;[INF] 3, 1 2003 2003 0039B RFD0000 call !bs_S0172 ;[INF] 3, 3 2004 2004 0039E DD09 bz $?L0164 ;[INF] 2, 4 2005 2005 003A0 23 subw ax,bc ;[INF] 1, 1 2006 2006 003A1 DD25 bz $?L0166 ;[INF] 2, 4 2007 2007 003A3 23 subw ax,bc ;[INF] 1, 1 2008 2008 003A4 DD0A bz $?L0165 ;[INF] 2, 4 2009 2009 003A6 23 subw ax,bc ;[INF] 1, 1 2010 2010 003A7 EF1F br $?L0166 ;[INF] 2, 3 2011 2011 003A9 ??bb08_tsk_led_cam: 2012 2012 ; line 589 : case( TWL_CAMLED_OFF ): 2013 2013 003A9 ?L0164: 2014 2014 ; line 590 : LED_duty_CAM = 0; 2015 2015 $DGL 0,71 2016 2016 003A9 F6 clrw ax ;[INF] 1, 1 2017 2017 003AA BE64 movw TDR02,ax ;[INF] 2, 1 2018 2018 ; line 591 : state_led_cam = 0; 2019 2019 $DGL 0,72 2020 2020 003AC RF50000 clrb !?L0142 ; state_led_cam ;[INF] 3, 1 2021 2021 ; line 592 : break; 2022 2022 $DGL 0,73 2023 2023 003AF D7 ret ;[INF] 1, 6 2024 2024 ; line 593 : 2025 2025 ; line 594 : case( TWL_CAMLED_BLINK ): 2026 2026 003B0 ?L0165: 2027 2027 ; line 595 : if( state_led_cam == 0 ) 2028 2028 $DGL 0,76 2029 2029 003B0 RD50000 cmp0 !?L0142 ; state_led_cam ;[INF] 3, 1 2030 2030 003B3 DF08 bnz $?L0170 ;[INF] 2, 4 2031 2031 ; line 596 : { 2032 2032 003B5 ??bb09_tsk_led_cam: 2033 2033 ; line 597 : LED_duty_CAM = vreg_ctr[VREG_C_LED_BRIGHT]; 2034 2034 $DGL 0,78 2035 2035 003B5 RFD1400 call !bs_S0175 ;[INF] 3, 3 2036 2036 ; line 598 : state_led_cam = 1; 2037 2037 $DGL 0,79 2038 2038 003B8 RE50000 oneb !?L0142 ; state_led_cam ;[INF] 3, 1 2039 2039 003BB ??eb09_tsk_led_cam: 2040 2040 ; line 599 : } 2041 2041 $DGL 0,80 2042 2042 003BB EF06 br $?L0171 ;[INF] 2, 3 2043 2043 003BD ?L0170: 2044 2044 ; line 600 : else 2045 2045 ; line 601 : { 2046 2046 003BD ??bb0A_tsk_led_cam: 2047 2047 ; line 602 : LED_duty_CAM = 0; 2048 2048 $DGL 0,83 2049 2049 003BD F6 clrw ax ;[INF] 1, 1 2050 2050 003BE BE64 movw TDR02,ax ;[INF] 2, 1 2051 2051 ; line 603 : state_led_cam = 0; 2052 2052 $DGL 0,84 2053 2053 003C0 RF50000 clrb !?L0142 ; state_led_cam ;[INF] 3, 1 2054 2054 003C3 ??eb0A_tsk_led_cam: 2055 2055 ; line 604 : } 2056 2056 003C3 ?L0171: 2057 2057 ; line 605 : task_interval = 250; 2058 2058 $DGL 0,86 2059 2059 003C3 RCF1000FA mov !?L0143,#0FAH ; task_interval,250 ;[INF] 4, 1 2060 2060 ; line 606 : break; 2061 2061 $DGL 0,87 2062 2062 003C7 D7 ret ;[INF] 1, 6 2063 2063 ; line 607 : 2064 2064 ; line 608 : case( TWL_CAMLED_ON ): 2065 2065 003C8 ?L0166: 2066 2066 ; line 609 : case( TWL_CAMLED_DEF_ON ): 2067 2067 ; line 610 : default: 2068 2068 ; line 611 : LED_duty_CAM = vreg_ctr[VREG_C_LED_BRIGHT]; 2069 2069 $DGL 0,92 2070 2070 003C8 RFD1400 call !bs_S0175 ;[INF] 3, 3 2071 2071 ; line 612 : state_led_cam = 1; 2072 2072 $DGL 0,93 2073 2073 003CB RE50000 oneb !?L0142 ; state_led_cam ;[INF] 3, 1 2074 2074 ; line 613 : break; 2075 2075 003CE ??eb08_tsk_led_cam: 2076 2076 ; line 614 : } 2077 2077 003CE ?L0163: 2078 2078 003CE ??eb01_tsk_led_cam: 2079 2079 ; line 615 : } 2080 2080 ; line 616 : return; 2081 2081 ; line 617 : } 2082 2082 $DGL 0,98 2083 2083 003CE ??ef_tsk_led_cam: 2084 2084 003CE D7 ret ;[INF] 1, 6 2085 2085 003CF ??ee_tsk_led_cam: 2086 2086 2087 2087 ----- @@CODEL CSEG 2088 2088 2089 2089 ----- @@BASE CSEG BASE 2090 2090 END 2091 2091 2092 2092 2093 2093 ; *** Code Information *** 2094 2094 ; 2095 2095 ; $FILE C:\78k_data\yav-mcu-basara\branches\0.10(fix)\led.c 2096 2096 ; 2097 2097 ; $FUNC LED_init(40) 2098 2098 ; void=(void) 2099 2099 ; CODE SIZE= 83 bytes, CLOCK_SIZE= 39 clocks, STACK_SIZE= 0 bytes 2100 2100 ; 2101 2101 ; $FUNC LED_stop(87) 2102 2102 ; void=(void) 2103 2103 ; CODE SIZE= 15 bytes, CLOCK_SIZE= 12 clocks, STACK_SIZE= 0 bytes 2104 2104 ; 2105 2105 ; $FUNC tsk_led_pow(120) 2106 2106 ; void=(void) 2107 2107 ; CODE SIZE= 99 bytes, CLOCK_SIZE= 133 clocks, STACK_SIZE= 4 bytes 2108 2108 ; 2109 2109 ; $CALL led_pow_hotaru(128) 2110 2110 ; void=(void) 2111 2111 ; 2112 2112 ; $CALL led_pow_normal(132) 2113 2113 ; void=(void) 2114 2114 ; 2115 2115 ; $CALL led_pow_hotaru(147) 2116 2116 ; void=(void) 2117 2117 ; 2118 2118 ; $CALL led_pow_normal(152) 2119 2119 ; void=(void) 2120 2120 ; 2121 2121 ; $FUNC led_pow_normal(174) 2122 2122 ; void=(void) 2123 2123 ; CODE SIZE= 113 bytes, CLOCK_SIZE= 104 clocks, STACK_SIZE= 0 bytes 2124 2124 ; 2125 2125 ; $FUNC led_pow_hotaru(229) 2126 2126 ; void=(void) 2127 2127 ; CODE SIZE= 149 bytes, CLOCK_SIZE= 126 clocks, STACK_SIZE= 0 bytes 2128 2128 ; 2129 2129 ; $FUNC tsk_led_wifi(316) 2130 2130 ; void=(void) 2131 2131 ; CODE SIZE= 123 bytes, CLOCK_SIZE= 159 clocks, STACK_SIZE= 4 bytes 2132 2132 ; 2133 2133 ; $FUNC tsk_led_notify(401) 2134 2134 ; void=(void) 2135 2135 ; CODE SIZE= 200 bytes, CLOCK_SIZE= 208 clocks, STACK_SIZE= 6 bytes 2136 2136 ; 2137 2137 ; $FUNC tsk_led_cam(520) 2138 2138 ; void=(void) 2139 2139 ; CODE SIZE= 166 bytes, CLOCK_SIZE= 258 clocks, STACK_SIZE= 4 bytes 2140 2140 2141 2141 ; Target chip : uPD79F0104 2142 2142 ; Device file : E1.00b Segment informations: ADRS LEN NAME 00000 00000H.0 @@BITS 00000 00034H @@CNST 00000 00002H @@R_INIT 00000 00002H @@INIT 00000 00012H @@DATA 00000 00000H @@R_INIS 00000 00000H @@INIS 00000 00000H @@DATS 00000 00000H @@CNSTL 00000 00000H @@RLINIT 00000 00000H @@INITL 00000 00000H @@DATAL 00000 00000H @@CALT 00000 003CFH ROM_CODE 00000 00000H @@CODEL 00000 00000H @@BASE Target chip : uPD79F0104 Device file : E1.00b Assembly complete, 0 error(s) and 0 warning(s) found. ( 0)