MicroCHIP.RU
Главная Документация Отладочные средства Справочник Поиск Ссылки
 Новости   Конференция   Контакты 
 

Макросы - первый раз, в первый класс...:)

 Нoвaя темa  |  Наверх  |  Перейти к теме  |  Поиск  |  Правила  |  Вход 

ВНИМАНИЕ!
Вы просматриваете архив форума.

Этот форум работает только в режиме просмотра и поиска.

Действующий форум переведен на новый движок и
находится по адресу www.microchip.su

 Макросы - первый раз, в первый класс...:)
Автор: Wud ()
Дата:   08/03/2004 19:13

Вот чувствую, что аргументы надо как-то по хитрому объявлять/подставлять, но толком
не выходит ничего.

Чего они ко мне пристали - ошибка да ошибка...?
Error[122] ~WASM1.ASM 105 : Illegal opcode (PORTB)

cblock 0x70
 TIn                 ; InOut Translate
endc

#define Bt      PORTB,3 ; Button
#define SL      PORTB,2 ; system led

Loop
 InState Bt
 btfss   TIn,0
 goto    $+3
 bsf     SL
 goto    $+2
 bcf     SL
goto    Loop

InState macro X
 btfsc   X
 goto    $+6
 call    Delay_45uS
 btfsc   X
 goto    $+3
 bsf     TIn,0
 goto    $+2
 bcf     TIn,0
endm




Отправка отредактированного (08/03/2004 19:19)


 
 Re: Макросы - первый раз, в первый класс...:)
Автор: Zemfir ()
Дата:   08/03/2004 19:35

доку скачайте, там все подробно описано


 
 Огромное спасибо за ссылку.. а нельзя так ответить?
Автор: Wud ()
Дата:   08/03/2004 19:42

Наверное я доки скачал?
Читаю не вижу, чувствую, что туплю, но не хочу откладывать на потом эти разборки с
подробнейшим изучением каждой строки документации, вот и спрашиваю.




 
 Re: Огромное спасибо за ссылку.. а нельзя так ответить?
Автор: Zemfir ()
Дата:   08/03/2004 19:55

Wud писал(а):

> Наверное я доки скачал?

не знаю.

знаю что в доке все подробно
описано.

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


 
 в данном случае, просмотр листинга решит все проблемы.
Автор: Zemfir ()
Дата:   08/03/2004 20:01

	include  p16F877.inc

	cblock 0x70
TIn                 ; InOut Translate
	endc

#define Bt      PORTB,3 ; Button
#define SL      PORTB,2 ; system led

InState	macro	X, Y
	btfsc   X, Y
	goto    $+6
	call    Delay_45uS
	btfsc   X, Y
	goto    $+3
	bsf     TIn,0
	goto    $+2
	bcf     TIn,0
	endm


Loop
	InState Bt
	btfss   TIn,0
	goto    $+3
	bsf     SL
	goto    $+2
	bcf     SL
	goto    Loop


Delay_45uS
	return

	end



 
 спасибо, вообще уже сам дошел до этого
Автор: Wud ()
Дата:   08/03/2004 20:09

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