Ðề tài: Led sáng dần
View Single Post
Old 12-01-2012, 01:45 AM   #1
ngdnhanbk
Đệ tử 2 túi
 
Tham gia ngày: Nov 2010
Bài gửi: 38
:
Led sáng dần

Mình viết hiệu ứng led sáng dần dùng chức năng PWM kết hợp timer0 và timer2 post lên cho mấy bạn tham khảo
Code:
#include <16F887.h> 
#FUSES HS,NOWDT,NOPROTECT
#use delay(clock=4000000)
int16 value;
#INT_TIMER0
void ngattimer0()
{
int16 dem;
clear_interrupt(INT_TIMER0);
disable_interrupts(GLOBAL);
dem=dem+1;
if(dem==500)
   {value=value+100;
   if(value==1000)
      {value=0;
      }
   dem=0;
   }
set_timer0(0);
enable_interrupts(GLOBAL);
}
void main()
{
value=0;
output_high(PIN_C0);
output_low(PIN_C1);   // Set CCP2 output low
output_low(PIN_C2);   // Set CCP1 output low
setup_ccp1(CCP_PWM);  // Configure CCP1 as a PWM
setup_ccp2(CCP_PWM);  // Configure CCP2 as a PWM
setup_timer_2(T2_DIV_BY_4,255, 1);  // 1kHz     
setup_timer_0(RTCC_INTERNAL|RTCC_DIV_4);                 
set_timer0(0);
enable_interrupts(INT_TIMER0);
enable_interrupts(GLOBAL);
while(1)
{
set_pwm1_duty(value);               
set_pwm2_duty(value); 
}
}
Mình chưa viết phần tắt dần, nhờ mấy bạn viết giúp
Ai có ý kiến gì hay thì bổ sung giúp nhé
__________________
Email:nguyennhan612@gmail.com
ngdnhanbk vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn