mirror of
https://github.com/sergeyyarkov/attiny2313a_thermostat.git
synced 2026-10-11 02:08:52 +03:00
program mode setting
This commit is contained in:
parent
9950d2e13d
commit
a164982095
3
NOTES.md
3
NOTES.md
@ -1,2 +1,3 @@
|
||||
- сделать программу, которая будет сохранять уставку температуры, гистерезис и режим работы в EEPROM
|
||||
(перед инициализации МК необходимо чтобы данные брались из EEPROM и записывались в соответствующие ячейки)
|
||||
(перед инициализации МК необходимо чтобы данные брались из EEPROM и записывались в соответствующие ячейки)
|
||||
- убрать отображение разряда индикатора в режиме программирования устройства на 3 этапе
|
||||
@ -61,10 +61,12 @@
|
||||
.EQU MCU_STATE_PROGRAM = 0x01 ; Режим настройки параметров в EEPROM
|
||||
.EQU MCU_STATE_ERROR = 0x02 ; Режим ошибки, например когда не подключен датчик
|
||||
|
||||
.EQU MIN_HYST = 1 ; минимальный гистерезис который можно выставить - 0.1
|
||||
.EQU MAX_HYST = 200 ; максимальный гистерезис который можно выставить - 20
|
||||
|
||||
; **** СТАНДАРТНЫЕ ПАРАМЕТРЫ ***********************************
|
||||
|
||||
; Отдельно задается целая и дробная часть в точности до десятых
|
||||
.EQU DEFAULT_TEMP = 315 ; 30 градусов
|
||||
.EQU DEFAULT_TEMP = 300 ; 30 градусов
|
||||
.EQU DEFAULT_HYST = 5 ; 0.5 градусов гистерезис
|
||||
|
||||
.EQU HEAT_MODE = 1
|
||||
|
||||
@ -7,25 +7,25 @@
|
||||
:10003A002F933F934F935F935FB74091670045308B
|
||||
:10004A000CF403C0442740936700403081F493982E
|
||||
:10005A00949895980EF002C00BE002C000916500DA
|
||||
:10006A00002311F0929A01C09298A3D29BD14130F9
|
||||
:10006A00002311F0929A01C09298DAD29BD14130C2
|
||||
:10007A0081F4929894989598009164003091650063
|
||||
:10008A00032B11F0939A01C093980091640091D2C6
|
||||
:10008A00032B11F0939A01C0939800916400C8D28F
|
||||
:10009A0089D1423059F4929893989598949A0091FC
|
||||
:1000AA00630087D2002D0F77002E7CD1433041F4B4
|
||||
:1000BA00929893989498959A009166007AD272D100
|
||||
:1000AA006300BED2002D0F77002E7CD1433041F47D
|
||||
:1000BA00929893989498959A00916600B1D272D1C9
|
||||
:1000CA004395409367005FBF5F914F913F912F9196
|
||||
:1000DA001F910F9118950FED0DBF0FE701BB01EEB0
|
||||
:1000EA0007BB0CE108BB02E000BF05E003BF09E162
|
||||
:1000EA0007BB0CE108BB02E000BF05E003BF03E267
|
||||
:1000FA0006BF00E20BBF0CE100BD03E309B900E053
|
||||
:10010A0002B908E00AB906E003B91124109267009F
|
||||
:10011A0000E0009360000BE300936C0001E00093A1
|
||||
:10011A0000E0009360000CE200936C0001E00093A1
|
||||
:10012A006B0005E000936D0001E000936E0000276C
|
||||
:10013A00009368000093690000EF00936A000FEFD4
|
||||
:10014A00009371006624CED000916F00083209F442
|
||||
:10015A0005C012E0109360003ED201C035D280E0A3
|
||||
:10016A0090E0009160000BD2003051F496982091F3
|
||||
:10015A0005C012E01093600075D201C06CD280E035
|
||||
:10016A0090E00091600042D2003051F496982091BC
|
||||
:10017A006A0020936600A7D059D011E019BF38D081
|
||||
:10018A00013011F4969842D1023059F7969AE9CF84
|
||||
:10018A00013011F4969848D1023059F7969AE9CF7E
|
||||
:10019A00EE24FF1841E1001F111F4A9509F4089542
|
||||
:1001AA00EE1CFF1CE21AF30A20F4E20EF31E8894F6
|
||||
:1001BA00F2CF0894F0CFFF1829E0001F2A9509F41E
|
||||
@ -46,60 +46,67 @@
|
||||
:1002AA00909801C0909A07C040916E00442311F4BF
|
||||
:1002BA00909A01C090987F915F914F913F912F91B1
|
||||
:1002CA001F910F9108951F9361D052E135E54DEBCF
|
||||
:1002DA009DD112D010916800812F10916900912F41
|
||||
:1002EA001F9108950F93FDD003E3802E0FD1AFE63F
|
||||
:1002FA00B0E02BD10F9108950F931F932F933F9343
|
||||
:10030A004F93EFD070FF3CC00CEC802EFFD00EEB69
|
||||
:10031A00802EFCD0A8E6B0E018D1A9E6B0E015D14D
|
||||
:1002DA00D4D112D010916800812F10916900912F0A
|
||||
:1002EA001F9108950F9334D103E3802E46D1AFE6D0
|
||||
:1002FA00B0E062D10F9108950F931F932F933F930C
|
||||
:10030A004F9326D170FF3CC00CEC802E36D10EEBF9
|
||||
:10031A00802E33D1A8E6B0E04FD1A9E6B0E04CD1A7
|
||||
:10032A0010916800209169002F93287F283F11F0CF
|
||||
:10033A00E89407C02F916894109520951F5F2F4F5E
|
||||
:10034A0001C02F91269517952695179526951795ED
|
||||
:10035A0026951795309168000EF43195432F3F701A
|
||||
:10036A00432F330F330F330F440F340F369536951F
|
||||
:10037A0036953695109368002093690030936A0089
|
||||
:10038A004F913F912F911F910F9108950F93A9D0EB
|
||||
:10039A0070FF06C00CEC802EB9D004E4802EB6D0D3
|
||||
:10038A004F913F912F911F910F9108950F93E0D0B4
|
||||
:10039A0070FF06C00CEC802EF0D004E4802EEDD065
|
||||
:1003AA000F9108950F930F920FB800E40EB90BE165
|
||||
:1003BA000DB9769BFDCFC09AC0980F900F91089502
|
||||
:1003CA000F93B49B01C014C000917100002309F47B
|
||||
:1003DA000FC000270093710005D16394162D1430C5
|
||||
:1003EA0014F4F2D005C06624F6D010E01093600031
|
||||
:1003FA00B49901C009C000917100002309F004C03A
|
||||
:10040A000FEF00937100EED00F9108950F931F9391
|
||||
:10041A002F933F934F93062D002309F002C0639454
|
||||
:10042A00D3D0CEDF013019F0023011F154C00000F0
|
||||
:10043A00B29B04C000C0B39B08C00DC0D3D01091BA
|
||||
:10044A006D00139510936D0006C0CCD010916D000D
|
||||
:10045A001A9510936D000F931F9300916D001AE087
|
||||
:10046A00AADE802F9927F09266001F910F9133C060
|
||||
:10047A000000B29B04C000C0B39B0FC019C0B2D029
|
||||
:10048A0010916C0020916B0031E0130F3327231F6A
|
||||
:10049A0010936C0020936B000BC0A4D010916C00D9
|
||||
:1004AA0020916B001150204010936C0020936B0038
|
||||
:1004BA000F931F932F933F9300916C0010916B0041
|
||||
:1004CA002AE030E065DE802F912FE09266003F91AE
|
||||
:1004DA002F911F910F914F913F912F911F910F9142
|
||||
:1004EA000895F894B99A33E04EEB8CD0B99830E07D
|
||||
:1004FA004AE888D005D033E042E384D0789408955E
|
||||
:10050A00B19B716002C0B1997E7F0895F8940F93F0
|
||||
:10051A001F93082D18E0069508F448F0B99A30E0C0
|
||||
:10052A0046E770D0B99830E042E16CD008C0B99A79
|
||||
:10053A0030E04AE067D0B99830E04EE763D01A95C8
|
||||
:10054A0051F71F910F9178940895F8940F931F9380
|
||||
:10055A00002718E00695B99A30E04AE053D0B998D6
|
||||
:10056A0030E040E14FD0B199006830E04CE64AD023
|
||||
:10057A001A9581F70C931F910F91789408950F9310
|
||||
:10058A005F9353E0A3E6B0E080936100909362002A
|
||||
:10059A0000916100109162002AE030E0F9DDED92ED
|
||||
:1005AA0000936100109362005A9591F75F910F9141
|
||||
:1005BA0008950F931F93E0E4F6E01127E00FF11F6F
|
||||
:1005CA0004901F910F910895C59A53E039EA4DE7B7
|
||||
:1005DA001DD0C5980895C59A5CE034E34DEF16D056
|
||||
:1005EA00C59808950F931F932F932AE01FEF0FEFDB
|
||||
:1005FA000A95F1F71A95D9F72A95C1F72F911F9104
|
||||
:10060A000F91089541503040E8F708954150304025
|
||||
:10061A005040E0F708950F931F932F9326E00FEFB2
|
||||
:10062A001FEF1A95F1F70A95D9F72A95C1F72F9175
|
||||
:10063A001F910F910895C0F9A4B0999282F8809001
|
||||
:04064A009CBFC68902
|
||||
:1003CA000F93B49B01C01AC000917100002309F475
|
||||
:1003DA0015C00027009371003CD16394162D143088
|
||||
:1003EA0014F429D10BC010E019BF929893989498ED
|
||||
:1003FA009598662427D110E010936000B49901C043
|
||||
:10040A0009C000917100002309F004C00FEF0093A6
|
||||
:10041A0071001FD10F9108950F931F932F933F934C
|
||||
:10042A004F93062D002309F002C005D16394C8DF5B
|
||||
:10043A00013029F0023049F1033031F183C0000064
|
||||
:10044A00B29B04C000C0B39B0AC011C002D1109174
|
||||
:10045A006D00183C09F0139510936D0008C0F9D08F
|
||||
:10046A0010916D00113009F01A9510936D000F93D9
|
||||
:10047A001F9300916D001AE09EDE802F9927F0925B
|
||||
:10048A0066001F910F915EC03EC00000B29B04C07F
|
||||
:10049A0000C0B39B0FC019C0DCD010916C00209132
|
||||
:1004AA006B0031E0130F3327231F10936C00209346
|
||||
:1004BA006B000BC0CED010916C0020916B001150D4
|
||||
:1004CA00204010936C0020936B000F931F932F937F
|
||||
:1004DA003F9300916C0010916B00212F207811F44A
|
||||
:1004EA00E89405C06894009510950F5F1F4F2AE0A5
|
||||
:1004FA0030E04EDE802F912FE09266003F912F91DF
|
||||
:10050A001F910F911FC0E894B29B04C000C0B39B17
|
||||
:10051A0006C009C09ED011E010936E0004C099D0A5
|
||||
:10052A0010E010936E001127812F912F20916E00F9
|
||||
:10053A00222309F004C01CE01093660003C01DE0EA
|
||||
:10054A00109366004F913F912F911F910F9108953B
|
||||
:10055A00F894B99A33E04EEB8CD0B99830E04AE877
|
||||
:10056A0088D005D033E042E384D078940895B19BD3
|
||||
:10057A00716002C0B1997E7F0895F8940F931F931A
|
||||
:10058A00082D18E0069508F448F0B99A30E046E7D5
|
||||
:10059A0070D0B99830E042E16CD008C0B99A30E026
|
||||
:1005AA004AE067D0B99830E04EE763D01A9551F720
|
||||
:1005BA001F910F9178940895F8940F931F93002731
|
||||
:1005CA0018E00695B99A30E04AE053D0B99830E07D
|
||||
:1005DA0040E14FD0B199006830E04CE64AD01A9514
|
||||
:1005EA0081F70C931F910F91789408950F935F935D
|
||||
:1005FA0053E0A3E6B0E0809361009093620000911B
|
||||
:10060A006100109162002AE030E0C2DDED920093B1
|
||||
:10061A006100109362005A9591F75F910F910895C6
|
||||
:10062A000F931F93EEEAF6E01127E00FF11F0490F3
|
||||
:10063A001F910F910895C59A53E039EA4DE71DD0ED
|
||||
:10064A00C5980895C59A5CE034E34DEF16D0C59875
|
||||
:10065A0008950F931F932F932AE01FEF0FEF0A9528
|
||||
:10066A00F1F71A95D9F72A95C1F72F911F910F9192
|
||||
:10067A00089541503040E8F70895415030405040C5
|
||||
:10068A00E0F708950F931F932F9326E00FEF1FEFC4
|
||||
:10069A001A95F1F70A95D9F72A95C1F72F911F9163
|
||||
:1006AA000F910895C0F9A4B0999282F880909CBFE6
|
||||
:0206BA00C689EF
|
||||
:00000001FF
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@ -1,5 +1,5 @@
|
||||
|
||||
AVRASM ver. 2.2.7 main.asm Thu Jun 29 14:17:58 2023
|
||||
AVRASM ver. 2.2.7 main.asm Thu Jun 29 22:49:03 2023
|
||||
|
||||
|
||||
EQU SIGNATURE_000 0000001e
|
||||
@ -527,12 +527,14 @@ EQU UART_TX_PIN 00000001
|
||||
EQU MCU_STATE_DEFAULT 00000000
|
||||
EQU MCU_STATE_PROGRAM 00000001
|
||||
EQU MCU_STATE_ERROR 00000002
|
||||
EQU DEFAULT_TEMP 0000013b
|
||||
EQU MIN_HYST 00000001
|
||||
EQU MAX_HYST 000000c8
|
||||
EQU DEFAULT_TEMP 0000012c
|
||||
EQU DEFAULT_HYST 00000005
|
||||
EQU HEAT_MODE 00000001
|
||||
EQU COOLING_MODE 00000000
|
||||
EQU DEFAULT_MODE 00000001
|
||||
EQU DEFAULT_SETTING_TEMP_L 0000003b
|
||||
EQU DEFAULT_SETTING_TEMP_L 0000002c
|
||||
EQU DEFAULT_SETTING_TEMP_H 00000001
|
||||
EQU DEFAULT_SETTING_HYST 00000005
|
||||
EQU DEFAULT_SETTING_MODE 00000001
|
||||
@ -558,7 +560,7 @@ CSEG _INTO_PROGRAM_STATE 00000014
|
||||
CSEG _CLR_CURRENT_DIGIT 00000027
|
||||
CSEG _indicate_1 0000002a
|
||||
CSEG _indicate_2 0000003c
|
||||
CSEG DISPLAY_DECODER 000002de
|
||||
CSEG DISPLAY_DECODER 00000315
|
||||
CSEG USI_TRANSMIT 000001d7
|
||||
CSEG _indicate_3 0000004e
|
||||
CSEG _indicate_4 0000005b
|
||||
@ -567,17 +569,17 @@ CSEG MCU_INIT 00000072
|
||||
CSEG RD_F_CODE 00000177
|
||||
CSEG ERR_FAMILY_CODE 000000ae
|
||||
CSEG START_PROGRAM 000000b3
|
||||
CSEG BEEP_LONG 000002f0
|
||||
CSEG BEEP_SHORT 000002e9
|
||||
CSEG BEEP_LONG 00000327
|
||||
CSEG BEEP_SHORT 00000320
|
||||
CSEG LOOP 000000b6
|
||||
CSEG DISPLAY_UPD_DIGITS 000002c4
|
||||
CSEG DISPLAY_UPD_DIGITS 000002fb
|
||||
CSEG _STATE_DEFAULT 000000b9
|
||||
CSEG _STATE_PROGRAM 000000c5
|
||||
CSEG TEMP_UPD 00000168
|
||||
CSEG TEMP_COMPARSION 0000011b
|
||||
CSEG TEMP_SEND_UART 000000fd
|
||||
CSEG _STATE_ERROR 000000c9
|
||||
CSEG REPROGRAM_SETTINGS 0000020b
|
||||
CSEG REPROGRAM_SETTINGS 00000211
|
||||
DEF drem16uL r14
|
||||
DEF drem16uH r15
|
||||
DEF dres16uL r16
|
||||
@ -626,11 +628,11 @@ CSEG _MIN_THRESHOLD 00000151
|
||||
CSEG _MAX_THRESHOLD 00000159
|
||||
CSEG _COMPARSION_EXIT 00000160
|
||||
CSEG TEMP_CONV 000001cb
|
||||
CSEG DELAY_LOOP_24 0000030b
|
||||
CSEG DELAY_LOOP_24 00000342
|
||||
CSEG TEMP_RD 00000181
|
||||
CSEG OW_PRESENCE 00000276
|
||||
CSEG OW_SEND_BYTE 0000028b
|
||||
CSEG OW_RD_BYTE 000002aa
|
||||
CSEG OW_PRESENCE 000002ad
|
||||
CSEG OW_SEND_BYTE 000002c2
|
||||
CSEG OW_RD_BYTE 000002e1
|
||||
CSEG _TEMP_RD_EXIT 000001c5
|
||||
CSEG _TEMP_RD_TO_UNSIGNED 0000019f
|
||||
CSEG _TEMP_RD_CONTINUE 000001a6
|
||||
@ -640,47 +642,63 @@ CSEG _USI_TRANSMIT_LOOP 000001dd
|
||||
CSEG BUTTON_PROCESS 000001e5
|
||||
CSEG _SW_CHECK_ON_0 000001e6
|
||||
CSEG _SW_SET_0 000001e9
|
||||
CSEG _SW_CHECK_ON_1 000001fd
|
||||
CSEG _SW_CHECK_ON_1 00000203
|
||||
CSEG _SW_SET_FROM_0_TO_1 000001ee
|
||||
CSEG DEBOUNCE_SW 000002f7
|
||||
CSEG DEBOUNCE_SW 0000032e
|
||||
CSEG _SAVE_SETTINGS 000001f8
|
||||
CSEG _SW_SET_1 00000200
|
||||
CSEG _BUTTON_PROCESS_END 00000209
|
||||
CSEG _SW_SET_FROM_1_TO_0 00000205
|
||||
CSEG _INTO 00000214
|
||||
CSEG _REPROGRAM_SETTINGS_LOOP 00000216
|
||||
CSEG _CHECK_STEP 00000217
|
||||
CSEG _STEP_1 0000021c
|
||||
CSEG _STEP_2 0000023d
|
||||
CSEG _REPROGRAM_SETTINGS_END 00000270
|
||||
CSEG _S1_CHECK_PLUS 0000021d
|
||||
CSEG _INCREASE_HYST 00000223
|
||||
CSEG _S1_CHECK_MINUS 00000220
|
||||
CSEG _DECREASE_HYST 0000022a
|
||||
CSEG _SHOW_HYST 00000230
|
||||
CSEG _S2_CHECK_PLUS 0000023e
|
||||
CSEG _INCREASE_TEMP 00000244
|
||||
CSEG _S2_CHECK_MINUS 00000241
|
||||
CSEG _DECREASE_TEMP 00000252
|
||||
CSEG _SHOW_TEMP 0000025d
|
||||
CSEG DELAY_LOOP_16 00000307
|
||||
CSEG OW_CHECK_PRESENCE 00000285
|
||||
CSEG _EXIT 0000028a
|
||||
CSEG _OW_SEND_BYTE_LOOP 00000290
|
||||
CSEG _OW_SEND_0 00000293
|
||||
CSEG _OW_SEND_1 0000029c
|
||||
CSEG _OW_SEND_BYTE_END 000002a4
|
||||
CSEG _OW_RD_BYTE_LP 000002af
|
||||
CSEG _SW_SET_1 00000206
|
||||
CSEG _BUTTON_PROCESS_END 0000020f
|
||||
CSEG _SW_SET_FROM_1_TO_0 0000020b
|
||||
CSEG _INTO 0000021a
|
||||
CSEG _REPROGRAM_SETTINGS_LOOP 0000021c
|
||||
CSEG _CHECK_STEP 0000021d
|
||||
CSEG _STEP_1 00000224
|
||||
CSEG _STEP_2 0000024a
|
||||
CSEG _S3_JMP 00000249
|
||||
CSEG _REPROGRAM_SETTINGS_END 000002a7
|
||||
CSEG _S1_CHECK_PLUS 00000225
|
||||
CSEG _INCREASE_HYST 0000022b
|
||||
CSEG _S1_CHECK_MINUS 00000228
|
||||
CSEG _DECREASE_HYST 00000234
|
||||
CSEG _SHOW_HYST 0000023c
|
||||
CSEG _STEP_3 00000288
|
||||
CSEG _S2_CHECK_PLUS 0000024b
|
||||
CSEG _INCREASE_TEMP 00000251
|
||||
CSEG _S2_CHECK_MINUS 0000024e
|
||||
CSEG _DECREASE_TEMP 0000025f
|
||||
CSEG _SHOW_TEMP 0000026a
|
||||
CSEG _NEGATE_SET_TEMP 00000277
|
||||
CSEG _DIVIDE_SET_TEMP 0000027c
|
||||
CSEG _S3_CHECK_PLUS 00000289
|
||||
CSEG _SET_HEAT_MODE 0000028f
|
||||
CSEG _S3_CHECK_MINUS 0000028c
|
||||
CSEG _SET_COOLING_MODE 00000294
|
||||
CSEG _SHOW_MODE 00000298
|
||||
CSEG _SHOW_COOLING 000002a0
|
||||
CSEG _SHOW_HEATING 000002a4
|
||||
CSEG DELAY_LOOP_16 0000033e
|
||||
CSEG OW_CHECK_PRESENCE 000002bc
|
||||
CSEG _EXIT 000002c1
|
||||
CSEG _OW_SEND_BYTE_LOOP 000002c7
|
||||
CSEG _OW_SEND_0 000002ca
|
||||
CSEG _OW_SEND_1 000002d3
|
||||
CSEG _OW_SEND_BYTE_END 000002db
|
||||
CSEG _OW_RD_BYTE_LP 000002e6
|
||||
EQU dividend 00000061
|
||||
EQU divisor 0000000a
|
||||
CSEG DIV_LOOP 000002cd
|
||||
CSEG DISPLAY_SYMBOLS 00000320
|
||||
CSEG _loop_2 000002fb
|
||||
CSEG _loop_0 000002fc
|
||||
CSEG _dec_0 000002fd
|
||||
CSEG _loop_1 000002ff
|
||||
CSEG _loop_3 00000301
|
||||
CSEG DELAY 00000310
|
||||
CSEG _DELAY_0 00000314
|
||||
CSEG _DELAY_1 00000315
|
||||
CSEG _DELAY_2 00000316
|
||||
CSEG DIV_LOOP 00000304
|
||||
CSEG DISPLAY_SYMBOLS 00000357
|
||||
CSEG _loop_2 00000332
|
||||
CSEG _loop_0 00000333
|
||||
CSEG _dec_0 00000334
|
||||
CSEG _loop_1 00000336
|
||||
CSEG _loop_3 00000338
|
||||
CSEG DELAY 00000347
|
||||
CSEG _DELAY_0 0000034b
|
||||
CSEG _DELAY_1 0000034c
|
||||
CSEG _DELAY_2 0000034d
|
||||
ESEG E_SETTING_TEMP_H 00000000
|
||||
ESEG E_SETTING_TEMP_L 00000001
|
||||
ESEG E_SETTING_HYST 00000002
|
||||
ESEG E_SETTING_MODE 00000003
|
||||
ESEG E_FIRST_TIME_RUN 00000004
|
||||
|
||||
Binary file not shown.
@ -48,7 +48,7 @@
|
||||
<_CLR_CURRENT_DIGIT><FILE>main.asm</FILE><LINE>98</LINE></_CLR_CURRENT_DIGIT>
|
||||
<_indicate_1><FILE>main.asm</FILE><LINE>102</LINE></_indicate_1>
|
||||
<_indicate_2><FILE>main.asm</FILE><LINE>122</LINE></_indicate_2>
|
||||
<DISPLAY_DECODER><FILE>main.asm</FILE><LINE>926</LINE></DISPLAY_DECODER>
|
||||
<DISPLAY_DECODER><FILE>main.asm</FILE><LINE>994</LINE></DISPLAY_DECODER>
|
||||
<USI_TRANSMIT><FILE>main.asm</FILE><LINE>592</LINE></USI_TRANSMIT>
|
||||
<_indicate_3><FILE>main.asm</FILE><LINE>140</LINE></_indicate_3>
|
||||
<_indicate_4><FILE>main.asm</FILE><LINE>156</LINE></_indicate_4>
|
||||
@ -57,17 +57,17 @@
|
||||
<RD_F_CODE><FILE>main.asm</FILE><LINE>458</LINE></RD_F_CODE>
|
||||
<ERR_FAMILY_CODE><FILE>main.asm</FILE><LINE>254</LINE></ERR_FAMILY_CODE>
|
||||
<START_PROGRAM><FILE>main.asm</FILE><LINE>259</LINE></START_PROGRAM>
|
||||
<BEEP_LONG><FILE>main.asm</FILE><LINE>952</LINE></BEEP_LONG>
|
||||
<BEEP_SHORT><FILE>main.asm</FILE><LINE>944</LINE></BEEP_SHORT>
|
||||
<BEEP_LONG><FILE>main.asm</FILE><LINE>1020</LINE></BEEP_LONG>
|
||||
<BEEP_SHORT><FILE>main.asm</FILE><LINE>1012</LINE></BEEP_SHORT>
|
||||
<LOOP><FILE>main.asm</FILE><LINE>266</LINE></LOOP>
|
||||
<DISPLAY_UPD_DIGITS><FILE>main.asm</FILE><LINE>885</LINE></DISPLAY_UPD_DIGITS>
|
||||
<DISPLAY_UPD_DIGITS><FILE>main.asm</FILE><LINE>953</LINE></DISPLAY_UPD_DIGITS>
|
||||
<_STATE_DEFAULT><FILE>main.asm</FILE><LINE>269</LINE></_STATE_DEFAULT>
|
||||
<_STATE_PROGRAM><FILE>main.asm</FILE><LINE>281</LINE></_STATE_PROGRAM>
|
||||
<TEMP_UPD><FILE>main.asm</FILE><LINE>442</LINE></TEMP_UPD>
|
||||
<TEMP_COMPARSION><FILE>main.asm</FILE><LINE>345</LINE></TEMP_COMPARSION>
|
||||
<TEMP_SEND_UART><FILE>main.asm</FILE><LINE>300</LINE></TEMP_SEND_UART>
|
||||
<_STATE_ERROR><FILE>main.asm</FILE><LINE>286</LINE></_STATE_ERROR>
|
||||
<REPROGRAM_SETTINGS><FILE>main.asm</FILE><LINE>670</LINE></REPROGRAM_SETTINGS>
|
||||
<REPROGRAM_SETTINGS><FILE>main.asm</FILE><LINE>675</LINE></REPROGRAM_SETTINGS>
|
||||
<div16u><FILE>div16u.asm</FILE><LINE>32</LINE></div16u>
|
||||
<d16u_1><FILE>div16u.asm</FILE><LINE>36</LINE></d16u_1>
|
||||
<d16u_2><FILE>div16u.asm</FILE><LINE>42</LINE></d16u_2>
|
||||
@ -87,11 +87,11 @@
|
||||
<_MAX_THRESHOLD><FILE>main.asm</FILE><LINE>424</LINE></_MAX_THRESHOLD>
|
||||
<_COMPARSION_EXIT><FILE>main.asm</FILE><LINE>431</LINE></_COMPARSION_EXIT>
|
||||
<TEMP_CONV><FILE>main.asm</FILE><LINE>570</LINE></TEMP_CONV>
|
||||
<DELAY_LOOP_24><FILE>main.asm</FILE><LINE>994</LINE></DELAY_LOOP_24>
|
||||
<DELAY_LOOP_24><FILE>main.asm</FILE><LINE>1062</LINE></DELAY_LOOP_24>
|
||||
<TEMP_RD><FILE>main.asm</FILE><LINE>474</LINE></TEMP_RD>
|
||||
<OW_PRESENCE><FILE>main.asm</FILE><LINE>798</LINE></OW_PRESENCE>
|
||||
<OW_SEND_BYTE><FILE>main.asm</FILE><LINE>825</LINE></OW_SEND_BYTE>
|
||||
<OW_RD_BYTE><FILE>main.asm</FILE><LINE>856</LINE></OW_RD_BYTE>
|
||||
<OW_PRESENCE><FILE>main.asm</FILE><LINE>866</LINE></OW_PRESENCE>
|
||||
<OW_SEND_BYTE><FILE>main.asm</FILE><LINE>893</LINE></OW_SEND_BYTE>
|
||||
<OW_RD_BYTE><FILE>main.asm</FILE><LINE>924</LINE></OW_RD_BYTE>
|
||||
<_TEMP_RD_EXIT><FILE>main.asm</FILE><LINE>562</LINE></_TEMP_RD_EXIT>
|
||||
<_TEMP_RD_TO_UNSIGNED><FILE>main.asm</FILE><LINE>511</LINE></_TEMP_RD_TO_UNSIGNED>
|
||||
<_TEMP_RD_CONTINUE><FILE>main.asm</FILE><LINE>524</LINE></_TEMP_RD_CONTINUE>
|
||||
@ -101,47 +101,63 @@
|
||||
<BUTTON_PROCESS><FILE>main.asm</FILE><LINE>625</LINE></BUTTON_PROCESS>
|
||||
<_SW_CHECK_ON_0><FILE>main.asm</FILE><LINE>627</LINE></_SW_CHECK_ON_0>
|
||||
<_SW_SET_0><FILE>main.asm</FILE><LINE>631</LINE></_SW_SET_0>
|
||||
<_SW_CHECK_ON_1><FILE>main.asm</FILE><LINE>651</LINE></_SW_CHECK_ON_1>
|
||||
<_SW_CHECK_ON_1><FILE>main.asm</FILE><LINE>656</LINE></_SW_CHECK_ON_1>
|
||||
<_SW_SET_FROM_0_TO_1><FILE>main.asm</FILE><LINE>636</LINE></_SW_SET_FROM_0_TO_1>
|
||||
<DEBOUNCE_SW><FILE>main.asm</FILE><LINE>960</LINE></DEBOUNCE_SW>
|
||||
<DEBOUNCE_SW><FILE>main.asm</FILE><LINE>1028</LINE></DEBOUNCE_SW>
|
||||
<_SAVE_SETTINGS><FILE>main.asm</FILE><LINE>646</LINE></_SAVE_SETTINGS>
|
||||
<_SW_SET_1><FILE>main.asm</FILE><LINE>655</LINE></_SW_SET_1>
|
||||
<_BUTTON_PROCESS_END><FILE>main.asm</FILE><LINE>664</LINE></_BUTTON_PROCESS_END>
|
||||
<_SW_SET_FROM_1_TO_0><FILE>main.asm</FILE><LINE>660</LINE></_SW_SET_FROM_1_TO_0>
|
||||
<_INTO><FILE>main.asm</FILE><LINE>681</LINE></_INTO>
|
||||
<_REPROGRAM_SETTINGS_LOOP><FILE>main.asm</FILE><LINE>684</LINE></_REPROGRAM_SETTINGS_LOOP>
|
||||
<_CHECK_STEP><FILE>main.asm</FILE><LINE>686</LINE></_CHECK_STEP>
|
||||
<_STEP_1><FILE>main.asm</FILE><LINE>693</LINE></_STEP_1>
|
||||
<_STEP_2><FILE>main.asm</FILE><LINE>727</LINE></_STEP_2>
|
||||
<_REPROGRAM_SETTINGS_END><FILE>main.asm</FILE><LINE>775</LINE></_REPROGRAM_SETTINGS_END>
|
||||
<_S1_CHECK_PLUS><FILE>main.asm</FILE><LINE>695</LINE></_S1_CHECK_PLUS>
|
||||
<_INCREASE_HYST><FILE>main.asm</FILE><LINE>703</LINE></_INCREASE_HYST>
|
||||
<_S1_CHECK_MINUS><FILE>main.asm</FILE><LINE>699</LINE></_S1_CHECK_MINUS>
|
||||
<_DECREASE_HYST><FILE>main.asm</FILE><LINE>709</LINE></_DECREASE_HYST>
|
||||
<_SHOW_HYST><FILE>main.asm</FILE><LINE>714</LINE></_SHOW_HYST>
|
||||
<_S2_CHECK_PLUS><FILE>main.asm</FILE><LINE>729</LINE></_S2_CHECK_PLUS>
|
||||
<_INCREASE_TEMP><FILE>main.asm</FILE><LINE>737</LINE></_INCREASE_TEMP>
|
||||
<_S2_CHECK_MINUS><FILE>main.asm</FILE><LINE>733</LINE></_S2_CHECK_MINUS>
|
||||
<_DECREASE_TEMP><FILE>main.asm</FILE><LINE>748</LINE></_DECREASE_TEMP>
|
||||
<_SHOW_TEMP><FILE>main.asm</FILE><LINE>756</LINE></_SHOW_TEMP>
|
||||
<DELAY_LOOP_16><FILE>main.asm</FILE><LINE>986</LINE></DELAY_LOOP_16>
|
||||
<OW_CHECK_PRESENCE><FILE>main.asm</FILE><LINE>814</LINE></OW_CHECK_PRESENCE>
|
||||
<_EXIT><FILE>main.asm</FILE><LINE>820</LINE></_EXIT>
|
||||
<_OW_SEND_BYTE_LOOP><FILE>main.asm</FILE><LINE>831</LINE></_OW_SEND_BYTE_LOOP>
|
||||
<_OW_SEND_0><FILE>main.asm</FILE><LINE>835</LINE></_OW_SEND_0>
|
||||
<_OW_SEND_1><FILE>main.asm</FILE><LINE>841</LINE></_OW_SEND_1>
|
||||
<_OW_SEND_BYTE_END><FILE>main.asm</FILE><LINE>846</LINE></_OW_SEND_BYTE_END>
|
||||
<_OW_RD_BYTE_LP><FILE>main.asm</FILE><LINE>862</LINE></_OW_RD_BYTE_LP>
|
||||
<DIV_LOOP><FILE>main.asm</FILE><LINE>902</LINE></DIV_LOOP>
|
||||
<DISPLAY_SYMBOLS><FILE>main.asm</FILE><LINE>1028</LINE></DISPLAY_SYMBOLS>
|
||||
<_loop_2><FILE>main.asm</FILE><LINE>966</LINE></_loop_2>
|
||||
<_loop_0><FILE>main.asm</FILE><LINE>968</LINE></_loop_0>
|
||||
<_dec_0><FILE>main.asm</FILE><LINE>970</LINE></_dec_0>
|
||||
<_loop_1><FILE>main.asm</FILE><LINE>973</LINE></_loop_1>
|
||||
<_loop_3><FILE>main.asm</FILE><LINE>976</LINE></_loop_3>
|
||||
<DELAY><FILE>main.asm</FILE><LINE>1003</LINE></DELAY>
|
||||
<_DELAY_0><FILE>main.asm</FILE><LINE>1009</LINE></_DELAY_0>
|
||||
<_DELAY_1><FILE>main.asm</FILE><LINE>1011</LINE></_DELAY_1>
|
||||
<_DELAY_2><FILE>main.asm</FILE><LINE>1013</LINE></_DELAY_2>
|
||||
<_SW_SET_1><FILE>main.asm</FILE><LINE>660</LINE></_SW_SET_1>
|
||||
<_BUTTON_PROCESS_END><FILE>main.asm</FILE><LINE>669</LINE></_BUTTON_PROCESS_END>
|
||||
<_SW_SET_FROM_1_TO_0><FILE>main.asm</FILE><LINE>665</LINE></_SW_SET_FROM_1_TO_0>
|
||||
<_INTO><FILE>main.asm</FILE><LINE>686</LINE></_INTO>
|
||||
<_REPROGRAM_SETTINGS_LOOP><FILE>main.asm</FILE><LINE>689</LINE></_REPROGRAM_SETTINGS_LOOP>
|
||||
<_CHECK_STEP><FILE>main.asm</FILE><LINE>691</LINE></_CHECK_STEP>
|
||||
<_STEP_1><FILE>main.asm</FILE><LINE>701</LINE></_STEP_1>
|
||||
<_STEP_2><FILE>main.asm</FILE><LINE>744</LINE></_STEP_2>
|
||||
<_S3_JMP><FILE>main.asm</FILE><LINE>740</LINE></_S3_JMP>
|
||||
<_REPROGRAM_SETTINGS_END><FILE>main.asm</FILE><LINE>843</LINE></_REPROGRAM_SETTINGS_END>
|
||||
<_S1_CHECK_PLUS><FILE>main.asm</FILE><LINE>703</LINE></_S1_CHECK_PLUS>
|
||||
<_INCREASE_HYST><FILE>main.asm</FILE><LINE>711</LINE></_INCREASE_HYST>
|
||||
<_S1_CHECK_MINUS><FILE>main.asm</FILE><LINE>707</LINE></_S1_CHECK_MINUS>
|
||||
<_DECREASE_HYST><FILE>main.asm</FILE><LINE>719</LINE></_DECREASE_HYST>
|
||||
<_SHOW_HYST><FILE>main.asm</FILE><LINE>726</LINE></_SHOW_HYST>
|
||||
<_STEP_3><FILE>main.asm</FILE><LINE>806</LINE></_STEP_3>
|
||||
<_S2_CHECK_PLUS><FILE>main.asm</FILE><LINE>746</LINE></_S2_CHECK_PLUS>
|
||||
<_INCREASE_TEMP><FILE>main.asm</FILE><LINE>754</LINE></_INCREASE_TEMP>
|
||||
<_S2_CHECK_MINUS><FILE>main.asm</FILE><LINE>750</LINE></_S2_CHECK_MINUS>
|
||||
<_DECREASE_TEMP><FILE>main.asm</FILE><LINE>765</LINE></_DECREASE_TEMP>
|
||||
<_SHOW_TEMP><FILE>main.asm</FILE><LINE>773</LINE></_SHOW_TEMP>
|
||||
<_NEGATE_SET_TEMP><FILE>main.asm</FILE><LINE>786</LINE></_NEGATE_SET_TEMP>
|
||||
<_DIVIDE_SET_TEMP><FILE>main.asm</FILE><LINE>790</LINE></_DIVIDE_SET_TEMP>
|
||||
<_S3_CHECK_PLUS><FILE>main.asm</FILE><LINE>808</LINE></_S3_CHECK_PLUS>
|
||||
<_SET_HEAT_MODE><FILE>main.asm</FILE><LINE>816</LINE></_SET_HEAT_MODE>
|
||||
<_S3_CHECK_MINUS><FILE>main.asm</FILE><LINE>812</LINE></_S3_CHECK_MINUS>
|
||||
<_SET_COOLING_MODE><FILE>main.asm</FILE><LINE>821</LINE></_SET_COOLING_MODE>
|
||||
<_SHOW_MODE><FILE>main.asm</FILE><LINE>825</LINE></_SHOW_MODE>
|
||||
<_SHOW_COOLING><FILE>main.asm</FILE><LINE>834</LINE></_SHOW_COOLING>
|
||||
<_SHOW_HEATING><FILE>main.asm</FILE><LINE>838</LINE></_SHOW_HEATING>
|
||||
<DELAY_LOOP_16><FILE>main.asm</FILE><LINE>1054</LINE></DELAY_LOOP_16>
|
||||
<OW_CHECK_PRESENCE><FILE>main.asm</FILE><LINE>882</LINE></OW_CHECK_PRESENCE>
|
||||
<_EXIT><FILE>main.asm</FILE><LINE>888</LINE></_EXIT>
|
||||
<_OW_SEND_BYTE_LOOP><FILE>main.asm</FILE><LINE>899</LINE></_OW_SEND_BYTE_LOOP>
|
||||
<_OW_SEND_0><FILE>main.asm</FILE><LINE>903</LINE></_OW_SEND_0>
|
||||
<_OW_SEND_1><FILE>main.asm</FILE><LINE>909</LINE></_OW_SEND_1>
|
||||
<_OW_SEND_BYTE_END><FILE>main.asm</FILE><LINE>914</LINE></_OW_SEND_BYTE_END>
|
||||
<_OW_RD_BYTE_LP><FILE>main.asm</FILE><LINE>930</LINE></_OW_RD_BYTE_LP>
|
||||
<DIV_LOOP><FILE>main.asm</FILE><LINE>970</LINE></DIV_LOOP>
|
||||
<DISPLAY_SYMBOLS><FILE>main.asm</FILE><LINE>1096</LINE></DISPLAY_SYMBOLS>
|
||||
<_loop_2><FILE>main.asm</FILE><LINE>1034</LINE></_loop_2>
|
||||
<_loop_0><FILE>main.asm</FILE><LINE>1036</LINE></_loop_0>
|
||||
<_dec_0><FILE>main.asm</FILE><LINE>1038</LINE></_dec_0>
|
||||
<_loop_1><FILE>main.asm</FILE><LINE>1041</LINE></_loop_1>
|
||||
<_loop_3><FILE>main.asm</FILE><LINE>1044</LINE></_loop_3>
|
||||
<DELAY><FILE>main.asm</FILE><LINE>1071</LINE></DELAY>
|
||||
<_DELAY_0><FILE>main.asm</FILE><LINE>1077</LINE></_DELAY_0>
|
||||
<_DELAY_1><FILE>main.asm</FILE><LINE>1079</LINE></_DELAY_1>
|
||||
<_DELAY_2><FILE>main.asm</FILE><LINE>1081</LINE></_DELAY_2>
|
||||
<E_SETTING_TEMP_H><FILE>main.asm</FILE><LINE>1113</LINE></E_SETTING_TEMP_H>
|
||||
<E_SETTING_TEMP_L><FILE>main.asm</FILE><LINE>1114</LINE></E_SETTING_TEMP_L>
|
||||
<E_SETTING_HYST><FILE>main.asm</FILE><LINE>1115</LINE></E_SETTING_HYST>
|
||||
<E_SETTING_MODE><FILE>main.asm</FILE><LINE>1116</LINE></E_SETTING_MODE>
|
||||
<E_FIRST_TIME_RUN><FILE>main.asm</FILE><LINE>1117</LINE></E_FIRST_TIME_RUN>
|
||||
</LABELS>
|
||||
</ASSEMBLER_INFO>
|
||||
|
||||
@ -24,6 +24,15 @@
|
||||
.MACRO relay_off
|
||||
cbi RELAY_PORT, RELAY_PIN
|
||||
.ENDMACRO
|
||||
|
||||
; @0 - младший байт
|
||||
; @1 - старший байт
|
||||
.MACRO com16
|
||||
com @0
|
||||
com @1
|
||||
subi @0, low(-1)
|
||||
sbci @1, high(-1)
|
||||
.ENDMACRO
|
||||
|
||||
.MACRO DELAY16
|
||||
ldi DELAY_16_r, HIGH(@0*F_CPU/4-2)
|
||||
|
||||
89
main.asm
89
main.asm
@ -89,7 +89,7 @@ TIMER0_COMPA_vect:
|
||||
push r20
|
||||
push r21
|
||||
in r21, SREG
|
||||
|
||||
|
||||
lds r20, CURRENT_DIGIT
|
||||
cpi r20, 5
|
||||
brge _CLR_CURRENT_DIGIT ; сброс активного разряда если >= 5
|
||||
@ -136,11 +136,11 @@ _indicate_2:
|
||||
lds TEMP_REG_A, DIGITS+1
|
||||
rcall DISPLAY_DECODER
|
||||
rcall USI_TRANSMIT
|
||||
|
||||
|
||||
_indicate_3:
|
||||
cpi r20, 2
|
||||
brne _indicate_4
|
||||
|
||||
|
||||
cbi PORTD, DIGIT_1_PIN
|
||||
cbi PORTD, DIGIT_2_PIN
|
||||
cbi PORTD, DIGIT_4_PIN
|
||||
@ -196,7 +196,7 @@ MCU_INIT:
|
||||
; **** ИНИЦИАЛИЗАЦИЯ ТАЙМЕРА 0 (8 бит) *************************
|
||||
outi r16, TCCR0A, (1<<WGM01) ; режим CTC Compare A
|
||||
outi r16, TCCR0B, (1<<CS02) | (1<<CS00) ; 1024 делитель
|
||||
outi r16, OCR0A, 25 ; число для сравнения. (60Hz)
|
||||
outi r16, OCR0A, 35 ; число для сравнения. (~60Hz)
|
||||
|
||||
; **** ИНИЦИАЛИЗАЦИЯ ТАЙМЕРА 1 (16 бит) *************************
|
||||
; outi r16, TCCR1A
|
||||
@ -644,6 +644,11 @@ _SW_SET_FROM_0_TO_1:
|
||||
rcall BEEP_SHORT
|
||||
rjmp _SW_CHECK_ON_1
|
||||
_SAVE_SETTINGS:
|
||||
outi r17, TIMSK, (0<<OCIE0A)
|
||||
cbi PORTD, DIGIT_1_PIN
|
||||
cbi PORTD, DIGIT_2_PIN
|
||||
cbi PORTD, DIGIT_3_PIN
|
||||
cbi PORTD, DIGIT_4_PIN
|
||||
clr REPROGRAM_STEP_r
|
||||
rcall BEEP_LONG
|
||||
ldi r17, MCU_STATE_DEFAULT
|
||||
@ -679,8 +684,8 @@ REPROGRAM_SETTINGS:
|
||||
breq _INTO
|
||||
rjmp _REPROGRAM_SETTINGS_LOOP
|
||||
_INTO:
|
||||
inc REPROGRAM_STEP_r
|
||||
rcall BEEP_SHORT
|
||||
inc REPROGRAM_STEP_r
|
||||
_REPROGRAM_SETTINGS_LOOP:
|
||||
rcall BUTTON_PROCESS
|
||||
_CHECK_STEP:
|
||||
@ -688,8 +693,11 @@ _CHECK_STEP:
|
||||
breq _STEP_1
|
||||
cpi r16, 2
|
||||
breq _STEP_2
|
||||
cpi r16, 3
|
||||
breq _S3_JMP
|
||||
rjmp _REPROGRAM_SETTINGS_END
|
||||
|
||||
|
||||
//<editor-fold defaultstate="collapsed" desc="Настройка: шаг 1">
|
||||
_STEP_1: ; установка и отображение гистерезиса
|
||||
nop
|
||||
_S1_CHECK_PLUS:
|
||||
@ -703,12 +711,16 @@ _S1_CHECK_MINUS:
|
||||
_INCREASE_HYST:
|
||||
rcall DEBOUNCE_SW
|
||||
lds r17, SETTING_HYST
|
||||
cpi r17, MAX_HYST
|
||||
breq PC+2
|
||||
inc r17
|
||||
sts SETTING_HYST, r17
|
||||
rjmp _SHOW_HYST
|
||||
_DECREASE_HYST:
|
||||
rcall DEBOUNCE_SW
|
||||
lds r17, SETTING_HYST
|
||||
cpi r17, MIN_HYST
|
||||
breq PC+2
|
||||
dec r17
|
||||
sts SETTING_HYST, r17
|
||||
_SHOW_HYST:
|
||||
@ -723,7 +735,12 @@ _SHOW_HYST:
|
||||
pop dv8u
|
||||
pop dd8u
|
||||
rjmp _REPROGRAM_SETTINGS_END
|
||||
//</editor-fold>
|
||||
|
||||
_S3_JMP: ; просто прыжок на _STEP_3
|
||||
rjmp _STEP_3
|
||||
|
||||
//<editor-fold defaultstate="collapsed" desc="Настройка: шаг 2">
|
||||
_STEP_2:
|
||||
nop
|
||||
_S2_CHECK_PLUS:
|
||||
@ -761,6 +778,16 @@ _SHOW_TEMP:
|
||||
|
||||
lds dd16uL, SETTING_TEMP_L
|
||||
lds dd16uH, SETTING_TEMP_H
|
||||
mov r18, dd16uH
|
||||
andi r18, (1<<7)
|
||||
brne _NEGATE_SET_TEMP
|
||||
clt
|
||||
rjmp _DIVIDE_SET_TEMP
|
||||
_NEGATE_SET_TEMP:
|
||||
set
|
||||
com16 dd16uL, dd16uH
|
||||
|
||||
_DIVIDE_SET_TEMP:
|
||||
ldi dv16uL, LOW(10)
|
||||
ldi dv16uH, HIGH(10)
|
||||
rcall div16u
|
||||
@ -772,6 +799,47 @@ _SHOW_TEMP:
|
||||
pop dv16uL
|
||||
pop dd16uH
|
||||
pop dd16uL
|
||||
rjmp _REPROGRAM_SETTINGS_END
|
||||
//</editor-fold>
|
||||
|
||||
//<editor-fold defaultstate="collapsed" desc="Настройка: шаг 3">
|
||||
_STEP_3:
|
||||
clt
|
||||
_S3_CHECK_PLUS:
|
||||
sbis SW_PIN, SW_PLUS_PIN
|
||||
rjmp _SET_HEAT_MODE
|
||||
rjmp _S3_CHECK_MINUS
|
||||
_S3_CHECK_MINUS:
|
||||
sbis SW_PIN, SW_MINUS_PIN
|
||||
rjmp _SET_COOLING_MODE
|
||||
rjmp _SHOW_MODE
|
||||
_SET_HEAT_MODE:
|
||||
rcall DEBOUNCE_SW
|
||||
ldi r17, HEAT_MODE
|
||||
sts SETTING_MODE, r17
|
||||
rjmp _SHOW_MODE
|
||||
_SET_COOLING_MODE:
|
||||
rcall DEBOUNCE_SW
|
||||
ldi r17, COOLING_MODE
|
||||
sts SETTING_MODE, r17
|
||||
_SHOW_MODE:
|
||||
clr r17
|
||||
mov DISP_NUM_L, r17
|
||||
mov DISP_NUM_H, r17
|
||||
lds r18, SETTING_MODE
|
||||
tst r18
|
||||
breq _SHOW_COOLING
|
||||
rjmp _SHOW_HEATING
|
||||
|
||||
_SHOW_COOLING:
|
||||
ldi r17, 12
|
||||
sts DIGITS+3, r17
|
||||
rjmp _REPROGRAM_SETTINGS_END
|
||||
_SHOW_HEATING:
|
||||
ldi r17, 13
|
||||
sts DIGITS+3, r17
|
||||
//</editor-fold>
|
||||
|
||||
_REPROGRAM_SETTINGS_END:
|
||||
pop r20
|
||||
pop r19
|
||||
@ -1040,6 +1108,11 @@ DISPLAY_SYMBOLS:
|
||||
|
||||
//<editor-fold defaultstate="collapsed" desc="Сегмент EEPROM">
|
||||
; **** СЕГМЕНТ EEPROM ********************************************
|
||||
; .ESEG
|
||||
; INFO: .DB "AVR Thermostat. Written by Sergey Yarkov 22.01.2023"
|
||||
.ESEG
|
||||
|
||||
E_SETTING_TEMP_H: .BYTE 1
|
||||
E_SETTING_TEMP_L: .BYTE 1
|
||||
E_SETTING_HYST: .BYTE 1
|
||||
E_SETTING_MODE: .BYTE 1
|
||||
E_FIRST_TIME_RUN: .BYTE 1
|
||||
;</editor-fold>
|
||||
|
||||
202
main.hex
202
main.hex
@ -1,98 +1,112 @@
|
||||
:020000020000FC
|
||||
:020000007AC0C4
|
||||
:020000006FC0CF
|
||||
:02000800189549
|
||||
:0200160002C026
|
||||
:10001A0018C00F931F932F933F930FB716B3212F37
|
||||
:10002A002C71309171002327209371001C7019F4F0
|
||||
:10003A0011E0109360000FBF3F912F911F910F9114
|
||||
:10004A0018950F931F932F933F934F935F935FB727
|
||||
:10005A004091670045300CF403C044274093670081
|
||||
:10006A00403081F49398949895980EF002C00BE072
|
||||
:10007A0002C000916500002311F0929A01C0929883
|
||||
:10008A0060D29BD1413081F49298949895980091CE
|
||||
:10009A00640030916500032B11F0939A01C0939884
|
||||
:1000AA00009164004ED289D1423059F492989398C3
|
||||
:1000BA009598949A0091630044D2002D0F77002EF0
|
||||
:1000CA007CD1433041F4929893989498959A0091F0
|
||||
:1000DA00660037D272D14395409367005FBF5F9144
|
||||
:1000EA004F913F912F911F910F9118950FED0DBFD1
|
||||
:1000FA000FE701BB01EE07BB0CE108BB02E000BF42
|
||||
:10010A0005E003BF09E106BF00E20BBF0CE100BD39
|
||||
:10011A0003E309B900E002B908E00AB906E003B945
|
||||
:10012A0011241092670000E0009360000CE2009333
|
||||
:10013A006C0001E000936B0005E000936D0001E0A4
|
||||
:10014A0000936E000027009368000093690000EF97
|
||||
:10015A0000936A0000E0009371006624CED00091FB
|
||||
:10016A006F00083209F405C012E010936000FBD159
|
||||
:10017A0001C0F2D180E090E000916000C8D1003067
|
||||
:10018A0051F4969820916A0020936600A7D011E056
|
||||
:10019A0019BF57D038D0013011F496981CD10230CB
|
||||
:1001AA0059F7969AE9CFEE24FF1841E1001F111F73
|
||||
:1001BA004A9509F40895EE1CFF1CE21AF30A20F48A
|
||||
:1001CA00E20EF31E8894F2CF0894F0CFFF1829E0CC
|
||||
:1001DA00001F2A9509F40895FF1CF11A18F4F10E6C
|
||||
:1001EA008894F6CF0894F4CF5527442760E13695D2
|
||||
:1001FA00279510F4400F511F579547953795279526
|
||||
:10020A006A95B9F708950F931F9300916800502ECD
|
||||
:10021A0014D000916A00502E10D000B30170502EF5
|
||||
:10022A000CD004E0502E09D00027502E1CE005D037
|
||||
:10023A001A95E9F71F910F9108955D9BFECF5CB85F
|
||||
:10024A0008950F931F932F933F934F935F937F9339
|
||||
:10025A0000916800109169002AE030E0C5DF022FA2
|
||||
:10026A00132F20916A003327020F131F40916C004D
|
||||
:10027A0050916B0060916D004F935F937727461BF7
|
||||
:10028A00570BB42EA52E5F914F917727460F571F14
|
||||
:10029A00D42EC52E0EF004C0009510950F5F1F4F87
|
||||
:1002AA00B016A10624F40D151C054CF40FC040919C
|
||||
:1002BA006E00442311F4909801C0909A07C04091AF
|
||||
:1002CA006E00442311F4909A01C090987F915F9137
|
||||
:1002DA004F913F912F911F910F9108951F9361D0D4
|
||||
:1002EA0052E135E54DEB5AD112D010916800812FB9
|
||||
:1002FA0010916900912F1F9108950F93BAD003E3CB
|
||||
:10030A00802ECCD0AFE6B0E0E8D00F9108950F93DD
|
||||
:10031A001F932F933F934F93ACD070FF3CC00CECCC
|
||||
:10032A00802EBCD00EEB802EB9D0A8E6B0E0D5D096
|
||||
:10033A00A9E6B0E0D2D010916800209169002F930D
|
||||
:10034A00287F283F11F0E89407C02F9168941095F0
|
||||
:10035A0020951F5F2F4F01C02F912695179526953F
|
||||
:10036A0017952695179526951795309168000EF4DE
|
||||
:10037A003195432F3F70432F330F330F330F440F01
|
||||
:10038A00340F369536953695369510936800209336
|
||||
:10039A00690030936A004F913F912F911F910F91FD
|
||||
:1003AA0008950F9366D070FF06C00CEC802E76D0AD
|
||||
:1003BA0004E4802E73D00F9108950F930F920FB813
|
||||
:1003CA0000E40EB90BE10DB9769BFDCFC09AC09837
|
||||
:1003DA000F900F9108950F931F932F93062D0023CB
|
||||
:1003EA0009F002C06394B8D0013009F00CC00F9331
|
||||
:1003FA001F9300916D001AE0E9DE802F9927F09291
|
||||
:10040A0066001F910F910091710004FF01C015C091
|
||||
:10041A00B49B01C02AC01091710010611093710041
|
||||
:10042A00A9D06394162D143011F096D01EC06624FC
|
||||
:10043A009AD010E01093600018C0B29B03C0B39B1F
|
||||
:10044A000BC013C057E032E54DEFA8D020916D00E4
|
||||
:10045A00239520936D0009C057E032E54DEF9ED0F9
|
||||
:10046A0020916D002A9520936D002F911F910F9175
|
||||
:10047A000895F894B99A33E04EEB8CD0B99830E0ED
|
||||
:10048A004AE888D005D033E042E384D078940895CE
|
||||
:10049A00B19B716002C0B1997E7F0895F8940F9361
|
||||
:1004AA001F93082D18E0069508F448F0B99A30E031
|
||||
:1004BA0046E770D0B99830E042E16CD008C0B99AEA
|
||||
:1004CA0030E04AE067D0B99830E04EE763D01A9539
|
||||
:1004DA0051F71F910F9178940895F8940F931F93F1
|
||||
:1004EA00002718E00695B99A30E04AE053D0B99847
|
||||
:1004FA0030E040E14FD0B199006830E04CE64AD094
|
||||
:10050A001A9581F70C931F910F91789408950F9380
|
||||
:10051A005F9353E0A3E6B0E080936100909362009A
|
||||
:10052A0000916100109162002AE030E03CDEED9219
|
||||
:10053A0000936100109362005A9591F75F910F91B1
|
||||
:10054A0008950F931F93E0EDF5E01127E00FF11FD7
|
||||
:10055A0004901F910F910895C59A53E039EA4DE727
|
||||
:10056A001DD0C5980895C59A5CE034E34DEF16D0C6
|
||||
:10057A00C59808950F931F932F932AE01FEF0FEF4B
|
||||
:10058A000A95F1F71A95D9F72A95C1F72F911F9174
|
||||
:10059A000F91089541503040E8F708954150304096
|
||||
:1005AA005040E0F708950F931F932F9326E00FEF23
|
||||
:1005BA001FEF1A95F1F70A95D9F72A95C1F72F91E6
|
||||
:1005CA001F910F910895C0F9A4B0999282F8809072
|
||||
:0405DA009CBFC68973
|
||||
:10001A000DC00F931F930FB716B31C7019F411E09C
|
||||
:10002A00109360000FBF1F910F9118950F931F93A4
|
||||
:10003A002F933F934F935F935FB74091670045308B
|
||||
:10004A000CF403C0442740936700403081F493982E
|
||||
:10005A00949895980EF002C00BE002C000916500DA
|
||||
:10006A00002311F0929A01C09298DAD29BD14130C2
|
||||
:10007A0081F4929894989598009164003091650063
|
||||
:10008A00032B11F0939A01C0939800916400C8D28F
|
||||
:10009A0089D1423059F4929893989598949A0091FC
|
||||
:1000AA006300BED2002D0F77002E7CD1433041F47D
|
||||
:1000BA00929893989498959A00916600B1D272D1C9
|
||||
:1000CA004395409367005FBF5F914F913F912F9196
|
||||
:1000DA001F910F9118950FED0DBF0FE701BB01EEB0
|
||||
:1000EA0007BB0CE108BB02E000BF05E003BF03E267
|
||||
:1000FA0006BF00E20BBF0CE100BD03E309B900E053
|
||||
:10010A0002B908E00AB906E003B91124109267009F
|
||||
:10011A0000E0009360000CE200936C0001E00093A1
|
||||
:10012A006B0005E000936D0001E000936E0000276C
|
||||
:10013A00009368000093690000EF00936A000FEFD4
|
||||
:10014A00009371006624CED000916F00083209F442
|
||||
:10015A0005C012E01093600075D201C06CD280E035
|
||||
:10016A0090E00091600042D2003051F496982091BC
|
||||
:10017A006A0020936600A7D059D011E019BF38D081
|
||||
:10018A00013011F4969848D1023059F7969AE9CF7E
|
||||
:10019A00EE24FF1841E1001F111F4A9509F4089542
|
||||
:1001AA00EE1CFF1CE21AF30A20F4E20EF31E8894F6
|
||||
:1001BA00F2CF0894F0CFFF1829E0001F2A9509F41E
|
||||
:1001CA000895FF1CF11A18F4F10E8894F6CF0894DA
|
||||
:1001DA00F4CF5527442760E13695279510F4400F50
|
||||
:1001EA00511F57954795379527956A95B9F70895F9
|
||||
:1001FA000F931F9300916800502E14D000916A004B
|
||||
:10020A00502E10D000B30170502E0CD004E0502EA6
|
||||
:10021A0009D00027502E1CE005D01A95E9F71F9146
|
||||
:10022A000F9108955D9BFECF5CB808950F931F93BD
|
||||
:10023A002F933F934F935F937F93009168001091A0
|
||||
:10024A0069002AE030E0C5DF022F132F20916A00EF
|
||||
:10025A003327020F131F40916C0050916B0060917D
|
||||
:10026A006D004F935F937727461B570BB42EA52E2D
|
||||
:10027A005F914F917727460F571FD42EC52E0EF048
|
||||
:10028A0004C0009510950F5F1F4FB016A10624F405
|
||||
:10029A000D151C054CF40FC040916E00442311F457
|
||||
:1002AA00909801C0909A07C040916E00442311F4BF
|
||||
:1002BA00909A01C090987F915F914F913F912F91B1
|
||||
:1002CA001F910F9108951F9361D052E135E54DEBCF
|
||||
:1002DA00D4D112D010916800812F10916900912F0A
|
||||
:1002EA001F9108950F9334D103E3802E46D1AFE6D0
|
||||
:1002FA00B0E062D10F9108950F931F932F933F930C
|
||||
:10030A004F9326D170FF3CC00CEC802E36D10EEBF9
|
||||
:10031A00802E33D1A8E6B0E04FD1A9E6B0E04CD1A7
|
||||
:10032A0010916800209169002F93287F283F11F0CF
|
||||
:10033A00E89407C02F916894109520951F5F2F4F5E
|
||||
:10034A0001C02F91269517952695179526951795ED
|
||||
:10035A0026951795309168000EF43195432F3F701A
|
||||
:10036A00432F330F330F330F440F340F369536951F
|
||||
:10037A0036953695109368002093690030936A0089
|
||||
:10038A004F913F912F911F910F9108950F93E0D0B4
|
||||
:10039A0070FF06C00CEC802EF0D004E4802EEDD065
|
||||
:1003AA000F9108950F930F920FB800E40EB90BE165
|
||||
:1003BA000DB9769BFDCFC09AC0980F900F91089502
|
||||
:1003CA000F93B49B01C01AC000917100002309F475
|
||||
:1003DA0015C00027009371003CD16394162D143088
|
||||
:1003EA0014F429D10BC010E019BF929893989498ED
|
||||
:1003FA009598662427D110E010936000B49901C043
|
||||
:10040A0009C000917100002309F004C00FEF0093A6
|
||||
:10041A0071001FD10F9108950F931F932F933F934C
|
||||
:10042A004F93062D002309F002C005D16394C8DF5B
|
||||
:10043A00013029F0023049F1033031F183C0000064
|
||||
:10044A00B29B04C000C0B39B0AC011C002D1109174
|
||||
:10045A006D00183C09F0139510936D0008C0F9D08F
|
||||
:10046A0010916D00113009F01A9510936D000F93D9
|
||||
:10047A001F9300916D001AE09EDE802F9927F0925B
|
||||
:10048A0066001F910F915EC03EC00000B29B04C07F
|
||||
:10049A0000C0B39B0FC019C0DCD010916C00209132
|
||||
:1004AA006B0031E0130F3327231F10936C00209346
|
||||
:1004BA006B000BC0CED010916C0020916B001150D4
|
||||
:1004CA00204010936C0020936B000F931F932F937F
|
||||
:1004DA003F9300916C0010916B00212F207811F44A
|
||||
:1004EA00E89405C06894009510950F5F1F4F2AE0A5
|
||||
:1004FA0030E04EDE802F912FE09266003F912F91DF
|
||||
:10050A001F910F911FC0E894B29B04C000C0B39B17
|
||||
:10051A0006C009C09ED011E010936E0004C099D0A5
|
||||
:10052A0010E010936E001127812F912F20916E00F9
|
||||
:10053A00222309F004C01CE01093660003C01DE0EA
|
||||
:10054A00109366004F913F912F911F910F9108953B
|
||||
:10055A00F894B99A33E04EEB8CD0B99830E04AE877
|
||||
:10056A0088D005D033E042E384D078940895B19BD3
|
||||
:10057A00716002C0B1997E7F0895F8940F931F931A
|
||||
:10058A00082D18E0069508F448F0B99A30E046E7D5
|
||||
:10059A0070D0B99830E042E16CD008C0B99A30E026
|
||||
:1005AA004AE067D0B99830E04EE763D01A9551F720
|
||||
:1005BA001F910F9178940895F8940F931F93002731
|
||||
:1005CA0018E00695B99A30E04AE053D0B99830E07D
|
||||
:1005DA0040E14FD0B199006830E04CE64AD01A9514
|
||||
:1005EA0081F70C931F910F91789408950F935F935D
|
||||
:1005FA0053E0A3E6B0E0809361009093620000911B
|
||||
:10060A006100109162002AE030E0C2DDED920093B1
|
||||
:10061A006100109362005A9591F75F910F910895C6
|
||||
:10062A000F931F93EEEAF6E01127E00FF11F0490F3
|
||||
:10063A001F910F910895C59A53E039EA4DE71DD0ED
|
||||
:10064A00C5980895C59A5CE034E34DEF16D0C59875
|
||||
:10065A0008950F931F932F932AE01FEF0FEF0A9528
|
||||
:10066A00F1F71A95D9F72A95C1F72F911F910F9192
|
||||
:10067A00089541503040E8F70895415030405040C5
|
||||
:10068A00E0F708950F931F932F9326E00FEF1FEFC4
|
||||
:10069A001A95F1F70A95D9F72A95C1F72F911F9163
|
||||
:1006AA000F910895C0F9A4B0999282F880909CBFE6
|
||||
:0206BA00C689EF
|
||||
:00000001FF
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user