Bài trước: Chap 5: Memory Management (Quản lý bộ nhớ)
Bây giờ mình sẽ hướng dẫn cách biên dịch chương trình viết cho Atmega323, cái này đã có sẵn trong ví dụ của FreeRTOS rồi. Mình chỉ hướng dẫn chi tiết lại thôi bởi vì đợt trước vì cái này mà mình phải xoay sở 1 thời gian rất dài :-(
Mình biên dịch chương trình bằng WinAVR với trình biên dịch AvrStudio.
NOTE: Những file mình nói xóa là những file không cần thiết nên mình bảo xóa để có cái nhìn rõ ràng hơn về cấu trúc của Demo này thôi, chứ nếu mà để lại thì cũng không bị lỗi gì đâu.
Bước 1: lấy các file cần thiết.
Mở thư mục FreeRTOS sau khi giải nén, xóa các tệp trừ 2 tệp Demo và Source.
Vào tệp Source, vào tệp portable và xóa hết các tệp trong đó chỉ trừ lại 2 tệp MemMang ( chứa các file quản lý RAM ) và GCC. Vào tệp GCC lại thấy 1 đống tệp nữa, ta lại xóa hết chỉ trừ tệp ATmega323 ( Chứa các file cần thiết để định nghĩa về tool biên dịch).
Thoát ra tệp Source vào tệp Demo, trong này cũng có 1 đống tệp ta lại xóa hết, chỉ trừ 2 tệp là AVR_ATMega323_WinAVR và Common. Vào tệp Common xóa các tệp chỉ trừ lại 2 tệp Minimal và Include. Xong! đó là tất cả những File ta cần.
Bước 2: vào AvrStudio, tạo 1 project cho Atmega32 dùng AVR-GCC, Bỏ dấu tích khởi tạo các file và thư mục khi tạo Project đâu. Để project này vào tệp FreeRTOS (Cái mà lúc nãy xóa bớt các file bên trong rồi ấy).
Bước 3: Add file Makefile của file demo vào.
Trong màn hình của AvrStudio vào Project chọn Configuration Options, Tick vào Use Extenal Makefile rồi chọn đường dẫn vào file Makefile trong thư mục AVR_ATMega323_WinAVR
Nhấn OK là xong.
Nhấn F7 để biên dịch và xem thành quả :))
Nếu không sai bước nào thì trình biên dịch sẽ báo thành công, bạn vào AVR_ATMega323_WinAVR sẽ thấy 1 file rtosdemo.hex xuất hiện.
Rồi đó, mình gửi kèm 1 chương trình cơ bản dùng để nháy 2 led dùng Atmega 32 đây cho ai gặp rắc rối ở các bước trên:
Demo_Atmega32
Good luck!
Bài tiếp: Dùng FreeRTOS cho MCU khác không có trong Demo. (Ex Atmega128)
Bây giờ mình sẽ hướng dẫn cách biên dịch chương trình viết cho Atmega323, cái này đã có sẵn trong ví dụ của FreeRTOS rồi. Mình chỉ hướng dẫn chi tiết lại thôi bởi vì đợt trước vì cái này mà mình phải xoay sở 1 thời gian rất dài :-(
Mình biên dịch chương trình bằng WinAVR với trình biên dịch AvrStudio.
NOTE: Những file mình nói xóa là những file không cần thiết nên mình bảo xóa để có cái nhìn rõ ràng hơn về cấu trúc của Demo này thôi, chứ nếu mà để lại thì cũng không bị lỗi gì đâu.
Bước 1: lấy các file cần thiết.
Mở thư mục FreeRTOS sau khi giải nén, xóa các tệp trừ 2 tệp Demo và Source.
Vào tệp Source, vào tệp portable và xóa hết các tệp trong đó chỉ trừ lại 2 tệp MemMang ( chứa các file quản lý RAM ) và GCC. Vào tệp GCC lại thấy 1 đống tệp nữa, ta lại xóa hết chỉ trừ tệp ATmega323 ( Chứa các file cần thiết để định nghĩa về tool biên dịch).
Thoát ra tệp Source vào tệp Demo, trong này cũng có 1 đống tệp ta lại xóa hết, chỉ trừ 2 tệp là AVR_ATMega323_WinAVR và Common. Vào tệp Common xóa các tệp chỉ trừ lại 2 tệp Minimal và Include. Xong! đó là tất cả những File ta cần.
Bước 2: vào AvrStudio, tạo 1 project cho Atmega32 dùng AVR-GCC, Bỏ dấu tích khởi tạo các file và thư mục khi tạo Project đâu. Để project này vào tệp FreeRTOS (Cái mà lúc nãy xóa bớt các file bên trong rồi ấy).
Bước 3: Add file Makefile của file demo vào.
Trong màn hình của AvrStudio vào Project chọn Configuration Options, Tick vào Use Extenal Makefile rồi chọn đường dẫn vào file Makefile trong thư mục AVR_ATMega323_WinAVR
Nhấn OK là xong.
Nhấn F7 để biên dịch và xem thành quả :))
Nếu không sai bước nào thì trình biên dịch sẽ báo thành công, bạn vào AVR_ATMega323_WinAVR sẽ thấy 1 file rtosdemo.hex xuất hiện.
Rồi đó, mình gửi kèm 1 chương trình cơ bản dùng để nháy 2 led dùng Atmega 32 đây cho ai gặp rắc rối ở các bước trên:
Demo_Atmega32
Good luck!
Bài tiếp: Dùng FreeRTOS cho MCU khác không có trong Demo. (Ex Atmega128)
Nhận xét
Đăng nhận xét