[ BigBadM @ 12.06.2008. 10:56 ] @


Imam problem sa resavanjem doticnog zadatka. Iskreno stvarno ne znam kako da odradim zadatak a potrebno mi je da ga resim kako bih mogao da polozim ispit.Predavanja su bila veoma losa i vrlo malo sam mogao da naucim pa nemam alternaivu.Covek mora da se snadje...


Realizovati oscilator različitih, unapred definisanih, učestanosti. Zadatak realizovati pomoću mikrokontrolera PIC16F84 na asembleru.

PORTA.0 Izlaz oscilatora
PORTA,1 Invertovani izlaz oscilatora
PORTB.0 60 impulsa/min
PORTB.1 120 impulsa/min
PORTB.1 240 impulsa/min

Samo bih zamolio nekog ko zna da programira u assembleru MPlab softver da mi da neku ideju ili tip kako da odradim zadatak.
plzzzzzzz

[ pera89 @ 13.06.2008. 01:20 ] @
Code:

LIST      P=16F84, F=INHX8M
include "P16F84.inc"

count1  equ 0x0c
count2    equ 0x0d

bsf    STATUS,Rp0
clrf    trisa          ; RA0..RA5 izlazi
movlw     b'111'        ; RB0..RB2 ulazi
movwf    TRISB
bcf    STATUS,Rp0

goto     main

delay    ;rutina za pauzu od oko 250mS
    movlw d'243'
    movwf count2

pom    ;pomocna labela u rutini za pauzu
    nop
    decfsz count1,f
    goto pom
    decfsz count2,f
    goto pom 
    return


main

    btfsc portb,0
    call freq1
    btfsc portb,1
    call freq2
    btfsc portb,2
    call freq3
    goto main

freq1
    movlw b'01'
    movwf porta
    movlw b'10'
    movwf porta
    call delay    ;pauza od 4x250mS
    call delay
    call delay
    call delay
    return

freq2
    movlw b'01'
    movwf porta
    movlw b'10'
    movwf porta
    call delay    ;pauza od 2x250mS
    call delay
    return

freq3
    movlw b'01'
    movwf porta
    movlw b'10'
    movwf porta
    call delay    ;pauza od 250mS
    return

    end


Moze i krace ali je ovako preglednije. Pisao sam na brzinu, mozda se provukla neka greska negde. Znaci dok je aktivan portb,0 generise se frekvencija od 60 impulsa u minutu tj 1Hz, portb,1-2Hz, portb,2-4Hz. Ako asembliras fajl iskljuci case sensitive, zato sto sam porta,portb i mozda jos nesto kucao malim slovima.
[ mikosa @ 13.06.2008. 10:47 ] @
je l' moze neko da mi pogomogne da uradim program za microcontroler PIC16F84 na asembleru?

Zadatak:

Napraviti demonstraciju JK flip-flopa,

PORTA,0 J ulaz

PORTA.1 K ulaz

PORTB.8 Izlaz


Unapred hvala.
[ TRAJKO41 @ 13.06.2008. 10:51 ] @
Molim Vas treba sto pre da uradim jedan zadatak u asembleru koji se realizuje pomocu mikrokontrolera PIC16F84 a nisam bas nesto radio do sada u asembleru. Molim vas ako neko zna neka pomaze. Sto pre. Hvala unapred.

Zadatak glasi:


Pritiskom na tastere pomerati upaljenu Led diodu na izlazu. U zavisnosti od toga koji se taster pritisne pali se prva leva ili prva desna Led dioda do diode koja je upaljena. Dioda koja je bila upaljena gasi se. Pomeranje prve Led diode (PORTB,0) udesno pali poslednju Led diodu (PORTB,7). Pomeranje poslednje Led diode (PORTB,7) udesno pali prvu Led diodu (PORTB,0).. Zadatak realizovati pomoću mikrokontrolera PIC16F84 na asembleru.
PORTB Prikaz
PORTA.0 Pomeranje ulevo
PORTA.1 Pomeranje udesno



Ako neko moze da pomogne neka me kontaktira na mail [email protected]
ili neka napise ovde
[ BigBadM @ 13.06.2008. 11:31 ] @
E hvala ti brate do neeeeeeeebaaaaaaaaaaaa


nema veze ako ima neka greska ispravicu ako nesto ne valja .......
[ pera89 @ 13.06.2008. 16:13 ] @
Mora da vam je taj profesor mnogo dobar kad vam trebaju resenja za ovakve zadatke :-D :-D :-D. Ovaj zadatak sa oscilatorom ispada najtezi.
@BigBadM:
Nema na cemu. P.S. zaboravio sam da ti napisem da ova rutina za pauzu od 250mS je za frekvenciju oscilatora od 4MHz, posto se on najcesce koristi za ovaj pic.
[ stefic_kg @ 13.06.2008. 17:04 ] @
Ma nije profesor. Profesorka je. :)

Imam jedan resen primer, ali mene interesuje "malo" drugaciji.

Ovako glasi tekst resenog zadatka:
Prikazati redom brojeve od 0 do 9 na sedmosegmentnom displeju. Svaka cifra se prikazuje 1 sekundu.
Prikaz može da bude u rastućem ili opadajućem redosledu.
Zadatak realizovati pomoću mikrokontrolera PIC16F84 na asembleru.

Napomena: Mozdace nekome trebati ovaj zadatak....

resenje zadatka je:
Code:

#include  p16f84.inc        ; inicijalizaija procesora koji ce se koristiti
    processor 16f84
    org     5        ; program pocinje od pozicije 5 u memoriji
; inicijalizacija 
    clrf    PORTA        ;
    clrf    PORTB        ;
    bsf     STATUS,RP0    ; prebaciti se u banku 1 memorije
    movlw     0x1f        ; definisanje da je port A ulazni  
    movwf    TRISA        ; nazivi registara pisu se velikim slovom
    movlw     B'00000000'    ; definisanje da je portb izlazni  
    movwf    TRISB        ; vratiti se iz banke 1 memorije     
    bcf     STATUS,RP0

    reset     equ    0x20    ; deklaracija promenljive
    rastuci    equ    0x21    ; deklaracija promenljive
    brojac    equ    0x22    ; deklaracija promenljive
    stop    equ    0x23    ; deklaracija promenljive
    inc    equ    0x24    ; deklaracija promenljive
    brojac2    equ    0x25    ; deklaracija promenljive

    movlw    B'00000000'    ; pocetno je reset jednak nuli
    movwf    reset        ; 
    movlw    B'00000001'    ; pocetno je niz rastuci
    movwf    rastuci        ; 

nula
    movlw    B'10111111'    ; stampanje nule na displeju
    movwf    PORTB
    bcf    reset,0        ; brisanje reset tastera
    call    pauza

    btfsc    reset,0        ; provera da li je pritisnut taster za reset sabiraka
    goto    nula        ; reset znaci idi na nulu

    btfsc    stop,1
    goto    nula

    btfsc    rastuci,0    ; da li je trazen rastuci prikaz?
    goto    jedan        
    goto    devet

jedan
    movlw    B'10000110'    ; stampanje jedinice na displeju
    movwf    PORTB
    bcf    reset,0        ; brisanje reset tastera
    call    pauza

    btfsc    reset,0        ; provera da li je pritisnut taster za reset sabiraka
    goto    nula        ; reset znaci idi na nulu

    btfsc    stop,1
    goto    jedan

    btfsc    rastuci,0    ; da li je trazen rastuci prikaz?
    goto    dva
    goto    nula

dva
    movlw    B'11011011'    ; stampanje dvojke na displeju
    movwf    PORTB
    bcf    reset,0        ; brisanje reset tastera
    call    pauza

    btfsc    reset,0        ; provera da li je pritisnut taster za reset sabiraka
    goto    nula        ; reset znaci idi na nulu

    btfsc    stop,1
    goto    dva

    btfsc    rastuci,0    ; da li je trazen rastuci prikaz?
    goto    tri        
    goto    jedan

tri
    movlw    B'11001111'    ; stampanje trojke na displeju
    movwf    PORTB
    bcf    reset,0        ; brisanje reset tastera
    call    pauza

    btfsc    reset,0        ; provera da li je pritisnut taster za reset sabiraka
    goto    nula        ; reset znaci idi na nulu

    btfsc    stop,1
    goto    tri

    btfsc    rastuci,0    ; da li je trazen rastuci prikaz?
    goto    cetiri        
    goto    dva

cetiri
    movlw    B'11100110'    ; stampanje cetvorke na displeju
    movwf    PORTB
    bcf    reset,0        ; brisanje reset tastera
    call    pauza

    btfsc    reset,0        ; provera da li je pritisnut taster za reset sabiraka
    goto    nula        ; reset znaci idi na nulu

    btfsc    stop,1
    goto    cetiri

    btfsc    rastuci,0    ; da li je trazen rastuci prikaz?
    goto    pet        
    goto    tri

pet
    movlw    B'11101101'    ; stampanje petice na displeju
    movwf    PORTB
    bcf    reset,0        ; brisanje reset tastera
    call    pauza

    btfsc    reset,0        ; provera da li je pritisnut taster za reset sabiraka
    goto    nula        ; reset znaci idi na nulu

    btfsc    stop,1
    goto    pet

    btfsc    rastuci,0    ; da li je trazen rastuci prikaz?
    goto    sest        
    goto    cetiri

sest
    movlw    B'11111101'    ; stampanje sestice na displeju
    movwf    PORTB
    bcf    reset,0        ; brisanje reset tastera
    call    pauza

    btfsc    reset,0        ; provera da li je pritisnut taster za reset sabiraka
    goto    nula        ; reset znaci idi na nulu

    btfsc    stop,1
    goto    sest

    btfsc    rastuci,0    ; da li je trazen rastuci prikaz
    goto    sedam        
    goto    pet

sedam
    movlw    B'10000111'    ; stampanje sedmice na displeju
    movwf    PORTB
    bcf    reset,0        ; brisanje reset tastera
    call    pauza

    btfsc    reset,0        ; provera da li je pritisnut taster za reset sabiraka
    goto    nula        ; reset znaci idi na nulu

    btfsc    stop,1
    goto    sedam

    btfsc    rastuci,0    ; da li je trazen rastuci prikaz?
    goto    osam        
    goto    sest

osam
    movlw    B'11111111'    ; stampanje osmice na displeju
    movwf    PORTB
    bcf    reset,0        ; brisanje reset tastera
    call    pauza

    btfsc    reset,0        ; provera da li je pritisnut taster za reset sabiraka
    goto    nula        ; reset znaci idi na nula

    btfsc    stop,1
    goto    osam

    btfsc    rastuci,0    ; da li je trazen rastuci prikaz?
    goto    devet        
    goto    sedam

devet
    movlw    B'11101111'    ; stampanje devetke na displeju
    movwf    PORTB
    bcf    reset,0        ; brisanje reset tastera
    call    pauza

    btfsc    reset,0        ; provera da li je pritisnut taster za reset sabiraka
    goto    nula        ; reset znaci idi na nulu

    btfsc    stop,1
    goto    devet

    btfsc    rastuci,0    ; da li je trazen rastuci prikaz?
    goto    nula        
    goto    osam

pauza
    movlw    0x02        ; kasnjenje
    movwf    brojac

petlja
    btfsc    PORTA,4        ; provera da li je pritisnut taster za reset
    bsf    reset,0

    btfsc    PORTA,1        ; provera da li je pritisnut taster za rastuci niz
    bsf    rastuci,0

    btfsc    PORTA,2        ; provera da li je pritisnut taster za opadajuci
    bcf    rastuci,0

    btfsc    PORTA,3        ; provera da li je pritisnut taster za stop/start prikaza
    call    zastop        ; pozivanje potprograma za start ili stop prikaza

    btfss    PORTA,3        ; provera da li je pritisnut taster za stop/start prikaza
    bcf    inc,1

pauza2
    movlw    0x02        ; kasnjenje
    movwf    brojac2
petlja2
    decfsz    brojac2,1
    goto    petlja2

    decfsz    brojac,1
    goto    petlja

    return

zastop
    btfsc    inc,1
    return

    bsf    inc,1
    btfsc    stop,1
    goto    jeste
    btfss    stop,1
    goto    nije
povratak
    return    

jeste
    bcf    stop,1
    goto    povratak

nije
    bsf    stop,1
    goto    povratak


; konfiguraciona rec 
       __config B'11111111110001'    ; nema zastite koda, powerup dozvoljeno, 
                ; wd iskljucen, xt oscilator

        end            ; kraj programa


E sad, meni treba ovaj zadatak:

Realizovati svetlosni efekat tako da se led diode PORTAB, PORTA,0 i PORTA,1, PORTA,2 se pale po jedna sa leve i desne strane počev od PORTB,5 (koja se pali sama) redom svake sekunde. Kada se sve upale prvo se gase poslednje upaljene led diode Zadatak realizovati pomoću mikrokontrolera PIC16F84 na asembleru.

Svaki komentar je dobrodosao.
[ BigBadM @ 13.06.2008. 18:22 ] @
jbg brate situacija je taka i taka .....
[ Slavenko @ 13.06.2008. 18:25 ] @
MIKOSA , evo i tebi resenje nadam se da si zadovoljan. Samo da naglasim da ti imaš za cilj da RB8 pin predstaviš kao izlaz Q, JK flip-flopa a ja sam ti uradio da se svi izlazi porta B menjaju kada je J=1 i K=1 preko operacije komplementiranja to je ono gde je napisao "comf PORTB,f" što odgovara uslovima zadatka jer nemaš ni jedan drugi rezervisani izlaz PORTB. U ostalim slučajevima se ili setuje ili resetuje samo RB8.
Ako ima nekih problema javi !

Za Stefic_KG : Taj kod što si ti napisao od tvoje profesorke može da se smanji za čitavih, barem jedno 70-80 % !

Za BigBadM :
napisao si :
PORTA.0 Izlaz oscilatora
PORTA,1 Invertovani izlaz oscilatora
PORTB.0 60 impulsa/min
PORTB.1 120 impulsa/min
PORTB.1 240 impulsa/min -pretpostavljam da ovde treba PORTB.2

Mislim da rešenje koje je ponuđeno neće raditi kako treba ali nemam živce da proverim samo sam pogledao na brzaka , možda mi se samo čini ???. Ja sada tebe pitam ako se vratiš da pročitaš ovo: Šta treba da bude na PORTA.0 i PORTA,1 , odnosno o kom oscilatoru tačnije o kojoj frekvenciji se radi konkretno za ovaj deo, jer barem meni nije jasno šta treba da bude na PORTA.0 i PORTA.1 , izlaz kog oscilatora ? Ako sam te dobro shvatio cilj zadatka je da na ostalim izlazima PORTB.0,1,2 dobiješ ove frekvenicje odnosno impulse/min kako si napisao.


Code:


;******** Za Mikosa ********

    list p=16F84

    #include <p16F84.inc> 
    __CONFIG _CP_OFF & _WDT_OFF & _PWRTE_ON & _XT_OSC
;___________________________________________________________
;
;         SIMULACIJA RADA JK FLIP FLOPA
;
;            RA0=J, RA1=K, RA8=Q
;___________________________________________________________

    bsf STATUS,RP0
    movlw b'00000011'       ; RA0 i RA1 - ulazi, ostalo izlazi
    movwf TRISA
    clrf TRISB          ; PORTB definisan kompletno kao izlazni
    bcf STATUS,RP0

    
Pocetak
    btfsc PORTA,0          ; Da li je na RA0=0 ?
    goto Nije                       ; RA0=1
    goto Jeste_jbte          ; RA0=0
    
Nije
    btfsc PORTA,1          ; RA0=1 a da li je RA1=0 ?     
    goto Jok_nije                   ; RA1=1
    bsf PORTB,8          ; RA0=1 i RA1=0, Q izlaz JK flip-flopa se setuje !
    goto Pocetak

Jok_nije                      ; RA0=1 i RA=1, sto znaci da se stanje Q JK ff menja tj.
    comf PORTB,f          ; invertuje prethodno zateceno stanje na svim izlazima PORTB
                  ; i naravno na trazenom RB8 koji ti je zadat u zadatku !
    goto Pocetak

Jeste_jbte  
    btfsc PORTA,1                       ; RA0=0 a da li je RA1=0 ?
    bsf PORTB,8          ; RA0=0 i RA1=1 , stanje Q JK FF se resetuje !
    goto Pocetak          ; RA0=0 i RA1=0 stanje se ne menja i ide na pocetak programa

    end                      ; Kraj programa !


Tablica stanja JK flip-flopa po kojoj je program urađen je :

J | K | Q
0 | 0 | stanje izlaza se ne menja u ovoj kombinaciju ulaza
0 | 1 | stanje Q izlaza JK f.f. se resetuje ili prevedeno postaje log. "0"
1 | 0 | stanje Q izlaza JK f.f. se setuje ili prevedeno postavlja na log. "1"
1 | 1 | stanje Q izlaza se menja tj. ako je bila log. "0" biće log. "1" i obrnuto


Pozzz !

Sada sam primijetio da je program mogao da se napiše sa još jednom linijom manje ali biće tvoja profesorka zadovoljena i sa ovim rešenjem !








[Ovu poruku je menjao Slavenko dana 14.06.2008. u 22:46 GMT+1]
[ mikosa @ 16.06.2008. 16:00 ] @
Hvala Slavenko. Nadam se da ce mi koristiti.
[ Slavenko @ 16.06.2008. 16:14 ] @


Nema na čemu, bilo mi je zadovoljstvo da se prisetim JK F.F.-pa .
[ TRAJKO41 @ 16.06.2008. 17:42 ] @
Molim Vas treba sto pre da uradim jedan zadatak u asembleru koji se realizuje pomocu mikrokontrolera PIC16F84 a nisam bas nesto radio do sada u asembleru. Molim vas ako neko zna neka pomaze. Sto pre. Hvala unapred.

Zadatak glasi:


Pritiskom na tastere pomerati upaljenu Led diodu na izlazu. U zavisnosti od toga koji se taster pritisne pali se prva leva ili prva desna Led dioda do diode koja je upaljena. Dioda koja je bila upaljena gasi se. Pomeranje prve Led diode (PORTB,0) udesno pali poslednju Led diodu (PORTB,7). Pomeranje poslednje Led diode (PORTB,7) udesno pali prvu Led diodu (PORTB,0).. Zadatak realizovati pomoću mikrokontrolera PIC16F84 na asembleru.
PORTB Prikaz
PORTA.0 Pomeranje ulevo
PORTA.1 Pomeranje udesno


ajde ljudi svima ste uradili samo meni niko nece da pomogne. molim vas treba mi hitno
[ Slavenko @ 16.06.2008. 21:06 ] @
I tebi je rešen pogledaj na :


http://www.elitesecurity.org/t...trebna-mi-je-pomoc-oko-zadatka
[ mikosa @ 18.06.2008. 11:52 ] @
Code:


;******** Za Mikosa ********

list p=16F84

#include <p16F84.inc>
__CONFIG _CP_OFF & _WDT_OFF & _PWRTE_ON & _XT_OSC
;___________________________________________________________
;
; SIMULACIJA RADA JK FLIP FLOPA
;
; RA0=J, RA1=K, RA8=Q
;___________________________________________________________

bsf STATUS,RP0
movlw b'00000011' ; RA0 i RA1 - ulazi, ostalo izlazi
movwf TRISA
clrf TRISB ; PORTB definisan kompletno kao izlazni
bcf STATUS,RP0


Pocetak
btfsc PORTA,0 ; Da li je na RA0=0 ?
goto Nije ; RA0=1
goto Jeste_jbte ; RA0=0

Nije
btfsc PORTA,1 ; RA0=1 a da li je RA1=0 ?
goto Jok_nije ; RA1=1
bsf PORTB,8 ; RA0=1 i RA1=0, Q izlaz JK flip-flopa se setuje !
goto Pocetak

Jok_nije ; RA0=1 i RA=1, sto znaci da se stanje Q JK ff menja tj.
comf PORTB,f ; invertuje prethodno zateceno stanje na svim izlazima PORTB
; i naravno na trazenom RB8 koji ti je zadat u zadatku !
goto Pocetak

Jeste_jbte
btfsc PORTA,1 ; RA0=0 a da li je RA1=0 ?
bsf PORTB,8 ; RA0=0 i RA1=1 , stanje Q JK FF se resetuje !
goto Pocetak ; RA0=0 i RA1=0 stanje se ne menja i ide na pocetak programa

end ; Kraj programa !

ovaj zadatak ne funkcionise kako bi trebalo. treba da se definise neka gornja ivica, ja ne znam nista o tome.
ako neko zna neka napise kako treba to da se izmeni.pozdrav
[ Slavenko @ 18.06.2008. 15:10 ] @
Čoveče šta je problem niste mi jasni !

Koja gornja ivica, jel zna neko nešto bliže o tome da pojasni ? Šta je gornja ivica ?

Veselinoviću , Stojane da li vi znate šta je to ?
[ Seme @ 18.06.2008. 16:54 ] @
Ti si Slavenko totalno poludeo. :) Dokle mislis da im resavas ove zadatke. Pa valjda vidis da ni jedan od njih nece da pipne knjigu pa protumaci zadatak i ako se provuce neka greska ispravi je sam. Mislim da su svi zadaci koje su postavili na forumu elementarni i da uz malo truda svako moze da ih resi. Gde ide ovo nase skolstvo? Pretvara se u resavsku skolu. Pusti ih neka malo misle, cilj ovog foruma nije "imam problem resite mi ga", vec "imam problem navedite me na resenje". Pozdrav i kragujevcani sedite malo i zagrejite stolicu pa ce vam zadaci biti mnogo jasniji. Pozdrav i tebi slavneko i svaka cast na strpljenju.
[ Slavenko @ 18.06.2008. 18:30 ] @
U pravu si , to sam na više mesta i rekao neću više da rešavam njihove zadatke još samo jednom studentu kome sam obećao i to je sve od mene, međutim totalno sam zbunjen terminom "gornja ivica" ????

Da ironija bude veća zadaci rade u simulatoru a mplab simulator ne greši !

Očigledno svi studenti kojima sam uradio zadatak traže neku korekciju kako njihov asistent kaže zvanu "gornja ivica" !

Bojim se da će posle "gornje ivice" ako se neko javi da nam objasni taj termin, posle tražiti "donju maricu" pa ćemo doći u situaciju da pitamo šta je marica i tako ćemo napraviti bajku na elitesecurity !

Ajde još jednom da naglasim jer znam da ovaj sajt posećuju i oni koji znaju ali ne komentarišu :

DA LI NEKO ZNA ILI JE ČUO ZA TERMIN "GORNJA IVICA" A JOŠ BI LEPŠE BILO DA NAM OBJASNI ŠTA JE TO - AKO MOŽE ?

Ne dozvolite da živim u neznanju !
[ Stojan Trifunovic @ 18.06.2008. 18:42 ] @
Evo, znam ja šta je u pitanju. Trajko je samo odneo asistentu tvoj PRVI program za njega (onaj gde nije reseno prekoračenje rotacije), a onda se nije potrudio da uopšte vidi ispravke programa pre nego što te je napao.
[ Slavenko @ 18.06.2008. 20:52 ] @
To sam i ja posmislio ali šta je sa "gornjom ivicom" u zadatku sa JK flip-flopom ?

Pogledaj tablicu stanja u zadatku za JK flip-flop i pogledaj rešenje koje sam napisao. Ja ne vidim šta je tu problem !

Ajde poznavaoci mikrokotrolera i asemblera pogledajte taj zadatak pa mi recite gde je greška ako je ima, nemojte da komentarišemo samo nas trojica koji ne vidimo problem a pri tome se ne libite u drugim temama da kažete da su zadaci laki !
Ako su laki što neće da radi kod njih a kod mene hoće ? Šta je problem živo me interesuje a još više šta je to "gornja ivica" ?

Da li sam u pravu da je kod tačan ? Dajte komentare !

Očekujem vaše mišljenje !

PS: Mikoša , nisi valjda odneo profesoru ( asistentu ) doslovno prepisan zadatak, mislim na nazive labela "Jeste_jbte" i "Jok_nije" ?

[Ovu poruku je menjao Slavenko dana 19.06.2008. u 14:06 GMT+1]
[ mikosa @ 23.06.2008. 12:14 ] @
SLAVENKO, Izvinjavam se, mislio sam na "GORNJU i DONjU" ili leva-desna ivica (ne znam tacno koji izraz je asistent naveo) tj. ivica od koje pocinje da "radi".

P.S. Ispravio sam labele pre predaje asisstentu.
[ Sepa011 @ 23.06.2008. 16:51 ] @
Asistentu, profesoru ili onome ko je postavio zadatak treba reci: "Vrlo dobro, sedi JEDAN!"

Koliko je meni poznato u digitalnoj elektronici postoji UZLAZNA i OPADAJUCA ivica signala (Rising edge / Falling edge).

Toliko.
[ Slavenko @ 23.06.2008. 23:11 ] @
Sepa011 mislim da se ne radi ni o uzlaznoj odnosno silaznoj (opadajućnoj ) ivici jer bi ovaj zadatak o kome pričamo morao da radi bez definisanja na koju ivicu da reaguje ako si pogledao kod.
Ne znam da li je možda mislio na direktivu org 0x00, mada može i bez nje tako da sam ostao bez argumenata šta bi to moglo biti. Glupo je uopšte što su barem po njihovim reakcijama nedovoljno obradili samu materiju a od njih se traži da rešavaju zadatke. Ako nisu imali vremena na vežbama čemu onda uopšte sve što su radili. Vidiš da nisu pominjali interapte kao ni korišćenje tajmera ali su zato zapeli na "gornjoj ivici" koja nikome nije jasna u smislu šta bi to moglo da bude.

I dalje sam neobavešten, počinjem da ličim na Koštunicu !

Mikosa ja ti stvarno ne mogu više pomoći jer mi je "gornja ivica" i dalje nepoznat termin a kao što vidiš još se niko nije javio ko bi mogao da kaže šta je asistent tačno mislio kada je to rekao !

[Ovu poruku je menjao Slavenko dana 24.06.2008. u 10:47 GMT+1]
[ mikosa @ 24.06.2008. 19:50 ] @
Konacno sam UBOOOO sta je "leva-desna ivica", nasao sam da se to zove "prednja i zadnja ivica" tj. kada imam stanje 0 koje "prelazi" na 1 i stanje 1 kada "prelazi" na 0.


Slikovito:
________
___| |___
0 1 1 0

POZDRAV R.KEkeric
[ Slavenko @ 24.06.2008. 21:05 ] @
Mikosa tvoj zadatak je ako se sećam bio simulacija JK FF. Uopste nije potrebno definisanje prednje i zadnje ivice u njemu jer se program stalno vraća na početak i vrši stalna testiranja stanja na zadatim pinovima. Tvoje kolege pominju čitavo vreme "gornja ivica" a ne leva i desna !
Da li znaš šta je "gornja ivica" ?
[ Slavenko @ 25.06.2008. 22:40 ] @
Mikosa evo primetio sam jednu gresku koja se potkrala u tvom zadatku. Da ne bih kopirao čitav zadatak samo ću navesti njegov deo gde je greška i deo sa ispravljenim kodom :

Dakle sledeći deo koda ima grešku :

Code:

Jeste_jbte  
    btfsc PORTA,1                       ; RA0=0 a da li je RA1=0 ?
    bsf PORTB,8         ; RA0=0 i RA1=1 , stanje Q JK FF se resetuje !
    goto Pocetak          


Greška u prethodnom delu je u instrukciji bsf PORTB.8 ! Desno od nje u komentaru stoji da je u ovom slučaju RA=0 i RA=1 pa stanje Q, JK FF se resetuje a pomenutom instrukcijom se zapravo setuje što je jedina greška koju sam primetio. Dakle Umesto bsf PORTB.8 treba da stoji bcf PORTB.8 pa onda ispravljeni kod ima oblik :



Code:

Jeste_jbte  
    btfsc PORTA,1                       ; RA0=0 a da li je RA1=0 ?
    bcf PORTB,8         ; RA0=0 i RA1=1 , stanje Q JK FF se resetuje !
    goto Pocetak      


Znači, izmeni ovaj deo gde je greška i odnesi asistentu da proveri jer stanje izlaza Q u ovoj kominaciji ulaza mora da bude resetovano kao što je i napisano u komentaru ali se greška potkrala u naredbi.

Nadam se da je problem sada otklonjen i bez gornje ivice !

PS: Verovatno do sada niko nije analizirao ovaj zadatak na forumu zato što zahteva malo koncentracije zbog testiranja uslova pa je ova greška do sada bila neuočena !
[ nebojsajovanovic @ 20.06.2009. 21:55 ] @
Pozdrav svima , potrebna mi je pomoć oko zadatka , tekst zadatka glasi :

Odbrojavati pritiske na taster. Svaki pritisak na taster0 povećava na portu B prikaz binarnog broja za 5 a pritisak na taster1 smanjuje za 3. Broj na portuB se nalazi izmedju 0 i 200. Ako bi rezultat pritiskanja tastera bio van zadatog opsega operacija se ne izvsava a pali se led dioda na PORTA.3 sa frekvencijom od 1 Hz. Zadatak realizovati pomoću mikrokontrolera PIC16F84 na asembleru.
PORTB Prikaz binarnog broja
PORTA.0 Taster + 5
PORTA.1 Taster -3
PORTA.3 Signalizacija prekoracenja

PORTA.4 Reset prikaza (vraćanje na prikaz 0)

Unapred hvala , znam da je ovako nezahvalno da upadam i tražim ali ne mogu da stignem da uradim i ovo jer se spremam da dajem gomilu drugih predmeta.
[ foxhunter @ 23.06.2009. 08:17 ] @
Code:
Jeste_jbte  
    btfsc PORTA,1                       ; RA0=0 a da li je RA1=0 ?
    bcf PORTB,8         ; RA0=0 i RA1=1 , stanje Q JK FF se resetuje ! <<<<??????????
    goto Pocetak      


PORTB je osmo bitni, PORTB,8 ne postoji, MSBit je 7 a ne 8 !
PORTB,7 je oket, PORTB,8 nece moci! Verovatno lapsus?
[ miki2102 @ 26.01.2012. 13:23 ] @
Da li moze neko da mi pomogne oko zadatka? PORTA,1=1 treba da promenim da bude PORTA,1=0. Kako da to uradim, kojom komandom? I ako neko ima, neka okaci spisak komandi koje se koriste u asembleru, i zasta koja sluzi.





[Ovu poruku je menjao miki2102 dana 26.01.2012. u 21:20 GMT+1]
[ veselinovic @ 26.01.2012. 18:39 ] @
Citat:
miki2102: Da li moze neko da mi pomogne oko zadatka?


Moze, naravno, ali samo jedna osoba. A to si Ti.

Citas li ti uopste prethodne poruke?

Nema kompletnog rjesabvanja zadataka i slus.
Ukoliko se jos ijedan "student" pojavi na ovom forumu obecavam da cu kontaktirati vaseg asistenta sa prijedlogom da izbaci seminarske i ubaci rjesavanje zadataka na casu.
[ Odin D. @ 26.01.2012. 19:43 ] @
^^ A ukoliko se jos jednom pojavi zadatak za 16F84 ja obecavam da cu kontaktirati asistenta i nazvati ga magarcem sa predlogom da se sam izbaci iz akademskog zivota.
[ calle90buk @ 01.02.2014. 17:23 ] @
Moze li pomoc oko zadatka, cenim da je lagan ali sam pocetnik pa samim tim nema sanse da ga uradim. Hvala unapred

Zadatak:
Pritiskom na taster RA0 i RA1 vrsi se inkrementiranje i dekrementiranje 3-bitnog binarnog broja.
Pritiskom na RA2 racuna se kvadrat ovog broja i rezultat se ispisuje na RB izlaz. Inicijalna vrednost binarnog broja jednaa je nuli.
[ bogdan.kecman @ 01.02.2014. 17:25 ] @
> Moze li pomoc oko zadatk

moze, sta si uradio do sada, gde je zapelo?
[ calle90buk @ 01.02.2014. 17:32 ] @
Zapelo je na samom pocetku, prof je drzao predavanja 15 min objasnjavajuci taj MPLAB i dao je zadatak da se uradi za seminarski. Ne znam ni po kom redosledu to treba da se radi da bi zadatak bio kompletan i da bi kod radio.
[ bogdan.kecman @ 01.02.2014. 17:47 ] @
pogledaj:
http://www.winpicprog.co.uk/pic_tutorial.htm
[ calle90buk @ 02.02.2014. 20:37 ] @
Probacu, hvala u svakom slucaju.
[ mikikg @ 05.02.2014. 08:30 ] @
I ovo moze da ti pomogne:
http://www.scribd.com/doc/2535136/PIC16F84-uputstvo-za-rukovanje
[ calle90buk @ 05.02.2014. 16:35 ] @
Hvala, ovo mi je dosta pomoglo, odradio sam zadatak i poslao ga asistentu da ga pregleda i ukaze na greske za koje mislim da ih ima.