![]() |
|
Tài trợ cho PIC Vietnam |
Cơ bản về vi điều khiển và PIC Những bài hướng dẫn cơ bản nhất để làm quen với vi điều khiển PIC |
![]() |
|
Ðiều Chỉnh | Xếp Bài |
|
![]() |
#1 |
Đệ tử 6 túi
Tham gia ngày: Jun 2005
Bài gửi: 141
: |
Project1: I/O PORT
Chương trình đầu tiên ta học về cách làm việc với các cổng I/O. Ở đây ta có cổng E mắc với các Led đơn. Ta làm chương trình nháy Led đơn theo thứ tự như sau: 100,010,001,100.... Mỗi lần nháy cách nhau 250ms. void MAIN() { PORTE = 0; // Xóa dữ liệu cổng E TRISE = 0; // ĐỊnh nghĩa cổng E là Output ADCON1 = 0xE; // Định nghĩa cổng E là I/O Port. Loop: // Nhãn vòng lặp PORTE.F0 = 1; // Bật Led 1 PORTE.F1 = 0; // Tắt Led 2 PORTE.F2 = 0; // Tắt Led 3 Delay_ms(250); // Trễ 250ms PORTE.F0 = 0; // Tắt Led 1 PORTE.F1 = 1; // Bật Led 2 PORTE.F2 = 0; // Tắt Led 3 Delay_ms(250); // Trễ 250ms PORTE.F0 = 0; // Tắt Led 1 PORTE.F1 = 0; // Tắt Led 2 PORTE.F2 = 1; // Bật Led 3 Delay_ms(250); // Trễ 250ms goto Loop; // Lặp lại chu trình nháy. } Sau khi viết xong các bạn dịch sang file hex bằng cách ấn tổ hợp phím Ctrl + F9. Rồi đem file hex này nạp vào PIC16F877A là mạch chạy ngon lành. thay đổi nội dung bởi: tinhthanthep, 27-08-2007 lúc 05:10 PM. |
![]() |
![]() |
![]() |
#2 |
Đệ tử 6 túi
Tham gia ngày: Jun 2005
Bài gửi: 141
: |
Bây giờ các bạn lại muốn cả 3 đền nhấp nháy cùng một lúc, khoảng thời gian nhấp nháy là 250ms thì chương trình sẽ như thế này:
void MAIN() { PORTE = 0; // Xóa dữ liệu cổng E TRISE = 0; // ĐỊnh nghĩa cổng E là Output ADCON1 = 0xE; // Định nghĩa cổng E là I/O Port. Loop: // Nhãn vòng lặp PORTE = ~PORTE; // Đảo trạng thái cổng E Delay_ms(250); // Trễ 250ms goto Loop; // Lặp lại chu trình nháy. } |
![]() |
![]() |
![]() |
Ðiều Chỉnh | |
Xếp Bài | |
|
|