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

Trả lời
 
Ðiều Chỉnh Xếp Bài
Old 11-01-2008, 04:47 PM   #1
nguyen.geo
Đệ tử 2 túi
 
Tham gia ngày: Jan 2007
Bài gửi: 27
:
Chào bạn !
Thứ nhất thường thì khi chân nào dùng làm chân bàn phím với cách mắc như bạn thì thường dùng 1 con điện trở nối lên VCC để cho nó phân biệt Mức thấp và mức cao vì chân bàn phím bạn chọn là Input.
Còn đoạn chương trình bạn viết tại sao nó lại kô chạy thì :
Đoạn này bạn viết tôi chưa bao giờ dùng nên không biết đúng hay không ai biết thì bảo tôi luôn :
Code:
char Button(void)
{
   while(1)
   {
      if(!OK) return 'O';
      if(!Cancel) return 'E';
   }
}
còn tôi thì thường viết :
char Button(void)
{ unsigned char i;
   while(1) ((Up==1)&&(Down==1)&&(Enter==1)&&(Menu==1));
      if(!Up)  i = 1;
      if(!Down) i = 2;
      if(!Enter) i = 3;
      if(!Menu) i = 4;  // cancel
     return i;
}
//   còn đây là cách mà tôi thường tạo Menu
unsigned char Menu(unsigned char menu)
{  unsigned char i;
   Lcd(" hiển thị cái gì đó dòng 1 ");
    while(1)
    {  ... ghi lệnh C0 ra Lcd để nó về đàu dòng thứ 2 trước.
        if(menu==1) Lcd(" dòng thứ 2 gì đó ");
        else if(menu==2) Lcd(" dòng thứ 2 gì đó khác ");
        else ...........
        Delay();  // khoảng 200ms
        i = Button();
        if(i==1) menu++;   // nhớ là cần phải giới hạn xem có bao nhiêu Menu nếu không thì...
        if(i==2)  menu--;
   
        if(i==4) goto Extit;
   }
Exit : làm cái gì đó trước khi thoát ở đây như còi kêu chẳng hạn
   return menu;
}

thay đổi nội dung bởi: namqn, 11-01-2008 lúc 05:41 PM.
nguyen.geo vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 11-01-2008, 06:46 PM   #2
Jerry
Đệ tử 5 túi
 
Jerry's Avatar
 
Tham gia ngày: Sep 2006
Bài gửi: 101
:
Trích:
Nguyên văn bởi nguyen.geo View Post
Chào bạn !
Thứ nhất thường thì khi chân nào dùng làm chân bàn phím với cách mắc như bạn thì thường dùng 1 con điện trở nối lên VCC để cho nó phân biệt Mức thấp và mức cao vì chân bàn phím bạn chọn là Input.
Cái mạch này tui viết bằng ASM, vẫn các chức năng đó, chạy ngon lành mà. Nói để chứng minh lỗi không phải do phần cứng.
Jerry vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 11-01-2008, 07:09 PM   #3
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
Đơn giản nhất là Jerry viết chương trình thử nghiệm 1 phím bật tắt 1 LED, để xem đoạn code bắt phím có làm việc đúng hay không. Khi bắt đầu với một trình biên dịch mới, tôi vẫn thường làm những thí nghiệm đơn giản nhất, để đảm bảo là mình hiểu rõ hành vi của trình biên dịch.

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:24 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