Khi làm việc với LED matrix hoặc Graphic LCD, hoặc bất kì 1 ứng dụng nào đó trên vđk mà bạn cần sử dụng đến matrix (hay array) định nghĩa sẵn, chẳng hạn như 1 bộ font các chữ cái cho led matrix... thì bạn sẽ tạo ra nó như thế nào,
sẽ có nhiều cách để tạo mã và mỗi người sẽ có 1 cách riêng phù hợp với quy mô của ứng dụng...chẳng hạn:
- ở quy mô nhỏ, các newbie thường chọn cách viết ra giấy, rồi chuyển từ binary thành hex rồi cho vào chương trình ngày xưa mới tập tọe mình toàn làm cách này, từ đó mình thuộc lòng chuyển đổi giữa các hệ cơ số
- Ở cấp chuyên nghiệp, bạn sẽ viết 1 ứng dụng để chuyển từ font máy tính, text, đồ họa trên máy tính thành 1 mảng trong C rồi cho nó vào EEPROM
Chương trình PvFont chẳng hạn
Tuy nhiên mỗi cách đều có 1 nhược điểm riêng...
Cách đầu thì bạn sẽ làm rất lâu, công phu, tỉ mỉ và sai sót lại lớn, và chỉ thực hiện được với cấp độ nhỏ, số lượng ít.
Cách sau thì bạn có thể thiết kế hàng loại, rất nhanh và chính xác, nhưng bạn phải viết ra 1 chương trình như vậy = 1 ngôn ngữ lập trình nào đó không phải là nhanh chí ít cũng mất cả buổi để chỉnh sửa giao diện và câu lệnh, và đặc biệt sẽ rất khó khăn cho những bạn không thành thạo về lập trình ứng dụng
Sau đây, mình sẽ hướng dẫn 1 cách tạo matrix nói chung là nằm cấp độ giữa 2 cách trên :whistle: bằng cách dùng chương trình excel, sẽ rất tiện dụng, trực quan khi bạn đã thành thạo nó, tạo ra 1 ma trận rất nhanh chóng...hihi :zzz:
1. Cơ bản, tạo ra 1 byte:
- Mở ứng dụng excel
- Select nhiều cột, nhấn chuột phải chon column width = 2 để các cell có hình vuông
- Giả sử bây giờ muốn tạo ô F2 đến ô M2 thành 1 byte, với mỗi giá trị trong ô là 1 bit, và ô F6 sẽ chứa giá trị của byte trên
thì các bạn gõ vào ô F6 1 câu lệnh "= F2*1+G2*2+H2*4+I2*8+J2*16+K2*32+L2*64+M2*128"
(nói thêm, các bạn có thể Nản thi phải nhập 1 câu lệnh lằng ngoằng như thế, nhưng vạn sự khởi đầu nan, đừng nản, khi bạn tạo 1 ma trận lớn, hàng vạn điểm, chỉ cần tạo 1 byte như thế, kéo chuột rẹt cái là xong cái ma trận đó rồi :lol: )
-OK, bây giờ đã xong 1 byte, trong byte đó gồm các bit 0,1, nếu để trống thì hiểu là 0, còn 1 thì gõ số vào, bây giờ hãy thử đặt các số 1 vào byte trên, ô kết quả F6 sẽ cho giá trị tương ứng dạng số Dec
Comment