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 03-11-2012, 05:18 PM   #1
kunhut91
Nhập môn đệ tử
 
Tham gia ngày: Dec 2010
Bài gửi: 2
:
Question help help!! PIC16f877 và MPLAB

Dạo quanh khắp 4rum cùng anh google, vẫn chưa tìm được tài liệu cần thiết!!
4rum có ai đã từng dùng MPLAB code cho 16f887 hoặc 16f877 vào giúp tôi 1 tay với.
Khi dùng muốn sử dụng ngắt (cụ thể trong trường hợp của mình là ngắt ngoài RB0 và 1 ngắt timer)~> mục đích là phát hiện có tín hiệu ngõ vào và đo thời gian mức thấp của tín hiệu.
Vấn đề ở đây của mình là cách khai báo và sử dụng ngắt trong MPLAB viết bằng C.
Các bác có thông tin hay tài liệu nào thì cho em xin cái, cảm ơn trước rất nhìu
kunhut91 vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 04-11-2012, 03:49 PM   #2
handsometran
Đệ tử 2 túi
 
Tham gia ngày: Feb 2009
Bài gửi: 35
:
Trích:
Nguyên văn bởi kunhut91 View Post
Dạo quanh khắp 4rum cùng anh google, vẫn chưa tìm được tài liệu cần thiết!!
4rum có ai đã từng dùng MPLAB code cho 16f887 hoặc 16f877 vào giúp tôi 1 tay với.
Khi dùng muốn sử dụng ngắt (cụ thể trong trường hợp của mình là ngắt ngoài RB0 và 1 ngắt timer)~> mục đích là phát hiện có tín hiệu ngõ vào và đo thời gian mức thấp của tín hiệu.
Vấn đề ở đây của mình là cách khai báo và sử dụng ngắt trong MPLAB viết bằng C.
Các bác có thông tin hay tài liệu nào thì cho em xin cái, cảm ơn trước rất nhìu
Bạn muốn dùng ngắt RB0 cũng đơn giản thôi, tôi có dùng nó để đếm xung encoder.
//===Khởi tạo ngắt RB0===============================//
void init_ngat()//Cấu hình ngắt RB0
//XEM DATASHEET TRANG 128
{
PEIE = 1;//cho phep ngat ngoai vi
GIE = 1;//cho phep ngat toan cuc
INTEDG = 0;//ngat RB0 khi co xung xuong
INTF = 0;//xoa co báo ngat RB0
ANS12 = 0;//Chon chuc nang cua chan RB0 la I/O digital
TRISB0 = 1;//Cho chan RB0 nhan xung tu encoder
WPUB = 0xff;//Bat chuc nang danh thuc MCU
}
/=====CHUONG TRINH DEM XUNG ENCODER====================//
void interrupt ISR()
{
if(INTF && INTE)//INTE=1 khi có tín hiệu tác động vào RB0, INTF=1 khi có xung cạnh xuống.
{xung++;
INTF =0;}//xóa cờ báo ngắt.
}
//===Khoi tao timer 1====================================//
void init_timer1()
{
// TMR1CS: Timer 1 clock source select bit
// TMR1CS = 1 : External clock form pin RC0
// TMR1CS = 0 : Internal clock Fosc/4
TMR1CS=0;
// T1OSCEN: Timer1 oscillator enable control bit
// T1OSCEN = 0 : Enable
// T1OSCEN = 1 : Shut-off
T1OSCEN=0;
// T1CKPS1:T1CKPS0 Prescale clock select bit
// 11 : 1/8; 10 : 1/4; 01 : 1/2; 00 : 1/1
T1CKPS1 = T1CKPS0 = 1; //presclaer = 1:8

TMR1GE=0;//Not used Gate Control
T1SYNC=0;//khong dong bo
TMR1IF=0;//CLEAR TIMER1 INTERRUPT FLAG
TMR1ON=0;//chưa cho Timer1 hoạt động
}
Bạn tham khảo thêm ỏ bên link này
http://www.picvietnam.com/forum/showthread.php?t=30520
handsometran vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 06-11-2012, 01:10 AM   #3
kunhut91
Nhập môn đệ tử
 
Tham gia ngày: Dec 2010
Bài gửi: 2
:
chú thích rất rõ ràng, thank lần nữa @@
kunhut91 vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 06-11-2012, 11:56 AM   #4
antho_pavel
Nhập môn đệ tử
 
Tham gia ngày: Aug 2010
Bài gửi: 4
:
Trích:
Nguyên văn bởi kunhut91 View Post
Dạo quanh khắp 4rum cùng anh google, vẫn chưa tìm được tài liệu cần thiết!!
4rum có ai đã từng dùng MPLAB code cho 16f887 hoặc 16f877 vào giúp tôi 1 tay với.
Khi dùng muốn sử dụng ngắt (cụ thể trong trường hợp của mình là ngắt ngoài RB0 và 1 ngắt timer)~> mục đích là phát hiện có tín hiệu ngõ vào và đo thời gian mức thấp của tín hiệu.
Vấn đề ở đây của mình là cách khai báo và sử dụng ngắt trong MPLAB viết bằng C.
Các bác có thông tin hay tài liệu nào thì cho em xin cái, cảm ơn trước rất nhìu
cách khai báo trong MBLAb bạn tham khảo ở đây.
http://mecskill.blogspot.com/2012/10...l#.UJiJ2W8xolg
antho_pavel vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Trả lời

Tags
pic16f877 mplab


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à 05:35 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