Sari la conținut
ELFORUM - Forumul electronistilor

PIC 16f877A Led blink (sunt amator)


Vizitator ROCrysty

Postări Recomandate

  • Răspunsuri 25
  • Creat
  • Ultimul Răspuns

Top autori în acest subiect

  • Liviu M

    4

  • vcdec

    3

  • 10vid

    3

  • remus2509

    1

Top autori în acest subiect

Vizitator ROCrysty

Ma bag la reprogramat. Daca zici ca programul e ok (inafara de sectiunea delay) si circuitul e ok. revin imediat cu rezultatul.Nimic.. nu se inchide LED-ul dar si-a "pierdut" din putere cum am spus mai devreme... am folosit call Delay de 3 ori la deschidere si de 3 ori la inchidere

Link spre comentariu

Condensatoarele de la quarz chiar sunt de 100p? Cred ca-s cam mari, uChip zice 10-22 pF. Eu am testat cu 33p si a mers, da' 100 mi se par cam multi. Ai cum sa vezi daca oscilatorul chiar oscileaza (osciloscop)?

Link spre comentariu
Vizitator ROCrysty

Nu dispun de osciloscop. Am citit undeva ca nu conteaza cat de mare este un condensator de filtraj. Cu cat condensatorul e mai mare, cu atat filtrajul este mai bun dar, scare timpul de pornire al acestuia invers proportional cu marimea condensatorului.deci condensator mare = filtraj bun + start greoicondensator mic = filtraj slab dar start rapid. Am sa caut explicatia exacta si sa o postez aici. Atat timp cat LED-ul se aprinde inseamna ca pic-ul ruleaza programul deci se foloseste de oscilator...

Link spre comentariu
Vizitator ROCrysty

pai si atunci unde e problema? ii scot daca trebuie... mi-a luat 30 minute sa ii pun acolo :)) sunt mici si vai de mama lor. se incalzeau super repede de la statie.

 

Sa fie problema la programul de delay?

De ce nu inchide LED-ul?

 

A

EDIT: Am folosit

Hidden text: ON
Available only to registered users.
pentru cod...
Link spre comentariu
Vizitator ROCrysty

Am gasit problema... eu ma luat dupa picsimulator IDE.0.5 secunde in realitate acolo duteaza cam 1 minut. eu incercam sa il fac sa clipeasca in IDE si ma miram de ce nu merge in realitate.

Link spre comentariu
Vizitator ROCrysty

iar ma lovesc de programare...

 

Loop		bsf PORTA, 0	call Delay	bsf PORTA, 1	call Delay	bsf PORTA, 2	call Delay	bsf PORTA, 3		call Delay		bcf PORTA, 0	call Delay	bcf PORTA, 1	call Delay	bcf PORTA, 2	call Delay	bcf PORTA, 3		call	Delay	goto	Loop

Programul de mai sus i-mi aprinde 4 LED-uri pe rand

Cum fac sa le aprind pe toate odata?

Am incercat asa:

Loop		bsf PORTA, 0	bsf PORTA, 1	bsf PORTA, 2	bsf PORTA, 3		call	Delay			;this waits for a while!	bcf PORTA, 0	bcf PORTA, 1	bcf PORTA, 2	bcf PORTA, 3		call	Delay	goto	Loop

dar nu merge.(simulatorul inchide descide PORTA, 0 si cand trebuie sa il deschida pe PORTA, 1, il opreste pe A 0)

Am incercat sa le pun intr-un program si sa ii dau call, la fel nu merge.

 

Ce as putea sa fac? dati-mi macar o idee, nu vreau sa scrieti programul. Vreau sa muncesc la proiect... doar ca... ma lovesc de necunoscut, la fel ca orice incepator.

Link spre comentariu
Vizitator ROCrysty

Loop		movlw 0b0000000f	movwf PORTA		call	Delay	movlw	0b00000000	movwf	PORTA	call	Delay	goto	Loop

Buna ideea. comanda asta i-mi deschide exact ce am nevoie (0,1,2 si 3). In functie de cum modific movlw 0b0000000f i-mi aleg ce porturi vreau sa le deschid.

Multumesc de ajutor.

Link spre comentariu
  • 4 luni mai târziu...

Creează un cont sau autentifică-te pentru a adăuga comentariu

Trebuie să fi un membru pentru a putea lăsa un comentariu.

Creează un cont

Înregistrează-te pentru un nou cont în comunitatea nostră. Este simplu!

Înregistrează un nou cont

Autentificare

Ai deja un cont? Autentifică-te aici.

Autentifică-te acum



×
×
  • Creează nouă...

Informații Importante

Am plasat cookie-uri pe dispozitivul tău pentru a îmbunătății navigarea pe acest site. Poți modifica setările cookie, altfel considerăm că ești de acord să continui.Termeni de Utilizare si Ghidări