PIC16f84a Quarz;Takt funktioniert nicht?

Gast #1091854
Lesenswert?

Hallo erst mal.....
Hab ein riesen Problem mit meinem PIC.
Die Ausgabe normaler Zustände funktionieren alle.(also setze bit 1 von 
portb oder so).

Aber z.B. ein Blinklicht funktioniert nicht.
Auch ein Lauflicht nicht.
Daher denke ich es hat etwas mit der Taktversorgung zu tun.Warum auch 
immer.....
Die Led geht an......und bleibt an.....soll aber blinken!
Beim Lauflicht das selbe 1.led geht an...der rest nicht!

Die beiden Programme sind richtig geschrieben.Auf einer anderen
Testplatine funktionierten sie auch. Aber auf meiner nicht^^


Hier mal der Quellcode:
VON DEM BLINK-programm
(ich schreibs mal ohne Include....sondern mache Zuweisungen.)(wie gesagt 
es funktioniert egtl.)

;***********************************************
;Blink led
;27.12.08
;Andreas Prager
;***********************************************
;Grund-zw

  list  p=16f84
  radix  hex
;register-zw
  status  equ  03
  portb  equ  06
  trisb  equ  86
  d    equ  20
  e    equ  21
  f    equ  22
;Bit-zw
  rp0    equ  05
;***********************************************

    CLRF  portb
    bsf  status,rp0
    bcf  trisb,0
    bcf  status,rp0

start:          bsf  portb,0
    Call  up
    bcf  portb,0
    Call  up
    goto  start

;Pause:(ca.16sekunden....ziemlich lang..aber egal)
up:    movlw  d'255'
    movwf  f
vw:    movwf  e
neu:  movwf  d
again:  decfsz  d
    goto  again
    decfsz  e
    goto  neu
    decfsz  f
    goto  vw
    return
    end




So das isses........
In der schaltung seht ihr meine Quarz beschaltung.....den Rest bitte 
nicht betrachten.

So was noch wichtig wäre:
-Programmiere über Vellemann brenner.
-Betriebsspannung an meiner Testplatine: über 7805 kommen ca. 4,5V
-Quarz 4,000MHz
-Kondensatoren am Quarz: je 22pf



Danke im Vorraus für die Antworten
Angehängte Dateien:
Gast #1092467
Lesenswert?

nein die Kondensatoren hängen zwischen: OSC1 und Quarz
                                        OSC2 und Quarz
(siehe Bild......ist nicht meine schaltung...aber die Taktbeschaltung 
ist die selbe)

Beim Brennen setze ich das Kreuz bei: (01) XT Oscillator

(also quarz bis ca.4,000MHz)
Angehängte Dateien:
#1092817
Lesenswert?

Andreas Prager wrote:
> nein die Kondensatoren hängen zwischen: OSC1 und Quarz
>                                         OSC2 und Quarz
> (siehe Bild......ist nicht meine schaltung...aber die Taktbeschaltung
> ist die selbe)

Im Bild sind die Kondensatoren aber (richtigerweise) zwischen OSC1 und 
GND resp. OSC2 und GND.

Was stimmt jetzt?

Andere Frage: läuft das Programm im Simulator denn korrekt?
Gast #1092896
Lesenswert?

So wie in dem Bild hängen die Kondensatoren....hab mich vll. etwas 
seltsam oben ausgedrückt...sry

Im simulator läuft das programm richtig...und wie gesagt auch auf der 
anderen Testplatine.
#1093045
Lesenswert?

Andreas Prager wrote:

> Im simulator läuft das programm richtig...und wie gesagt auch auf der
> anderen Testplatine.

Sorry, letzteres habe ich übersehen.

Wenn eine Led angeht, dann heisst das doch, dass das Programm startet, 
denn bei einem Reset sind alle I/O-Pins als Eingang konfiguriert, und 
dann könnte keine Led leuchten.

Kannst Du mit einem Oszilloskop sehen, ob der Oszillator sauber läuft?
Andernfalls versuch es doch mal mit einem RC-Oszillator. Das hat den 
weiteren Vorteil, dass Du auf OSC2 den Takt/4 messen kannst, und dies 
ohne den Oszillator zu belasten.
Persönliche Seite #1093194
Lesenswert?

Kann es sein, dass du nur nicht lange genug wartest? Deine innere 
Warteschleife benötigt bei 4 MHz für einen Durchlauf (bis d=0 ist) 768 
Takte = 768µs. Insgesamt benötigt laut Stopwatch des Simulators deine 
gesamte Warteschleife knapp 50 Sekunden. Das liegt daran, dass der goto 
Befehl 2 Taktzyklen benötigt und der decfsz einen (bzw. 2, wenn er 
skipt). Warte doch einfach mal eine Minute und schau ob es daran liegt.

Schau dir auch mal die Programme von sprut.de an. Dort sind 
Warteschleifen, welche recht genau funktionieren.

Sven
Gast #1093227
Lesenswert?

>-Betriebsspannung an meiner Testplatine: über 7805 kommen ca. 4,5V

Ziemlich wenig Ausgangsspannung für einen 7805

>-Quarz 4,000MHz
>-Kondensatoren am Quarz: je 22pf

Waren das schon alle Teile?
Was ist mit Blockkondensatoren am 7805 und am uC?
Elko vor dem 7805? Wie sieht das Netzteil aus?
Gast #1093888
Lesenswert?

@sven:
hmm...ich schau mir die Pausen nochmal genau an...vielleicht stimmt da 
wirklich etwas nicht.

@Holger:
Das dachte ich ja auch...das evtl. sogar die Betriebsspannung was damit 
zu tun hat.
Ich hab einen Koppelkondensator für den µC aber am 7805 hab ich weder 
Elko noch Koppelkondensator......
( was macht der Elko? Glätten? stabilisieren?...)

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren