Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Mikrokontroler PIC16F628A problem...

[es] :: Elektronika :: Mikrokontroleri :: Mikrokontroler PIC16F628A problem...

[ Pregleda: 1955 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

AxeXea
sam za sebe
moja
Srbija

Član broj: 310301
Poruke: 49
*.dynamic.mbb.telenor.rs.



Profil

icon Mikrokontroler PIC16F628A problem...14.07.2015. u 11:07 - pre 106 meseci
Pozdrav narode,
Uzeo sam da napravim elektroniku za jednu jednostavnu masinu za secenje,sama elektronike je prilicno jednostavna,a ni kod nije nesto komplikovan.
Masina je relativno jednostavna,Ima jedan taster (noznu pedalu),dva senzora i tri ventila koji upravljaju pneumatikom.
Kad se pritisne pedala,to uzrokuje promenu logickog stanja(pojava logicke nule je aktiviranje) na pinu PORTA.RA2 na mikrokontroleru.Tad se aktivira ventil(PORTB.RB0 ide na logicko 1) koji pokrece drzac koji priteze i fiksira kabel u lezistu,Da je radnja izvrsena uveravamo se tako sto senzor drzanja menja logicko stanje na pinu PORTA.RA0 sa logicko 1 na logicku 0.Ako je sve u redu program nastavlja dalje tako sto aktivira ventil koji pokrece noz za secenje.Da je noz na mestu uveravamo se preko senzora secenja (PORTA.RA1),isti su logicki nivoi kao i za prvi senzor.
Ako je sve u redu,program nastavlja dalje tako sto aktivira povlakac koji skida izolaciju sa kabla (PORTB.RB2 ide na logicko 1).
Nakon toga svi ventili se otpustaju (PORTB.RB0 : PORTB.RB1 : PORTB.RB2 idu na logicko 0).
Nakon toga proveriti senzore da li su iskljuceni (PORTA.RA0 : PORTA.RA1 da li su se vratili na logicko 1).
Za kraj proveriti da li je pedala otpustena,odnosno da li je PORTA.RA2 vraceno na logicko 1,ako nije onda nanovo proveravati.Tek kad je pedala otpustena odnosno kad je PORTA.RA2 = 1 tada se vratiti na pocetak programa i cekati da se pedala pritisne za pocetak novog ciklusa....
Obrati paznju da je za senzore pojava logicke nule aktiviranje,a ventili pneumatike se aktiviraju sa logickom 1...

Evo koda:

void main() {
TRISA = 0xFF; // Port A je ulazni
PORTA = 0xFF; // inicijalno stanje porta A je 1
TRISB = 0x00; // Port B je izlazni
PORTB = 0x00; // inicijalno stanje porta B je 0


//pedala iskljucena pocetno stanje
while (1)
{
if (PORTA.RA2 == 0)
{
while (PORTA.RA0 != 0) //dok ne ocitamo da je drzac aktiviran
{
PORTB.RB0 = 1; //aktiviraj drzac
Delay_ms(400);
}

while (PORTA.RA1 != 0) //dok ne ocitamo da je sekac aktiviran
{
PORTB.RB1 = 1; //aktiviraj sekac
Delay_ms(400);
}

PORTB.RB2 = 1; //aktiviraj povlacenje
Delay_ms(1100);

PORTB = 0x00;
Delay_ms(400);

//dok je masina ili pedala zaglavljena - cekaj
while ((PORTA.RA0 == 0) || (PORTA.RA1 == 0)|| (PORTA.RA2 == 0))
{
Delay_ms(500);
}
}
}



Problem koji mi se javlja je da su pinovi porta A na logickoj nuli, iako sam ih setovao da budu na logicko 1 ,kad izvadim mikrokontroler iz podnozja i merim na kontaktima gde dolaze pinovi, imam +5V koji su dovedeni preko otpornika od 10k.
Medjutim cim ubacim mikrokontroler i aktiviram elektroniku ti pinovi su na logickoj nuli sto uzrokuje da program samo "protrci".Znaci da sam mikrokontroler uzrokuje taj pad napona na pinovima.
Nasao sam jedan podatak u datasheetu, ali nisam siguran kako da ga iskoristim...copy/paste:

On Reset, the TRISA register is set to all
inputs. The digital inputs (RA<3:0>) are
disabled and the comparator inputs are
forced to ground to reduce current
consumption.

Kao kompajler koristim MikroC.
Pitajte ako sta treba da se doda.
Mnogo pozdrava i hvala unapred...
 
Odgovor na temu

tomam
Tomislav Milicevic
Beograd

Član broj: 104895
Poruke: 163
188.117.237.*



+4 Profil

icon Re: Mikrokontroler PIC16F628A problem...14.07.2015. u 11:24 - pre 106 meseci

CMCON=0x07 ; Turn comparators off and enable pins for I/O functions
 
Odgovor na temu

AxeXea
sam za sebe
moja
Srbija

Član broj: 310301
Poruke: 49
*.dynamic.mbb.telenor.rs.



Profil

icon Re: Mikrokontroler PIC16F628A problem...14.07.2015. u 11:36 - pre 106 meseci
I dalje nece :(
 
Odgovor na temu

AxeXea
sam za sebe
moja
Srbija

Član broj: 310301
Poruke: 49
*.dynamic.mbb.telenor.rs.



Profil

icon Re: Mikrokontroler PIC16F628A problem...14.07.2015. u 11:44 - pre 106 meseci
Probao sam sa dva mikrokontrolera i isto je, tako da iskljucujem mogucnost da je mikrokontroler sprzen.
Zaboravio sam u gornjem objasnjenju da spomenem da se RA2 (pedala) ponasa normalno u odnosu na RA0 i RA1.
 
Odgovor na temu

AxeXea
sam za sebe
moja
Srbija

Član broj: 310301
Poruke: 49
*.dynamic.isp.telekom.rs.



Profil

icon Re: Mikrokontroler PIC16F628A problem...14.07.2015. u 14:54 - pre 106 meseci
Resen problem.Potkrala se greska na stampanoj ploci :(
 
Odgovor na temu

[es] :: Elektronika :: Mikrokontroleri :: Mikrokontroler PIC16F628A problem...

[ Pregleda: 1955 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.