Hektometar

Rasprava o PIC mikrokontrolerima, PIC projekti i drugo vezano za PIC-eve...

Moderators: pedja089, stojke369, [eDo], trax

User avatar
pedja089
Administrator sajta
Administrator sajta
Posts: 7877
Joined: 20-02-2007, 14:50
Location: Beočin -Srbija

Re: Hektometar

Post by pedja089 »

Nikako. Taj program nisam detaljno ni gledao, puno zakomplikovano. Isto bi bilo i sa while...
Ono sto sam ja napisao je ceo program bez podesavanja portova, i definisanja promenljivih i pinova za lcd.
I ima greska u mom kodu, editovan je post
viewtopic.php?f=3&t=17300&p=159673#p159673
Moze da radi i onako, ali zna da pravi probleme ukoliko se impuls promeni dok se izvrsava ovaj kod:

Code: Select all

        if SW = 1 then i=i+48
        if sw1= 1 then i=i+24
        Pause 100'ovde moze mala pauza ako koristis reed ili tako nesto, ako koristis hall mislim da debounce ne reba za njega
zeljkogelic
Pocetnik na forumu
Pocetnik na forumu
Posts: 46
Joined: 29-01-2013, 00:44

Re: Hektometar

Post by zeljkogelic »

hvalaaa puno ljudi ovo mi je puno znaciloo...
User avatar
pedja089
Administrator sajta
Administrator sajta
Posts: 7877
Joined: 20-02-2007, 14:50
Location: Beočin -Srbija

Re: Hektometar

Post by pedja089 »

Nema na cemu. Bilo bi lepo da vidimo i gotov uredjaj...
Obrati samo jos jednom paznju da ti je 65535 maksimalni broj koji mozes smestiti u promenljivu i.
zeljkogelic
Pocetnik na forumu
Pocetnik na forumu
Posts: 46
Joined: 29-01-2013, 00:44

Re: Hektometar

Post by zeljkogelic »

bice ovih dana i gotov uredjaj daa daa ni netreba mi vise otld toga na.dnevnom nivou sa kombajnom mogi da uradim sam 25Ha a ako mi bude malo naravicu da mi bude
i=i+1 pa cu na.kraju ispisati 1*0.0048...Mislim da ce moci i takoo da radii.
User avatar
Black
Odlično uznapredovao
Odlično uznapredovao
Posts: 981
Joined: 17-12-2008, 15:44

Re: Hektometar

Post by Black »

pedja089 wrote:Nema na cemu. Bilo bi lepo da vidimo i gotov uredjaj...
Obrati samo jos jednom paznju da ti je 65535 maksimalni broj koji mozes smestiti u promenljivu i.
Nema 32 bitne varijable na PIC-u?
User avatar
pedja089
Administrator sajta
Administrator sajta
Posts: 7877
Joined: 20-02-2007, 14:50
Location: Beočin -Srbija

Re: Hektometar

Post by pedja089 »

@zeljkogelic
Sad mi je doslo u glavu koliko je 65 hektara... U pbp ne mozes direktno pomnoziti sa 0.0048, ali mozes podeliti sa 208. Sto mu dodje 0.0048076, po meni dovoljno blizu.
@Crni
U Pic Basicu za manje serije od 18F, nema 32bita direktno...
Odradjeno je deljenje, i mnozenje valjda, indirektno. Mozes kao rezultat dobiti nizih 16 bita, ili visih 16 bita.
Pa ih sastaviti, ali nema direktnih funkcija za LCD itd.
Ovo je uradjeno kao optimizacija izmedju vremena izvrsavanja i velicine koda visih komandi PBP-a, i mogucnosti.
Na PIC18 seriji, postoji biranje izmedju max16 bita i max 32 bita.
Verzija sa 16 bita je mnogo brza, ali ni 32 nije losa. Ja koristim iskljucivo verziju sa 32bit.
Postoji biblioteka za floating point, i postoji biblioteka za koliko god hoces bita integer matematiku.
Ako ti treba 512bita promenljiva, nikakav problem... Vreme izvrsavanja koda - jako sporo...
Obe biblioteke su asemblerske, ali ni malo teske za koriscenje iz PBP-a.
Ono sto mi je jako zanimljivo isti kod uradjen u XC8 ili kako se vec zove, i u PBP radi razlicito.
Na kodu u C-u puca USB konekcija svakih 10min, na PBP sve stabilno.
Isto tako prakticno isti kod u mikroC je oko 8 puta veci nego u PBP-u.
Probano na nekom primeru brojaca zrna za sejacicu(drug radio diplomski pa imao problema da smesti kod u 8K koliko mu je imao PIC)...
zeljkogelic
Pocetnik na forumu
Pocetnik na forumu
Posts: 46
Joined: 29-01-2013, 00:44

Re: Hektometar

Post by zeljkogelic »

ja sam napravio prototip kontrole setve za sejacicu, tipa da li je proslo zrno ili ne i hteo sam dodatno da dodam brojac tih zrna ali jos nisam razradio to, teski sam amater u ovom programiranju ali me jako interesuje tako da cu se pomuciti u skorije vreme da dodam na tu kontrolu brojanje semena sto je jako korisno u poljoprivredi...
User avatar
pedja089
Administrator sajta
Administrator sajta
Posts: 7877
Joined: 20-02-2007, 14:50
Location: Beočin -Srbija

Re: Hektometar

Post by pedja089 »

Nije to komplikovano...
Kako si resio senzor za detekciju zrna? On je nesto eksperimentisao sa IR Led i IR foto tranzistorom, nesto stampao na 3D stampacu da se ubaci na cev itd...
zeljkogelic
Pocetnik na forumu
Pocetnik na forumu
Posts: 46
Joined: 29-01-2013, 00:44

Re: Hektometar

Post by zeljkogelic »

Da i ja sam resio sa ir senzorom koji cu napraviti nosac sa dva lima i zastiti od spoljasnosti i samo moram dopisati kod za brojanje tih zrna moram to naci kako da odradim da kada upali zelenu lampicu da onda i izbroji po jedno zrnoo.
zeljkogelic
Pocetnik na forumu
Pocetnik na forumu
Posts: 46
Joined: 29-01-2013, 00:44

Re: Hektometar

Post by zeljkogelic »

ovako zavrsio sam sve ispisao kod ubacio u cip povezao sve i nece da radi moze neko da.mi kaze.kalo da ukljucim interni oscilator i da ga definisem, na 16f628a ili eksterni da definisem na 16f84a
User avatar
pedja089
Administrator sajta
Administrator sajta
Posts: 7877
Joined: 20-02-2007, 14:50
Location: Beočin -Srbija

Re: Hektometar

Post by pedja089 »

Zavisi od programatora koji imas.
zeljkogelic
Pocetnik na forumu
Pocetnik na forumu
Posts: 46
Joined: 29-01-2013, 00:44

Re: Hektometar

Post by zeljkogelic »

imam pickit 2 clone i koristim microcode studio
User avatar
pedja089
Administrator sajta
Administrator sajta
Posts: 7877
Joined: 20-02-2007, 14:50
Location: Beočin -Srbija

Re: Hektometar

Post by pedja089 »

PICKIT2 je nezgodan za podesiti u njemu. Koju verziju PBP-a imas? Verzija mikrocode nije bitna.
EDIT: Koju god verziju PBP-a imas, pogledaj u helpu. Treba da ima opisano detaljno...
zeljkogelic
Pocetnik na forumu
Pocetnik na forumu
Posts: 46
Joined: 29-01-2013, 00:44

Re: Hektometar

Post by zeljkogelic »

koristim pbp 4.47 i pise mi kad udjem u taj folder od pbp nadjem taj mikrokontroler *16f628a* pise mi ovaj kod...



;****************************************************************
;* 16F628A.INC *
;* *
;* By : Leonard Zerman, Jeff Schmoyer *
;* Notice : Copyright (c) 2003 microEngineering Labs, Inc. *
;* All Rights Reserved *
;* Date : 11/06/03 *
;* Version : 2.45 *
;* Notes : *
;****************************************************************
NOLIST
ifdef PM_USED
LIST
include 'M16F62xA.INC' ; PM header
device pic16F628A, xt_osc, wdt_on, mclr_on, lvp_off, protect_off
XALL
NOLIST
else
LIST
LIST p = 16F628A, r = dec, w = -302
INCLUDE "P16F628A.INC" ; MPASM Header
__config _XT_OSC & _WDT_ON & _MCLRE_ON & _LVP_OFF & _CP_OFF
NOLIST
endif
LIST
User avatar
pedja089
Administrator sajta
Administrator sajta
Posts: 7877
Joined: 20-02-2007, 14:50
Location: Beočin -Srbija

Re: Hektometar

Post by pedja089 »

Taj PBP jos nije izasao.
To je verzija micro code studia.
PBP moze biti 2.45; 2.50 ili 3.0.
Al iz fajla mi se cini da je 2.45. Ako koristis asembler koji dolazi uz picbasic, trebas ovu liniju izmeniti
device pic16F628A, INTRC_OSC_NOCLKOUT, wdt_on, mclr_on, lvp_off, protect_off

Detaljnije na linku:
http://www.picbasic.co.uk/forum/showthread.php?t=543
zeljkogelic
Pocetnik na forumu
Pocetnik na forumu
Posts: 46
Joined: 29-01-2013, 00:44

Re: Hektometar

Post by zeljkogelic »

slucajbo sam napisao4.47 imam 2.47 taj mi je pbp iz tog fajla sam uzimao...
zeljkogelic
Pocetnik na forumu
Pocetnik na forumu
Posts: 46
Joined: 29-01-2013, 00:44

Re: Hektometar

Post by zeljkogelic »

Ljudi uspeo sam da napravim sve ali mi je dosao problem kad ga upalim ne broj vec ispisuje random neki broj random...ne krece mi od nule i ne brojim kad ukljucim...da li zna neko sta moze biti problem?
zeljkogelic
Pocetnik na forumu
Pocetnik na forumu
Posts: 46
Joined: 29-01-2013, 00:44

Re: Hektometar

Post by zeljkogelic »

Image
User avatar
pedja089
Administrator sajta
Administrator sajta
Posts: 7877
Joined: 20-02-2007, 14:50
Location: Beočin -Srbija

Re: Hektometar

Post by pedja089 »

KAd se kontroler pokrene, u ram-u se nalaze nepoznati i nedefinisatni brojevi.
Tako da svaku promenljivu pre upotrebe moras postaviti na pocetku programa.
U PBP imas CLEAR da postavi sve na nulu...
zeljkogelic
Pocetnik na forumu
Pocetnik na forumu
Posts: 46
Joined: 29-01-2013, 00:44

Re: Hektometar

Post by zeljkogelic »

Code: Select all



'****************************************************************
'*  Name    : UNTITLED.BAS                                      *
'*  Author  : [select VIEW...EDITOR OPTIONS]                    *
'*  Notice  : Copyright (c) 2018 [select VIEW...EDITOR OPTIONS] *
'*          : All Rights Reserved                               *
'*  Date    : 04-Aug-18                                         *
'*  Version : 1.0                                               *
'*  Notes   :                                                   *
'*          :                                                   *
'****************************************************************
INTOSC_OSC_CLKOUT 
DEFINE OSC 4
DEFINE LCD_BITS 4
DEFINE LCD_DREG PORTB
DEFINE LCD_DBIT 4
DEFINE LCD_RSREG PORTB
DEFINE LCD_RSBIT 2
DEFINE LCD_EREG PORTB
DEFINE LCD_EBIT 3
DEFINE LCD_LINES 2
pause 100 
Symbol HALL= PORTA.3
Symbol SW = PORTA.1
symbol SW1= PORTA.0
TRISA=1
TRISB=0
input hall 
input sw
input sw1 
i var word
Lcdout $fe,1, " Dobro Dosli"
Lcdout $fe, $C0 , "Agro by Zeljko"
pause 2000
NovoStanje var word
StaroStanje var word
StaroStanje=1
i=0
pocetak:
    novostanje = hall
     
    if NovoStanje<StaroStanje then
        if sw = 1 then i=i+16
        if sw1 = 1 then i=i+11       
    endif
    starostanje=1
    Lcdout $fe,1, " Ukupno Hektara:"
    Lcdout $fe, $C0 , DEC ( i/10000), ".",DEC4  i, "Ha"
    pause 100
GOTO pocetak
Post Reply