Cách Ghi Và đọc Bộ Nhớ Flash Bằng Arduino

Mục lục:

Cách Ghi Và đọc Bộ Nhớ Flash Bằng Arduino
Cách Ghi Và đọc Bộ Nhớ Flash Bằng Arduino

Video: Cách Ghi Và đọc Bộ Nhớ Flash Bằng Arduino

Video: Cách Ghi Và đọc Bộ Nhớ Flash Bằng Arduino
Video: #6 FLASH đọc ghi dữ liệu trong bộ nhớ flash 2024, Tháng mười một
Anonim

Trong bài viết này, chúng ta sẽ xem xét cách ghi và đọc từ bộ nhớ flash bằng Arduino sử dụng vi mạch 25L8005 làm ví dụ.

Cách ghi và đọc bộ nhớ flash bằng Arduino
Cách ghi và đọc bộ nhớ flash bằng Arduino

Cần thiết

  • - chip nhớ flash với hỗ trợ SPI;
  • - bộ điều hợp cho bộ nhớ hoặc bảng điều khiển có độ lợi bằng không (bảng điều khiển ZIF);
  • - Arduino;
  • - máy vi tính;
  • - dây nối.

Hướng dẫn

Bước 1

Đầu tiên, chúng ta cần làm cho nó để có thể dễ dàng kết nối với vi mạch. Để làm điều này, bạn có thể sử dụng một bộ điều hợp đặc biệt mà bạn phải hàn vi mạch hoặc (tốt hơn là dùng) sử dụng bảng điều khiển zero-gain (cái gọi là bảng điều khiển ZIF).

Chip bộ nhớ flash trên bảng ZIF
Chip bộ nhớ flash trên bảng ZIF

Bước 2

Bây giờ chúng ta hãy cùng nhau đặt sơ đồ điện để kết nối chip bộ nhớ flash với Arduino. Chúng tôi sẽ sử dụng giao diện SPI để lập trình bộ nhớ, vì vậy chúng tôi sẽ kết nối với các chân tiêu chuẩn:

- CS - chân số 10, - MOSI - chân số 11, - MISO - chân số 12, - SCK - chân số 13.

Sơ đồ kết nối bộ nhớ Flash với Arduino
Sơ đồ kết nối bộ nhớ Flash với Arduino

Bước 3

Trước khi ghi dữ liệu vào bộ nhớ, cần phải xóa khu vực hoặc trang mà chúng ta sẽ ghi. Nếu không có nhiều dữ liệu được ghi (trong ví dụ hướng dẫn của chúng tôi, nó sẽ chỉ là 16 byte), thì nó đủ để xóa 1 sector. Từ tài liệu về vi mạch, chúng ta thấy trình tự xóa như sau: đặt quyền ghi (1 byte), gửi lệnh xóa (1 byte) và địa chỉ (3 byte), đặt lệnh cấm ghi (1 byte). Đây chính xác là những gì bản phác thảo trên làm. Hãy tải nó vào Arduino. Sau khi hoàn thành bản phác thảo, ổ đĩa flash đã sẵn sàng để ghi.

Phác thảo xóa khu vực flash
Phác thảo xóa khu vực flash

Bước 4

Bây giờ chúng ta hãy ghi dữ liệu. Hãy lấy một mảng nhỏ 16 byte làm ví dụ. Như bạn có thể thấy từ tài liệu, trước tiên bạn cần đặt quyền ghi (1 byte), sau đó gửi lệnh ghi (1 byte), địa chỉ bắt đầu (3 byte) và dữ liệu (trong ví dụ của chúng tôi là 16 byte), tại cuối thiết lập lệnh cấm ghi (1 byte).

Tải bản phác thảo lên Arduino. Sau khi thực hiện bản phác thảo này, mảng thử nghiệm của chúng ta nên được ghi vào bộ nhớ flash. Hãy kiểm tra nếu điều này là như vậy.

Bản phác thảo về việc ghi một mảng byte vào bộ nhớ flash
Bản phác thảo về việc ghi một mảng byte vào bộ nhớ flash

Bước 5

Hãy viết một bản phác thảo để đọc 16 byte từ bộ nhớ flash. Hãy tải nó vào Arduino và mở màn hình cổng nối tiếp. Trong màn hình, như mong đợi, mảng của chúng tôi, được đọc từ bộ nhớ bằng Arduino, sẽ được hiển thị 1 lần mỗi giây.

Đề xuất: