ช่วยดูโปรแกรม (c microcontroller) ให้หน่อยครับ

แนะนำ สอบถาม ภาษา C สำหรับผู้เริ่มต้น ภาษา Java ภาษา Python

Moderators: mindphp, ผู้ดูแลกระดาน

chanonzaza
PHP Newbie
PHP Newbie
Posts: 1
Joined: 11/12/2012 1:52 am

ช่วยดูโปรแกรม (c microcontroller) ให้หน่อยครับ

Postby chanonzaza » 11/12/2012 1:56 am

อยากขอคำปรึกษาครับ คือ เป็นวงจรตรวจสอบกราวน์ครับ ตัวเครื่องจะติดอยู่กับคน ใช้หลักการถ่ายเทประจุ เมื่อผู้ใช้ใส่รองเท้าหรือไม่ได้เตะกับสิ่งใดๆไฟจะเตือนสีเขียว ถ้าถอดรองเท้าหรือไปแตะกับสิ่งใดๆเกิดการถ่ายเทประจุ ไฟก็จะเตือนขึ้นมาเป็นสีแดงครับ

ปัญหาตอนนี้คือ พยายามเขียนตัวหน่วงเวลา ก็คืออยากให้หน่วงสัญญาณเมื่อเข้ามา 3 วินาที(ป้องกันการแตะปล่อยๆเร็ว) และ หน่วงเวลาอีก3 วินาทีแสดงสัญญาณไฟครับ อันนี้เป็นอันที่ผมเขียนเอง ช่วยดูให้หน่อยครับ ขอบคุณล่วงหน้าครับ

#include<reg51.h>
#include<intrins.h>
sbit P33 = P3^3;
sbit LED1 = P3^4;
sbit LED2 = P3^5;
sbit LED3 = P3^7;
void external1_isr(void);
void delay_10ms(void);

/********Main Program*********/
void main(void)
{
TMOD = 0x01;
IT1 = 1;
EX1 = 1;
EA = 1;

while(1)
{
if(P33 == 1)
{
LED1 = 0;
LED2 = 1;
LED3 = 0;
delay_10ms();
}
else
}
LED1 = 1;
LED2 = 0;
LED3 = 1;
delay_10ms();
}
}
}
void external1_isr(void)interrupt 1
{
P33 =~ P33;
}

/*******Timer Function*******/

void delay_10ms(void)
{
// 12Mhz/12 = 100Khz
// 1/100Khz = 1us
// Over_Time/1us
// 10ms/1us = 10000
// 65536 - 10000 = 55536 = D8F0
TH0 = 0xD8;
TL0 = 0xF0;
TR0 = 1; // Stop Timer0
while(!TF0);
TR0 = 0; // Stop Timer0
TF0 = 0;
}

Return to “Programming - C/C++ & java & Python”

Who is online

Users browsing this forum: Google Adsense [Bot] and 18 guests