Tạ Lục Gia Hoàng

Tham khảo Chân Ra của ESP32: Chân GPIO nào nên dùng?

Chip ESP32 gồm có 48 chân (pin) cùng với nhiều chức năng. Không phải tất cả các chân đều ‘lòi’ ra trong ngoài ở tất cả các board phát triển ESP32, một số chân thì không thể sử dụng được.
Có nhiều câu hỏi về cách sử dụng GPIO của ESP32. Chân gì nên sử dụng? Chân gì nên tránh sử dụng trong các dự án của bạn? Bài viết này là một hướng dẫn tham khảo đơn giản và dễ làm theo cho các GPIO của ESP32.

Làm quen với ESP32 Development Board

Bài viết này sẽ hướng dẫn bạn làm quen với board phát triển ESP32. Nếu bạn đã quen với ESP8266, thì ESP32 chính là thành công của nó. ESP32 đem đến rất nhiều tính năng mới. Điều thường được nhắc đến nhiều nhất chính là: nó kết hợp khả năng WiFi và Bluetooth và nó là lõi kép (dual core).

Writing Reusable Drivers (Phần 1)

Viết một driver có thể được sử dụng từ application này sang application khác có thể rất hữu ích cho các embedded-software developer. Một khi driver được viết xong, các developer có thể tập trung vào application code và không phải lo lắng gì về các bit và byte. Các mẫu thiết kế (design pattern) driver có thể được sử dụng lại không chỉ trên cùng một phần cứng (hardware) mà còn trên nhiều nền tảng (platform) khác, chỉ bằng những thay đổi nhỏ cần thiết để điều chỉnh driver để truy cập các vùng bộ nhớ (memory region) khác nhau.

Trong chương này, chúng ta sẽ xem xét các phương pháp luận (methodology) khác nhau mà developer có thể sử dụng để ánh xạ (map) vào bộ nhớ ngoại vi (peripheral memory) và sau đó chúng ta sẽ chứng minh cách sử dụng từng kỹ thuật.

Cấu trúc chương trình (Phần 2)

(Phần 1) , (Phần 2) Nội dung 1. Vai trò của hàm (function) 2. Sử dụng lưu đồ để thiết kế cấu trúc chương trình 3. Mã giả (pseudo code) 4. Chia chương trình thành các module 5. Quá trình biên dịch chương trình 6. Chỉ dẫn tiền biên dịch Chỉ dẫn #include Chỉ dẫn …

Cấu trúc chương trình (Phần 2) Read More »

Khái niệm lập trình Portable Firmware (Phần 3)

10. Embedded-Software Architecture Trong những ngày đầu, lập trình firmware sử dụng các bộ vi điều khiển cực kỳ hạn chế về tài nguyên. Mỗi từng bit phải được tách ra khỏi không gian bộ nhớ code và data. Khả năng tái sử dụng phần mềm là một mối quan tâm nhỏ và các chương …

Khái niệm lập trình Portable Firmware (Phần 3) Read More »

Khái niệm lập trình Portable Firmware (Phần 2)

3. Sự Module hóa Nhiều lần trong vài năm qua, tôi từng làm việc với một khách hàng mà nguyên cả ứng dụng của họ, hơn 50,000 dòng code, chỉ để trong một module là main.c. Nỗ lực bảo trì phần mềm hoặc tái sử dụng các đoạn code nhanh chóng trở thành một cơn …

Khái niệm lập trình Portable Firmware (Phần 2) Read More »

Cấu trúc chương trình (Phần 1)

Có rất nhiều khó khăn mà người lập trình sẽ gặp phải khi thiết kế một chương trình hệ thống nhúng. Thông thường, trước khi bắt tay vào việc viết mã nguồn, điều đầu tiên phải làm là xem xét thiết kế cấu trúc của chương trình, đặc biệt là với các hệ thống lớn, có nhiều chức năng.

Icons made by Freepik from www.flaticon.com