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 Tìm Kiếm Bài Trong Ngày Ðánh Dấu Ðã Ðọc 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

 
 
Ðiều Chỉnh Xếp Bài
Prev Previous Post   Next Post Next
Old 04-08-2010, 10:15 PM   #1
headman8x
Nhập môn đệ tử
 
Tham gia ngày: May 2010
Bài gửi: 6
:
Post <<Quét Ma Trận Bàn Phím >>

Chào các Bạn mình đang làm bài tập quét phím ma trận nhưng có 1 vấn đề mình chưa rõ nên đăng bài xin hỏi ý kiến các bạn. Mình xin chân thành cảm ơn!
Các bạn cho mình hỏi :

+ khi mình đặt ngõ vào và ngõ ra: ví dụ: TRISB=0X0F ;
mục đich là SET các chân: --> RB0, RB1,RB2,RB3 là các chân nhận giữ liệu ( Ngõ vào)
:--> RB4,RB5,RB6,RB7 là các chân xuất dữ liệu (ngõ ra)

khi đó thì mình có thể dùng các lệnh: output_high(pin); và output_low(pin) trên các ngõ vào không. Hay là chỉ được sử dụng input_state(pin) thôi !

Bài của minh như thế này các bạn xem hộ nhé! xem mình chưa đúng chỗ nào với??


void quet_phim() // THỰC HIỆN QUÉT MA TRẬN PHÍM THEO CỘT
{

// input_state(pin_b0);
output_high(PIN_B0); // THIET LAP COT_1 LAM NGO VAO MUC CAO
output_high(PIN_B1); //.......
//input_state(pin_b1); // THIET LAP CHAN VOI NGO VAO
output_high(PIN_B2); //.......
// input_state(pin_b2);
output_high(PIN_B3);
// input_state(pin_b3);
output_low (PIN_B4); // THIET LAP HANG_1 LAM NGO RA
output_low (PIN_B5); //.......
output_low (PIN_B6); //.......
output_low (PIN_B7);
if((!RB0)|(!RB1)|(!RB2)|(!RB3)) // KIEM TRA COT NAO DUOC NHAN
{
delay_ms(10); // CHONG RUNG PHIM
if(RB0==0) // KIEM TRA COT_1 DUOC NHAN PHIM
{
output_low (PIN_B0);
delay_ms(10);
// Bây giờ thiết lập các hàng là ngõ vào để kiểm tra
output_high(PIN_B4);
output_high(PIN_B5);
output_high(PIN_B6);
output_high(PIN_B7);

if(RB4==0) // hàng một được nhận phím bấm
{num=1;delay_ms(10);}
if(!RB5)
{num=2;delay_ms(10);}
if (!RB6)
{num=3;delay_ms(10);}
if (!RB7)
{num=4;delay_ms(10);}
}
if(RB1==0)
{

và quét lần lượt 4 cột !
headman8x vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
 

Ðiều Chỉnh
Xếp Bà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à 02:28 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