1. Trang chủ
  2. » Kỹ Thuật - Công Nghệ

EEPROM: mọi thứ bạn cần biết về bộ nhớ này

7 8 0

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Nội dung

EEPROM là viết tắt của Electrically Erasable Programmable ReadOnly Memory. Nó là một loại bộ nhớ không bay hơi được sử dụng để lưu trữ các dữ liệu như cấu hình hệ thống và dữ liệu người dùng. Với EEPROM, dữ liệu có thể được lưu trữ vĩnh viễn mà không bị mất khi nguồn điện được cắt. EEPROM được sử dụng trong các thiết bị điện tử như Arduino và các hệ thống nhúng để lưu trữ các thông số cấu hình và dữ liệu người dùng.

EEPROM: thứ bạn cần biết nhớ hwlibre.com /eeprom/ 26 tháng một, 2021 Nếu bạn nhà sản xuất bạn thực số dự án DIY mà bạn phải làm việc với nhớ, chắn bạn biết nhớ khác mà Arduino tích hợp hoạt động nào, chẳng hạn flash (không thay đổi nơi lưu trữ phác thảo nạp khởi động), SRAM (bộ nhớ nhanh, dễ bay biến chương trình cịn q trình xử lý) EEPROM (khơng dễ bay sử dụng để lưu trữ thơng tin đặt lại) Chà, ngồi EEPROM có Arduino, bạn sử dụng chip bên loại nhớ , thành phần khác Chúng hồn tồn khơng phức tạp để hiểu, không tương tác với chúng để tạo quyền truy cập (viết đọc) cập nhật thơng tin lưu trữ Ở bạn tìm thấy thứ bạn cần biết để bắt đầu làm việc với loại nhớ EEPROM gì? 1/7 STMicroelectronics EEPROM EEPROM (Bộ nhớ có màu đỏ lập trình xóa điện) loại nhớ ROM, tức nhớ cố định liệu lưu trữ vĩnh viễn, nguồn điện bị ngắt Điều đặt chúng phía bên RAM (Bộ nhớ truy cập ngẫu nhiên), nhớ tất liệu không cấp nguồn Trong trường hợp EEPROM, khơng phải nhớ ROM, liệu ghi lại khơng thể thay đổi EEPROM, giống đèn flash, thay đổi cần thiết Điều có nghĩa là, số liệu lưu trữ xóa để lưu trữ liệu khác Trên thực tế, từ viết tắt ra, nhớ xóa điện để lập trình lại Điều khác với loại ROM khác, xóa EPROM, trường hợp này, điện không sử dụng để xóa nhớ, thay vào chúng có "cửa sổ" thạch anh chip để chiếu tia UV mà bị xóa Đặc điểm EPROM khiến chúng khó chịu, phải chiếu tia để xóa chúng Và tệ chúng vơ tình bị xóa tiếp xúc với loại xạ Trong EEPROM, phép thực thơng qua điện áp, theo cách an tồn thoải mái Cơ cấu nội 2/7 Nguồn: Researchgate.net Để EEPROM hoạt động, cần có nhớ đặc biệt Chúng chế tạo cách sử dụng bóng bán dẫn loại MOS, có cổng phía trước MOSFET truyền thống Các bóng bán dẫn tuân theo cấu trúc gọi SAMOS trạng thái bình thường chúng bị cắt đầu cung cấp mức logic Các ô EEPROM đọc với số lần khơng giới hạn, có giới hạn số lần chúng bị xóa lập trình lại , giống nhiều ô khác Điều xảy với ổ đĩa flash, lý người ta nói nhiều độ bền ổ cứng SSD, ổ flash, v.v Trong trường hợp SAMOS, giới hạn nằm khoảng từ 100.000 đến 1.000.000 lần Sau đó, họ thất bại Nhân tiện, số cấu trúc tạo người quen cũ, người vĩ đại: Tiến sĩ Fujio Masuoka từ Toshiba (1984), người tạo ký ức cấu trúc bán dẫn quan trọng khác Tuy nhiên, chip mắt thị trường Intel từ năm 1988, EEPROM loại NOR Ngoài ra, bạn phải biết loại nhớ thường liên kết với CPU điều khiển thông qua bus với giao thức SPI, I2C , v.v Trong trường hợp MCU (vi điều khiển), thường tích hợp bên trong, trường hợp số DSP, để đạt tốc độ cao Như thấy hình trên, bóng bán dẫn SAMOS tạo nên ô nhớ nhóm thành cặp Một đường gắn vào cổng số bóng bán dẫn hoạt động đường lựa chọn, để đánh dấu báo hiệu đường để truy cập (đọc viết) đường lại đường lưu trữ bit thơng tin (0 1) Các bóng bán dẫn chỉnh để tạo thành độ dài từ (word) cần thiết (4-bit, 8bit, 16-bit, ) từ nhóm lại tùy theo dung lượng EEPROM (ví dụ: có từ độ dài 64-bit với 16 dòng = 1024 bit, tức 1kb) EERPOM hoạt động nào? 3/7 Như bạn thấy bên cạnh, để thực tác vụ khác , điện áp cổng, nguồn cống bạn phải điện áp cụ thể: Gate 20v Drain 20v = lập trình (ghi) ô nhớ để lưu bit mong muốn Gate to 0v and Drain to 20v = Xóa bit lưu trữ để lập trình lại thành giá trị khác Gate 5v Drain 5v = đọc bit lưu trữ Vì điện áp cổng thấp điện áp ghi, giá trị lưu trữ không bị thay đổi Điều tương tự xảy với điện áp thoát, thấp hơn, bit lưu trữ khơng bị xóa Kết luận, EEPROM sử dụng điện áp "cao" để xóa ghi, chúng sử dụng điện áp thấp để đọc Mua EEPROM làm việc với STMicroelectronics , nhà sản xuất vi điện tử Pháp, số loại chip EEPROM này, có nhiều nhà sản xuất khác, chẳng hạn Microchip Những chip thường rẻ Nếu bạn định sử dụng chip này, bạn nên gặp nhà sản xuất kiểu máy, đồng thời tìm kiếm bảng liệu để xem tất khuyến nghị nhà sản xuất, chúng khác loại chip Ví dụ: họ định điện áp mà hoạt động, sơ đồ chân , v.v Vì vậy, bạn định cấu hình dự án cách Tùy thuộc vào kích thước kiểu máy, có nhiều chân cắm Nhưng để cung cấp cho bạn ý tưởng, chip IC 24LC512 EEPROM điển hình bao gồm: Các chân (A0), (A1) (A3) sử dụng cấu hình, chân chọn Chân (Vss/GND) nối đất Chân (SDA), dành cho liệu nối tiếp cho giao tiếp I2C Chân (SCL), dành cho clock cho I2C Chân (WP), chống ghi chống ghi Nếu kết nối với GND, chức ghi kích hoạt Nếu kết nối với Vcc bị vơ hiệu hóa Chân (Vcc), nối với nguồn Về thơng số kỹ thuật chip này: 512K (64×8) đệm ghi 128 byte Điện áp hoạt động: 1.8va 5.5v Đọc tại: 40uA Xe buýt truyền thông: I2C Chu kỳ ghi: 5ms Khả tương thích đồng hồ: 100-400Khz Độ bền: 10.000.000 chu kỳ 4/7 Có thể kết nối tối đa thiết bị Đóng gói: DIP chân, SOIJ, SOIC TSSOP Nơi để mua Để mua chip EEPROM , bạn xem đề xuất sau: ST 95040 4Kb SPI nối tiếp ST M28C64C 64Kb song song ST M24C02C 2Kb I2C nối tiếp ST M8571B6 1Kb I2C nối tiếp ST 24LC256 256Kb I2C nối tiếp Nối tiếp Microchip 24LC256-i/sn 256Kb I2C Sử dụng Arduino EEPROM Nếu bạn muốn bắt đầu làm việc với EEPROM, bạn thử bo mạch Arduino Nó lập trình cách đơn giản để hiểu mức độ logic lập trình làm để hoạt động Ví dụ để ghi lại biến 5/7 //Almacenar un valor en la EEPROM #include float sensorValue; int eepromaddress = 0; //Función para simular lectura de un sensor o pin float ReadSensor() { return 10.0f; } void setup() { } void loop() { sensorValue = ReadSensor(); //Lectura simulada del valor EEPROM.put( eepromaddress, sensorValue ); //Escritura del valor en la EEPROM eepromaddress += sizeof(float); //Apuntar a la siguiente posición a escribir if(eepromaddress >= EEPROM.length()) eepromaddress = 0; //Comprueba que no existe desbordamiento delay(30000); //Espera 30s } Ví dụ đọc liệu từ EEPROM //Leer una variable de coma flotante #include struct MyStruct{ float field1; byte field2; char name[10]; }; void setup(){ float f; int eepromaddress = 0; //La lectura comienza desde la dirección de la EEPROM EEPROM.get( eepromaddress, f ); Serial.print( "Dato leído: " ); Serial.println( f, ); eepromaddress += sizeof(float); } void loop() { } ể 6/7 Ví dụ để cập nhật giá trị, lập trình lại //Actualizar valor de la EEPROM escribiendo el dato entrante por la A0 #include int eepromaddress = 0; void setup() { } void loop() { int val = analogRead(0) / 4; EEPROM.update(eepromaddress, val); eepromaddress += sizeof(int); if(address == EEPROM.length()) eepromaddress = 0; delay(10000); //Espera de 10 segundos } Thơng tin thêm – Khóa học Arduino miễn phí 7/7

Ngày đăng: 05/04/2023, 21:24

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w