PIC Vietnam

Go Back   PIC Vietnam > Microchip PIC > Các ngôn ngữ lập trình khác (CCS C, HT PIC,...)

Tài trợ cho PIC Vietnam
Trang chủ Đăng Kí Hỏi/Ðáp Thành Viên Lịch Bài Trong Ngày Vi điều khiển

 
 
Ðiều Chỉnh Xếp Bài
Prev Previous Post   Next Post Next
Old 01-07-2008, 09:34 PM   #5
namqn
Trưởng lão PIC bang
 
Tham gia ngày: Feb 2006
Nơi Cư Ngụ: Tp. HCM, Việt Nam
Bài gửi: 3,025
:
Send a message via Yahoo to namqn
Bạn có thể dựa vào sườn chương trình sau để viết, tôi không dùng CCS C nên không viết cụ thể cho CCS C, bạn sẽ phải tự viết cho đúng cú pháp.
Code:
//Khai báo các biến số đếm và cờ từ 1 đến n

main() {
	// Vòng lặp chính
	while (1) {
		//Thực hiện công việc gì đó
		if (cờ 1 == 1) {
			//Thực hiện công việc tương ứng
			cờ 1 = 0;
		}
		if (cờ 2 == 1) {
			//Thực hiện công việc tương ứng
			cờ 2 = 0;
		}
		//Tương tự cho những công việc khác
	}
}

//Trình xử lý ngắt timer 1 chẳng hạn
ngat_timer1() {
	//Tăng số đếm 1
	if (số đếm 1 == ngưỡng 1) {
		số đếm 1 = 0;
		// Bật cờ 1;
	}
	//Tăng số đếm 2
	if (số đếm 2 == ngưỡng 2) {
		số đếm 2 = 0;
		// Bật cờ 2;
	}
	//Tưong tự cho các cờ khác
}
Chỉ cần thiết lập ngắt timer sao cho nó xảy ra ở một tần suất đủ nhanh để bạn có thể đặt thời gian trễ cho các công việc khác một cách thuận lợi. Ví dụ, timer ngắt mỗi 10 ms, nếu bạn không có công việc nào cần làm trễ ít hơn 100 ms. Như vậy, các số đếm tương ứng với các thời gian làm trễ 1 giây, 2 giây chẳng hạn, sẽ là 100 và 200.

Cách làm này dùng hơi nhiều RAM, nhưng không phải là vấn đề lớn với PIC18, đặc biệt nếu bạn chỉ có vài tác vụ đến vài chục tác vụ.

Thân,
__________________
Biển học mênh mông, sức người có hạn.

Đang gặp vấn đề cần được giúp đỡ? Hãy dành ra vài phút đọc luồng sau:
http://www.picvietnam.com/forum/showthread.php?t=1263
namqn vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
 


Quyền Sử Dụng Ở Diễn Ðàn
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is Mở
Smilies đang Mở
[IMG] đang Mở
HTML đang Tắt

Chuyển đến


Múi giờ GMT. Hiện tại là 06:58 AM.


Được sáng lập bởi Đoàn Hiệp
Powered by vBulletin®
Page copy protected against web site content infringement by Copyscape
Copyright © PIC Vietnam