Перейти к содержанию
    

Старая связка ВЕ31 и РФ2

День добрый.

Не пинайте за РФ2...

Проблема в следующем. При выполнение простого кода на асм (сам код прикреплён файлом) в классической 80с31 возникает непонятная ситуация: после появления отрицательного импульса на Р3.3 и его пропадания, появляется отрицательный импульс на Р1.2, а после него на Р1.3.

Но это согласно программы, а на самом деле импульс на Р3.3 повторяется ещё два раза внутри импульса на Р1.2 и только потом появляется импульс на Р1.3 (как и должен появится согласно программы)

 

Р3.3 ~~~~~~~~|_|~~~~~~~~|_|~~~~~~~~|_|~~~~~~~~~~~~~~~~

 

P1.2 ~~~~~~~~~~~~~~|________________________|~~~~~~~~~~~~

 

P2.2 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|______|~~~~~~~

 

Как понимать такое поведение программы? Может это связано с необходимостью выравнивания кода на странице (256)?

Ltest_7_FORUM.txt

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

То, что вы нарисовали и написали, не совпадает с тем, что в программе.

В программе, если убрать "заполнитель памяти FF", остаётся вот что:

 

P1    = 11111110
P1    = 11111101

P3.2 = 0
P3.2 = 1

P3.3 = 0
P3.3 = 1

P1    = 11111011
P1    = 11110111

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Не пинайте за РФ2...

 

Извините, но вас не за РФ2 "пинать" надо (кстати, что не так с РФ2?), а за код в приложенном файле. Что еще за "заполнитель памяти"? Неужели циклом нельзя было это записать в 2-3 строки?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Дело вот в чём. Сама программа сложнее и зашивается в РФ 2 с изменением адресов (а0 cтановится А7, А1-А6, А2-А5 и т.д.). Так удобней было паять. :-) Но программа не заработала. Было предположение что из-за ошибок монтажа.

Для выяснения причины была написана программа, которую я привел. Но она заработала со странностями, которые я описал выше. Я пробовал её зашить нормально (А0-А0, А1-А1,....) эффект тот же. В самом начале она исполняется как и должна (поэтому и не описывал начало), а в конце выдаёт такие фокусы. Всё это просматривается на осциллографе в 2 луча. Могу предоставить фото.

Заполнител памяти необходим для "записи" в РФ2 кода FF (для сохранения ресурса ячеек) и "удлинения" программы до страницы (256).

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1. Заполнять память FF-ами не нужно, проверьте опции своего ассемблера, там можно задать заполнение неиспользуемых участков.

2. Заставлять программу проходить нерабочую область не есть грамотное решение

3. Команды CLR PX.Y, SETB PX.Y работают в режиме "чтение-модификация-запись", вы учли это в своей аппаратуре и в основной программе?

4. Между setb p3.3 и последующей программой с 0FCh есть пустые участки? Некорректно перед .org не иметь команды безусловного перехода

 

В общем, пока нет нормального текста программы, обсуждать нечего. Фокус с адресами также непонятен и тоже очень может быть, что некорректен. В процессоре имеется нормальный счетчик команд, дергающий (при линейном коде) A0 в каждом цикле, A7 - раз в 128 циклов, вы хотите изменить логику его работы?

Изменено пользователем V_G

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1. У меня простой ассемблер ...

2. Это не рабочая программа, а тестовая. В рабочих я так не делаю.

3. Над режимом "чтения-модификация-запись" подумаю дополнительно, но как режим работы этих команд может повлиять на суть если на выводе сидит только щуп осциллографа!?

4. Не понял, где пустые участки? После 0FCh есть небольшой кусочек кода и безусловный прыжок на старт... После ORG 0200h, программы нет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Что, ни у кого ни каких соображений!? :(

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Да вряд ли у кого такой набор остался, лет 15 назад - ещё куда ни шло. Плюс ультрафиолетовая лампочка...

Практический смысл сей затеи? Ремонт чего-то древнего?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1. У меня простой ассемблер ...

И у меня простой ассемблер, TASM 1987 года. Почитайте доку к своему

 

4. Не понял, где пустые участки? После 0FCh есть небольшой кусочек кода и безусловный прыжок на старт... После ORG 0200h, программы нет.

1. Участок, что вы заполнили ff-ами - пустой. Перед ним не стоит никаких jmp

2. Перед org 0FCh тоже нет никакого jmp, а там вполне может оказаться пустой участок (не компилировал программу, не знаю)

3. У вас метка start находится по адресу 0, а вся область векторов прерываний заполнена nop-ами, что тоже сильно неправильно

 

4. Режим "чтение-модификация-запись" сильно чувствителен к аппаратуре. Очень может быть, что и к щупу осциллографа. А к прямо подклюенной базе транзистора (например) - особенно. Можно заставить переключаться транзистор командами, не использующими этот режим, а при setb, clr будут сплошные глюки

Изменено пользователем V_G

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

У меня сложилось впечатление что я тут говорю на каком то другом языке, то что я хочу донести воспринимается в искаженном виде... :(

Программа, которую я привёл, тестовая и служит для проверки монтажа адрессной шины. Её задача просто работать как есть, что бы можно было понять что адресная шина с А0 по А7 подходит к РФ2 правильно и перебор адресов верный. Другая (предыдущая) тестовая программа просто выводила бегуший 0 в порту Р1, но она была короткой.

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

Проверить программу я прошу на любом (современном) наборе где есть весь необходимый набор портов. У меня есть набор Infineon с868, но в нём нет нужных портов, так как кристал урезанный. Основную программу (тут я её не приводил), для которой всё и затевалось с небольшими доработками под набор с868, я проверял на этом наборе и она работает как и должна...

 

 

 

 

 

LTEST_7 TESTER Meandr PAGE 1

 

1 ;=============================================================================

2 ;=============================================================================

3 ;

4 ;

5 ;

6 ;  

7 ;

8 ;

9 ;

10 ;

11 ;

12 ;;=============================================================================

13 $Title(TESTER Meandr)

14 ;$Date(07-11-2010)

15 $MOD51 ; ROMAN 51

16

17

0000 18 ORG 0000h

0000 78FE 19 start: mov R0,#11111110b ;

0002 8890 20 mov p1,R0 ;

0004 78FD 21 mov R0,#11111101b ;

0006 8890 22 mov p1,R0 ;

0008 00 23 nop

0009 00 24 nop

000A 00 25 nop

000B 00 26 nop

000C 00 27 nop

000D 00 28 nop

000E 00 29 nop

000F 00 30 nop

31 ;-----------------------

32 ;-----------------------

0010 00 33 nop

0011 00 34 nop

35 ;-----------------------

0012 C2B2 36 CLR P3.2 ;

0014 D2B2 37 setb P3.2 ;

38 ;-----------------------

0016 FF 39 mov R7,A ;‡ Ї®«­ЁвҐ«м Ї ¬пвЁ FF

0017 FF 40 mov R7,A ; 4 Ў ©в

0018 FF 41 mov R7,A ;

0019 FF 42 mov R7,A ;8

43 ;-----------------------

44 ;-----------------------

001A FF 45 mov R7,A ;1

001B FF 46 mov R7,A ;

001C FF 47 mov R7,A ;

001D FF 48 mov R7,A ;‡ Ї®«­ЁвҐ«м Ї ¬пвЁ FF

001E FF 49 mov R7,A ; 8 Ў ©в

001F FF 50 mov R7,A ;

0020 FF 51 mov R7,A ;

0021 FF 52 mov R7,A ;8

53 ;-----------------------

54 ;-----------------------

0022 FF 55 mov R7,A ;1

0023 FF 56 mov R7,A ;

0024 FF 57 mov R7,A ;

0025 FF 58 mov R7,A ;‡ Ї®«­ЁвҐ«м Ї ¬пвЁ FF

LTEST_7 TESTER Meandr PAGE 2

 

0026 FF 59 mov R7,A ; 8 Ў ©в

0027 FF 60 mov R7,A ;

0028 FF 61 mov R7,A ;

0029 FF 62 mov R7,A ;8

63 ;-----------------------

64 ;-----------------------

002A FF 65 mov R7,A ;1

002B FF 66 mov R7,A ;

002C FF 67 mov R7,A ;

002D FF 68 mov R7,A ;‡ Ї®«­ЁвҐ«м Ї ¬пвЁ FF

002E FF 69 mov R7,A ; 8 Ў ©в

002F FF 70 mov R7,A ;

0030 FF 71 mov R7,A ;

0031 FF 72 mov R7,A ;8

73 ;-----------------------

74 ;-----------------------

0032 FF 75 mov R7,A ;1

0033 FF 76 mov R7,A ;

0034 FF 77 mov R7,A ;

0035 FF 78 mov R7,A ;‡ Ї®«­ЁвҐ«м Ї ¬пвЁ FF

0036 FF 79 mov R7,A ; 8 Ў ©в

0037 FF 80 mov R7,A ;

0038 FF 81 mov R7,A ;

0039 FF 82 mov R7,A ;8

83 ;-----------------------

84 ;-----------------------

003A FF 85 mov R7,A ;1

003B FF 86 mov R7,A ;

003C FF 87 mov R7,A ;

003D FF 88 mov R7,A ;‡ Ї®«­ЁвҐ«м Ї ¬пвЁ FF

003E FF 89 mov R7,A ; 8 Ў ©в

003F FF 90 mov R7,A ;

0040 FF 91 mov R7,A ;

0041 FF 92 mov R7,A ;8

93 ;-----------------------

94 ;-----------------------

0042 FF 95 mov R7,A ;1

0043 FF 96 mov R7,A ;

0044 FF 97 mov R7,A ;

0045 FF 98 mov R7,A ;‡ Ї®«­ЁвҐ«м Ї ¬пвЁ FF

0046 FF 99 mov R7,A ; 8 Ў ©в

0047 FF 100 mov R7,A ;

0048 FF 101 mov R7,A ;

0049 FF 102 mov R7,A ;8

103 ;-----------------------

104 ;-----------------------

004A FF 105 mov R7,A ;1

004B FF 106 mov R7,A ;

004C FF 107 mov R7,A ;

004D FF 108 mov R7,A ;‡ Ї®«­ЁвҐ«м Ї ¬пвЁ FF

004E FF 109 mov R7,A ; 8 Ў ©в

004F FF 110 mov R7,A ;

0050 FF 111 mov R7,A ;

0051 FF 112 mov R7,A ;8

113 ;-----------------------

114 ;-----------------------

0052 FF 115 mov R7,A ;1

0053 FF 116 mov R7,A ;

LTEST_7 TESTER Meandr PAGE 3

 

0054 FF 117 mov R7,A ;

0055 FF 118 mov R7,A ;‡ Ї®«­ЁвҐ«м Ї ¬пвЁ FF

0056 FF 119 mov R7,A ; 8 Ў ©в

0057 FF 120 mov R7,A ;

0058 FF 121 mov R7,A ;

0059 FF 122 mov R7,A ;8

123 ;-----------------------

124 ;-----------------------

005A FF 125 mov R7,A ;1

005B FF 126 mov R7,A ;

005C FF 127 mov R7,A ;

005D FF 128 mov R7,A ;‡ Ї®«­ЁвҐ«м Ї ¬пвЁ FF

005E FF 129 mov R7,A ; 8 Ў ©в

005F FF 130 mov R7,A ;

0060 FF 131 mov R7,A ;

0061 FF 132 mov R7,A ;8

133 ;-----------------------

134 ;-----------------------

0062 FF 135 mov R7,A ;1

0063 FF 136 mov R7,A ;

0064 FF 137 mov R7,A ;

0065 FF 138 mov R7,A ;‡ Ї®«­ЁвҐ«м Ї ¬пвЁ FF

0066 FF 139 mov R7,A ; 8 Ў ©в

0067 FF 140 mov R7,A ;

0068 FF 141 mov R7,A ;

0069 FF 142 mov R7,A ;8

143 ;-----------------------

144 ;-----------------------

006A FF 145 mov R7,A ;1

006B FF 146 mov R7,A ;

006C FF 147 mov R7,A ;

006D FF 148 mov R7,A ;‡ Ї®«­ЁвҐ«м Ї ¬пвЁ FF

006E FF 149 mov R7,A ; 8 Ў ©в

006F FF 150 mov R7,A ;

0070 FF 151 mov R7,A ;

0071 FF 152 mov R7,A ;8

153 ;-----------------------

154 ;-----------------------

0072 FF 155 mov R7,A ;1

0073 FF 156 mov R7,A ;

0074 FF 157 mov R7,A ;

0075 FF 158 mov R7,A ;‡ Ї®«­ЁвҐ«м Ї ¬пвЁ FF

0076 FF 159 mov R7,A ; 8 Ў ©в

0077 FF 160 mov R7,A ;

0078 FF 161 mov R7,A ;

0079 FF 162 mov R7,A ;8

163 ;-----------------------

164 ;-----------------------

007A FF 165 mov R7,A ;1

007B FF 166 mov R7,A ;

007C FF 167 mov R7,A ;

007D FF 168 mov R7,A ;‡ Ї®«­ЁвҐ«м Ї ¬пвЁ FF

007E FF 169 mov R7,A ; 8 Ў ©в

007F FF 170 mov R7,A ;

0080 FF 171 mov R7,A ;

0081 FF 172 mov R7,A ;8

173 ;-----------------------

174 ;-----------------------

LTEST_7 TESTER Meandr PAGE 4

 

0082 FF 175 mov R7,A ;1

0083 FF 176 mov R7,A ;

0084 FF 177 mov R7,A ;

0085 FF 178 mov R7,A ;‡ Ї®«­ЁвҐ«м Ї ¬пвЁ FF

0086 FF 179 mov R7,A ; 8 Ў ©в

0087 FF 180 mov R7,A ;

0088 FF 181 mov R7,A ;

0089 FF 182 mov R7,A ;8

183 ;-----------------------

184 ;-----------------------

008A FF 185 mov R7,A ;1

008B FF 186 mov R7,A ;

008C FF 187 mov R7,A ;

008D FF 188 mov R7,A ;‡ Ї®«­ЁвҐ«м Ї ¬пвЁ FF

008E FF 189 mov R7,A ; 8 Ў ©в

008F FF 190 mov R7,A ;

0090 FF 191 mov R7,A ;

0091 FF 192 mov R7,A ;8

193 ;-----------------------

194 ;-----------------------

0092 FF 195 mov R7,A ;1

0093 FF 196 mov R7,A ;

0094 FF 197 mov R7,A ;

0095 FF 198 mov R7,A ;‡ Ї®«­ЁвҐ«м Ї ¬пвЁ FF

0096 FF 199 mov R7,A ; 8 Ў ©в

0097 FF 200 mov R7,A ;

0098 FF 201 mov R7,A ;

0099 FF 202 mov R7,A ;8

203 ;-----------------------

204 ;-----------------------

009A FF 205 mov R7,A ;1

009B FF 206 mov R7,A ;

009C FF 207 mov R7,A ;

009D FF 208 mov R7,A ;‡ Ї®«­ЁвҐ«м Ї ¬пвЁ FF

009E FF 209 mov R7,A ; 8 Ў ©в

009F FF 210 mov R7,A ;

00A0 FF 211 mov R7,A ;

00A1 FF 212 mov R7,A ;8

213 ;-----------------------

214 ;-----------------------

00A2 FF 215 mov R7,A ;1

00A3 FF 216 mov R7,A ;

00A4 FF 217 mov R7,A ;

00A5 FF 218 mov R7,A ;‡ Ї®«­ЁвҐ«м Ї ¬пвЁ FF

00A6 FF 219 mov R7,A ; 8 Ў ©в

00A7 FF 220 mov R7,A ;

00A8 FF 221 mov R7,A ;

00A9 FF 222 mov R7,A ;8

223 ;-----------------------

224 ;-----------------------

00AA FF 225 mov R7,A ;1

00AB FF 226 mov R7,A ;

00AC FF 227 mov R7,A ;

00AD FF 228 mov R7,A ;‡ Ї®«­ЁвҐ«м Ї ¬пвЁ FF

00AE FF 229 mov R7,A ; 8 Ў ©в

00AF FF 230 mov R7,A ;

00B0 FF 231 mov R7,A ;

00B1 FF 232 mov R7,A ;8

LTEST_7 TESTER Meandr PAGE 5

 

233 ;-----------------------

234 ;-----------------------

00B2 FF 235 mov R7,A ;1

00B3 FF 236 mov R7,A ;

00B4 FF 237 mov R7,A ;

00B5 FF 238 mov R7,A ;‡ Ї®«­ЁвҐ«м Ї ¬пвЁ FF

00B6 FF 239 mov R7,A ; 8 Ў ©в

00B7 FF 240 mov R7,A ;

00B8 FF 241 mov R7,A ;

00B9 FF 242 mov R7,A ;8

243 ;-----------------------

244 ;-----------------------

00BA FF 245 mov R7,A ;1

00BB FF 246 mov R7,A ;

00BC FF 247 mov R7,A ;

00BD FF 248 mov R7,A ;‡ Ї®«­ЁвҐ«м Ї ¬пвЁ FF

00BE FF 249 mov R7,A ; 8 Ў ©в

00BF FF 250 mov R7,A ;

00C0 FF 251 mov R7,A ;

00C1 FF 252 mov R7,A ;8

253 ;-----------------------

254 ;-----------------------

00C2 FF 255 mov R7,A ;1

00C3 FF 256 mov R7,A ;

00C4 FF 257 mov R7,A ;

00C5 FF 258 mov R7,A ;‡ Ї®«­ЁвҐ«м Ї ¬пвЁ FF

00C6 FF 259 mov R7,A ; 8 Ў ©в

00C7 FF 260 mov R7,A ;

00C8 FF 261 mov R7,A ;

00C9 FF 262 mov R7,A ;8

263 ;-----------------------

264 ;-----------------------

00CA FF 265 mov R7,A ;1

00CB FF 266 mov R7,A ;

00CC FF 267 mov R7,A ;

00CD FF 268 mov R7,A ;‡ Ї®«­ЁвҐ«м Ї ¬пвЁ FF

00CE FF 269 mov R7,A ; 8 Ў ©в

00CF FF 270 mov R7,A ;

00D0 FF 271 mov R7,A ;

00D1 FF 272 mov R7,A ;8

273 ;-----------------------

274 ;-----------------------

00D2 FF 275 mov R7,A ;1

00D3 FF 276 mov R7,A ;

00D4 FF 277 mov R7,A ;

00D5 FF 278 mov R7,A ;‡ Ї®«­ЁвҐ«м Ї ¬пвЁ FF

00D6 FF 279 mov R7,A ; 8 Ў ©в

00D7 FF 280 mov R7,A ;

00D8 FF 281 mov R7,A ;

00D9 FF 282 mov R7,A ;8

283 ;-----------------------

284 ;-----------------------

00DA FF 285 mov R7,A ;1

00DB FF 286 mov R7,A ;

00DC FF 287 mov R7,A ;

00DD FF 288 mov R7,A ;‡ Ї®«­ЁвҐ«м Ї ¬пвЁ FF

00DE FF 289 mov R7,A ; 8 Ў ©в

00DF FF 290 mov R7,A ;

LTEST_7 TESTER Meandr PAGE 6

 

00E0 FF 291 mov R7,A ;

00E1 FF 292 mov R7,A ;8

293 ;-----------------------

294 ;-----------------------

00E2 FF 295 mov R7,A ;1

00E3 FF 296 mov R7,A ;

00E4 FF 297 mov R7,A ;

00E5 FF 298 mov R7,A ;‡ Ї®«­ЁвҐ«м Ї ¬пвЁ FF

00E6 FF 299 mov R7,A ; 8 Ў ©в

00E7 FF 300 mov R7,A ;

00E8 FF 301 mov R7,A ;

00E9 FF 302 mov R7,A ;8

303 ;-----------------------

304 ;-----------------------

00EA FF 305 mov R7,A ;1

00EB FF 306 mov R7,A ;

00EC FF 307 mov R7,A ;

00ED FF 308 mov R7,A ;‡ Ї®«­ЁвҐ«м Ї ¬пвЁ FF

00EE FF 309 mov R7,A ; 8 Ў ©в

00EF FF 310 mov R7,A ;

00F0 FF 311 mov R7,A ;

00F1 FF 312 mov R7,A ;8

313 ;-----------------------

314 ;-----------------------

00F2 FF 315 mov R7,A ;1

00F3 FF 316 mov R7,A ;

00F4 FF 317 mov R7,A ;

00F5 FF 318 mov R7,A ;‡ Ї®«­ЁвҐ«м Ї ¬пвЁ FF

00F6 FF 319 mov R7,A ; 6 Ў ©в

00F7 FF 320 mov R7,A ;8

321 ;-----------------------

322 ;-----------------------

00F8 C2B3 323 CLR P3.3 ;

00FA D2B3 324 setb P3.3 ;

325 ;-----------------------

326 ;====================================

00FC 327 ORG 00FCh

328 ;====================================

00FC 78FB 329 mov R0,#11111011b ;

00FE 8890 330 mov p1,R0 ;

331 ;====================================

0100 332 ORG 0100h

333 ;====================================

0100 78F7 334 mov R0,#11110111b ;

0102 8890 335 mov p1,R0 ;

0104 0100 336 ajmp start ;

337 ;====================================

0200 338 ORG 0200h

339 ;====================================

340

341 ;====================================

0300 342 ORG 0300h

343 ;====================================

344

345 ;====================================

0400 346 ORG 0400h

347 ;====================================

348

LTEST_7 TESTER Meandr PAGE 7

 

349 ;====================================

0500 350 ORG 0500h

351 ;====================================

352

353 ;====================================

0600 354 ORG 0600h

355 ;====================================

356

357 ;====================================

0700 358 ORG 0700h

359 ;====================================

360

361 ;====================================

07FD 362 ORG 07FDh

363 ;====================================

364

365

366

367

368 ;=============================================================================

 

369 ;=============================================================================

370 ;

371 ;

372 ;

373 ;

374 ;

375 ;=============================================================================

376 ; Reset and Interrupt Vectors

377 ;=============================================================================

378 ; setb P3.4 ;

379 ; setb P3.4 ;

380 ; setb P3.4 ;

381 ;

382

383

384

385 ;=============================================================================

386 ;=============================================================================

387 ;=============================================================================

388 ;=============================================================================

389 END

390

391

392

393

394

395

396

397

398

399

400

401

402

403

404

405

LTEST_7 TESTER Meandr PAGE 8

 

406

 

VERSION 1.2h ASSEMBLY COMPLETE, 0 ERRORS FOUND

LTEST_7 TESTER Meandr PAGE 9

 

P1 . . . . . . . . . . . . . . . D ADDR 0090H PREDEFINED

P3 . . . . . . . . . . . . . . . D ADDR 00B0H PREDEFINED

START. . . . . . . . . . . . . . C ADDR 0000H

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...