#include <16F877A.h>
#fuses HS,NOPROTECT,NOLVP,NOWDT,NOCPD,
#use delay(clock=20000000)
#use rs232(baud=115200,parity=N,xmit=PIN_C6,rcv=PIN_C7,bits=8)
//Bu alttaki iki satırı ekliyoruz.
#define MAX_FLASH 0x2000
#define LOADER_SIZE 0xFF //tinybld size + a bit more (200 bytes is enough)
#org LOADER_SIZE , MAX_FLASH-1 {}
#use fast_io(a)
int16 i=0;
#int_rda // RX ucuna veri gelince meydane gelen kesme
void serihaberlesme_kesmesi ()
{
disable_interrupts(int_rda); // int_rda kesmesini pasif yap
output_high(pin_c5); // RC5 çyky?y lojik-1
output_low(pin_c5);
//printf("\n\rKlavyeden bir metin giriniz ve enter tusuna basiniz>"); // Satyr atla, yeni satyr,RS232 üzerinden belirtilen metni gönder
}
void main()
{
setup_psp(PSP_DISABLED); // PSP birimi devre dy?y
setup_timer_1(T1_DISABLED); // T1 zamanlayycysy devre dy?y
setup_timer_2(T2_DISABLED,0,1); // T2 zamanlayycysy devre dy?y
setup_adc_ports(NO_ANALOGS); // ANALOG giri? yok
setup_adc(ADC_OFF); // ADC birimi devre dy?y
setup_CCP1(CCP_OFF); // CCP1 birimi devre dy?y
setup_CCP2(CCP_OFF); // CCP2 birimi devre dy?y
set_tris_a(0xff);
output_low(pin_c5); // RC5 çyky?y ilk anda syfyrlanyyor
// LCD'yi hazyrla
// printf("\rbasladi"); // Yeni satyr, RS232 üzerinden belirtilen metni gönder ve satyr atla.
enable_interrupts(GLOBAL); //
while(1)
{
clear_interrupt(int_rda);
enable_interrupts(int_rda);
set_tris_b(0x00);
//~18,0 ms reset
output_b(0x00);
if(input(pin_a1))
{
for(i=0;i<400;i++){
output_high(pin_b0);
delay_ms(100);
output_low(pin_b0);
delay_ms(100);
}
}}
//TODO: User Code
//while(1);
}