PIC Vietnam

Go Back   PIC Vietnam > Ban Điều Hành > Đóng góp ý kiến

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

Đóng góp ý kiến Nơi tiếp nhận những ý kiến đóng góp của thành viên

Trả lời
 
Ðiều Chỉnh Xếp Bài
Old 28-02-2014, 10:04 AM   #1
chauphuoc
Nhập môn đệ tử
 
Tham gia ngày: Feb 2014
Bài gửi: 2
:
Minh dag lam Do An ve "ĐIỀU KHIỂN ĐÓNG MỞ CỬA BẰNG THẺ RFID" dùng Pic 18F4680 va dùng phần mềm MPLAB
C18, mà không hiểu sao minh viết xong rùi dịch thì nó cứ báo lỗi hoài ak.mih tìm hoài mà cũng chưa ra được nữa, a e xem đoạn COSD minh viết bên dưới có bị thiếu sót hay sai chỗ nào thì sữa lại giúp minh với. Nếu a,e nào có cài MPLAB C18 thì sẵng tiện dịch đoạn COSD này giúp minh.Thank very much!

#include "DOOR_RFID.h"

INT1 KHOA =0,BAO_DONG = 0,KHONG_KHOA = 0;
INT16 COUNT_50Hz;
INT8 COUNT_LIMIT;
#int_TIMER2
void TIMER2_isr(void)

{
COUNT_50HZ++;
if (COUNT_50HZ >= 200) // 200*0,1=20ms (xung 50Hz)
{
COUNT_LIMIT = COUNT_LIMIT +1;
COUNT_50HZ =0;
OUTPUT_HIGH(SERVO);
}
if (COUNT_50HZ >= ON_DUTY)OUTPUT_LOW(SERVO);
}
void main()
{
INT8 MENU,I,K,V;
INT8 TEMP[5];
port_b_pullups (0B11100000);
START_UP();
LOAD_DATA();
LCD_PUTC('\f');
DOOR_CLOSE();
WHILE(TRUE) //
{
IF(BAO_DONG)
{
LCD_GOTOXY(1,2);
LCD_PUTC("CO DOT NHAP ");
BEEP_BUZZ(1);
DELAY_MS(300);
}

LCD_GOTOXY(1,1);
IF(INPUT(SENSOR)== 0)//SENSOR CUA DONG
{
IF(KHONG_KHOA == 0){
LCD_PUTC("Cua da dong! ");LCD_GOTOXY(1,2);LCD_PUTC("Ban khoa khong ? ");
WHILE (INPUT(SENSOR)== 0)
{
IF(PRESS(BUT_ENT,1))
{ KHONG_KHOA = 0;
KHOA = 1;
DOOR_CLOSE();BEEP_BUZZ(1); LCD_PUTC('\f');LCD_GOTOXY(1,2);LCD_PUTC("Cua dong va khoa");
KHONG_KHOA =1;BREAK;}// DE DONG CHOT KHOA CUA
IF(PRESS(BUT_CAN,1))
{
KHONG_KHOA = 1;
KHOA = 0;
LCD_PUTC('\f');
BEEP_BUZZ(3);LCD_GOTOXY(1,2);
LCD_PUTC("Cua khong khoa ");
BREAK;
}
DELAY_MS(100);
}
}
}
ELSE //CUA MO
{
LCD_PUTC('\f');
LCD_GOTOXY(1,2);
IF(KHOA == 1)//DANG KHOA MA CUA MO
{
BAO_DONG = 1;
}
ELSE {LCD_PUTC("Cua dang mo! ");KHONG_KHOA = 0;}

}
// xet cam bien cua co dong hay chua. neu chua thi bao cua dang mo
// CONTROL_SERVO();
// DELAY_MS(100);
// CONTROL_SERVO();
//DELAY_MS(1000);
// IF(PRESS(BUT_UP,0))ON_DUTY = ON_DUTY +1;
// IF(PRESS(BUT_DOW,0))ON_DUTY = ON_DUTY -1;
// PRINTF(LCD_PUTC,"%lD ",ON_DUTY);

if(read_4102(TEMP))
{
BEEP_BUZZ(3);
for (I = 0;I < 5 ; I++)TEMP[I] = xoay(TEMP[I]);
TAGNUM = MAKE32(TEMP[1],TEMP[2],TEMP[3],TEMP[4]);
// CONVERT_ID(TAGNUM);
// LCD_GOTOXY(1,1);
// PRINTF(LCD_PUTC,"%LD ",TAGNUM);
// FOR(I=0;I<10;I++)LCD_PUTC(DECIMAL[I]+48);
// LCD_GOTOXY(9,1);
K = SEACH_ID(ID,TAGNUM);
// PRINTF(LCD_PUTC,"%D ",K);
IF(K<50)
{
DOOR_OPEN();
KHOA =0;
BAO_DONG = 0;
LCD_GOTOXY(1,1);
LCD_PUTC("Khoa da mo ");
LCD_GOTOXY(1,2);
LCD_PUTC("Moi ");
FOR(V=5;V<12;V++)LCD_PUTC(STORE_ID[K][V]);// HIEN THI TEN CUA THE DA QUET;
LCD_PUTC("...! ");
DELAY_MS(4000);
}

ELSE {LCD_PUTC("\f"); LCD_GOTOXY(1,2);LCD_PUTC("The khong hop le "); DELAY_MS(1000);LCD_PUTC('\f');}
}
OUTPUT_HIGH(LED);
DELAY_MS(100);
OUTPUT_LOW(LED);
DELAY_MS(100);

IF(PRESS(BUT_MOD,1))// NHAN MOD DE CAI DAT HE THONG
{
LCD_PUTC("\f");
IF(ENTER_PASS() == 1)
{
MENU = CAI_DAT();
IF (MENU == 1) {DOOR_OPEN();BAO_DONG = 0; KHOA =0;}
IF (MENU == 2) WHILE( ADD_TAG()==1)DELAY_MS(100);
IF (MENU == 3) WHILE(DEL_TAG()==1)DELAY_MS(100);
IF (MENU == 4) WHILE(CHANGE_PASS()==1)DELAY_MS(100);
LOAD_DATA();
}
}
DELAY_MS(30);//
}

}

Xin chân thành cảm ơn!
chauphuoc 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à 03:48 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