mau nanya ni ama teman - teman. bisa nga kita menyimpan data dalam mikrokontroler AT89s51 walaupun catu daya diputuskan dari rangkaian. misalnya kita masukkan angka (pin) dari keypad yang terhubung ke AT89s51. data tersebut tetap tersimpan walapun catu daya putus. kalau bisa gimana caranya ? kalau nga bisa ada nga cara untuk dapat menyimpan data ?
terima kasih
Gunakan internal EEPROM atau FlashROM
Biasanya menggunakan FlashROM karena sizenya lebih besar
coba deh cari library untuk access FlashROM atau EEPROM
Kutipmau nanya ni ama teman - teman. bisa nga kita menyimpan data dalam mikrokontroler AT89s51 walaupun catu daya diputuskan dari rangkaian. misalnya kita masukkan angka (pin) dari keypad yang terhubung ke AT89s51. data tersebut tetap tersimpan walapun catu daya putus. kalau bisa gimana caranya ? kalau nga bisa ada nga cara untuk dapat menyimpan data ?
terima kasih
AT89S51 tidak punya internal EEPROM jadi ga bisa.. :-\
Caranya tambahkan eksternal EEPROM.
Bisa tipe parallel EEPROM atau tipe serial EEPROM
seperti AT93C66, 28C64, dll.
Coba aja searching di internet untuk datasheet macam-macam ICnya..
tipe AVR hampir semuanya punya internal EEPROM, jadi tinggal diprogram saja.
Pilih mana..?? ;) ;) :D
Kalo nga mau pake EEPROM external, ganti aja pakai AT89S8252 atau AT89S8253, konfigurasi pin nya sama dengan AT89S51...hanya perlu nambah program untuk menulis ke internal EEPROM...
untuk AT89S8252 atau AT89S8253 cara untuk menyimpan datanya gimana ? mohon bantuannya, kalau bisa pake bascom tapi kalau nga pake c juga bole biar saya coba ?
Untuk AT89S8252 internal EEPROM dikendalikan oleh SFR WMCON (watchdog and memory control register) yang beralamat di 96H. EEPROM internal dikendalikan oleh bit EEMWE (bit ke-4) dan EEMEN (bit ke 3) dari register WMCON.
EEMWE = EEPROM Write Enable, sebelum menulis ke EEPROM bit ini harus di-set ("1"), dan di reset ("0") setelah selesai menulis.
EEMEN = EEPROM Access Enable, harus di-set sebelum mengakses (baca atau tulis) EEPROM internal.
Untuk menulis atau membaca internal EEPROM, dilakukan sama seperti mengakses external memory, perintah MOVX, asalkan bit-bit kendali telah di set.
Untuk contoh pakai Bascom, saya copykan dari help-nya Bascom...
The AT89S8252 has a built in 2Kbytes flash EEPROM.
You can use this to store data.
Two statements are provided : WRITEEEPROM and READEEPROM.
WRITEEEPROM var [, address ]
var
Any BASCOM variable name.
Address
The address of the EEPROM where to write the data to.
Ranges from 0 to 2047.
When you omit the address the address will be assigned automatically. You can view the assigned address in the report file.
READEEPROM var [, address ]
var
Any BASCOM variable name.
Address
The address of the EEPROM where to read the data from.
Ranges from 0 to 2047.
You can omit the address when you have written a value before with the WRITEEEPROM var statement.
Because in that case the compiler knows about the address because it is assigned by the compiler.
Example
Dim S As String * 15 , S2 As String * 10
S = "Hello" : S2 = "test"
Dim L As Long
L = 12345678
Writeeeprom S
Writeeeprom S2 'write strings
Writeeeprom L 'write long
S = "" : S2 = "" : L = 0 'clear variables
Readeeprom L : Print L
Readeeprom S : Print S
Readeeprom S2 : Print S2
End
makasi baget atas pencerahannya. saya akan coba dengan mengganti AT89s51 ke AT898252 atau AT89S8253.
Coba AVR... Pasti ketagihan... ease programming and powerfull!
emang saya pengen belajar avr juga hanya saya belum punya modul untuk avrnya
bikin sendiri ajh modulnya .... heheh ... murah n meriah bikin aj pke pcb titik hehe ...
punya rangkaiannya minimum systemnya ?