www.elektronik.si Seznam forumov www.elektronik.si
Forum o elektrotehniki in računalništvu
 
 PomočPomoč  IščiIšči  Seznam članovSeznam članov  SkupineSkupine  StatisticsStatistika  AlbumAlbum  DatotekeFilemanager DokumentacijaDocDB LinksPovezave   Registriraj seRegistriraj se 
  PravilaPravila  LinksBolha  PriponkePriponke  KoledarKoledar  ZapiskiZapiski Tvoj profilTvoj profil Prijava za pregled zasebnih sporočilPrijava za pregled zasebnih sporočil PrijavaPrijava 

Program v c-jeziku (LED in tipke)

 
Objavi novo temo   Odgovori na to temo   Printer-friendly version    www.elektronik.si Seznam forumov -> Microchip PIC
Poglej prejšnjo temo :: Poglej naslednjo temo  
Avtor Sporočilo
Mico22
Član
Član



Pridružen-a: Tor 21 Maj 2013 11:51
Prispevkov: 41
Aktiv.: 0.28
Kraj: Maribor

PrispevekObjavljeno: Čet Maj 30, 2013 10:30 am    Naslov sporočila:  Program v c-jeziku (LED in tipke) Odgovori s citatom

Zdravo

Sem še učenec in trenutno poslusam z pisanjem programa v MPlabu

mi lahko prosim razložite zakaj ta program ne deluje kot sem si zamislil

// KLICANJE FUNKCIJ
#include <htc.h>
#include "tipka_lucka2.h"

// INICIALIZACIJA VHODNO IZHODNIH ENOT
void init_io(void)
{
TRISB6=1;
TRISB5=1;
TRISB4=1;
TRISC0=0;
TRISC1=0;
TRISC2=0;
}

void main()
{
init_io(); // klic inicializacije

if (TIPKA1==1)
{
LED1=1;
}
else
if (TIPKA2=1)
{
LED2=1;
}
else
if (TIPKA3=1)
{
LED3=1;
}
}

želel sem da bi ob ppritisk posamezne tipke zasvetila posamezna lučka

hvala =)

_________________
LP Mico
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
S53DZ
Član
Član



Pridružen-a: Čet 28 Apr 2011 9:27
Prispevkov: 951
Aktiv.: 5.53
Kraj: Ljubljana

PrispevekObjavljeno: Čet Maj 30, 2013 10:37 am    Naslov sporočila:  Re: Program v c-jeziku (LED in tipke) Odgovori s citatom

@Mico22, za začetek ti predlagam tak način objave kode, ker je bolj berljivo:
Koda:

// KLICANJE FUNKCIJ
#include <htc.h>
#include "tipka_lucka2.h"

// INICIALIZACIJA VHODNO IZHODNIH ENOT
void init_io(void)
{
TRISB6=1;
TRISB5=1;
TRISB4=1;
TRISC0=0;
TRISC1=0;
TRISC2=0;
}

void main()
{
   init_io();  // klic inicializacije

if (TIPKA1==1)
      {
      LED1=1;
      }
   else
       if (TIPKA2=1)
      {
      LED2=1;
      }
   else
       if (TIPKA3=1)
      {
      LED3=1;
      }
}         
Pa morda kar zbrišeš dva "else"?

Nazadnje urejal/a S53DZ Čet Maj 30, 2013 10:40 am; skupaj popravljeno 1 krat
Nazaj na vrh
Skrit Poglej uporabnikov profil Pošlji zasebno sporočilo
vucboj01
Član
Član



Pridružen-a: Sob 26 Mar 2011 17:08
Prispevkov: 56
Aktiv.: 0.32
Kraj: Kranj

PrispevekObjavljeno: Čet Maj 30, 2013 10:38 am    Naslov sporočila:  Re: Program v c-jeziku (LED in tipke) Odgovori s citatom

Morda takole
... if (TIPKA2==1)
... if (TIPKA3==1)

Mico22 je napisal/a:
Zdravo

Sem še učenec in trenutno poslusam z pisanjem programa v MPlabu

mi lahko prosim razložite zakaj ta program ne deluje kot sem si zamislil

// KLICANJE FUNKCIJ
#include <htc.h>
#include "tipka_lucka2.h"

// INICIALIZACIJA VHODNO IZHODNIH ENOT
void init_io(void)
{
TRISB6=1;
TRISB5=1;
TRISB4=1;
TRISC0=0;
TRISC1=0;
TRISC2=0;
}

void main()
{
init_io(); // klic inicializacije

if (TIPKA1==1)
{
LED1=1;
}
else
if (TIPKA2=1)
{
LED2=1;
}
else
if (TIPKA3=1)
{
LED3=1;
}
}

želel sem da bi ob ppritisk posamezne tipke zasvetila posamezna lučka

hvala =)

_________________
lep pozdrav,
Bojan
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Pošlji E-sporočilo
Mico22
Član
Član



Pridružen-a: Tor 21 Maj 2013 11:51
Prispevkov: 41
Aktiv.: 0.28
Kraj: Maribor

PrispevekObjavljeno: Čet Maj 30, 2013 10:45 am    Naslov sporočila:   Odgovori s citatom

Bojan oprosti kaj misliš z tem daa dvakrat els brisem?
_________________
LP Mico
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
bostjan 2
Član
Član



Pridružen-a: Pon 05 Dec 2011 19:35
Prispevkov: 121
Aktiv.: 0.73
Kraj: Vače

PrispevekObjavljeno: Čet Maj 30, 2013 10:47 am    Naslov sporočila:   Odgovori s citatom

po mojem bi moralo biti namesto
if (TIPKA3=1)
takole
if (TIPKA3==1)

Bi držalo??

_________________
Ja še vedno se ne da...
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
Mico22
Član
Član



Pridružen-a: Tor 21 Maj 2013 11:51
Prispevkov: 41
Aktiv.: 0.28
Kraj: Maribor

PrispevekObjavljeno: Čet Maj 30, 2013 10:49 am    Naslov sporočila:   Odgovori s citatom

Brez else mi vrze še več napak.

Kaj si mislil s tem if(TIPKA1),... ?

_________________
LP Mico
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
vucboj01
Član
Član



Pridružen-a: Sob 26 Mar 2011 17:08
Prispevkov: 56
Aktiv.: 0.32
Kraj: Kranj

PrispevekObjavljeno: Čet Maj 30, 2013 10:50 am    Naslov sporočila:   Odgovori s citatom

Če želiš testirati vrednost na enakost je operator == in ne =.

bostjan 2 je napisal/a:
po mojem bi moralo biti namesto
if (TIPKA3=1)
takole
if (TIPKA3==1)

Bi držalo??

_________________
lep pozdrav,
Bojan
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Pošlji E-sporočilo
Mico22
Član
Član



Pridružen-a: Tor 21 Maj 2013 11:51
Prispevkov: 41
Aktiv.: 0.28
Kraj: Maribor

PrispevekObjavljeno: Čet Maj 30, 2013 10:55 am    Naslov sporočila:   Odgovori s citatom

to imas prav, mora biti ==

Error [312] C:\Users\Mitja\Desktop\tipka_lucke2\tipka_lucka.c; 21.1 ";" expected
Error [285] C:\Users\Mitja\Desktop\tipka_lucke2\tipka_lucka.c; 25.1 no identifier in declaration
Warning [374] C:\Users\Mitja\Desktop\tipka_lucke2\tipka_lucka.c; 25.1 missing basic type; int assumed
Error [314] C:\Users\Mitja\Desktop\tipka_lucke2\tipka_lucka.c; 25.1 ";" expected
Error [285] C:\Users\Mitja\Desktop\tipka_lucke2\tipka_lucka.c; 30.1 no identifier in declaration
Warning [374] C:\Users\Mitja\Desktop\tipka_lucke2\tipka_lucka.c; 30.1 missing basic type; int assumed
Error [314] C:\Users\Mitja\Desktop\tipka_lucke2\tipka_lucka.c; 30.1 ";" expected
Error [285] C:\Users\Mitja\Desktop\tipka_lucke2\tipka_lucka.c; 31.1 no identifier in declaration
Warning [374] C:\Users\Mitja\Desktop\tipka_lucke2\tipka_lucka.c; 31.1 missing basic type; int assumed
Error [314] C:\Users\Mitja\Desktop\tipka_lucke2\tipka_lucka.c; 31.1 ";" expected
Error [285] C:\Users\Mitja\Desktop\tipka_lucke2\tipka_lucka.c; 36.1 no identifier in declaration
Warning [374] C:\Users\Mitja\Desktop\tipka_lucke2\tipka_lucka.c; 36.1 missing basic type; int assumed
Error [314] C:\Users\Mitja\Desktop\tipka_lucke2\tipka_lucka.c; 36.1 ";" expected
Error [285] C:\Users\Mitja\Desktop\tipka_lucke2\tipka_lucka.c; 39.1 no identifier in declaration
Warning [374] C:\Users\Mitja\Desktop\tipka_lucke2\tipka_lucka.c; 39.1 missing basic type; int assumed
Error [314] C:\Users\Mitja\Desktop\tipka_lucke2\tipka_lucka.c; 39.1 ";" expected

********** Build failed! **********


to vse mi za napak javi in nikakor nemoram nobene se rešit
še posebaj prve Very Happy

_________________
LP Mico
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
vucboj01
Član
Član



Pridružen-a: Sob 26 Mar 2011 17:08
Prispevkov: 56
Aktiv.: 0.32
Kraj: Kranj

PrispevekObjavljeno: Čet Maj 30, 2013 11:02 am    Naslov sporočila:   Odgovori s citatom

Sem spregledal, da je cel program že priložen.
Kaj če bi priiložil cel program? Bi bilo lažje in hitrejše priti do rešitve.

Mico22 je napisal/a:
to imas prav, mora biti ==

Error [312] C:\Users\Mitja\Desktop\tipka_lucke2\tipka_lucka.c; 21.1 ";" expected
Error [285] C:\Users\Mitja\Desktop\tipka_lucke2\tipka_lucka.c; 25.1 no identifier in declaration
Warning [374] C:\Users\Mitja\Desktop\tipka_lucke2\tipka_lucka.c; 25.1 missing basic type; int assumed
Error [314] C:\Users\Mitja\Desktop\tipka_lucke2\tipka_lucka.c; 25.1 ";" expected
Error [285] C:\Users\Mitja\Desktop\tipka_lucke2\tipka_lucka.c; 30.1 no identifier in declaration
Warning [374] C:\Users\Mitja\Desktop\tipka_lucke2\tipka_lucka.c; 30.1 missing basic type; int assumed
Error [314] C:\Users\Mitja\Desktop\tipka_lucke2\tipka_lucka.c; 30.1 ";" expected
Error [285] C:\Users\Mitja\Desktop\tipka_lucke2\tipka_lucka.c; 31.1 no identifier in declaration
Warning [374] C:\Users\Mitja\Desktop\tipka_lucke2\tipka_lucka.c; 31.1 missing basic type; int assumed
Error [314] C:\Users\Mitja\Desktop\tipka_lucke2\tipka_lucka.c; 31.1 ";" expected
Error [285] C:\Users\Mitja\Desktop\tipka_lucke2\tipka_lucka.c; 36.1 no identifier in declaration
Warning [374] C:\Users\Mitja\Desktop\tipka_lucke2\tipka_lucka.c; 36.1 missing basic type; int assumed
Error [314] C:\Users\Mitja\Desktop\tipka_lucke2\tipka_lucka.c; 36.1 ";" expected
Error [285] C:\Users\Mitja\Desktop\tipka_lucke2\tipka_lucka.c; 39.1 no identifier in declaration
Warning [374] C:\Users\Mitja\Desktop\tipka_lucke2\tipka_lucka.c; 39.1 missing basic type; int assumed
Error [314] C:\Users\Mitja\Desktop\tipka_lucke2\tipka_lucka.c; 39.1 ";" expected

********** Build failed! **********


to vse mi za napak javi in nikakor nemoram nobene se rešit
še posebaj prve Very Happy
Very Happy Very Happy
_________________
lep pozdrav,
Bojan
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Pošlji E-sporočilo
Mico22
Član
Član



Pridružen-a: Tor 21 Maj 2013 11:51
Prispevkov: 41
Aktiv.: 0.28
Kraj: Maribor

PrispevekObjavljeno: Čet Maj 30, 2013 11:47 am    Naslov sporočila:   Odgovori s citatom

Super dečki zdaj mi je že uspelo

Else sem ven pobrisa in stvar deluje.

Smile)

Hvala vsem

Zdaj pa dalje.

Če mate slučajno kake doma narejene primere z potenciometrom ali podobnimi lažjimi stvarmi, se lepo in toplo priporočam. da bi imel za osnovo in da bi hitreje rzumel.
lahko je prižiganje led lučk, ... kajkoli
Hvala vsem za odgovore in gradivo če kaj imate


No zdaj ko si popravil svoje napake v enem tujem jeziku, jih popravi pa še v svojem materinem. Tako kot ti prej program ni deloval, tako ti tu ne bo šla komunikacija, brez da bi se držal pravil.

_________________
LP Mico
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
tilz0R
Član
Član



Pridružen-a: Čet 31 Maj 2012 15:39
Prispevkov: 898
Aktiv.: 5.66
Kraj: Črnomelj

PrispevekObjavljeno: Čet Maj 30, 2013 12:29 pm    Naslov sporočila:   Odgovori s citatom

Nevem, ampak tale program nima neskončne zanke. Program se izvede v nekaj ciklih ure in uC ne dela nič več.
Uporabi nekaj spodnjemu:
Koda:

int main() {
  //inicializacija
  while (1) {
    //tvoja koda, ki se neskončno krat izvede
    //preveri za tipke in tako naprej :)
  }
}

_________________
Knowledge sharing is caring.
majerle.eu | stm32f4-discovery.net
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Obišči avtorjevo spletno stran
Pokaži sporočila:   
Objavi novo temo   Odgovori na to temo   Printer-friendly version    www.elektronik.si Seznam forumov -> Microchip PIC Časovni pas GMT + 2 uri, srednjeevropski - poletni čas
Stran 1 od 1

 
Pojdi na:  
Ne, ne moreš dodajati novih tem v tem forumu
Ne, ne moreš odgovarjati na teme v tem forumu
Ne, ne moreš urejati svojih prispevkov v tem forumu
Ne, ne moreš brisati svojih prispevkov v tem forumu
Ne ne moreš glasovati v anketi v tem forumu
Ne, ne moreš pripeti datotek v tem forumu
Ne, ne moreš povleči datotek v tem forumu

Uptime: 492 dni


Powered by phpBB © 2001, 2005 phpBB Group