+ Vasta teemale
Lehekülg 1 / 2 12 ViimaneViimane
Näitan vasteid 1 kuni 15 19-st

Teema: Taimer

  1. #1
    Liige mava716 maine kipub olema madal
    Liitunud
    08/2010
    Postitusi
    6

    Algseade Taimer

    Hei, kuskohast alata kui on tahtmine tekitada taimer. Mõte selline, et kui PIC saab toite
    tekib 5 sekundiline loendur heliga (kostab viis piiksu ja viimane on väheke pikem heli) Kui vahepeal ahel katkestatakse algab kogu protsess uuesti. Olemas on kivi PIC12F609 tarkvara, kivile kõrvetamise plaat...tahtmist palju teadmisi vähe. Otsingud netist pole kahjuks selliseid tulemusi andund millega ise hakkama saada.

  2. #2
    Liige qratman Kasutaja maine on neutraalne qratman avatar
    Liitunud
    03/2004
    Asukoht
    Tallinn, Pärnu
    Postitusi
    557

    Algseade Vs: Taimer

    Kui teadmisi napib saab näiteks siit alustada: http://digital-diy.com/PIC-Microcont...beginners.html Tõsi küll, seal räägitakse PIC18 seeria näitel, mis on veidi parema siseehitusega kui PIC12/PIC16.

  3. #3
    Liige mava716 maine kipub olema madal
    Liitunud
    08/2010
    Postitusi
    6

    Algseade Re: Vs: Taimer

    Mõte oli selline,


  4. #4
    Liige qratman Kasutaja maine on neutraalne qratman avatar
    Liitunud
    03/2004
    Asukoht
    Tallinn, Pärnu
    Postitusi
    557

    Algseade Vs: Re: Vs: Taimer

    Vdd ja Vss vahel võiks 100nF bypass kondensaator olla. GP3 sisend ujub kui S1 on lahti. Aitab 10k takisti GP3 pealt toitesse (siis on avatud S1 korral sisendis loogiline "1"). Sellel kivil on olemas ka sisemised pull-up takistid, siis ei ole välist takistit vaja aga GP3 viigul ainsana sisemine pull-up puudub.

    Võib olla oleks otstarbekam S1 hoopis toiteahelasse panna?

  5. #5
    Liige ahelet maine kipub olema madal
    Liitunud
    05/2010
    Postitusi
    52

    Algseade Vs: Taimer

    Soovitan 12f675 pic. Mugav, hea ja lihtne.
    siin üks töötav näide, 12f675 PIN6(gp1) otsas panin poteka 20k +5 ja ov vahele. Sellega saab määrata aja.
    PIN3(gp4) on fikseeruv on/off lüliti, mis annab +5v sisendile peale.
    Kui lüliti lülitub sisse, siis paneb väljundi PIN2(GP5) aktiivseks(tekkib +5V) väljundisse.
    Ja väljundis on +5V niikaua, kuni potekast etteantud aeg ära tiksub.
    ja sellel lülituse hetkel loetakse takisti pealt tuleva pinge väärtus ja vastavalt siis loetakse aega, 5v = 1,5 min 0v = 0 sek (hetkeks väljund siiski vilksutab ka 0V juures.)
    Programm assembleris on siin:
    64 1024-sest mälust ainult kulus. ( täpselt sama asi tehtud basicus sõi 6x rohkem mälu. Veidi rohkem, kui 1/3 MÄLUST SÕI sama asi basic lihtsalt ära.)
    assembler on 6 korda ökonoomsem mälu õgija kui basic.
    Kuigi Basicus endas on asi väga lühike, aga translaator ei kõlba kuhugile.
    Kui veidi mudida, sisi võid teha mis ajad ise tahad.


    ; 12F675
    ;
    list p=12F675 ;tell assembler what chip we are using
    include "P12F675.inc" ;include the defaults for the chip
    errorlevel 0,-302 ;suppress bank selection messages
    __config _CPD_OFF&_CP_OFF & _BODEN_OFF & _MCLRE_OFF &_PWRTE_ON & _WDT_OFF & _INTRC_OSC_NOCLKOUT


    ;###################
    ; USER RAM ADRESSES
    ;###################
    ;USER RAM 020h - 05Fh
    ;TOTAL 64 x 8 registers

    cblock 0x20 ;start of general purpose registers

    TMRA
    POTLOW
    POTHIGH


    MARKER

    endc ;END of general purpose registers

    ;###############
    ; PROGRAM START
    ;###############
    ORG 0

    BSF INTCON,5 ;SET INTERRUPT READY FOR TMR0 = FF
    BSF INTCON,7 ;WITH-OUT GLOBAL INTERRUPT ENABLED NO TMRO OVERFLOW INT.
    NOP

    GOTO BEGIN ;SRY ADDRESS 0004 IS RESERVED FOR INTERRUPT
    ;###############
    ; INTERRUPT
    ;###############
    ORG 4 ;INTERRUPT START ADDRESS

    INCF TMRA,F ;INCREASE TMRA+1=TMRA

    BCF INTCON,2 ;PREPARE FOR NEXT TMR0 = FF
    BSF INTCON,7 ;ALSO ENABLE AGAIN GLOBAL INTERRUPT

    MOVLW H'03' ;00 = NOT ANY IN ACTIVE
    XORWF TMRA,W ;CHK IF POTHIGH REG EQU 00
    BTFSS STATUS,Z ;TEST RESULT OF XOR
    RETFIE

    CLRF TMRA


    ;=================================================
    MOVLW H'00' ;00 = NOT ANY IN ACTIVE
    XORWF POTLOW,W ;CHK IF POTHIGH REG EQU 00
    BTFSC STATUS,Z ;TEST RESULT OF XOR
    GOTO PLW

    DECF POTLOW,F
    RETFIE

    PLW MOVLW H'00' ;00 = NOT ANY IN ACTIVE
    XORWF POTHIGH,W ;CHK IF POTHIGH REG EQU 00
    BTFSC STATUS,Z ;TEST RESULT OF XOR
    GOTO FINAL

    DECF POTHIGH,F

    MOVLW H'FF' ;
    MOVWF POTLOW ;
    ;=================================================
    RETFIE ;RETURN FROM INTERRUPT

    FINAL BTFSC MARKER,2
    BCF GPIO,5 ;SET TEMP INDICATOR FOR IN1

    RETFIE
    ;###############
    ; BEGIN
    ;###############
    BEGIN CLRF GPIO ;INIT GPIO

    CLRF TMRA
    CLRF MARKER

    CLRF POTLOW
    CLRF POTHIGH

    MOVLW B'00000111' ;TURN OFF ANALOG REFERENCE
    MOVWF CMCON ;NB! IMPORTANT FOR I/O NORMAN USE

    BSF STATUS,RP0 ;set RP0 for RAM page 1

    MOVLW B'11011111' ;SET GP 0-4 INPUTS, GP 5 OUTPUT
    MOVWF TRISIO ;

    MOVLW B'11100010' ;SET GP1 - ANALOG INPUT
    MOVWF ANSEL ;ALSO FOSC IN RC SET HERE

    MOVLW B'11010110' ;TMR0 IS INTERNAL TIMER not MAX DELAY
    MOVWF OPTION_REG

    BCF STATUS,RP0 ;set RP0 for RAM page 0

    ;###############
    ; MAIN
    ;###############
    MAIN BTFSC GPIO,4
    GOTO NEXT

    BCF GPIO,5
    BCF MARKER,2

    GOTO MAIN

    NEXT BTFSC MARKER,2
    GOTO MAIN

    MOVLW B'10000111' ;conf adcon for GP4 volt read ALSO SET GO DONE HERE 1
    MOVWF ADCON0

    ADCRES1 BTFSC ADCON0,1 ;CHECK IF ADC CONVERSION IS DONE
    GOTO ADCRES1

    BSF STATUS,RP0 ;set RP0 for RAM page 1
    MOVF ADRESL,W
    BCF STATUS,RP0 ;set RP0 for RAM page 0
    MOVWF POTLOW
    MOVF ADRESH,W
    MOVWF POTHIGH

    BSF MARKER,2
    BSF GPIO,5

    GOTO MAIN
    ;=================================================



    END
    Viimati muutis ahelet : 25-03-11 kell 22:03 Põhjus: tuli meelde

  6. #6
    Liige ahelet maine kipub olema madal
    Liitunud
    05/2010
    Postitusi
    52

    Algseade Vs: Taimer

    Peab olema programmaator, see sul vist on.
    Assembleri jaoks on protsessori pdf manualis kõik kirjas, ole ainult mees ja loe.
    Siis läheb sul vaja editori koos translaatoriga, Mplab microchipi oma sobib väga edukalt.
    võib kirjutada ka suias teksti redaktoris notepad ja kasutada MPASMWIN.exe vanemat versiooni, näiteks 5,01.
    See töötab ilma Mplabita ka. Siis vajalik ka eraldi INI fail, need on Mplab sees kataloogis kõik olemas.
    Koreerid samasse direktori , kus MPASMWIN.exe ja sinuprogram.asm, mida teksti redaktoris kirjutad.
    Lisaks läheb vaja päris hulk kannatust ja palju testimisi ja pole ka paha netist materjale lugeda.
    Ja varsti hakkab pisikesi asjakesi tööle saama ka.
    Vahel on ka teiste tehtud näidistest abi.
    Viimati muutis ahelet : 25-03-11 kell 21:58

  7. #7
    Liige ahelet maine kipub olema madal
    Liitunud
    05/2010
    Postitusi
    52

    Algseade Vs: Taimer

    Ah jaa, Oshoni ja Isis simulaatorid on ka heaks abivahendiks, kuid need on mõlemad omade bugidega.
    Absoluutselt head simulaatorit ei ole olemas kahjuks.
    Aga enamuses aitavad simulaatorit palju asju kiiremini ära lahendada ja protsessori sisemusest arusaamine ka areneb.

  8. #8
    Liige klm Kasutaja maine on neutraalne klm avatar
    Liitunud
    08/2004
    Asukoht
    Rakvere
    Postitusi
    1.082

    Algseade Vs: Taimer

    Viivituste arvutamisel on abi sellest lehest:
    http://www.piclist.com/techref/picli...egen/delay.htm
    ja pieso piuks teeb kõvemat häält kui ta kahe väljundi vahele ühendada - ning siis kui üks on kõrge, teine madalaks lülitada.
    MINULE EI MEELDI KUI MÕNINGAD ISIKUD MINU POSTITUSI MUUDAVAD,
    KUI POSTITUS EI SOBI SIIS PALUKS SEE KUSTUTADA !

  9. #9
    Liige murphy Kasutaja maine on neutraalne
    Liitunud
    02/2005
    Asukoht
    Tartumaa
    Postitusi
    2.504

    Algseade Vs: Taimer

    Päris otse kõike eestikeelde ka ei tasu tõlkida muidu tuleb kokku selline käkk nagu eestikeelne windows. See "translaator" on ikka compiler. "editor koos translaatoriga" on IDE (Integrated development environment).
    Simulaatorid on nii nagu nimigi viitab, simulandid. Pole halli aimu ka välisest raudvarast lisaks kubisevad vigadest. Kaasaegsemad prosed omavad debug liideseid kus saab koodi samm sammult juba jälgida ja teha samu asju nagu simulaatoris ainult et need juhtuvad juba reaalsel plaadil ja reaalse raudvaraga mis tähendab et töötavad ka hiljem. Muidugi asembler ja 12 seeria pic on PÄRIS vana, say 10-20 aastat vist.
    Modelleerimises ja tootmises kehtivad:
    1. Avariikindel vooluring lühistab kõik teised.
    2. Transistor, millel on kiiresti toimiv kaitse, säästab kaitset, sulades kõigepealt ise.

  10. #10
    Liige mava716 maine kipub olema madal
    Liitunud
    08/2010
    Postitusi
    6

    Algseade Re: Vs: Taimer

    tänud,
    kirjutan natuke ka milleks seda vajan. Tegemist koerte agility (takistusriba) rajal on pausi laud kus koer peab püsima 5 sekundit. Iga sekund kõlab heli ja kui aeg saab täis kõlab pirin, ehk koerjajuht saab anda koerale loa laualt maha hüpata. Kui koer enda tarkusest maha hüppab katkeb aeg ja koer peab uuesti lauale hüppama ja harjutuse kordama.

    selline värk siis.

  11. #11
    Liige ahelet maine kipub olema madal
    Liitunud
    05/2010
    Postitusi
    52

    Algseade Vs: Taimer

    viiviseid saab ka teisiti teha.
    Siin ei jookse asi ühe viivise juures kinni, võib kasvõi sada viivist teha, mis kõik käivad üheaegselt ja samal ajal veel teha mida iganes.

    Aga too standartne viivitaja on kohe kinni ühes kohas.
    Tahad näiteks saada viivitust 1minut ja on kinni, terve minuti mitte midagi muud teha ei saagi.

    Või näiteks mul on 23 sisendit ja tahan et alla 0,3 sek signaali peale ei tõmmeldaks, siin jätkatakse 22 sisendi kontrollimist, kui 23 sisend on saanud signaali ja 0,3 sek viivis jookseb.
    võib kasvõi 23 erinevat viivist korraga jooksta erinevate aegadega 0,3 sek sees samaaegselt ja igat neist loendatakse eraldi vastavalt tema ajale.

    Aga tahaks näha, kuida seda selle standartse viivitajaga tehakse.

    ;##########################
    ; IN FILTER 0,3 SEK ROUTINE
    ;##########################
    TCHKIN1 BTFSC FGPIO,4 ;CHK GSM ANALOG OUT RESLUT
    GOTO STCHKIN1
    MOVF TMRA,W ;COPY TMR0 TO W
    ADDLW D'7' ;W + 7 =W
    MOVWF TIN1 ;COPY W TO TGSM
    GOTO DCHKIN1
    STCHKIN1 MOVF TMRA,W ;COPY TMRB TO W
    SUBWF TIN1,W ;ISNT TMRB NOW EQU MATIM
    BTFSC STATUS,0 ;CHK THIS
    GOTO DCHKIN1 ;IF NO, GO AHEAD
    BSF FGPIO,1 ;IF TIME REACHED, ACTIVATE GSM TEMP,0
    Viimati muutis ahelet : 28-03-11 kell 16:16 Põhjus: trükiviga

  12. #12
    Liige ahelet maine kipub olema madal
    Liitunud
    05/2010
    Postitusi
    52

    Algseade Vs: Taimer

    555 analoog mikroskeem on veelgi vanem ja ikka tehakse temaga kuni 5 min viiviseid.
    vana hea asi võib ka 100 aastat töötada ja ikka kasutatakse.
    mu vana mobiil on ka kaks uut üle elanud ja tema ikka töötab, aga uued on juba prügimäel.

  13. #13
    Liige qratman Kasutaja maine on neutraalne qratman avatar
    Liitunud
    03/2004
    Asukoht
    Tallinn, Pärnu
    Postitusi
    557

    Algseade Vs: Taimer

    Inglise keelne delay on eesti keeles viide mitte viivis (mis on pigem raha või võlaga seotud).

    Ma arvan et selle krüptilise assemblerkoodi loopimisega teemaalgataja oluliselt targemaks ei saa.

  14. #14
    Liige klm Kasutaja maine on neutraalne klm avatar
    Liitunud
    08/2004
    Asukoht
    Rakvere
    Postitusi
    1.082

    Algseade Vs: Taimer

    Programmi saaks oluliselt lihtsamaks, kui kasutada summerit.
    Siis tuleks lihtsalt võtta algatuseks mõni 2 valgusdioodi vilgutamise näidisprogramm ja seda veidi muuta.
    MINULE EI MEELDI KUI MÕNINGAD ISIKUD MINU POSTITUSI MUUDAVAD,
    KUI POSTITUS EI SOBI SIIS PALUKS SEE KUSTUTADA !

  15. #15
    Liige klm Kasutaja maine on neutraalne klm avatar
    Liitunud
    08/2004
    Asukoht
    Rakvere
    Postitusi
    1.082

    Algseade Vs: Taimer

    .. ja viivituse ajal võib ju kontrollida katkestust.
    MINULE EI MEELDI KUI MÕNINGAD ISIKUD MINU POSTITUSI MUUDAVAD,
    KUI POSTITUS EI SOBI SIIS PALUKS SEE KUSTUTADA !

+ Vasta teemale

Teema informatsioon

Antud teemat sirvivad kasutajad

Hetkel sirvib antud teemat 1 kasutaja(t). (0 liiget ja 1 külalist)

     

Sarnased teemad

  1. 12 v taimer
    carzumm poolt foorumis Elektroonikafoorum
    Vastused: 13
    Viimane postitus: 20-09-11, 12:53
  2. Taimer
    Tikk poolt foorumis Skeemifoorum
    Vastused: 1
    Viimane postitus: 21-09-04, 12:40
  3. taimer
    uba poolt foorumis Tooteotsing
    Vastused: 10
    Viimane postitus: 01-09-04, 23:39
  4. taimer
    loggy poolt foorumis Elektroonikafoorum
    Vastused: 8
    Viimane postitus: 21-09-03, 15:22

Lemmikud

Foorumi reeglid

  • Sa ei või lisada uusi teemasid
  • Sa ei või lisada vastuseid
  • Sa ei või lisada manuseid
  • Sa ei või muuta oma postitusi