Dự án “Amply số điều khiển bằng rotary encoder và hiển thị LCD” từ sinh viên FPT Jetking

Dự án “Amply số điều khiển bằng rotary encoder và hiển thị LCD” từ sinh viên FPT Jetking

Trong xu thế phát triển mạnh mẽ của ngành công nghiệp bán dẫn, FPT Jetking không chỉ dừng lại ở việc đào tạo lý thuyết mà còn khuyến khích sinh viên tạo ra các sản phẩm thực tiễn. Dự án “Amply số điều khiển bằng rotary encoder và hiển thị LCD 1602” là một ví dụ điển hình, thể hiện khả năng áp dụng kiến thức vào thực tế ngay trong quá trình học.

Mục tiêu và ý tưởng của dự án

Trong học phần thực hành thiết kế hệ thống số, sinh viên được yêu cầu xây dựng một sản phẩm hoàn chỉnh mang tính ứng dụng cao, tích hợp nhiều kiến thức như thiết kế mạch số bằng Verilog, giao tiếp thiết bị ngoại vi như LCD, EEPROM, rotary encoder, và thể hiện tư duy hệ thống trong thiết kế phần cứng số.

Từ yêu cầu đó, nhóm sinh viên đã lựa chọn phát triển một bộ amply điều khiển số có khả năng tùy chỉnh các thông số âm thanh cơ bản như volume (âm lượng), treble (âm cao) và bass (âm trầm). Người dùng có thể điều chỉnh thông qua rotary encoder (xoay để thay đổi giá trị, nhấn để chuyển chế độ), thông tin sẽ được hiển thị trên màn hình LCD 1602. Đây là phiên bản thu nhỏ của một bảng điều khiển amply điện tử hiện đại, tích hợp công nghệ điều khiển số thay vì điều khiển analog truyền thống.

Về giao diện người dùng, hệ thống sử dụng rotary encoder tích hợp nút nhấn để tương tác. Khi xoay encoder, hệ thống sẽ tăng hoặc giảm giá trị của chế độ hiện tại. Khi nhấn nút, hệ thống chuyển sang chế độ tiếp theo theo trình tự vòng lặp: Volume → Treble → Bass → Volume…

LCD 1602 đảm nhận vai trò hiển thị các thông tin liên quan đến chế độ đang chỉnh và giá trị hiện tại. Dòng thứ nhất của LCD thể hiện tên chế độ, dòng thứ hai thể hiện giá trị được điều chỉnh. Việc hiển thị được cập nhật tức thì khi có thao tác từ người dùng, giúp tạo cảm giác như đang sử dụng một sản phẩm điện tử thực thụ.

Dự án “Amply số điều khiển bằng rotary encoder và hiển thị LCD” từ sinh viên FPT Jetking
Dự án “Amply số điều khiển bằng rotary encoder và hiển thị LCD” từ sinh viên FPT Jetking

Các module kỹ thuật lập trình bằng Verilog

Dự án được hiện thực hóa trên nền tảng FPGA sử dụng board EZBA4205, toàn bộ logic được lập trình bằng ngôn ngữ Verilog. Các module kỹ thuật bao gồm:

Module giải mã rotary encoder: Rotary encoder phát tín hiệu A và B dạng xung vuông lệch pha. Sinh viên đã xây dựng module giải mã chiều quay bằng cách sử dụng state machine và logic đồng bộ, đồng thời xử lý chống nhiễu để đảm bảo độ chính xác khi người dùng thao tác nhanh.

Module quản lý chế độ hoạt động bằng máy trạng thái hữu hạn (FSM): Mỗi lần nhấn nút, FSM sẽ chuyển trạng thái điều khiển giữa các chế độ volume, treble và bass. Mỗi chế độ có mã hóa riêng để hiển thị trên LCD và liên kết với module xử lý tương ứng.

Module điều khiển LCD 1602: Một trong những phần khó nhất của dự án. Sinh viên thiết kế giao tiếp song song 4-bit, gửi các lệnh khởi tạo, tạo xung enable chính xác, lập trình hàm ghi lệnh và dữ liệu, xây dựng bộ đệm cho từng dòng hiển thị. Module này mô phỏng vai trò của một vi điều khiển trong việc giao tiếp với màn hình LCD.

Module EEPROM I2C (nâng cao): Một số nhóm còn triển khai chức năng lưu/đọc cấu hình người dùng qua IC AT24C32 sử dụng giao thức I2C. Việc hiện thực giao tiếp I2C trên Verilog là thách thức lớn vì phải điều khiển đầy đủ các pha: START, ADDRESS, DATA, ACK/NACK và STOP.

Dự án “Amply số điều khiển bằng rotary encoder và hiển thị LCD” từ sinh viên FPT Jetking
Dự án “Amply số điều khiển bằng rotary encoder và hiển thị LCD” từ sinh viên FPT Jetking

Quy trình triển khai dự án

Dự án được thực hiện theo quy trình bài bản gồm 5 bước:

Bước đầu tiên là phân tích yêu cầu hệ thống, xác định các đầu vào (rotary encoder, nút nhấn), đầu ra (LCD, tín hiệu điều khiển), các chế độ cần điều chỉnh và giao diện người dùng mong muốn.

Sau đó, nhóm tiến hành chia nhỏ hệ thống thành các module riêng biệt như bộ xử lý encoder, máy trạng thái FSM, driver LCD và module EEPROM. Mỗi thành viên phụ trách một phần nhất định để tối ưu hóa tiến độ và chất lượng.

Giai đoạn tiếp theo là lập trình và mô phỏng, sử dụng các công cụ chuyên dụng như Vivado hoặc ModelSim để viết code Verilog, test từng module riêng biệt trước khi tích hợp toàn hệ thống.

Tiếp theo là bước kết nối phần cứng: nhóm tiến hành nối các thiết bị ngoại vi như LCD, encoder và EEPROM lên board FPGA, sau đó lập trình module TOP để kết nối toàn bộ hệ thống.

Cuối cùng là kiểm thử thực tế và hoàn thiện sản phẩm. Hệ thống được kiểm tra về tính ổn định, độ chính xác và phản hồi người dùng. Những lỗi nhỏ được tinh chỉnh để đảm bảo trải nghiệm sử dụng mượt mà.

Giá trị học thuật và kỹ năng đạt được thông qua dự án

Thông qua dự án này, sinh viên đã phát triển và làm chủ nhiều kỹ năng quan trọng trong lĩnh vực thiết kế vi mạch và hệ thống nhúng. Trước hết, các bạn đã thành thạo lập trình Verilog ở mức chuyên nghiệp, biết cách tổ chức mã nguồn theo mô-đun, sử dụng hiệu quả máy trạng thái hữu hạn (FSM), cũng như xử lý tín hiệu đồng bộ và thời gian thực. Bên cạnh đó, sinh viên còn hiểu rõ cách giao tiếp phần cứng với các thiết bị ngoại vi như rotary encoder, màn hình LCD 1602 và bộ nhớ EEPROM giao tiếp I2C.

Không chỉ dừng lại ở lý thuyết, các bạn còn có cơ hội thiết kế và triển khai một hệ thống nhúng hoàn chỉnh, từ khâu hình thành ý tưởng cho đến khi tạo ra sản phẩm thực tế. Quá trình này cũng giúp sinh viên rèn luyện kỹ năng làm việc nhóm và quản lý dự án, biết cách phân chia công việc hợp lý và phối hợp hiệu quả giữa các thành viên. Nhờ đó, nền tảng kiến thức về FPGA và thiết kế mạch số của sinh viên được củng cố vững chắc – đây là những năng lực cốt lõi để làm việc trong các lĩnh vực như vi mạch, hệ thống nhúng hoặc thiết bị điện tử thông minh.

Khả năng mở rộng và ứng dụng thực tiễn

Sản phẩm có tiềm năng phát triển trong cả môi trường học thuật lẫn ứng dụng thực tế. Một số hướng mở rộng mà nhóm hướng tới bao gồm: nâng cấp màn hình lên OLED hoặc TFT để cải thiện khả năng hiển thị; tích hợp IC audio DAC như PCM5102 hoặc WM8960 nhằm xử lý âm thanh thực; bổ sung điều khiển từ xa qua Bluetooth, WiFi hoặc UART để tăng tính linh hoạt; và ứng dụng AI để nhận diện giọng nói, nâng cao mức độ thông minh của hệ thống. Những cải tiến này giúp sinh viên mở rộng kiến thức và ứng dụng vào các lĩnh vực như thiết bị gia dụng, điện tử tiêu dùng và điều khiển công nghiệp.

Thầy Nguyễn Nhựt Hải – Giảng viên phụ trách cho biết: “Thầy rất ấn tượng với tinh thần học tập và sự sáng tạo của sinh viên lớp Thiết kế vi mạch bán dẫn. Dự án amply số là một bài toán tổng hợp, đòi hỏi tư duy logic, khả năng xử lý tín hiệu số và thiết kế phần cứng chính xác. Việc sinh viên hoàn thiện sản phẩm hoạt động ổn định, giao diện thân thiện là minh chứng rõ ràng cho năng lực làm việc thực tế và chất lượng đào tạo tại FPT Jetking.”

Dự án “Amply số điều khiển bằng rotary encoder và hiển thị LCD” là ví dụ tiêu biểu cho triết lý đào tạo thực hành tại FPT Jetking. Không chỉ đơn thuần là bài tập học kỳ, sản phẩm mang tính ứng dụng cao, hoàn toàn có thể phát triển thành sản phẩm thương mại hoặc đề tài khởi nghiệp. Qua dự án này, sinh viên không chỉ học lý thuyết mà còn được rèn luyện trong môi trường thực tế, từ đó tự tin bước vào thị trường công nghệ đầy tiềm năng sau khi tốt nghiệp.

Cùng xem video demo dự án của sinh viên nhé!

Giảng viên Huỳnh Nhật Hải