Daftar Isi:

Inisialisasi Pengaturan EEPROM Arduino: 5 Langkah
Inisialisasi Pengaturan EEPROM Arduino: 5 Langkah

Video: Inisialisasi Pengaturan EEPROM Arduino: 5 Langkah

Video: Inisialisasi Pengaturan EEPROM Arduino: 5 Langkah
Video: CARA SIMPAN NILAI DATA DI EEPROM ARDUINO 2024, Juli
Anonim
Image
Image
Apa itu EEPROM?
Apa itu EEPROM?

Halo semuanya, Setiap Arduino memiliki memori internal kecil yang disebut EEPROM. Anda dapat menggunakan ini untuk menyimpan pengaturan untuk proyek Anda di mana nilai yang dipilih akan disimpan di antara siklus daya dan mereka akan ada di sana saat Anda menyalakan Arduino. Saya memiliki trik keren yang akan mengajari Anda bagaimana Anda dapat memulai serangkaian nilai default pada proses pertama Anda, jadi tetaplah di sini untuk mengetahui caranya.

Langkah 1: Apa itu EEPROM?

Apa itu EEPROM?
Apa itu EEPROM?

EEPROM adalah penyimpanan memori kecil, yang nilainya disimpan bahkan saat papan Arduino dimatikan. Ini bertindak seperti hard drive kecil sehingga Anda dapat menyimpan parameter untuk saat berikutnya Anda menyalakan perangkat. Tergantung pada jenis papan Arduino, Anda akan memiliki jumlah penyimpanan yang berbeda yang tersedia pada masing-masing, jadi misalnya Uno memiliki 1024 byte, Mega memiliki 4096 byte dan LilyPad memiliki 512 byte.

Penting untuk dicatat bahwa semua EEPROM memiliki jumlah siklus tulis yang terbatas. Atmel menetapkan harapan hidup sekitar 100.000 siklus tulis/hapus untuk EEPROM di Arduino. Ini mungkin terdengar seperti banyak menulis, tetapi dapat dengan mudah mencapai batas ini jika Anda membaca dan menulis dalam satu lingkaran. Setelah lokasi terlalu sering ditulis dan dihapus, itu bisa mulai menjadi tidak dapat diandalkan. Ini mungkin tidak mengembalikan data yang benar, atau mengembalikan nilai dari bit tetangga.

Langkah 2: Impor Perpustakaan

Impor Perpustakaan
Impor Perpustakaan
Impor Perpustakaan
Impor Perpustakaan
Impor Perpustakaan
Impor Perpustakaan

Untuk menggunakan memori ini, pertama-tama kita menyertakan library yang disediakan oleh Arduino. Pustaka menyediakan dua metode: baca dan tulis untuk tindakan yang sesuai. Fungsi read menerima alamat yang ingin kita baca, sedangkan fungsi write menerima alamat dan nilai yang ingin kita tulis.

Dalam contoh kita, tujuannya adalah untuk menyiapkan array pengaturan di setiap awal Arduino, jadi kita mulai dengan mendefinisikan array yang akan kita gunakan untuk penyimpanan dan menentukan alamat untuk setiap pengaturan yang ingin kita simpan. Dalam sebuah chip di mana kami memiliki 1024 byte yang tersedia, lokasi alamat akan berkisar dari 0 hingga 1023.

Langkah 3: Atur Bendera Inisialisasi

Setel Bendera Inisialisasi
Setel Bendera Inisialisasi

Trik untuk pengaturan awal nilai default untuk pengaturan adalah dengan menggunakan salah satu alamat sebagai indikator apakah pengaturan telah diinisialisasi atau belum. Saya telah menggunakan lokasi alamat terakhir untuk ini karena sering kali tidak digunakan untuk hal lain. Fungsi loadSettings pertama-tama akan memeriksa lokasi ini jika nilai yang disimpan ada karakter "T" dan jika tidak, itu akan pergi ke pengaturan dengan pengaturan, menulis nilai awal untuk masing-masing. Setelah selesai, sekarang akan mengatur nilai lokasi di mana kita melacak pengaturan yang diinisialisasi ke karakter "T" dan lain kali ketika kita menyalakan Arduino, kita tidak akan lagi menginisialisasi nilai, melainkan membaca data yang disimpan ke susunan kami.

Langkah 4: Memperbarui Pengaturan

Memperbarui Pengaturan
Memperbarui Pengaturan

Untuk memperbarui nilai, kita dapat menggunakan fungsi tulis seperti yang kita miliki pada inisialisasi, tetapi cara yang lebih baik adalah dengan menggunakan fungsi pembaruan yang disediakan. Apa yang dilakukan fungsi ini adalah pertama-tama memeriksa apakah nilai yang kita coba simpan sama dengan yang sudah ada di EEPROM dan jika ya maka tidak diperbarui. Dengan demikian, ia mencoba meminimalkan jumlah operasi tulis untuk memperpanjang umur EEPROM.

Langkah 5: Nikmati

Menikmati!
Menikmati!
Menikmati!
Menikmati!

Saya harap Instruksi ini bermanfaat bagi Anda dan Anda berhasil mempelajari sesuatu. Kode sumber tersedia di halaman GitHub saya dan tautannya ada di bawah. Jika Anda memiliki saran, silakan tinggalkan di komentar dan jangan lupa untuk berlangganan saluran YouTube saya untuk lebih banyak video serupa.

Direkomendasikan: