Está en la página 1de 4

/*

Autor: Armando Andres Basante Bados 1253034


Fecha: Septiembre 14 / 14
hora: 10:51 a.m

Descripcion: Este programa muestra e codigo morse por el pin RD0 el primer y
appelido del autor,la duracion en alto del punto es de 150ms, duracion en alto
cada raya es de 450ms, el espacion entre punto y/o raya es de 100ms,
la separacion en e letras es de 1s y para la separacion de palabras
es de 3s.

*/

#include <18f4550.h>
#fuses XT, NOWDT,NOMCLR
#use delay(clock = 4Mhz)

#use fast_io(d)

int i;

void A(){

output_high(PIN_D4);
delay_ms(150);
output_low(PIN_D4);
delay_ms(100);
output_high(PIN_D4);
delay_ms(450);
output_low(PIN_D4);
}

void N(){

output_high(PIN_D4);
delay_ms(450);
output_low(PIN_D4);
delay_ms(100);
output_high(PIN_D4);
delay_ms(150);
output_low(PIN_D4);
}

void R(){

output_high(PIN_D4);
delay_ms(150);
output_low(PIN_D4);
delay_ms(100);
output_high(PIN_D4);
delay_ms(450);
output_low(PIN_D4);
delay_ms(100);
output_high(PIN_D4);
delay_ms(150);
output_low(PIN_D4);
}

void M(){

output_high(PIN_D4);
delay_ms(450);
output_low(PIN_D4);
delay_ms(100);
output_high(PIN_D4);
delay_ms(450);
output_low(PIN_D4);

}

void D(){

output_high(PIN_D4);
delay_ms(450);
output_low(PIN_D4);
delay_ms(100);
output_high(PIN_D4);
delay_ms(150);
output_low(PIN_D4);
delay_ms(100);
output_high(PIN_D4);
delay_ms(150);
output_low(PIN_D4);
}

void O(){

for(i=0; i<6; i=i+2){
output_high(PIN_D4);
delay_ms(450);
output_low(PIN_D4);
delay_ms(100);

}
}

void B(){

output_high(PIN_D4);
delay_ms(450);
output_low(PIN_D4);
delay_ms(100);
output_high(PIN_D4);
delay_ms(150);
output_low(PIN_D4);
delay_ms(100);
output_high(PIN_D4);
delay_ms(150);
output_low(PIN_D4);
delay_ms(100);
output_high(PIN_D4);
delay_ms(150);
output_low(PIN_D4);

}

void S() {
for(i=0; i<3; i++){
output_high(PIN_D4);
delay_ms(150);
output_low(PIN_D4);
delay_ms(100);

}
}

void T(){

output_high(PIN_D4);
delay_ms(450);
output_low(PIN_D4);

}

void E(){

output_high(PIN_D4);
delay_ms(150);
output_low(PIN_D4);

}


void main (){

set_tris_d(0x00);

while(true){

A();
delay_ms(1000);
R();
delay_ms(1000);
M();
delay_ms(1000);
A();
delay_ms(1000);
N();
delay_ms(1000);
D();
delay_ms(1000);
O();
delay_ms(3000);
B();
delay_ms(1000);
A();
delay_ms(1000);
S();
delay_ms(1000);
A();
delay_ms(1000);
N();
delay_ms(1000);
T();
delay_ms(1000);
E();
delay_ms(3000);

}

}

También podría gustarte