Kazalo po Svet elektronike forumu Svet elektronike
Revija za prave elektronike
 
AlbumAlbum   Pomoč pogostih vprašanjPomoč pogostih vprašanj   IščiIšči   Seznam članovSeznam članov   Skupine uporabnikovSkupine uporabnikov   Registriraj seRegistriraj se 
 Tvoj profilTvoj profil   Prijava za pregled zasebnih sporočilPrijava za pregled zasebnih sporočil   PrijavaPrijava 

sd ne zapiše časa

 
Objavi novo temo   Odgovori na to temo    Kazalo po Svet elektronike forumu -> Digitalna elektronika
Poglej prejšnjo temo :: Poglej naslednjo temo  
Avtor Sporočilo
Boštjan
Profesionalec


Pridružen/-a: Tor Mar 2004 22:48
Prispevkov: 100

PrispevekObjavljeno: Sre Feb 27, 2013 9:34 pm    Naslov sporočila: sd ne zapiše časa Odgovori s citatom

imam naslednjo kodo , ki zapiše za SD kartico čas in tri temperature. Vse deluje normalno le da mi ne izpiše na SD kartico časa. Izpis na SD kartice zgleda takole :,25,30,25 , na monitorju pa je izpis normalen 21:22,25,30,25 v čem je težava
koda:
'-------------------------------------------------------------------------------
'--- SD Card
'-------------------------------------------------------------------------------
Sd_card:

$lib "AVR-DOS.Lbx"
$include "Config_MMC.bas" 'include mmc
$include "Config_AVR-DOS.BAS"

I = Initfilesystem(1) 'init file system
If I <> 0 Then
Print "Napaka na SD kartici" 'se error
Print "NO SDCARD"
Return
End If
Waitms 300

Free_file = Freefile()

Print "Prosta datoteka:" ; Free_file

'*** odprem datoteko za pisanje
Open "Data.txt" For Output As #free_file

'*** Pisanje v odprto datoteko na kartici *********
Print Bcd(hour) ; ":" ; Bcd(minu) ; "," ; T1_1 ; "," ; T2_1 ; "," ; T3_1

Print #free_file , Bcd(hour) ; ":" ; Bcd(minu) ; "," ; T1_1 ; "," ; T2_1 ; "," ; T3_1


Waitms 200

Flush
Waitms 300

'*** Zaprem odprto datoteko ******
Close #free_file

Print "Kartica je zapisana!"


Return
Nazaj na vrh
Poglej uporabnikov profil Pošlji zasebno sporočilo
vilko
Profesionalec


Pridružen/-a: Pon Jan 2004 11:54
Prispevkov: 805
Kraj: Ljubljana

PrispevekObjavljeno: Čet Mar 07, 2013 8:23 am    Naslov sporočila: Odgovori s citatom

Težko rečem.
Kadar naletim na kamen, preko katerega bi moral iti, pa ne morem, poizkusim naokrog.
V tvojem primeru bi izpred argumenta Bcd(hour) dodal še en argument, toliko da vidim, kako se obnaša. Tako bi print ukaz izgledal tako:
Koda:
Print #free_file , " "; Bcd(hour) ; ":" ; Bcd(minu) ; "," ; T1_1 ; "," ; T2_1 ; "," ; T3_1


To seveda ni razlaga, zakaj ti tako piše, je le nasvet, kako morda prideš okrog kamna.
Nazaj na vrh
Poglej uporabnikov profil Pošlji zasebno sporočilo
senna
Mojster


Pridružen/-a: Čet Jun 2011 21:14
Prispevkov: 23

PrispevekObjavljeno: Čet Apr 10, 2014 11:59 am    Naslov sporočila: Odgovori s citatom

Tema za to je pravilna! Imam naslednjo bascom kodo:

$regfile = "m32def.dat"
$crystal = 4000000
$baud = 19200 ' use baud rate
$hwstack = 32 ' default use 32 for the hardware stack
$swstack = 10 ' default use 10 for the SW stack
$framesize = 40

$include "Config_MMC.bas" 'tu so definirani pini za komunikacijo s SD kartico (MISO, MOSI, CLK in SS)
$include "Config_AVR-DOS.bas"

'Konfiguriramo LCD
Config Lcd = 16 * 2 'definiramo LCD
Config Lcdbus = 4 'uporabljamo 4 podatkovna vodila
Config Lcdpin = Pin , Db4 = Portb.4 , Db5 = Portb.5 , Db6 = Portb.6 , Db7 = Portb.7 , E = Portb.1 , Rs = Portb.0
Cls

Dim I As Byte

Wait 1

I = Initfilesystem(1) 'inicializacija datotečnega sistem, številka particije je normalno (1), v spremenljivko I se nam zapiše rezultat napake (I=0 ni napake)

'Preverimo ali je prišlo pri inicializaciji do napake
If I > 0 Then
Locate 1 , 1
Lcd "Napaka: " ; I
End
Else
Lcd "Inicializacija OK!"
End If

Wait 1

'ODPIRAM DATOTEKO
Open "data.txt" For Append As #100

'PISANJE V ODPRTO DATOTEKO
Locate 2 , 1
Lcd "Pozdravljeni"
Print #100 , "Pozdravljeni"

'ZAPREM DATOTEKO
Close #100

End


Računalnik prevede program brez napak in ga pošlje v MEGAPIN. Na LCD-ju mi ob inicializaciji datotečnega sistema izpiše "NAPAKA 229". Po navodilih sem v datoteki Config_MMC.bas definiral:
Const Cmmc_soft = 1

ter pine:
CS-PINA.0, MOSI-PINA.1, SCK-PINA.2 in MISO-PINA.3.

V programu pa sem vključil dve knjižnice:
$include "Config_MMC.bas"
$include "Config_AVR-DOS.bas"

Kartico imam SD4GB, predhodno sem jo formatiral v FAT16 in tudi FAT32. Stiki so preverjeni! Ker imam dve MEGAPIN plošči sem preveril še na drugi! Javlja enako napako!

A je imel kdo podobne izkušnje?

Hvala!
Nazaj na vrh
Poglej uporabnikov profil Pošlji zasebno sporočilo
senna
Mojster


Pridružen/-a: Čet Jun 2011 21:14
Prispevkov: 23

PrispevekObjavljeno: Čet Apr 10, 2014 4:08 pm    Naslov sporočila: Odgovori s citatom

Vilko, prosim za pomoč! Po navodilih iz članka iz SE oziroma iz knjige "Programirajmo z Bascom - SD kartica in AVR-DOS datotečni sistem" mi nikakor ne uspe zapisati podatka na SD kartico!

Hvala!
Nazaj na vrh
Poglej uporabnikov profil Pošlji zasebno sporočilo
Vlado
Profesionalec


Pridružen/-a: Ned Jan 2004 16:11
Prispevkov: 555
Kraj: Ljubljana

PrispevekObjavljeno: Čet Apr 10, 2014 8:15 pm    Naslov sporočila: Odgovori s citatom

Kateri tip SD kartice pa imaš.
Danes je težko dobiti SD, ponavadi so to SDHC, za ta tip kartice pa je treba uporabiti drug $include.
Pa mislim da je ura pri SD kartici skoraj nujna (nisem prepričan, že dolgo nisem dela z SD).
Ali imaš na MegaPin original podnožje za SD kartico ali zunanje?
Če imaš zunanje podnožje, potem ne pozabi izklopiti Pull up uporov na MegaPin-u.
Ali MegaPin dela v te primeru na 3V3 ali na 5V?
LP
Nazaj na vrh
Poglej uporabnikov profil Pošlji zasebno sporočilo
senna
Mojster


Pridružen/-a: Čet Jun 2011 21:14
Prispevkov: 23

PrispevekObjavljeno: Čet Apr 10, 2014 9:17 pm    Naslov sporočila: Odgovori s citatom

Probal sem z 4Gb ter staro 2Gb. Na stari 2GB piše samo SD micro 2GB. Megapin ima original podnožje za SD kartico. Napajanje imam 5V, zato imam sklenjene jumperje 40, 41 in 42, razklenjen pa je J26. Po navodilih bi naj bilo tako.

Prosim za nasvet!
Nazaj na vrh
Poglej uporabnikov profil Pošlji zasebno sporočilo
Pokaži sporočila:   
Objavi novo temo   Odgovori na to temo    Kazalo po Svet elektronike forumu -> Digitalna elektronika Časovni pas GMT + 1 ura, srednjeevropski - zimski č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
You cannot attach files in this forum
You cannot download files in this forum


Powered by phpBB © 2001, 2005 phpBB Group