đọc được là T (0..5v), cảnh báo như sau:
Nếu T<T1: thì đèn mầu trắng sáng.
Nếu T1≤ T ≤ T2: thì đèn mầu xanh sáng.
Nếu T>T2: thì đèn mầu đỏ sáng.
Các giá trị T1, T2 nhập vào từ phím bấm, trạng thái hệ thống (T, T1, T2) hiển thị trên LED 7 thanh
hoặc LCD.
#include <main.h>
#define LCD_ENABLE_PIN PIN_D2
#define LCD_RS_PIN PIN_D0
#define LCD_RW_PIN PIN_D1
#define LCD_DATA4 PIN_D4
#define LCD_DATA5 PIN_D5
#define LCD_DATA6 PIN_D6
#define LCD_DATA7 PIN_D7
#include <lcd.c>
float t;
int t1=0,t2=0;
void main ()
{
setup_adc_ports(sAN0);
setup_adc(ADC_CLOCK_DIV_2);
set_tris_b(0xff);
set_tris_c(0x00);
lcd_init();
while(TRUE)
{
set_adc_channel(0);
delay_us(10);
t=read_adc()/2.046;
if(input(PIN_B0)==0)
{
while(input(PIN_B0)==0);
t1++;
}
if(input(PIN_B1)==0)
{
while(input(PIN_B1)==0);
t2++;
}
if(t1>=100) t1=0;
if(t2>=100) t2=0;
lcd_gotoxy(1,1);
printf(lcd_putc,"T1=%2u",t1);
lcd_gotoxy(8,1);
printf(lcd_putc,"T2=%2u",t2);
lcd_gotoxy(1,2);
printf(lcd_putc,"T=%0.2f",t);
if(t<t1)
{
output_high(PIN_C0);
output_low(PIN_C1);
output_low(PIN_C2);
}
else
{
if(t>t2)
{
output_low(PIN_C0);
output_low(PIN_C1);
output_high(PIN_C2);
}
else
{
output_low(PIN_C0);
output_high(PIN_C1);
output_low(PIN_C2);
}
}
}
}
DOWNLOAD Code và Mô Phỏng
0 nhận xét:
Đăng nhận xét