kali ini kita akan praktikum . bagaimana caranya menyimpan data suhu lm 35 ke mmc. data akan disimpan tiap 10 detik sekali. adapun bahan bahan yang harus disiapkan
1. modul avr trainer 2.0 dengan ic atmega 32.
2. mmc
3. codevision.
………………………………………………………………………………………………………………………………………………………………………….
alangkah baiknya anda membeli modul avr trainer 2.0 dengan ic atmega 32 harga 450.000. agar praktikum anda berjalan dengan mulus.
mmc yang dipakai mmc merek VGEN .siapa tahu di kasih hadiah sama v gen
code vision yang di pakai , yaitu versi 2.04 keatas. agar support MMC librari.
//=====================================================================
pertama kita buat dulu project baru dengan codevision. yang jelas yang dipakai ic atmega 32, xtal 11.0592, adc, i2c buat rtc ds1307, dan mmc, berikut setingan yang penting untuk MMC.
nantinya di hardware modul avr trainer 2.0 PORTD.5 DAN PORTD.6 di sambungkan ke GND ..
//=============================================================
berikut hasil create file menggunakan modul avr trainer 2.0
berikut isi dari file suhu.txt.
berikut contoh source codemenulis data suhu ke mmc tiap 1o detik sekali.
source code memakai compiler codevision 2.04.4a
ayo gan setelah mengcopy source code ini jangan lupa kalo ada yang nanya, beli modul avr dimana, hubungi KEI ELEKTRONIK(085228292473) ya. ini cuma permintaan saya saja. .
nah sekarang penjelasannya. saya akan mencoba menjelaskan yang penting pentingnya saja.
MEMBERI SEBUAH NAMA FILE
Dalam memberikan sebuah nama file , kita harus mengikuti aturan penamaan file seperti DOS. yaitu nama file maximal 8 huruf. lebih dari itu tidak bisa coba buktikan sendiri.
Dalam contoh ini saya memberi nama file. “suhu.txt”. nama file ini di hitung cuma 4 huruf sedangkan .txt tidak dihitung.
terus ketika kita memanggil nama file diusahakan filename itu di kosongkan dulu dengan cara diisi 0. dapat dilihat di subrutin reset filename
Membuat sebuah file.
urutan untuk membuat sebuah file:
1. reset namafile
2.beri nama file (jangan lupa tidak boleh lebih dari 8 huruf).
3. create file
4. jangan lupa close file (kalo fungsi close file tidak di panggil mas proses membuat file baru tidak akan berhasil.
berikut source nya
void file_baru(void) { unsigned char ulang; status_create=0; for(ulang=0;ulang<10;ulang++) { reset_filename(); file_data_suhu(); timer_mmc(); if ((res=f_open(&file,filename,FA_CREATE_NEW))==FR_OK)status_create=1; else status_create=0; if(status_create==1) { if ((res=f_close(&file))==FR_OK)status_create=1; else status_create=0; } if(status_create==1)break; } stop_timer_mmc(); }
Mengisi isi file (append)
urutan untuk mengisi file, dalam proyek ini kita akan menambahkan isi file ke bawah, urutan :
1. reset nama file
2. beri nama fie
3. baca ukuran file (ukuran file ini dgunakan untuk mengetahui posisi terakhir alamat isi file).
4. buka file kemudian pilih mode tulis file
5. tunjuk alamat file yang akan ditulis. ( disini kita menggunakan alamat hasil dari ukuran file agar nantinya nambah terus).
6. kemudian tulis file dari buffer yang sudah di siapkan
7. close file (kalau fungsi close tidak dipanggil pasti udik semuanya. alias tidak berhasil).
void isi_file(void) { unsigned ulang; status_tulis=0; reset_filename(); file_data_suhu(); display_status(filename); for(ulang=0;ulang<10;ulang++) { timer_mmc(); if ((res=f_open(&file,filename,FA_WRITE))==FR_OK)status_tulis=1; else status_tulis=0; if(status_tulis==1) { if ((res=f_lseek(&file,finfo.fsize))==FR_OK)status_tulis=1; else status_tulis=0; } if(status_tulis==1) { if ((res=f_write(&file,buffer,panjangdatammc+1,&nbytes))==FR_OK)status_tulis=1; else status_tulis=0; } if(status_tulis==1) { if ((res=f_close(&file))==FR_OK)status_tulis=1; else status_tulis=0; } if(status_tulis==1)break; delay_ms(500); } stop_timer_mmc(); }
sekian dulu dari saya. maaf photo hardwarenya belum saya upload. nanti saya upload. mudah mudahan semuanya nambah rejekinya. amin. jangan lupa KEI ELEKTRONIK ya.
trims
dhani nugraha S.T.
mas kalau mau mutar file wav yang di simpan dalam mmc menggunakan code vision ada contohnya mas??
ada
brapa harga mmc nya mas??? ntar di kasih tutorial untuk membaca file nya kan mas?
150 rebu kalo modul MMC
bisa pesan tidak mas ke mas,,,
kang dhani salam kenal
kalau program tulis dan baca MMC FAT tidak bisa di simulasi Proteus ya? setiap kali create file gagal!
belum pernah euy. saya langsung ga pakai simulasi
bro,kalau yang pake code vision yang baru itu bisa muter file wav pake yang program itu juga ato tetep yang ada blok2an(pakai winhex)???
pakai metode fat aja. nanti masnya baca baca dulu flle wav. abaikan headernya file wav.
boga source code manggil data/wav file mas??hehe,,,eta baca helpnya urang teh ga paham2,,,
kang, kalo diganti setiap 5 detik atw setiap detik, gmn? gk ada masalah d create filenya kan?
bisa gpp
salam kenal kang dhani,
minta skema rangkaian interface modul mmc ke mikro bisa?
ouw ya sama itu modul mmc yg dipakai belinya dmn?
bisa kirim lwt email…terimakasih
mas, mau tanya apakah ic mikro at89s51 bisa berkomunikasi dg modul mmc sebagai media penyimpanan data ???
cari ram yang lebih gede dari 512byte, soalnya 1 sector mmc itu 512byte, jadi kalo ic micro mas lebih kecil dari itu ramnya pasti ga bisa
mas dhani,kok gak ada gambar rangkaianya?
mas, kalau pakai atmega 16 yang dirubah bagian mana?dan bisa tidak data dalam .csv
mas, mmc nya formatnya apa?FAT 32 atau 16?
mas klo pke ic atmega 16 bs jg ya??apanya yg msti dganti??
mas klo pake atmega8535 bisa?? pengen ngambil data di MMC gmna caranya ya mas??
ngambil data di MMC pake mikro atmega8535 maksudnya mas
mas aku dah nyoba programnya kok ketika dah nyampe pada program filebaru(); mikronya berhenti apa da yang salah ya mas, semuanya dah mirip sma program cuman untuk pin 10 dan 11 mmc pada mikronya tak setting portD.3 dan PortD.4 mohon solusinya
mas boleh minta SC nya untuk pemutar WAV ? ryannata89@gmail.com
thank mas
Keren master…
Master, tolong kirimin donk program menyimpan data suhu lm 35 ke email ini : andi766hi@gmail.com
Soalnya saya download dari link yg master kasih, tidak dapat diakses lg.
Tks banyak master
Terimakasih banyak mas,sangat berguna,
mau tanya sedikit, mas
untuk bagian code ini
for(ulang=0;ulang<10;ulang++)
{
timer_mmc();
if ((res=f_open(&file,filename,FA_WRITE))==FR_OK)status_tulis=1;
else status_tulis=0;
if(status_tulis==1)
{
if ((res=f_lseek(&file,finfo.fsize))==FR_OK)status_tulis=1;
else status_tulis=0;
}
if(status_tulis==1)
{
if ((res=f_write(&file,buffer,panjangdatammc+1,&nbytes))==FR_OK)status_tulis=1;
else status_tulis=0;
}
if(status_tulis==1)
{
if ((res=f_close(&file))==FR_OK)status_tulis=1;
else status_tulis=0;
}
if(status_tulis==1)break;
delay_ms(500);
}
kenapa harus di loop sebanyak 10kali ya?
mohon dibalas bila sempat ya
saya mau tanya lagi
void file_data_suhu(void)
{
filename[0]=’0′;
filename[1]=’:’;
filename[2]=’s’;
filename[3]=’u’;
filename[4]=’h’;
filename[5]=’u’;
filename[6]=’.’;
filename[7]=’t’;
filename[8]=’x’;
filename[9]=’t’;
}
pada kode untuk pemberian nama diatas mengapa dimulai dengan karakter ‘0’ dan ‘:’ ya? terimakasih
kang dani bisa minta source kode untuk postingan diatas gak..btuh banget nie… email : muh_n4srullah_natsir@yahoo.co.id
kang dani bisa minta source code lengkap untuk postingan diAtas gak…perlu banget ni. makasih ya kang. email : muh_n4srullah_natsir@yahoo.co.id
bisa ngak gunakan atmega 16?
trus gimana setting codewizarnya?
kang bisa minta source codenya,butuh banget buat penelitian.
mas mau tanya untuk skema rangkaian dari modul sd card ke atmeganya seperti apa?
Terima Kasih