Časový zaznamenávač událostí s PIC

Diskuze a poradna o programátorech a programování různých obvodů

Moderátor: Moderátoři

Odpovědět
Zpráva
Autor
Uživatelský avatar
markoni
Příspěvky: 2312
Registrován: 30 říj 2006, 00:00
Bydliště: Poblíž Zlína
Kontaktovat uživatele:

Časový zaznamenávač událostí s PIC

#1 Příspěvek od markoni »

Zdravím
Potřeboval bych nějaký program na zaznamenání nějaké události moje úvaha je taková:
program v například v PIC16F84 by vytvářel minuty a ty by přičítal a zapisoval do proměnné a jak by nastala nějaká událost zvenčí tak ta hodnota proměnné by se zkopírovala do eepromky obsažené v PIC16F84 a tu bych si přečetl na PC dělal někdo z vás něco takového abych nemusel já psát program a pak pracně ladit díky
Uživatelský avatar
miromatus
Příspěvky: 359
Registrován: 11 pro 2004, 00:00
Bydliště: SK Levice

#2 Příspěvek od miromatus »

Zdravím , pozri KTE 6/2003 miniškola 16F84 lekcia 21 , je tam popisovaný program záznam času pri stlačení tlačidla.
Uživatelský avatar
markoni
Příspěvky: 2312
Registrován: 30 říj 2006, 00:00
Bydliště: Poblíž Zlína
Kontaktovat uživatele:

#3 Příspěvek od markoni »

miromatus píše:Zdravím , pozri KTE 6/2003 miniškola 16F84 lekcia 21 , je tam popisovaný program záznam času pri stlačení tlačidla.

Ten časopis jsem si kupoval v trafice ale bohužel nepravidelně tak nevím jestli toto číslo mám nevíte náhodou kdybych ho neměl kde ho sehnat když ne v papírové podobě tak v elektronické?díky mimochodem je veliká škoda že přestal vycházet .
Uživatelský avatar
stepa
Příspěvky: 4669
Registrován: 05 led 2007, 00:00
Bydliště: poblíž HK
Kontaktovat uživatele:

#4 Příspěvek od stepa »

markoni píše:
miromatus píše:Zdravím , pozri KTE 6/2003 miniškola 16F84 lekcia 21 , je tam popisovaný program záznam času pri stlačení tlačidla.

Ten časopis jsem si kupoval v trafice ale bohužel nepravidelně tak nevím jestli toto číslo mám nevíte náhodou kdybych ho neměl kde ho sehnat když ne v papírové podobě tak v elektronické?díky mimochodem je veliká škoda že přestal vycházet .

Odkazy na stazeni jsou na foru.
...to co pisu nemyslim zle, ikdyz to tak muze vyznit...
Uživatelský avatar
miromatus
Příspěvky: 359
Registrován: 11 pro 2004, 00:00
Bydliště: SK Levice

#5 Příspěvek od miromatus »

Hodil som celú školu pic 16f84 z kte sem http://www.upnito.sk/download.php?dwTok ... 15f2afbf2b .
Uživatelský avatar
markoni
Příspěvky: 2312
Registrován: 30 říj 2006, 00:00
Bydliště: Poblíž Zlína
Kontaktovat uživatele:

#6 Příspěvek od markoni »

Můžete mi někdo napsat rutinu na hodiny a zápis do eeprom ? sice mám staženou celou školu programovaní co mě poskytl miromatus ale nemohu se dobrat správného chodu díky

Kód: Vybrat vše

LIST P = 16F84, R = DEC
#INCLUDE <P16F84.INC>
 __CONFIG 0x3FF9

RAM EQU  H'0C'
RBF EQU RAM
RBF1 EQU RAM+1
NUM EQU RAM+2
NUM1 EQU RAM+3
TMP EQU RAM+4
TM1 EQU RAM+5
TM2 EQU RAM+6
JEDN EQU RAM+7
DES EQU RAM+8
HOD EQU RAM+9
MIN EQU RAM+10
SEC EQU RAM+11
POM EQU RAM+12
ADRDD EQU RAM+13
HEX EQU RAM+14
TMR EQU RAM+15
MEM_W EQU RAM+16
MEM_S EQU RAM+17
#define Q PORTB,0
#define RS PORTB,1
#define RW PORTB,2
#define E PORTB,3
#define BF RBF,3
 ORG 0
 GOTO START
  ORG 4
  START BSF STATUS,RP0
MOVLW B'01110001'
MOVWF TRISB
MOVLW B'11000001'
MOVWF OPTION_REG
BCF STATUS,RP0

 INTR MOVWF MEM_W
    SWAPF STATUS,W
    MOVWF MEM_S
     BCF STATUS,RP0
 CAS_1    NOP
     NOP
     NOP
     NOP
     NOP
     MOVLW 100
     MOVWF TMR0
     INCF TMR,F
     MOVFW TMR
     XORLW 100
     BTFSS STATUS,Z
     GOTO CAS_1
     CLRF TMR
     INCF SEC,F
     MOVFW SEC
     XORLW 60
     BTFSS STATUS,Z
     CLRF SEC
     INCF MIN,F
     MOVFW MIN
     XORLW 60
     BTFSS STATUS,Z
     GOTO CAS_1
     CLRF MIN
     INCF HOD,F
     MOVFW HOD
     XORLW 24
      BTFSC STATUS,Z
      CLRF HOD
      goto CAS_1
      ;MOVLW 132
      ;CALL Z_CAS
      ;CAS_1 BCFINTCON,T0IF
      SWAPF MEM_S,W
      MOVWF STATUS
      SWAPF MEM_W,F
      SWAPF MEM_W,W
     RETFIE

   SAVE MOVWF EEADR ;obsah registru W do registru EEADR
      MOVFW NUM
      MOVWF EEDATA;obsah registru NUM do registru EEDATA
      BSF STATUS,RP0 ;banka 1
      BSF EECON1,WREN ;zápis do EEPROM povolen
      MOVLW H'55'
      MOVWF EECON2;první zápis bezpečnostního kódu
      MOVLW H'AA'
      MOVWF EECON2;druhý zápis bezpečnostního kódu
      BSF EECON1,WR
      BTFSS EECON1,EEIF ;je zápis ukončen?
      GOTO $-1 ;ne,čekej
      BCF EECON1,EEIF;bit EEIF vynulován
      BCF EECON1,WREN ;zápis do EEPROM zakázán
      BCF STATUS,RP0 ;banka 0
      RETURN

 LOAD MOVWF EEADR ;obsah registru W do registru EEADR
       BSF STATUS,RP0 ;banka 1
       BSF EECON1,RD;přečti data
       BCF STATUS,RP0;banka 0
       MOVFW EEDATA
      MOVWF NUM ;zapiš data do registru NUM
      RETURN
end



jak to mám dát do hromady aby to fungovalo?
Uživatelský avatar
caven
Příspěvky: 417
Registrován: 15 srp 2006, 00:00

#7 Příspěvek od caven »

to je nějak trošku blbě zapsané to přerušení ne ??

ty máš na začátku programu skok na adresu kde začíná přerušení ? A poté s tím pracuješ ???
Uživatelský avatar
markoni
Příspěvky: 2312
Registrován: 30 říj 2006, 00:00
Bydliště: Poblíž Zlína
Kontaktovat uživatele:

#8 Příspěvek od markoni »

Já jsem to jen okopíroval s té školy potřeboval bych poradit nebo sem hodit celý program kdo to už řešil tak by mě ušetřil čas jak to mám udělat protože nemám na to dost času díky
a jak se dávají více řádkové komentáře tak aby jsem nemusel na každý řádek dávat ;
Odpovědět

Zpět na „Programování PIC, ATMEL, EEPROM a dalších obvodů“