Na lang zoeken op het form vond ik niet echt het andwoord op men vraag

ik zou een software matige pwm moeten maken voor 4 kanalen


main
		
		CLEAR	PWMCOUNTER
		BSF		OUT1
		BSF		OUT2
		BSF		OUT3
		BSF		OUT4
		CALL	PWM
		GOTO	main
PWM
;KANAAL1
	MOVF	Reg2,W
	XORWF	PWMCOUNTER
	BTFSC	STATUS,Z
	BCF		OUT1

;KANAAL2
	MOVF	Reg3,W
	XORWF	PWMCOUNTER
	BTFSC	STATUS,Z
	BCF		OUT2
;KANAAL3
	MOVF	Reg4,W
	XORWF	PWMCOUNTER
	BTFSC	STATUS,Z
	BCF		OUT3
;KANAAL4
	MOVF	Reg5,W
	XORWF	PWMCOUNTER
	BTFSC	STATUS,Z
	BCF		OUT4

	INCFSZ	PWMCOUNTER
	GOTO	PWM
	return

dit stukje heb ik al maar werkt niet goed
dit doet wel iets dan flikkeren zo wat alle leds maar het dimt niet mooi
pic 16f628a 20MHz
Kunnen jullie me helpen ?

Die XORWF's zou de assembler foutmeldingen op moeten geven, want er staat geen destination achter vermeld.

Het nut van de XORWF's ontgaat me trouwens ook, maar dat zal vast aan mij liggen ;)
Een SUBWF lijkt me logischer i.p.v. een XORWF.

heb het net even geprobeerd hij doet het nog niet
nog geen mooi pwm :(
alle led blikkeren zo wat als ik in een Reg iets in zet :(

Staat er dan al een destination achter de xorlw of sublw. Default is namelijk f en dat is in dit geval niet wenselijk. Zet er dus ,w achter.

ik heb het geprobeerd maar geeft heel rare dingen maaar nog geen pwm :(

Heb je die destination er nu achter gezet?
Welke assembler gebruik jij, kijk je wel naar de errors die er gegeven worden door MPLAB?
Of laat je die gewoon staan en dan vind je 't gek dat de code niet werkt?

Ik heb het progje laten draaien in de simulator van MPLAB, en 't werkt perfect nadat ik de (syntax-) errors eruit heb gehaald.


main
		
		CLRf	PWMCOUNTER
		BSF		OUT1
		BSF		OUT2
		BSF		OUT3
		BSF		OUT4
		CALL	PWM
		GOTO	main
PWM
;KANAAL1
            MOVF	Reg2,W
    	    XORWF	PWMCOUNTER,0
    	    BTFSC	STATUS,Z
	    BCF		OUT1

;KANAAL2
	    MOVF	Reg3,W
    	    XORWF	PWMCOUNTER,0
	    BTFSC	STATUS,Z
	    BCF		OUT2
;KANAAL3
	    MOVF	Reg4,W
	    XORWF	PWMCOUNTER,0
	    BTFSC	STATUS,Z
	    BCF		OUT3
;KANAAL4
	    MOVF	Reg5,W
	    XORWF	PWMCOUNTER,0
	    BTFSC	STATUS,Z
	    BCF		OUT4

	    INCFSZ	PWMCOUNTER,f
	    GOTO	PWM
	return

oke ik ga eens testen :)
net getest als ik 0 in geef gaat de led aan eens als het register niet meer 0 is gaat de led uit en blijft uit :(

Raar het het bij u wel werkt
Kan het zijn dat dit door de interupt van de uart komt ?
dat dit niet werkt ?

[Bericht gewijzigd door nonkel_dw op (81%)]