Як рахувати дані з пам’яті програм
Ви переглядаєте архів форуму.
Автор: akmal () Дата: 12/02/2005 10:32
Почав вивчати PIC 16f84, дещо виходить. Але постала проблема, як витягнути дані з пам'яті програм (не ОЗУ). У програмі пишу
lb1 data 1, 2, 3, 4
Дивлюся лістинг там все чудово відкладається, а ось як витягти ці дані з пам'яті не можу зрозуміти.
Автор: abivan () Дата: 12/02/2005 10:49
Автор: Bill () Дата: 12/02/2005 10:57
Для організації таблиць у пам'яті програм рекомендую користуватися директивою асемблераdt. Це дозволить позбутися виписування численних retlw.
Автор: akmal () Дата: 12/02/2005 11:33
Ось маленький код із програми
#define bank0 bcf STATUS,RP0 ;Вибір банку 0
#define bank1 bsf STATUS,RP0 ;Вибір банку 1
ЩО У МЕНЕ НЕ ТАК ПІДКАЖИТЬ.
Автор: abivan () Дата: 12/02/2005 11:48
фітонівський макроасемблер. прога писана мною 5 років тому.
Або чекай, поки асмісти на роботу вийдуть.
Автор: Zirus () Дата: 12/02/2005 12:52
Треба робити, як сказав abivan.
йдучи, гасіть усіх
Автор: Bill () Дата: 12/02/2005 13:17
пам'ять програм та EEPROM ДАНИХ. Як працювати з пам'яттю програм описано у будь-якому DS. Див. обчислювальний оператор GOTO .
Автор: amyp () Дата: 25/02/2005 12:09
я ось чого не зрозумів: Ви все пишете про запис даних у програмну пам'ять, тоді як треба вважати ці дані з пам'яті в який-небудь регістр даних.
Автор: amyp () Дата: 25/02/2005 12:12
людина взагалі мала на увазі не програмну пам'ять, а eeprom пам'ять даних
Автор: amyp () Дата: 25/02/2005 14:27
хм. я правильно зрозумів логіку роботи програми:
movwf Tmp movlw ($+7) SHR 8 movwf PCLATH
-Це задається усунення в стеку?
movwf PCLATH movlw ($ + 5) AND 00FFh addwf Tmp,W btfsc C incf PCLATH movwf PCL
а далі сама таблиця?
Автор: AL () Дата: 25/02/2005 15:43
Автор: amyp () Дата: 25/02/2005 17:00
Дякую:-) Так набагато зрозуміліше! Просто я іноді у своїх програмах за місяць не можу розібратися за місяць, якщо коментарів не наставлю:-))) А вже в чужих.