Activity

pic 12c508 замена на аналоги
Voldemaar:
  1. Если строчки убрать из кода - всё отлично получается.
  2. Если их оставить - то как раз по адресу 01FF и вылазит 0A00.
    А как я писал:

Вы знаете, что такое калибровочная константа? Просто тяжело рассуждать о решении дифуров с тем, кто не знает даже таблицу умножения

Вы хотите посеовноваться со мной в решении диф.уров? это как раз у меня намного лучше получаетя чем програмирование;-)
Что такое калибровочная констатнта если честно не знаю…но в дебугере если убрать эти 2 строчки, то программа начинает работать совершенно неадекватно

pic 12c508 замена на аналоги

Еще раз залил эту же прошивку в контроллер. снова вылезла ошибка:
Ошибка по адресу 00001FF: записано 0800 вместо 0А00
затем друг за другом выскочили:
ошибка верификации(5.5в)
ошибка верификации(3.0в)

Чтобы это все значило…програматор PicProg

pic 12c508 замена на аналоги

ТО есть можно откомпилировать этот код и залить его в контроллер?.. 😕 тогда в чем проблема? я его залил в контроллер, контроллер вставил в схему, а она категорически отказывается работать…при этом контроллер до прошивки был чистым(проверял), а при записи выдал ошибку какую-то(чето там про адрес памяти 0040h…что-то такое…)…но как понял она должна была вылезти…так что в чем проблема не знаю=(

pic 12c508 замена на аналоги

Доброго всем дня!
Помогите пожалуйста решить проблему:
Есть код под pic12c508:

;
;-----------PROGRAMM of TRAFFIC LIGHT------------
;
	list 	p=12c508
	__config H'000A'
	errorlevel 1
;
	incl*ude "d:\p12c508.inc";проверьте путь к файлу!
;
;----------- Constants -----------------
;
CLKOUT		=	.4000000/4
;
LSB		equ	0
MSB		equ	7
;
	org	07h
;
OutPort		res	1
Count		res	1
TimeCount	res	1
;
;------------------------------------
TRIS_GPIO	=	b'11001000'
;
;
;---------- GPIO Pin Name -------------
;
GreenRight	equ	0;output
GreenLeft	equ	1;output
Yellow		equ	2;output
Mode		equ	3; input
RedRight	equ	4;output
RedLeft		equ	5;output

LIGHT	MACRO	RL, RR, Y, GL, GR, TIME
;
	IF	RL == 1
	bcf	OutPort, RedLeft
	ELSE
	bsf	OutPort, RedLeft
	ENDIF
;аналогично для "красного справа"
	IF	RR == 1
	bcf	OutPort, RedRight
	ELSE
	bsf	OutPort, RedRight
	ENDIF
;аналогично для "желтого"
	IF	Y  == 1
	bcf	OutPort, Yellow
	ELSE
	bsf	OutPort, Yellow
	ENDIF
;аналогично для "зеленого слева"
	IF	GL == 1
	bcf	OutPort, GreenLeft
	ELSE
	bsf	OutPort, GreenLeft
	ENDIF
;аналогично для "зеленого справа"
	IF	GR == 1
	bcf	OutPort, GreenRight
	ELSE
	bsf	OutPort, GreenRight
	ENDIF
;
	movf	OutPort, W
	movwf	GPIO
	IF	TIME != 0
	movlw	TIME
	ELSE
	movlw	1
	ENDIF
	movwf	TimeCount
	call	TimeEnd
	ENDM
;
;-------------------- Start address ------------------------------
;
	org	01FF	;вектор сброса
	b	begin
	org	0	;начало
begin
	movlw	b'10000111';OPTION BYTE

	option
;
	movlw	TRIS_GPIO
		tris	GPIO
;
	movlw	0FF
	movwf	OutPort
	movwf	GPIO	;погасить все светодиоды
;
main
	btfss	GPIO, Mode;проверить режим (обычный <-> мигающий)
	b	PulseYellow
;			;обычный режим
	LIGHT	1,0,0,0,1, .20
	LIGHT	1,0,0,0,0, .1
	LIGHT	1,0,0,0,1, .1
	LIGHT	1,0,0,0,0, .1
	LIGHT	1,0,0,0,1, .1
	LIGHT	1,0,0,0,0, .1
	LIGHT	1,0,0,0,1, .1
	LIGHT	1,0,1,0,0, .4
	LIGHT	0,1,0,1,0, .20
	LIGHT	0,1,0,0,0, .1
	LIGHT	0,1,0,1,0, .1
	LIGHT	0,1,0,0,0, .1
	LIGHT	0,1,0,1,0, .1
	LIGHT	0,1,0,0,0, .1
	LIGHT	0,1,0,1,0, .1
	LIGHT	0,1,1,0,0, .4
	b	main
PulseYellow
	LIGHT	0,0,1,0,0, .1
	LIGHT	0,0,0,0,0, .1
	b	main
; -------
TimeEnd
	movlw	.500000/.256/.256
	movwf	Count
TimePlus
	movlw	1
	movwf	TMR0
TimeLoop
	nop
	movf	TMR0, W
	bnz	TimeLoop
	decfsz	Count, F
	b	TimePlus
	decfsz	TimeCount, F
	b	TimeEnd
	return
;=================================================================
;
	END

Ну так вот…как я понимаю для того чтобы записать этот код на pic 12c508a необходимо исправить строчу incl*ude? или я не правильно понимаю? просто я так делал…и запорол уже несколько контроллеров=(. Можно ли ли вместо pic12c508 использовать аналоги на флеш памяти(12f629,12f675)…и много ли при этом надо будет переделывать код?
Да и еще вопросик может ли picprog(мне его одолжили, так как больше ничего нет) прошивать 12f629 и 12f675? Ато как я понял после прочтения форума поддержка picprog прекратилась и он не поддерживает новые типы контроллеров…
Заранее примного благодарен.