Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Разработка блок-схем программы ⇐ ПредыдущаяСтр 4 из 4
Рисунок 25. Основная блок-схема Рисунок 26. Блок-схема программы фильтрации Листинг программы Release 5.1 Assembler Version 1.34 6/6/94 C:\ADI_DSP\21XX\BIN\C:\DOCUME~1\Admin\0016~1\BIHSKR\Edit1.for Sat Jun 13 17:59:00 2020 Page 1 addr inst source line 1 .module/ram/abs = 0 BIH_v4; 2 .var/dm/circ z[6]; {линия задержки, КИХ } 3 .var/dm/circ zz[6]; {линия задержки, БИХ} 4 .var/pm/circ ab[15]; {коэф. a и b} 5 6 .init z: 0,0,0,0,0,0; 7 .init zz: 0,0,0,0,0,0; 8 .init ab: 0x6E62, 0x1152, 0x6E62, 0x1152, 0x5CC5, 9 0x4FF8, 0xA43, 0x4FF8, 0xFDDA, 0x79BC, 10 0xC85E, 0x2527, 0xC85E, 0x2912, 0x79D1; 11 12 {Таблица векторов прерываний} 13 {RESET} 0000 18000Fu 14 jump start; rti; rti; rti; 0001 0A001F 0002 0A001F 0003 0A001F 15 {IRQ2} 0004 0A001F 16 rti; rti; rti; rti; 0005 0A001F 0006 0A001F 0007 0A001F 17 {IRQL1} 0008 0A001F 18 rti; rti; rti; rti; 0009 0A001F 000A 0A001F 000B 0A001F 19 {IRQL0} 000C 0A001F 20 rti; rti; rti; rti; 000D 0A001F 000E 0A001F 000F 0A001F 21 {SPORT0 ПД} 0010 0A001F 22 rti; rti; rti; rti; 0011 0A001F 0012 0A001F 0013 0A001F 23 {SPORT0 ПМ} 0014 0A001F 24 rti; rti; rti; rti; 0015 0A001F 0016 0A001F 0017 0A001F 25 {IRQE} 0018 0A001F 26 rti; rti; rti; rti; 0019 0A001F 001A 0A001F 001B 0A001F 27 {BDMA} 001C 0A001F 28 rti; rti; rti; rti; 001D 0A001F 001E 0A001F 001F 0A001F 29 {SPORT1 ПД} 0020 0A001F 30 rti; rti; rti; rti; 0021 0A001F 0022 0A001F 0023 0A001F 31 {SPORT1 ПМ} 0024 0A001F 32 rti; rti; rti; rti; 0025 0A001F 0026 0A001F
Release 5.1 Assembler Version 1.34 6/6/94 C:\ADI_DSP\21XX\BIN\C:\DOCUME~1\Admin\0016~1\BIHSKR\Edit1.for Sat Jun 13 17:59:00 2020 Page 2 addr inst source line
0027 0A001F 33 {Timer} 0028 18000Fu 34 jump timer_proc; rti; rti; rti; 0029 0A001F 002A 0A001F 002B 0A001F 35 {Power Down} 002C 0A001F 36 rti; rti; rti; rti; 002D 0A001F 002E 0A001F 002F 0A001F 37 {Конец таблицы векторов прерываний} 38
0030 000000 39 perest:nop; 0031 400FF5 40 ay1 = 0x00ff; 0032 40000F 41 sr1 = 0; 0033 0D0E58 42 cntr = l4; 0034 14000Eu 43 do cycl until ce; 0035 500041 44 ay0 = pm(i4,m5); 0036 0D03A7 45 ar = px; 0037 238A0F 46 ar = ar and ay1; 0038 0D00EA 47 sr0=ar; 0039 0D0084 48 si=ay0; 003A 0F1808 49 sr = sr or lshift si by 8(lo); 003B 0D004E 50 ay0 = sr0; 003C 580040 51 cycl: pm(i4,m4) = ay0; 003D 0A000F 52 rts; 53 54 003E 000000 55 start: nop; 003F 40004A 56 ar = 4; 0040 93FFBA 57 dm(0x3ffb) = ar; {TSCALE - предделитель} 0041 40001A 58 ar = 999; 0042 93FFCA 59 dm(0x3ffc) = ar; {TCOUNT - счётчик} 0043 93FFDA 60 dm(0x3ffd) = ar; {TPERIOD - период} 61 0044 380000u 62 i4 = ^ab; l4 = %ab; m4 = 1; m5 = 0; 0045 3800F8 0046 380014 0047 380005 0048 1C000Fu 63 call perest; 0049 0C2000 64 dis m_mode; 004A 380000u 65 i4 = ^ab; l4 =%ab; m4 = 1; 004B 3800F8 004C 380014 004D 340000u 66 i0 = ^z; l0 = %z; m0 = 0; m1 = 1; m3 = -1; 004E 340068 004F 340004 0050 340015 0051 37FFF7 0052 340001u 67 i1 = ^zz; l1 = %zz; 0053 340069 0054 20980F 68 mr = 0; my0 = pm(i4,m4); 0055 500060 69 0056 3C0FFC 70 ifc = 0x00ff; {сброс прерываний стоящих в очереди} 0057 000000 71 nop; {холостая операция} 0058 0CC000 72 ena timer; {запуск таймера} 0059 3C0013 73 imask = b#0000000001; {разрешение таймерного прерывания} 005A 000000 74 nop; 005B 000000 75 zacycl:nop;
Release 5.1 Assembler Version 1.34 6/6/94 C:\ADI_DSP\21XX\BIN\C:\DOCUME~1\Admin\0016~1\BIHSKR\Edit1.for Sat Jun 13 17:59:00 2020 Page 3 addr inst source line
005C 18000Fu 76 jump zacycl; 77 005D 000000 78 timer_proc:nop; 79 005E 000000 80 kaskad1:nop; 81 {КИХ-ветвь} 005F 010003 82 mx1 = io(0); 0060 E8A101 83 mr = mx1*my0(su), mx0=dm(i0,m1), my0=pm(i4,m4); 0061 E92003 84 mr = mr+mx0*my0(su), mx0=dm(i0,m3), my0 = pm(i4,m4); 0062 6120A1 85 mr = mr+mx0*my0(su), ar=dm(i0,m1); 0063 6800A3 86 dm(i0,m3) = ar; 0064 680031 87 dm(i0,m1) = mx1; 0065 090001 88 modify(i0,m1); 89 {БИХ-ветвь} 0066 E80005 90 mx0=dm(i1,m1), my0 = pm(i4,m4); {zz1,a1} 0067 E9A007 91 mr = mr-mx0*my0(su),mx0=dm(i1,m3), my0=pm(i4,m4); {zz1*a1,zz2,a2} 0068 21A00F 92 mr = mr-mx0*my0(su); my0 = pm(i4,m4); {+zz2*a2,b0} 0069 500060 006A 20580F 93 mr = mr(rnd); 006B 050000 94 if mv sat mr; 006C 6000A5 95 ar=dm(i1,m1); 006D 6800A7 96 dm(i1,m3) = ar;
006E 6800C5 97 dm(i1,m1) = mr1; 006F 090005 98 modify(i1,m1); 99 0070 000000 100 kaskad2:nop; 101 {КИХ-ветвь} 0071 0D003C 102 mx1 = mr1; 0072 E8A101 103 mr = mx1*my0(su), mx0=dm(i0,m1), my0=pm(i4,m4); 0073 E92003 104 mr = mr+mx0*my0(su), mx0=dm(i0,m3), my0 = pm(i4,m4); 0074 6120A1 105 mr = mr+mx0*my0(su), ar=dm(i0,m1); 0075 6800A3 106 dm(i0,m3) = ar; 0076 680031 107 dm(i0,m1) = mx1; 0077 090001 108 modify(i0,m1); 109 {БИХ-ветвь} 0078 E80005 110 mx0=dm(i1,m1), my0 = pm(i4,m4); {zz1,a1} 0079 E98007 111 mr = mr-mx0*my0(ss),mx0=dm(i1,m3), my0=pm(i4,m4); {zz1*a1,zz2,a2} 007A 21A00F 112 mr = mr-mx0*my0(su); my0 = pm(i4,m4); {+zz2*a2,b0} 007B 500060 007C 20580F 113 mr = mr(rnd); 007D 050000 114 if mv sat mr; 007E 6000A5 115 ar=dm(i1,m1); 007F 6800A7 116 dm(i1,m3) = ar; 0080 6800C5 117 dm(i1,m1) = mr1; 0081 090005 118 modify(i1,m1); 119 0082 000000 120 kaskad3:nop; 121 {КИХ-ветвь} 0083 0D003C 122 mx1 = mr1; 0084 E8A101 123 mr = mx1*my0(su), mx0=dm(i0,m1), my0=pm(i4,m4); 0085 E92003 124 mr = mr+mx0*my0(su), mx0=dm(i0,m3), my0 = pm(i4,m4); 0086 6120A1 125 mr = mr+mx0*my0(su), ar=dm(i0,m1); 0087 6800A3 126 dm(i0,m3) = ar; 0088 680031 127 dm(i0,m1) = mx1; 0089 090001 128 modify(i0,m1); 129 {БИХ-ветвь} 008A E80005 130 mx0=dm(i1,m1), my0 = pm(i4,m4); {zz1,a1} 008B E9A007 131 mr = mr-mx0*my0(su),mx0=dm(i1,m3), my0=pm(i4,m4); {zz1*a1,zz2,a2} 008C 21A00F 132 mr = mr-mx0*my0(su); my0 = pm(i4,m4); {+zz2*a2,b0} 008D 500060 008E 20580F 133 mr = mr(rnd);
Release 5.1 Assembler Version 1.34 6/6/94 C:\ADI_DSP\21XX\BIN\C:\DOCUME~1\Admin\0016~1\BIHSKR\Edit1.for Sat Jun 13 17:59:00 2020 Page 4 addr inst source line
008F 050000 134 if mv sat mr; 0090 6000A5 135 ar=dm(i1,m1); 0091 6800A7 136 dm(i1,m3) = ar; 0092 6800C5 137 dm(i1,m1) = mr1; 0093 090005 138 modify(i1,m1); 139 0094 01801C 140 vivod:io(1) = mr1; 0095 0A001F 141 rti; 142 143 144.endmod;
|
||||||
Последнее изменение этой страницы: 2021-07-18; просмотров: 83; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.21.76.0 (0.018 с.) |