Utp
Utp
void main()
set_tris_e(0xff);
set_tris_c(0);
while(true)
output_high(pin_c0);
output_low(pin_c0);
delay_ms(20);
if(input(pin_e2)==0)
output_toggle(pin_c0);
while(input(pin_e2)==0);
}
2
#include<16f887.h> // Nhan phim 6 thi bat LED
#use delay(clock=8M)
#include<tv_key4x4.c>
void main()
set_tris_b(0x0f);
set_tris_c(0);
while(true)
mp = key4x4();
if(mp==6) output_high(pin_c0);
if(mp==13) output_low(pin_c0);
}
3
#fuses intrc_io
#use delay(clock=8M)
unsigned int8 n;
void main()
set_tris_c(0);
set_tris_d(0);
while(true)
for(n=0;n<100;n++)
delay_ms(300);
}
4
#include<16f887.h> // Hien thi bien n va chu oC
#fuses intrc_io
#use delay(clock=8M)
void quetled()
void main()
set_tris_c(0);
set_tris_d(0);
while(true)
quetled();
#fuses intrc_io
#use delay(clock=8M)
#define lcd_rs pin_c5 // Phai dinh nghia chan truoc khi add thu vien
lcd
#include<tv_lcd.c> // Cam vie lai thu vien nay trong bai thi
void main()
set_tris_c(0);
set_tris_d(0);
lcd_setup(); // Thieu lenh nay LCD khong chay => Rot mon
lcd_data(0xdf); // Hien thi dau tron cua chu do C - tra trong bang
ma ascii
lcd_data("C");
while(true)
printf(lcd_data,"%u ",nd);
#use delay(clock=20M) // Nhan nut OFF de dung dem san pham dung
Counter 1, Nhan ON de cho phep dem lai
#include<tv_lcd.c>
void main()
set_tris_a(0xff);
set_tris_c(0x01);
set_tris_d(0);
set_tris_e(0xff);
lcd_setup();
set_timer0(0);
set_timer1(0);
while(true)
lcd_command(0x80);
lcd_command(0xc0);
if(input(pin_e0)==0) setup_timer_1(T1_EXTERNAL |
T1_DIV_BY_1); // Nhan ON Counter 1 dem
if(input(pin_e1)==0) setup_timer_1(T1_DISABLED); // Nhan OFF
COUNTER 1 dung dem
6
#include<16f887.h> // Dinh thoi 1s dung ca 3 bo timer
#fuses hs
#use delay(clock=20M)
#include<tv_lcd.c>
void main()
set_tris_c(0x00);
set_tris_d(0);
lcd_setup();
set_timer0(2);
set_timer1(3036);
set_timer2(0);
while(true)
n0=0;
giay0++;
lcd_command(0x80);
printf(lcd_data,"T0:%u ",giay0);
if(TM1IF)
{ set_timer1(3036);
n1++;TM1IF=0;
if(n1==10)
{
n1=0;
giay1++;
lcd_command(0xc0);
printf(lcd_data,"T1:%u ",giay1);
if(TM2IF)
n2++;TM2IF=0;
if(n2==77)
n2=0;
giay2++;
lcd_command(0x94);
printf(lcd_data,"T2:%u ",giay2);
#fuses intrc_io
#use delay(clock=8M)
#include<tv_lcd.c>
void main()
set_tris_a(0xff);
set_tris_b(0xff);
set_tris_c(0);
set_tris_d(0);
lcd_setup();
setup_adc(ADC_CLOCK_DIV_32);
setup_adc_ports(SAN0|SAN4|SAN10|VSS_VDD);
while(true)
lcd_command(0x80);
lcd_command(0xc0);
lcd_command(0x94);
#fuses intrc_io
#use delay(clock=8M)
void main()
set_tris_a(0xff);
set_tris_b(0xff);
set_tris_c(0);
set_tris_d(0);
lcd_setup();
setup_adc(ADC_CLOCK_DIV_32);
while(true)
lcd_command(0x80);
lcd_command(0xc0);
lcd_command(0x94);
printf(lcd_data,"Nhiet do K10:%03lu",kq10); // Hien thi nhiet do
kenh 10
#fuses hs
#use delay(clock=20M)
#include<tv_lcd.c>
void main()
set_tris_c(0);
set_tris_d(0);
set_tris_e(0xff);
lcd_setup();
setup_timer_1(T1_INTERNAL | T1_DIV_BY_8);
set_timer1(3036);
setup_adc(ADC_CLOCK_DIV_32);
setup_adc_ports(san5|vss_vdd);
set_adc_channel(5); delay_us(20);
while(true)
lcd_command(0x80);
printf(lcd_data,"GIAY=%03d",giay);
read_adc(ADC_START_ONLY);
lcd_command(0xc0);
printf(lcd_data,"NHIET DO=%03lu",kq);
void xulyngattimer1()
set_timer1(3036);
bdn++;
if(bdn==10)
bdn=0; giay++;
}
#INT_AD // Chuong trinh xu ly ngat ADC
void xulyngatadc()
kq =read_adc(ADC_READ_ONLY)*0.489;