cosmin17 Postat Februarie 23, 2010 Partajează Postat Februarie 23, 2010 As vrea sa ma ajute si pe mine cineva care se pricepe la limbajul C, pentru a modifica un cod scris in acest limbaj.....codul face sa se aprinda un led pe pinul "b0", ceea ce doresc eu e sa mai adaug adaug 1-2 leduri pe alti pini, am incercat mai multe variante dar nu a functionat.#include <16F628.h>#use delay(clock=4M)void main(){while(1){ output_high(pin_b0); delay_ms(500); output_low(pin_b0); delay_ms(500);}} Link spre comentariu
nooob64 Postat Februarie 23, 2010 Partajează Postat Februarie 23, 2010 Nu stiu daca ar merge sau nu (depinde de functiile predefinite de compilator ,in mikroC e PORTB.F0=1 sau PORTB=0b00000001 pentru RB0 HIGH) , dar din cite vad eu output_high(pin_b0) si output_low(pin_b0) iti aprinde/stinge un led pe pinul RB0 cel mai simplu incearca sa modifici parametrul functiei output_high/low (pin_b0) cu pin_b1 ...7 , cel mai bine studiezi help'ul compilatorului . Link spre comentariu
A_L_E_X Postat Februarie 27, 2010 Partajează Postat Februarie 27, 2010 Tebuie sa functioneze daca scrii asa : #include <16F628.h>#use delay(clock=4M)void main(){while(1){output_high(pin_b0);delay_ms(500);output_low(pin_b0);delay_ms(500);output_high(pin_b1);delay_ms(500);output_low(pin_b1);delay_ms(500);}}In acest caz am aprins si am stins ledul de pe pinul B1. Poti sa aprinzi si sa stingi orice led vrei. Nu-ti merge doar daca pinul folosit este open-drain. In acest caz trebuie sa introduci o rezistenta de 4,7 k in serie. Uita-te in datasheet daca pinul folosit este open-drain sau nu. Ce nu a mers mai exact ? Nu a compilat programul sau nu se aprind ledurile ? Link spre comentariu
Vizitator thenoble66 Postat Martie 1, 2010 Partajează Postat Martie 1, 2010 Nu-ti merge doar daca pinul folosit este open-drain. In acest caz trebuie sa introduci o rezistenta de 4,7 k in serie.Nu e chiar asa.Pinii porturilor unui PIC pot actiona direct (printr-o rezistenta de R=330-470Ohmi) un LED.Sunt doua cazuri:1. Anod LED conectat la Vdd, catod LED conectat prin R la pin (sa zicem B0). Aprinderea LED-ului in acest caz se obtine prin nivel L pe B0, iar stingerea prin nivel H pe B0.2. Anod LED conectat la pin (B0!), catod LED conectat prin R la GND. Aprinderea LED-ului in acest caz se obtine prin nivel H, iar stingerea prin nivel L pe B0.Daca nimeresti un pin OpenDrain (la 16F628A doar PORTA.4), abia atunci esti nevoit sa recurgi la cazul 1. descris mai inainte.Ce compilator folosesti?thenoble66 Link spre comentariu
cosmin17 Postat Martie 4, 2010 Autor Partajează Postat Martie 4, 2010 CCS PCWHD, functioneaza progr. scris de A_L_E_X, merci mult Link spre comentariu
Postări Recomandate
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 contAutentificare
Ai deja un cont? Autentifică-te aici.
Autentifică-te acum