Вс дек 05, 2010 17:59:07
; ГРУППА КОМАНД ПРЕОБРАЗОВАНИЯ ДВОИЧНО-ДЕСЯТИЧНОГО КОДА В КОД 7-СЕГМЕНТНОГО ИНДИКАТОРА
TABLE
org 0x100
andlw 0x0F
addwf PC,F ; Содержимое счетчика команд PC увеличивается
; на величину содержимого аккумулятора W.
retlw b'00111111' ; ..FEDCBA = 0 Происходит скачек по таблице
retlw b'00000110' ; .....CB. = 1 на строку со значением,
retlw b'01011011' ; .G.ED.BA = 2 записанным в аккумуляторе,
retlw b'01001111' ; .G..DCBA = 3 и далее - возврат по стеку.
retlw b'01100110' ; .GF..CB. = 4
retlw b'01101101' ; .GF.DC.A = 5
retlw b'01111101' ; .GFEDC.A = 6
retlw b'00000111' ; .....CBA = 7
retlw b'01111111' ; .GFEDCBA = 8
retlw b'01101111' ; .GF.DCBA = 9
retlw 0
retlw 0
retlw 0
retlw 0
retlw 0
retlw 0
;**********************************************************************************************
end ; Конец программы.
org 0xFE
movlw 5
addwf PCL,F ; PC станет 0x0005, а не 0x0105, как казалось вначале
Вс дек 05, 2010 18:25:35
По расположению таблицы в памяти программ:
Вс дек 05, 2010 18:43:14
dr.doc писал(а):Пробовал в новой версии создать проект с использованием данного кода, так он даже не компилирует. Сразу пишет: Ошибка компиляции. Может я чего не доустановил?
include "P16F84.inc"
dr.doc писал(а):...(насколько я понял про страницу - это номера строк исполняемого кода, и переход командой call корректно не работает при "перескоке")
Вс дек 05, 2010 18:54:36
dr.doc писал(а):При попытке переназначить место расположения org 0x100, компилирования не происходит, выдается ошибка "переназначение адреса". Во время работы моего исходного кода переход на метку TABLE происходит, но следующий шаг, вместо выбора значения из таблицы, сразу перескакивает обратно со смещением.
org 0
goto reset
org 4
goto isr
TABLE
. ;подпрограмму с вычисляемыми переходами расположить тут
. ;org 0x100 естественно не нужно :)
.
reset
. ;основная программа тут
.
.
isr
. ;обработчик прерываний тут
.
.
Вс дек 05, 2010 19:21:12
org 0
nop
nop
org 1
movlw 1
Вс дек 05, 2010 21:00:03
Пн дек 06, 2010 20:36:34
Чт мар 03, 2011 13:31:44
Чт мар 03, 2011 13:40:13
Чт мар 03, 2011 13:47:45
Чт мар 03, 2011 14:17:20
Интересно, где Вы её вообще нашли, и кто Вам посоветовал её ставить?Midori писал(а):скачиваю MPLAB 5.40.70
Пт мар 04, 2011 00:56:11
Dmitry Dubrovenko писал(а): и кто Вам посоветовал её ставить?
Пт мар 04, 2011 17:16:36
К@Т писал(а):Скачайтё поновее,хотябы 7.50.Ваша версия вешает комп изза того что не находит лпт(у вас есть лпт порт?),если в установке отллючить привязку к лпт,то запуститса,но симулятор будет тормозить. Эта точно заработает,качайте смело http://ww1.microchip.com/downloads/en/DeviceDoc/mp750.zip,
Пт мар 04, 2011 17:28:13
А за одно и файла Samouchitel.pdf вместе с его дебильным сайтом.dosikus писал(а):Пора антивирусникам сигнатуры MPLAB 5.40.70 подкинуть...
Пн мар 07, 2011 13:37:21
Учтите только, что "весят" они более 100Mb, и, если включён резидентный модуль антивирусника, будут довольно долго проверяться (из-за наличия большого количества запакованных файлов).Midori писал(а):Скачаю
Вт мар 29, 2011 11:26:37
Вт мар 29, 2011 11:46:49
Вт мар 29, 2011 13:21:36
Вт мар 29, 2011 13:42:55
Нет, это очень просто. Причем настолько, что возникает вопрос, почему вы не можете это сделать самостоятельно.M*O*N*O*L*I*T писал(а):это так сложно что за это надо платить 25$?
Бескорыстные люди видать кончились
cycle:
movf porta, w
andlw b'00000011'
addwf pcl
goto cycle
goto set_a
goto set_b
goto cycle
set_a:
movlw 1<<0
movwf portb
goto cycle
set_b:
movlw 1<<1
movwf portb
goto cycle
Вт мар 29, 2011 17:45:04