View Single Post
Old 25-06-2010, 09:10 AM   #7
chungtn1980
Nhập môn đệ tử
 
Tham gia ngày: Aug 2008
Bài gửi: 3
:
Trích:
Nguyên văn bởi phucvinh885 View Post
ví dụ trong 16f877a thi mình có thể lấy luôn các cổng vào ra là RA0,RA1.....RD0...dể xuất dữ liệu
nhưng ở pic 12f683 mình ko biết nó được dịnh nghĩa có tên là gì ,
mong các bạn giúp đỡ
Mình cũng thấy khó cái này, Nhờ các anh em bảo giúp
Chương trình này kiểm tra mức dầu của máy thông qua ADC, sau đó xuất ra còi báo hoặc tiếp tục cho xung đến bộ Điều khiển
Chương trình này khi chạy không xuất xung ra chân A3 khi a<1500, khi a>1500 thì kiểm tra trên osilo 2 kênh A0, A2 lại có biên độ khác nhau(gấp đôi 5V và 2.2V)

#include<12f683.h>
#DEVICE ADC=8
//#define sAN0
#fuses INTRC_IO, NOMCLR,NOWDT,NOPROTECT
#USE delay(internal=8M)
int16 t,a ;
void main(){
SET_TRIS_a(0b00000010);// chi co chan 6-A1 la vao adc
setup_adc_ports(sAN1);
setup_adc(adc_clock_internal);
while (true) {
set_adc_channel(1);
delay_us(1);
aq==0; // cho gia tri dau bang 0
aq=read_adc();

if (a<1500) //neu a<90 thi phat xung vao kenh A3 de ra coi bao
{
while(1)
{
output_high(PIN_A3);
delay_ms(30);
output_low(PIN_A3);
delay_ms(30);
}
}
//////////////////////////////////////////////////////
if (a>1500) // neu a>1500
{t==0;//gan gia tri dau
while(t<100)// thuc hien vong nay 100 lan
{
t++;
output_high(PIN_A0);//xuat xung ra cong A0
delay_us(7000); //
output_low(PIN_A0);//
delay_us(7000);
}
}
}
}

thay đổi nội dung bởi: chungtn1980, 26-06-2010 lúc 11:24 PM.
chungtn1980 vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn