PIC Vietnam

Go Back   PIC Vietnam > Microchip PIC > Cơ bản về vi điều khiển và 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

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

Trả lời
 
Ðiều Chỉnh Xếp Bài
Old 09-01-2008, 01:22 AM   #1
thanco112
Đệ tử 1 túi
 
Tham gia ngày: Sep 2007
Bài gửi: 12
:
Unhappy Hỏi về chân RA4 của pic 16f84a

Chào các bác ạ!

Em đang nghịch con pic 16f84a và biết rằng cái chân RA4 của nó có thể dùng để điểu chỉnh timer0. Nhưng cụ thể điểu chỉnh cái gì và điều chỉnh thế nào thì em không biết. Vậy bác nào biết thì chỉ dùm em với ạ!

Cám ơn các bác ạ!

P/s: Các bác làm ơn giảng giải cho em bằng C chứ đừng dùng ASM. Em mù tịt ASM ạ!

Thanks cái nữa
thanco112 vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 09-01-2008, 04:25 AM   #2
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
Trích:
Nguyên văn bởi thanco112 View Post
Chào các bác ạ!

Em đang nghịch con pic 16f84a và biết rằng cái chân RA4 của nó có thể dùng để điểu chỉnh timer0. Nhưng cụ thể điểu chỉnh cái gì và điều chỉnh thế nào thì em không biết. Vậy bác nào biết thì chỉ dùm em với ạ!

Cám ơn các bác ạ!

P/s: Các bác làm ơn giảng giải cho em bằng C chứ đừng dùng ASM. Em mù tịt ASM ạ!

Thanks cái nữa
Chân RA4 có thể dùng làm ngõ vào khi Timer0 làm việc ở chế độ đếm (counter). Khi đó, Timer0 sẽ đếm các cạnh xung lên/xuống ở chân RA4 thay vì đếm xung clock của PIC (có thể qua bộ prescaler hay đi thẳng vào Timer0). Đề nghị bạn đọc mục 5.1 trong datasheet của PIC16F84A.

Có một vài C compiler dành cho PIC16, bạn nên chọn một compiler nào đó thì mới có thể cung cấp code ví dụ cho bạn (các compiler có thể có cách định vị bit khác nhau).

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

thay đổi nội dung bởi: namqn, 09-01-2008 lúc 07:31 PM.
namqn vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 09-01-2008, 12:19 PM   #3
thanco112
Đệ tử 1 túi
 
Tham gia ngày: Sep 2007
Bài gửi: 12
:
Camd ơn bác namqn nhiều ạ!
Bác có thể cho em một ví dụ viết bằng CCS C được không ạ!
thanco112 vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 09-01-2008, 07:53 PM   #4
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
Ví dụ, thiết lập Timer0 làm việc ở chế độ đếm, kích hoạt bằng cạnh lên (low to high), có prescaler là 1:2 (cứ 2 xung bên ngoài thì Timer0 mới đếm lên 1):

Code:
	setup_timer_0(RTCC_EXT_L_TO_H | RTCC_DIV_2);
Bạn có thể đọc số đếm của Timer0 bằng hàm get_timer_0(), hay đặt sẵn một số đếm cho Timer0 bằng hàm set_timer_0(). Timer0 sẽ đặt cờ ngắt T0IF (trong thanh ghi INTCON) lên 1 khi số đếm bị tràn từ 255 về 0.

Đề nghị bạn đọc tài liệu hướng dẫn của CCS C, link download dưới đây:

http://www.ccsinfo.com/downloads/CReferenceManual.pdf

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
Trả lời


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à 07:43 PM.


Đượ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