Устройства для тестирования аккумуляторов

Назначение и технические характеристики устройства для тестирования аккумуляторов, его работа через алгоритм работы схемы и временные характеристики. Расчет сборки печатной платы. Тестирование на надёжность, возможные неисправности и методы их устранения.

Рубрика Коммуникации, связь, цифровые приборы и радиоэлектроника
Вид дипломная работа
Язык русский
Дата добавления 30.01.2012
Размер файла 2,2 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

0122 151F 00481 BSF ADCON0,GO ;старт преобразования

0123 00482 ADC_GO

0123 191F 00483 BTFSC ADCON0,GO ;проверка окончания преобразования

0124 2923 00484 GOTO ADC_GO

0125 081E 00485 MOVFW ADRESH ;заносим только старший байт в память

0126 00A3 00486 MOVWF V_AKK ;

0127 0008 00487 RETURN

00488

00489 ;==========================================================

00490 ;======== КОНТРОЛЬ ВСЕХ ВРЕМЕННЫХ ЦИКЛОВ (ТАЙМЕРОВ) ===============

00491 ;==========================================================

0128 00492 TIMERS ;контроль таймеров

0128 1D0B 00493 BTFSS INTCON,2 ;проверяем таймер_0 сработал?

0129 0008 00494 RETURN ;нет еще, возвр на место

012A 110B 00495 BCF INTCON,2 ;сработал, сбрасываем что он сработал

012B 3022 00496 MOVLW IND_SEG3 ;проверяем все цифры высветили?

012C 0230 00497 SUBWF FSR_2,W

012D 1D03 00498 SKPZ

012E 2805 00499 GOTO INDIK ;нет ещё, продолжаем

012F 3020 00500 MOVLW IND_SEG1 ;все высветили, переходим к 1 цифре

0130 00B0 00501 MOVWF FSR_2

0131 03B0 00502 DECF FSR_2,F

0132 2805 00503 GOTO INDIK ;прога индикации

00504

0133 00505 INDIK_OUT ;СЮДА ВЫХОДИМ ИЗ ИНДИКАЦИИ

MPASM 5.03 ZY_LIT.ASM 11-12-2006 19:18:31 PAGE 11

LOC OBJECT CODE LINE SOURCE TEXT

VALUE

0133 0AB6 00506 INCF TMR_TIM_DEL,F ; увел кол-во срабатываний таймера

0134 1103 00507 CLRZ

0135 3031 00508 MOVLW O_TIM_DEL ;проверяем пора перейти к обработке

0136 0236 00509 SUBWF TMR_TIM_DEL,W ;временных данных?

0137 1D03 00510 SKPZ

0138 0008 00511 RETURN ;нет ещё рано (мало срабатываний таймера)

0139 01B6 00512 CLRF TMR_TIM_DEL ;очищаем для след раза

00513

00514 ;------------------ СЮДА ВЫХОДИМ КАЖДЫЕ 50,17мс ------------

013A 1CAA 00515 BTFSS CTRL_PUSK ;новый цикл запущен?

013B 2940 00516 GOTO CLR_SOS ;нет, значит SOS не надо запускать при аварии

013C 1D2A 00517 BTFSS AKK_ERR ;новый цикл запущен - аварийные ситуации есть?

013D 2940 00518 GOTO CLR_SOS

013E 21F5 00519 CALL SOS ;да, запускаем сигнал SOS

013F 294D 00520 GOTO TIM_50MS

0140 00521 CLR_SOS

0140 01B5 00522 CLRF BIT_SOS

0141 1435 00523 BSF SHORT_PI

0142 1AB4 00524 BTFSC Z_R_PI

0143 294D 00525 GOTO TIM_50MS

0144 1B34 00526 BTFSC END_PI

0145 294D 00527 GOTO TIM_50MS

0146 01BE 00528 CLRF COUNT_PI

0147 01BB 00529 CLRF TMR_PI

0148 13B4 00530 BCF PAUSE_PI

0149 1EB4 00531 BTFSS Z_R_PI ;было окончание 1 заряда или разряда?

014A 0197 00532 CLRF CCP1CON ;и выключаем пищалку

014B 1F34 00533 BTFSS END_PI ;было окончание всех циклов?

014C 0197 00534 CLRF CCP1CON ;и выключаем пищалку

014D 00535 TIM_50MS

014D 225B 00536 CALL IND_EMK ;подготовка данных к выводу на индикатор

014E 2198 00537 CALL TIM_MIG ;проверяем прогу мигания (вкл/выкл цифру)

014F 1C34 00538 BTFSS T_DREBEZG ;проверка можно нажим. кнопки?

0150 2168 00539 CALL DREBEZG ;обработка дребезга кнопок

0151 1AB4 00540 BTFSC Z_R_PI ;было окончание 1 заряда или разряда?

0152 21C4 00541 CALL ALARM_4 ;надо издать 4 коротких пика

0153 1B34 00542 BTFSC END_PI ;было окончание всех циклов?

0154 21DC 00543 CALL ALARM_5 ;надо издать 5 длинных пика

0155 19AA 00544 BTFSC ADC_AVAR ;

0156 21BA 00545 CALL TIM_AVAR ;

0157 1C2A 00546 BTFSS NEW_ZAR ;новый цикл запущен?

0158 0008 00547 RETURN

0159 2110 00548 CALL CONTR_AKK ;контроль напряжения на аккумуляторе

015A 1B2A 00549 BTFSC ZAR_END ;весь цикл пройден?

015B 0008 00550 RETURN

015C 19AA 00551 BTFSC ADC_AVAR ;напряжение вышло за допустимые рамки 2,5В и 4,5В ?

015D 0008 00552 RETURN

015E 1AAA 00553 BTFSC ZAR_RAZ ;зарядка идёт или разрядка?

015F 28B1 00554 GOTO CONTR_RAZ ;переод к контролю разрядного цикла

0160 1A2A 00555 BTFSC ZAR_1_2 ;идёт 1 зарядка или последняя?

0161 28C8 00556 GOTO CONTR_Z2 ;переходим к последней зарядке

0162 289B 00557 GOTO CONTR_Z1 ;переходим к 1 зарядке

0163 00558 COUNT_EMK

MPASM 5.03 ZY_LIT.ASM 11-12-2006 19:18:31 PAGE 12

LOC OBJECT CODE LINE SOURCE TEXT

VALUE

0163 1AAA 00559 BTFSC ZAR_RAZ ;и подсчёт ёмкостей заряда или разряда

0164 29A4 00560 GOTO IZM_EMK_RAZ ;в зависимости от того что щас идёт - зар/разр.

0165 1A2A 00561 BTFSC ZAR_1_2

0166 29AF 00562 GOTO IZM_EMK_ZAR

0167 0008 00563 RETURN

00564 ;--------------------------------------------------------------------

0168 00565 DREBEZG ;устранение дребезга кнопок

0168 0AB9 00566 INCF TMR_CLR_KN,F ;увел время прошедшее после отпускания кнопки

0169 3028 00567 MOVLW O_CLR_KN ;проверяем может хватит блокировать кнопки?

016A 0239 00568 SUBWF TMR_CLR_KN,W

016B 1D03 00569 SKPZ

016C 2974 00570 GOTO T_KN ;нет, рано разблокировать

016D 10B4 00571 BCF ON_KN

016E 1134 00572 BCF OFF_KN

016F 11B4 00573 BCF DR_PUSK

0170 1434 00574 BSF T_DREBEZG ;хватит блокировать включаем кнопки

0171 01B8 00575 CLRF TMR_DREBEZG ;очищаем рабочие ячейки для след раза

0172 01B9 00576 CLRF TMR_CLR_KN ;очищаем рабочие ячейки для след раза

0173 0008 00577 RETURN

0174 00578 T_KN

0174 18B4 00579 BTFSC ON_KN

0175 2986 00580 GOTO T_KN_OFF

0176 00581 T_KN_ON

0176 1F86 00582 BTFSS KN_PUSK ;если кнопка ещё нажата

0177 297A 00583 GOTO $+3

0178 01B8 00584 CLRF TMR_DREBEZG ;срабатывание кнопки, начать отсчёт заново

0179 0008 00585 RETURN

017A 180B 00586 BTFSC INTCON,0

017B 01B8 00587 CLRF TMR_DREBEZG ;срабатывание кнопки, начать отсчёт заново

017C 100B 00588 BCF INTCON,0

017D 0AB8 00589 INCF TMR_DREBEZG,F ;увел время прошедшее после отпускания кнопки

017E 3002 00590 MOVLW O_ON_KN ;проверяем может хватит блокировать кнопки?

017F 0238 00591 SUBWF TMR_DREBEZG,W

0180 1D03 00592 SKPZ

0181 0008 00593 RETURN ;нет, рано разблокировать

0182 14B4 00594 BSF ON_KN

0183 01B8 00595 CLRF TMR_DREBEZG ;очищаем рабочие ячейки для след раза

0184 01B9 00596 CLRF TMR_CLR_KN ;очищаем рабочие ячейки для след раза

0185 0008 00597 RETURN

0186 00598 T_KN_OFF

0186 1B86 00599 BTFSC KN_PUSK ;если кнопка ещё нажата

0187 298A 00600 GOTO $+3

0188 01B8 00601 CLRF TMR_DREBEZG ;срабатывание кнопки, начать отсчёт заново

0189 0008 00602 RETURN

018A 180B 00603 BTFSC INTCON,0

018B 01B8 00604 CLRF TMR_DREBEZG ;срабатывание кнопки, начать отсчёт заново

018C 100B 00605 BCF INTCON,0

018D 0AB8 00606 INCF TMR_DREBEZG,F ;увел время прошедшее после отпускания кнопки

018E 3004 00607 MOVLW O_OFF_KN ;проверяем может хватит блокировать кнопки?

018F 0238 00608 SUBWF TMR_DREBEZG,W

0190 1D03 00609 SKPZ

0191 0008 00610 RETURN ;нет, рано разблокировать

0192 10B4 00611 BCF ON_KN

MPASM 5.03 ZY_LIT.ASM 11-12-2006 19:18:31 PAGE 13

LOC OBJECT CODE LINE SOURCE TEXT

VALUE

0193 1534 00612 BSF OFF_KN

0194 1434 00613 BSF T_DREBEZG ;хватит блокировать включаем кнопки

0195 01B8 00614 CLRF TMR_DREBEZG ;очищаем рабочие ячейки для след раза

0196 01B9 00615 CLRF TMR_CLR_KN ;очищаем рабочие ячейки для след раза

0197 0008 00616 RETURN

00617 ;-------------------------------------------------------------------

0198 00618 TIM_MIG

0198 0AB7 00619 INCF TMR_DIOD,F ;увел время после последнего переключения

0199 3007 00620 MOVLW O_TIM_03S ;проверяем надо сделать переключение

019A 0237 00621 SUBWF TMR_DIOD,W ;сегмента индикатора

019B 1D03 00622 SKPZ

019C 0008 00623 RETURN ;нет, рано

019D 01B7 00624 CLRF TMR_DIOD ;очищаем рабочие ячейки для след раза

019E 1DAF 00625 BTFSS SEG_MIG ;пора, проверка сегмент горел?

019F 29A2 00626 GOTO $+3 ;нет, переходим к его зажиганию

01A0 11AF 00627 BCF SEG_MIG ;горел значит гасим его

01A1 29A3 00628 GOTO $+2

01A2 15AF 00629 BSF SEG_MIG ;зажигаем сегмент

01A3 0008 00630 RETURN

00631 ;--------------------------------------------------------------------

01A4 00632 IZM_EMK_RAZ ;измерение ёмкости при разряде

01A4 0ABA 00633 INCF TMR_ZAR,F ;ждём 12сек и прибавляем 1 мА/ч

01A5 1103 00634 CLRZ

01A6 30F0 00635 MOVLW O_EMK ;

01A7 023A 00636 SUBWF TMR_ZAR,W

01A8 1D03 00637 SKPZ

01A9 0008 00638 RETURN

01AA 01BA 00639 CLRF TMR_ZAR ;очищаем рабочие ячейки для след. раза

01AB 0FAB 00640 INCFSZ EMK_R_L,F ;увеличение насчитанной ёмкости

01AC 0008 00641 RETURN

01AD 0AAC 00642 INCF EMK_R_H,F

01AE 0008 00643 RETURN

00644 ;--------------------------------------------------------------------

01AF 00645 IZM_EMK_ZAR ;измерение ёмкости при заряде

01AF 0ABA 00646 INCF TMR_ZAR,F ;ждём 12сек и прибавляем 1 мА/ч

01B0 1103 00647 CLRZ

01B1 30F0 00648 MOVLW O_EMK ;

01B2 023A 00649 SUBWF TMR_ZAR,W

01B3 1D03 00650 SKPZ

01B4 0008 00651 RETURN

01B5 01BA 00652 CLRF TMR_ZAR ;очищаем рабочие ячейки для след. раза

01B6 0FAD 00653 INCFSZ EMK_Z_L,F ;увеличение насчитанной ёмкости

01B7 0008 00654 RETURN

01B8 0AAE 00655 INCF EMK_Z_H,F

01B9 0008 00656 RETURN

00657 ;--------------------------------------------------------------------

01BA 00658 TIM_AVAR ;

01BA 192A 00659 BTFSC AKK_ERR

01BB 01BC 00660 CLRF TMR_AVAR

01BC 0ABC 00661 INCF TMR_AVAR,F ;увел время

01BD 3014 00662 MOVLW O_AVAR ;проверяем может хватит ?

01BE 023C 00663 SUBWF TMR_AVAR,W

01BF 1D03 00664 SKPZ

MPASM 5.03 ZY_LIT.ASM 11-12-2006 19:18:31 PAGE 14

LOC OBJECT CODE LINE SOURCE TEXT

VALUE

01C0 0008 00665 RETURN

01C1 11AA 00666 BCF ADC_AVAR ;

01C2 01BC 00667 CLRF TMR_AVAR ;очищаем рабочие ячейки для след. раза

01C3 0008 00668 RETURN

00669 ;------------------------------------------------------------------

01C4 00670 ALARM_4 ;4 коротких пика после очередного под-цикла

01C4 0ABB 00671 INCF TMR_PI,F ;увел время пика или паузы

01C5 3007 00672 MOVLW O_TIM_03S ;проверяем может хватит?

01C6 023B 00673 SUBWF TMR_PI,W

01C7 1D03 00674 SKPZ

01C8 0008 00675 RETURN

01C9 01BB 00676 CLRF TMR_PI ;очищаем рабочие ячейки для след. раза

01CA 1FB4 00677 BTFSS PAUSE_PI ;пора переключится, включим пищалку или выключим?

01CB 29CF 00678 GOTO $+4 ;

01CC 13B4 00679 BCF PAUSE_PI ;выключим

01CD 0197 00680 CLRF CCP1CON

01CE 29D2 00681 GOTO $+4

01CF 17B4 00682 BSF PAUSE_PI ;включим

01D0 300C 00683 MOVLW B'00001100'

01D1 0097 00684 MOVWF CCP1CON

01D2 0ABE 00685 INCF COUNT_PI,F ;считаем сколько было пиков и пауз в сумме

01D3 3008 00686 MOVLW O_PI_4 ;должно быть 4 пика + 3 паузы = 7

01D4 023E 00687 SUBWF COUNT_PI,W

01D5 1D03 00688 SKPZ

01D6 0008 00689 RETURN

01D7 12B4 00690 BCF Z_R_PI ;всё пропикали,

01D8 01BE 00691 CLRF COUNT_PI ;сбрасываем задействованные регистры

01D9 13B4 00692 BCF PAUSE_PI

01DA 0197 00693 CLRF CCP1CON ;и выключаем пищалку

01DB 0008 00694 RETURN

00695 ;------------------------------------------------------------------

01DC 00696 ALARM_5 ;5 длинных пика после окончания всего цикла

01DC 12B4 00697 BCF Z_R_PI

01DD 0ABB 00698 INCF TMR_PI,F ;увел время пика или паузы

01DE 3014 00699 MOVLW O_TIM_1S ;проверяем может хватит?

01DF 023B 00700 SUBWF TMR_PI,W

01E0 1D03 00701 SKPZ

01E1 0008 00702 RETURN

01E2 01BB 00703 CLRF TMR_PI ;очищаем рабочие ячейки для след. раза

01E3 1FB4 00704 BTFSS PAUSE_PI ;пора переключится, включим пищалку или выключим?

01E4 29E8 00705 GOTO $+4 ;

01E5 13B4 00706 BCF PAUSE_PI ;выключим

01E6 0197 00707 CLRF CCP1CON

01E7 29EB 00708 GOTO $+4

01E8 17B4 00709 BSF PAUSE_PI ;включим

01E9 300C 00710 MOVLW B'00001100'

01EA 0097 00711 MOVWF CCP1CON

01EB 0ABE 00712 INCF COUNT_PI,F ;считаем сколько было пиков и пауз в сумме

01EC 300A 00713 MOVLW O_PI_5 ;должно быть 4 пика + 3 паузы = 7

01ED 023E 00714 SUBWF COUNT_PI,W

01EE 1D03 00715 SKPZ

01EF 0008 00716 RETURN

01F0 1334 00717 BCF END_PI ;всё пропикали,

MPASM 5.03 ZY_LIT.ASM 11-12-2006 19:18:31 PAGE 15

LOC OBJECT CODE LINE SOURCE TEXT

VALUE

01F1 01BE 00718 CLRF COUNT_PI ;сбрасываем задействованные регистры

01F2 13B4 00719 BCF PAUSE_PI

01F3 0197 00720 CLRF CCP1CON ;и выключаем пищалку

01F4 0008 00721 RETURN

00722 ;-----------------------------------------------------------------

01F5 00723 SOS ;подача сигнала SOS

01F5 1835 00724 BTFSC SHORT_PI

01F6 2A00 00725 GOTO T_SHORT_PI

01F7 18B5 00726 BTFSC SHORT_PS

01F8 2A1C 00727 GOTO T_SHORT_PS

01F9 19B5 00728 BTFSC LONG_PI

01FA 2A2E 00729 GOTO T_LONG_PI

01FB 1935 00730 BTFSC LONG_PS

01FC 2A41 00731 GOTO T_LONG_PS

01FD 1A35 00732 BTFSC PAUSE_SL

01FE 2A50 00733 GOTO T_PAUSE_SL

01FF 0008 00734 RETURN

00735 ;---------------------------------------

0200 00736 T_SHORT_PI

0200 300C 00737 MOVLW B'00001100'

0201 0097 00738 MOVWF CCP1CON

0202 0ABB 00739 INCF TMR_PI,F ;увел время пика

0203 3002 00740 MOVLW O_TIM_01S ;проверяем может хватит?

0204 023B 00741 SUBWF TMR_PI,W

0205 1D03 00742 SKPZ

0206 0008 00743 RETURN

0207 01BB 00744 CLRF TMR_PI ;очищаем рабочие ячейки для след. раза

0208 0197 00745 CLRF CCP1CON

0209 1035 00746 BCF SHORT_PI

020A 14B5 00747 BSF SHORT_PS

020B 0ABE 00748 INCF COUNT_PI,F ;считаем сколько было пиков

020C 3003 00749 MOVLW O_PI_SOS ;

020D 023E 00750 SUBWF COUNT_PI,W

020E 1D03 00751 SKPZ

020F 0008 00752 RETURN

0210 10B5 00753 BCF SHORT_PS

0211 01BE 00754 CLRF COUNT_PI ;сбрасываем задействованные регистры

0212 16B5 00755 BSF SIMVOL_S1

0213 1F35 00756 BTFSS SIMVOL_O

0214 2A19 00757 GOTO NEXT_O

0215 12B5 00758 BCF SIMVOL_S1

0216 1335 00759 BCF SIMVOL_O

0217 1635 00760 BSF PAUSE_SL

0218 0008 00761 RETURN

0219 00762 NEXT_O

0219 1535 00763 BSF LONG_PS

021A 1635 00764 BSF PAUSE_SL

021B 0008 00765 RETURN

00766 ;-------------------------------

021C 00767 T_SHORT_PS

021C 0ABB 00768 INCF TMR_PI,F ;увел время паузы

021D 3002 00769 MOVLW O_TIM_01S ;проверяем может хватит?

021E 023B 00770 SUBWF TMR_PI,W

MPASM 5.03 ZY_LIT.ASM 11-12-2006 19:18:31 PAGE 16

LOC OBJECT CODE LINE SOURCE TEXT

VALUE

021F 1D03 00771 SKPZ

0220 0008 00772 RETURN

0221 01BB 00773 CLRF TMR_PI ;очищаем рабочие ячейки для след. раза

0222 300C 00774 MOVLW B'00001100'

0223 0097 00775 MOVWF CCP1CON

0224 10B5 00776 BCF SHORT_PS

0225 15B5 00777 BSF LONG_PI

0226 1AB5 00778 BTFSC SIMVOL_S1

0227 2A2B 00779 GOTO $+4

0228 1435 00780 BSF SHORT_PI

0229 11B5 00781 BCF LONG_PI

022A 0008 00782 RETURN

022B 1F35 00783 BTFSS SIMVOL_O

022C 0008 00784 RETURN

022D 2A28 00785 GOTO $-5

00786 ;--------------------------------

022E 00787 T_LONG_PI

022E 0ABB 00788 INCF TMR_PI,F ;увел время

022F 3007 00789 MOVLW O_TIM_03S ;проверяем может хватит?

0230 023B 00790 SUBWF TMR_PI,W

0231 1D03 00791 SKPZ

0232 0008 00792 RETURN

0233 01BB 00793 CLRF TMR_PI ;очищаем рабочие ячейки для след. раза

0234 0197 00794 CLRF CCP1CON

0235 11B5 00795 BCF LONG_PI

0236 14B5 00796 BSF SHORT_PS

0237 0ABE 00797 INCF COUNT_PI,F ;считаем сколько было пиков

0238 3003 00798 MOVLW O_PI_SOS ;

0239 023E 00799 SUBWF COUNT_PI,W

023A 1D03 00800 SKPZ

023B 0008 00801 RETURN

023C 10B5 00802 BCF SHORT_PS

023D 01BE 00803 CLRF COUNT_PI ;сбрасываем задействованные регистры

023E 1535 00804 BSF LONG_PS

023F 1735 00805 BSF SIMVOL_O

0240 0008 00806 RETURN

00807 ;-------------------------------

0241 00808 T_LONG_PS

0241 0ABB 00809 INCF TMR_PI,F ;увел время паузы

0242 3007 00810 MOVLW O_TIM_03S ;проверяем может хватит?

0243 023B 00811 SUBWF TMR_PI,W

0244 1D03 00812 SKPZ

0245 0008 00813 RETURN

0246 01BB 00814 CLRF TMR_PI ;очищаем рабочие ячейки для след. раза

0247 300C 00815 MOVLW B'00001100'

0248 0097 00816 MOVWF CCP1CON

0249 1135 00817 BCF LONG_PS

024A 1435 00818 BSF SHORT_PI

024B 1B35 00819 BTFSC SIMVOL_O

024C 0008 00820 RETURN

024D 1035 00821 BCF SHORT_PI

024E 15B5 00822 BSF LONG_PI

024F 0008 00823 RETURN

MPASM 5.03 ZY_LIT.ASM 11-12-2006 19:18:31 PAGE 17

LOC OBJECT CODE LINE SOURCE TEXT

VALUE

00824 ;-------------------------------

0250 00825 T_PAUSE_SL

0250 0ABB 00826 INCF TMR_PI,F ;увел время паузы

0251 300F 00827 MOVLW O_TIM_07S ;проверяем может хватит?

0252 023B 00828 SUBWF TMR_PI,W

0253 1D03 00829 SKPZ

0254 0008 00830 RETURN

0255 01BB 00831 CLRF TMR_PI ;очищаем рабочие ячейки для след. раза

0256 300C 00832 MOVLW B'00001100'

0257 0097 00833 MOVWF CCP1CON

0258 1235 00834 BCF PAUSE_SL

0259 1435 00835 BSF SHORT_PI

025A 0008 00836 RETURN

00837

00838 ;==========================================================

00839 ;======== ПОДГОТОВКА К ВЫВОДУ ВЫБРАННОЙ ИНФЫ НА ИНДИКАТОР =========

00840 ;==========================================================

025B 00841 IND_EMK

025B 082B 00842 MOVFW EMK_R_L ;преобразование ёмкости разряда из

025C 00C2 00843 MOVWF BIT_L ;двоичной формы в десятичную для вывода на

025D 082C 00844 MOVFW EMK_R_H ;индикатор

025E 00C1 00845 MOVWF BIT_H

025F 229E 00846 CALL BC2_BCD

0260 3024 00847 MOVLW EMK_R_1K

0261 0084 00848 MOVWF FSR

0262 2290 00849 CALL VX_BCD

00850 ;-----------------------

0263 082D 00851 MOVFW EMK_Z_L ;преобразование ёмкости заряда из

0264 00C2 00852 MOVWF BIT_L ;двоичной формы в десятичную для вывода на

0265 082E 00853 MOVFW EMK_Z_H ;индикатор

0266 00C1 00854 MOVWF BIT_H

0267 229E 00855 CALL BC2_BCD

0268 3027 00856 MOVLW EMK_Z_1K

0269 0084 00857 MOVWF FSR

026A 2290 00858 CALL VX_BCD

00859 ;==========================================================

026B 1F06 00860 BTFSS KN_Z_R ;нажата ли кнопка заряда?

026C 2A71 00861 GOTO $+5 ;если да, то показываем ёмкость заряда

026D 3024 00862 MOVLW EMK_R_1K ;запоминаем первую выводимую цифру

026E 0084 00863 MOVWF FSR

026F 2287 00864 CALL V_SEG ;запуск прогу распредел. цифр по сегментам

0270 2A75 00865 GOTO KOD_MIG

0271 3027 00866 MOVLW EMK_Z_1K ;запоминаем первую выводимую цифру

0272 0084 00867 MOVWF FSR

0273 2287 00868 CALL V_SEG ;запуск прогу распредел. цифр по сегментам

0274 2A75 00869 GOTO KOD_MIG

00870

0275 00871 KOD_MIG ;проверка какие сегменты мигают

0275 300A 00872 MOVLW 0XA ;код тушения цифры во время мигания

0276 19AF 00873 BTFSC SEG_MIG ;должны ли щас гореть мигающие сегменты?

0277 0008 00874 RETURN ;да, всё должно гореть

0278 182F 00875 BTFSC SEG1_MIG ;нет, проверяем какой сегмент не должен гореть?

0279 00A0 00876 MOVWF IND_SEG1 ;и гасим его.

MPASM 5.03 ZY_LIT.ASM 11-12-2006 19:18:31 PAGE 18

LOC OBJECT CODE LINE SOURCE TEXT

VALUE

027A 18AF 00877 BTFSC SEG2_MIG

027B 00A1 00878 MOVWF IND_SEG2

027C 192F 00879 BTFSC SEG3_MIG

027D 00A2 00880 MOVWF IND_SEG3

027E 1CAA 00881 BTFSS CTRL_PUSK

027F 0008 00882 RETURN

0280 192A 00883 BTFSC AKK_ERR ;проверяем сработала 1 аварийная ситуация?

0281 2A83 00884 GOTO GASHEN_IND

0282 0008 00885 RETURN ;просто выходим

0283 00886 GASHEN_IND ;гашение всех цифр

0283 00A0 00887 MOVWF IND_SEG1 ;и гасим его.

0284 00A1 00888 MOVWF IND_SEG2 ;и гасим его.

0285 00A2 00889 MOVWF IND_SEG3 ;и гасим его.

0286 0008 00890 RETURN

00891 ;--------------------------------------------------------------------------

0287 00892 V_SEG ;перенос выбранной ёмкости в сегменты индикатора

0287 0800 00893 MOVFW INDF

0288 00A0 00894 MOVWF IND_SEG1

0289 0A84 00895 INCF FSR,F

028A 0800 00896 MOVFW INDF

028B 00A1 00897 MOVWF IND_SEG2

028C 0A84 00898 INCF FSR,F

028D 0800 00899 MOVFW INDF

028E 00A2 00900 MOVWF IND_SEG3

028F 0008 00901 RETURN

00902 ;-------------------------

0290 00903 VX_BCD ;перенос результата преобразования

0290 0846 00904 MOVFW SEG_1K ;из временных ячеек в выбранные

0291 0080 00905 MOVWF INDF

0292 0A84 00906 INCF FSR,F

0293 0845 00907 MOVFW SEG_100

0294 0080 00908 MOVWF INDF

0295 0A84 00909 INCF FSR,F

0296 0844 00910 MOVFW SEG_10

0297 0080 00911 MOVWF INDF

0298 0008 00912 RETURN

00913 ;==========================================================

00914 ;============ СЛУЖЕБНЫЕ ПОДПРОГРАММЫ =========================

00915 ;==========================================================

0299 00916 DELAY_10 ;задержка на 10мкс

0299 3006 00917 MOVLW D'6'

029A 00C0 00918 MOVWF fCOUNTER

029B 00919 D_LOOP10

029B 0BC0 00920 decfsz fCOUNTER,F

029C 2A9B 00921 goto D_LOOP10

029D 0008 00922 RETURN

00923 ;========================================================================

00924 ;Программа преобразования bc в bcd. 16-разрядные данные

029E 00925 BC2_BCD ; Takes number in BIT_H:BIT_L

00926 ; Returns decimal in

00927 ; SEG_1K0:SEG_1K:SEG_100:SEG_10:SEG_1

00928

029E 0E41 00929 swapf BIT_H,w

MPASM 5.03 ZY_LIT.ASM 11-12-2006 19:18:31 PAGE 19

LOC OBJECT CODE LINE SOURCE TEXT

VALUE

029F 38F0 00930 IORLW b'11110000'

02A0 00C6 00931 movwf SEG_1K

02A1 07C6 00932 addwf SEG_1K,f

02A2 3EE2 00933 addlw 0xE2

02A3 00C5 00934 movwf SEG_100

02A4 3E32 00935 addlw 0x32

02A5 00C3 00936 movwf SEG_1

00937

02A6 0841 00938 movf BIT_H,w

02A7 390F 00939 andlw 0x0F

02A8 07C5 00940 addwf SEG_100,f

02A9 07C5 00941 addwf SEG_100,f

02AA 07C3 00942 addwf SEG_1,f

02AB 3EE9 00943 addlw 0xE9

02AC 00C4 00944 movwf SEG_10

02AD 07C4 00945 addwf SEG_10,f

02AE 07C4 00946 addwf SEG_10,f

00947

02AF 0E42 00948 swapf BIT_L,w

02B0 390F 00949 andlw 0x0F

02B1 07C4 00950 addwf SEG_10,f

02B2 07C3 00951 addwf SEG_1,f

00952

02B3 0DC4 00953 rlf SEG_10,f

02B4 0DC3 00954 rlf SEG_1,f

02B5 09C3 00955 comf SEG_1,f

02B6 0DC3 00956 rlf SEG_1,f

00957

02B7 0842 00958 movf BIT_L,w

02B8 390F 00959 andlw 0x0F

02B9 07C3 00960 addwf SEG_1,f

02BA 0DC6 00961 rlf SEG_1K,f

00962

02BB 3007 00963 movlw 0x07

02BC 00C7 00964 movwf SEG_10K

00965

02BD 300A 00966 movlw 0x0A ; Ten

02BE 00967 Lb1:

02BE 07C3 00968 addwf SEG_1,f

02BF 03C4 00969 decf SEG_10,f

02C0 1C03 00970 btfss 3,0

02C1 2ABE 00971 goto Lb1

02C2 00972 Lb2:

02C2 07C4 00973 addwf SEG_10,f

02C3 03C5 00974 decf SEG_100,f

02C4 1C03 00975 btfss 3,0

02C5 2AC2 00976 goto Lb2

02C6 00977 Lb3:

02C6 07C5 00978 addwf SEG_100,f

02C7 03C6 00979 decf SEG_1K,f

02C8 1C03 00980 btfss 3,0

02C9 2AC6 00981 goto Lb3

02CA 00982 Lb4:

MPASM 5.03 ZY_LIT.ASM 11-12-2006 19:18:31 PAGE 20

LOC OBJECT CODE LINE SOURCE TEXT

VALUE

02CA 07C6 00983 addwf SEG_1K,f

02CB 03C7 00984 decf SEG_10K,f

02CC 1C03 00985 btfss 3,0

02CD 2ACA 00986 goto Lb4

02CE 0008 00987 RETURN

00988 ;----------------------------------------------------------------

02CF 00989 COPY_A ;выводим данные на порт_A

02CF 0833 00990 MOVFW P_A_COPY

02D0 0085 00991 MOVWF PORTA

02D1 0008 00992 RETURN

00993 ;

02D2 00994 COPY_B ;выводим данные на порт_В

02D2 0832 00995 MOVFW P_B_COPY

02D3 0086 00996 MOVWF PORTB

02D4 0008 00997 RETURN

00998 ;

02D5 00999 COPY_C ;выводим данные на порт_C

02D5 0831 01000 MOVFW P_C_COPY

02D6 0087 01001 MOVWF PORTC

02D7 0008 01002 RETURN

01003

01004 ;=================== ЗАПИСЬ В ЕЕПРОМКУ ================

02D8 01005 STOP_EEPR ;запись в еепромку, что восстанавливать

01006 BANK2 ;ничего не надо при следующем включении питания

02D8 1703 M BSF STATUS,RP1

02D9 1283 M BCF STATUS,RP0

02DA 018D 01007 CLRF EEADR

02DB 018C 01008 CLRF EEDATA

02DC 22FD 01009 CALL WRITE_EE ;собственно запись

02DD 0008 01010 RETURN ;всё ячейки записаны

01011

01012 ;=================== ЗАПИСЬ ТЕКУЩИХ ПАРАМЕТРОВ В ЕЕПРОМКУ ================

02DE 01013 SAVE_MEM ;сохранение текущего режима работы

02DE 300B 01014 MOVLW B'00001011' ;гасим все аноды

02DF 04B1 01015 IORWF P_C_COPY,F

02E0 22D5 01016 CALL COPY_C ;выводим всё это

02E1 1A34 01017 BTFSC SAVE_YES ;и подсчитанной ёмкости в еепромку

02E2 0008 01018 RETURN ;а может уже сохраняли?

02E3 1634 01019 BSF SAVE_YES

02E4 302A 01020 MOVLW AKK_Z_R ;нет, уст. 1 сохраняемый регистр

02E5 0084 01021 MOVWF FSR

02E6 0384 01022 DECF FSR,F ;коррекция для удобства окончания цикла записи

01023 BANK2

02E7 1703 M BSF STATUS,RP1

02E8 1283 M BCF STATUS,RP0

02E9 018D 01024 CLRF EEADR

02EA 01025 WRITE_EEPR

01026 BANK0

02EA 1303 M BCF STATUS,RP1

02EB 1283 M BCF STATUS,RP0

02EC 0A84 01027 INCF FSR,F ;переход к след. записыв. регистру

02ED 0800 01028 MOVFW INDF

01029 BANK2

MPASM 5.03 ZY_LIT.ASM 11-12-2006 19:18:31 PAGE 21

LOC OBJECT CODE LINE SOURCE TEXT

VALUE

02EE 1703 M BSF STATUS,RP1

02EF 1283 M BCF STATUS,RP0

02F0 008C 01030 MOVWF EEDATA

02F1 22FD 01031 CALL WRITE_EE ;собственно запись

01032 BANK2

02F2 1703 M BSF STATUS,RP1

02F3 1283 M BCF STATUS,RP0

02F4 0A8D 01033 INCF EEADR,F

01034 BANK0

02F5 1303 M BCF STATUS,RP1

02F6 1283 M BCF STATUS,RP0

02F7 1103 01035 CLRZ

02F8 302E 01036 MOVLW EMK_Z_H ;проверяем все цифры высветили?

02F9 0204 01037 SUBWF FSR,W

02FA 1D03 01038 SKPZ

02FB 2AEA 01039 GOTO WRITE_EEPR ;нет ещё, продолжаем

02FC 0008 01040 RETURN

01041 ;-----------------------

01042 ;Подпрограмма записи

02FD 01043 WRITE_EE

02FD 138B 01044 BCF INTCON,GIE ;запрещаем прерывания

01045 BANK3 ;переходим к 3 банку

02FE 1703 M BSF STATUS,RP1

02FF 1683 M BSF STATUS,RP0

0300 150C 01046 BSF EECON1,WREN ;разрешаем запись в флэш

0301 3055 01047 MOVLW 0x55 ;обязательная процедура

0302 008D 01048 MOVWF EECON2

0303 30AA 01049 MOVLW 0xAA

0304 008D 01050 MOVWF EECON2 ;перед записью во флэш

0305 148C 01051 BSF EECON1,WR ;включаем запись

0306 01052 EEPR

0306 188C 01053 BTFSC EECON1,WR ;проверка окончания записи

0307 2B06 01054 GOTO EEPR ;нет, ещё не записалось

01055 BANK0

0308 1303 M BCF STATUS,RP1

0309 1283 M BCF STATUS,RP0

030A 0008 01056 RETURN

01057 END

MPASM 5.03 ZY_LIT.ASM 11-12-2006 19:18:31 PAGE 22

SYMBOL TABLE

LABEL VALUE

ADCON0 0000001F

ADCON1 0000009F

ADCS0 00000006

ADCS1 00000007

ADC_AVAR AKK_Z_R,3

ADC_GO 00000123

ADC_V 00000121

ADDEN 00000003

ADFM 00000007

ADIE 00000006

ADIF 00000006

ADON 00000000

ADRESH 0000001E

ADRESL 0000009E

AKK_ERR AKK_Z_R,2

AKK_Z_R 0000002A

ALARM_4 000001C4

ALARM_5 000001DC

ALL_AN 00000026

BANK0

BANK1

BANK2

BANK3

BC2_BCD 0000029E

BIT_H 00000041

BIT_L 00000042

BIT_SOS 00000035

BRGH 00000002

C 00000000

CCP1CON 00000017

CCP1IE 00000002

CCP1IF 00000002

CCP1M0 00000000

CCP1M1 00000001

CCP1M2 00000002

CCP1M3 00000003

CCP1X 00000005

CCP1Y 00000004

CCPR1H 00000016

CCPR1L 00000015

CHS0 00000003

CHS1 00000004

CHS2 00000005

CLR_SOS 00000140

CONTR_AKK 00000110

CONTR_RAZ 000000B1

CONTR_Z1 0000009B

CONTR_Z2 000000C8

COPY_A 000002CF

COPY_B 000002D2

COPY_C 000002D5

COUNT_EMK 00000163

COUNT_PI 0000003E

MPASM 5.03 ZY_LIT.ASM 11-12-2006 19:18:31 PAGE 23

SYMBOL TABLE

LABEL VALUE

CREN 00000004

CSRC 00000007

CTRL_KN 000000E8

CTRL_PUSK AKK_Z_R,1

DC 00000001

DELAY_10 00000299

DES_POINT 00000038

DREBEZG 00000168

DR_PUSK FLAG_ALL,3

D_LOOP10 0000029B

EEADR 0000010D

EEADRH 0000010F

EECON1 0000018C

EECON2 0000018D

EEDATA 0000010C

EEDATH 0000010E

EEIE 00000004

EEIF 00000004

EEPGD 00000007

EEPR 00000306

EMK_R_10 00000026

EMK_R_100 00000025

EMK_R_1K 00000024

EMK_R_H 0000002C

EMK_R_L 0000002B

EMK_Z_10 00000029

EMK_Z_100 00000028

EMK_Z_1K 00000027

EMK_Z_H 0000002E

EMK_Z_L 0000002D

END_PI FLAG_ALL,6

F 00000001

FERR 00000002

FLAG_ALL 00000034

FSR 00000004

FSR_2 00000030

GASHEN_IND 00000283

GIE 00000007

GO 00000002

GO_DONE 00000002

INDF 00000000

INDIK 00000005

INDIK_OUT 00000133

IND_CAT 00000016

IND_EMK 0000025B

IND_MIG 0000002F

IND_SEG1 00000020

IND_SEG2 00000021

IND_SEG3 00000022

IND_TABL 0000002B

INTCON 0000000B

INTE 00000004

INTEDG 00000006

MPASM 5.03 ZY_LIT.ASM 11-12-2006 19:18:31 PAGE 24

SYMBOL TABLE

LABEL VALUE

INTF 00000001

IRP 00000007

IZM_EMK_RAZ 000001A4

IZM_EMK_ZAR 000001AF

KN_PUSK PORTB,7

KN_Z_R PORTB,6

KOD_MIG 00000275

LONG_PI BIT_SOS,3

LONG_PS BIT_SOS,2

Lb1 000002BE

Lb2 000002C2

Lb3 000002C6

Lb4 000002CA

NEW_PUSK 000000EE

NEW_ZAR AKK_Z_R,0

NEXT 00000068

NEXT_O 00000219

NOT_BO 00000000

NOT_BOR 00000000

NOT_DONE 00000002

NOT_PD 00000003

NOT_POR 00000001

NOT_RBPU 00000007

NOT_RC8 00000006

NOT_T1SYNC 00000002

NOT_TO 00000004

NOT_TX8 00000006

OERR 00000001

OFF_KN FLAG_ALL,2

ON_KN FLAG_ALL,1

OPTION_REG 00000081

O_AVAR 00000014

O_CLR_KN 00000028

O_EMK 000000F0

O_MAX_V 000000E6

O_MIN_V 00000080

O_NEXT 00000028

O_OFF_KN 00000004

O_ON_KN 00000002

O_PI_4 00000008

O_PI_5 0000000A

O_PI_SOS 00000003

O_TIM_01S 00000002

O_TIM_03S 00000007

O_TIM_07S 0000000F

O_TIM_1S 00000014

O_TIM_DEL 00000031

O_V_RAZRAD 0000008A

O_V_ZARAD 000000DB

PAUSE_PI FLAG_ALL,7

PAUSE_SL BIT_SOS,4

PCFG0 00000000

PCFG1 00000001

MPASM 5.03 ZY_LIT.ASM 11-12-2006 19:18:31 PAGE 25

SYMBOL TABLE

LABEL VALUE

PCFG2 00000002

PCFG3 00000003

PCL 00000002

PCLATH 0000000A

PCON 0000008E

PEIE 00000006

PIE1 0000008C

PIE2 0000008D

PIR1 0000000C

PIR2 0000000D

PORTA 00000005

PORTB 00000006

PORTC 00000007

PR2 00000092

PRER_KLAVA 000000DE

PS0 00000000

PS1 00000001

PS2 00000002

PSA 00000003

PUSK 00000094

P_A_COPY 00000033

P_B_COPY 00000032

P_C_COPY 00000031

RAZRAD P_A_COPY,4

RBIE 00000003

RBIF 00000000

RC8_9 00000006

RC9 00000006

RCD8 00000000

RCIE 00000005

RCIF 00000005

RCREG 0000001A

RCSTA 00000018

RD 00000000

READ_EEPR 00000081

RP0 00000005

RP1 00000006

RX9 00000006

RX9D 00000000

SAVE_MEM 000002DE

SAVE_YES FLAG_ALL,4

SEG1_MIG IND_MIG,0

SEG2_MIG IND_MIG,1

SEG3_MIG IND_MIG,2

SEG_1 00000043

SEG_10 00000044

SEG_100 00000045

SEG_10K 00000047

SEG_1K 00000046

SEG_MIG IND_MIG,3

SHORT_PI BIT_SOS,0

SHORT_PS BIT_SOS,1

SIMVOL_O BIT_SOS,6

MPASM 5.03 ZY_LIT.ASM 11-12-2006 19:18:31 PAGE 26

SYMBOL TABLE

LABEL VALUE

SIMVOL_S1 BIT_SOS,5

SIMVOL_S2 BIT_SOS,7

SOS 000001F5

SPBRG 00000099

SPEN 00000007

SREN 00000005

START 0000003E

STATUS 00000003

STOP_EEPR 000002D8

SYNC 00000004

T0CS 00000005

T0IE 00000005

T0IF 00000002

T0SE 00000004

T1CKPS0 00000004

T1CKPS1 00000005

T1CON 00000010

T1INSYNC 00000002

T1OSCEN 00000003

T1SYNC 00000002

T2CKPS0 00000000

T2CKPS1 00000001

T2CON 00000012

TEMP 0000003F

TIMERS 00000128

TIM_50MS 0000014D

TIM_AVAR 000001BA

TIM_ERR 0000011C

TIM_MIG 00000198

TMR0 00000001

TMR1CS 00000001

TMR1H 0000000F

TMR1IE 00000000

TMR1IF 00000000

TMR1L 0000000E

TMR1ON 00000000

TMR2 00000011

TMR2IE 00000001

TMR2IF 00000001

TMR2ON 00000002

TMR_AVAR 0000003C

TMR_CLR_KN 00000039

TMR_DIOD 00000037

TMR_DREBEZG 00000038

TMR_NEXT 0000003D

TMR_PI 0000003B

TMR_TIM_DEL 00000036

TMR_ZAR 0000003A

TOUTPS0 00000003

TOUTPS1 00000004

TOUTPS2 00000005

TOUTPS3 00000006

TRISA 00000085

MPASM 5.03 ZY_LIT.ASM 11-12-2006 19:18:31 PAGE 27

SYMBOL TABLE

LABEL VALUE

TRISB 00000086

TRISC 00000087

TRMT 00000001

TX8_9 00000006

TX9 00000006

TX9D 00000000

TXD8 00000000

TXEN 00000005

TXIE 00000004

TXIF 00000004

TXREG 00000019

TXSTA 00000098

T_DREBEZG FLAG_ALL,0

T_KN 00000174

T_KN_OFF 00000186

T_KN_ON 00000176

T_LONG_PI 0000022E

T_LONG_PS 00000241

T_PAUSE_SL 00000250

T_SHORT_PI 00000200

T_SHORT_PS 0000021C

VX_BCD 00000290

V_AKK 00000023

V_PIT PORTB,5

V_SEG 00000287

W 00000000

WR 00000001

WREN 00000002

WRERR 00000003

WRITE_EE 000002FD

WRITE_EEPR 000002EA

Z 00000002

ZARAD P_A_COPY,5

ZAR_1_2 AKK_Z_R,4

ZAR_END AKK_Z_R,6

ZAR_RAZ AKK_Z_R,5

ZAR_STOP 000000FB

Z_R_PI FLAG_ALL,5

_BODEN_OFF 00003FBF

_BODEN_ON 00003FFF

_CPD_OFF 00003FFF

_CPD_ON 00003EFF

_CP_ALL 00000FCF

_CP_OFF 00003FFF

_DEBUG_OFF 00003FFF

_DEBUG_ON 000037FF

_HS_OSC 00003FFE

_LP_OSC 00003FFC

_LVP_OFF 00003F7F

_LVP_ON 00003FFF

_PWRTE_OFF 00003FFF

_PWRTE_ON 00003FF7

_RC_OSC 00003FFF

MPASM 5.03 ZY_LIT.ASM 11-12-2006 19:18:31 PAGE 28

SYMBOL TABLE

LABEL VALUE

_WDT_OFF 00003FFB

_WDT_ON 00003FFF

_WRT_ENABLE_OFF 00003DFF

_WRT_ENABLE_ON 00003FFF

_XT_OSC 00003FFD

__16F870 00000001

fCOUNTER 00000040

MEMORY USAGE MAP ('X' = Used, '-' = Unused)

0000 : X----XXXXXXXXXXX XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX

0040 : XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX

0080 : XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX

00C0 : XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX

0100 : XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX

0140 : XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX

0180 : XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX

01C0 : XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX

0200 : XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX

0240 : XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX

0280 : XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX

02C0 : XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX

0300 : XXXXXXXXXXX----- ---------------- ---------------- ----------------

All other memory blocks unused.

Program Memory Words Used: 775

Program Memory Words Free: 1273

Errors : 0

Warnings : 0 reported, 0 suppressed

Messages : 0 reported, 25 suppressed

Размещено на Allbest.ru


Подобные документы

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.