AQUI LES DEJO OTRO PROGRAMITA QUE NOS PERMITE MANIPULAR LA SALIDA DIGITAL QUE ESTAN INDICADOS POR MEDIOS DE LEDS
ESTE ES UN CONTADOR GUARDANDO LOS VALORES EN DATA Y EL APUNTA ES K LLEVA EL INDICE DEL DATA, EL CUAL ESTA EN UN CICLO INFINTO
short data[8]={1,2,4,8,16,32,64,128};
short apunta;
void main()
{
TRISB=0;
apunta=0;
while(1)
{
PORTB=data[apunta];
Delay_ms(500);
apunta ++;
if(apunta >= 8)
apunta=0;
}
}
pic
domingo, 13 de marzo de 2011
sábado, 12 de marzo de 2011
MI PRIMER MENSAJE
MI PRIMER MENSAJE EN UNA LCD
EL FAMOSO HOLA MUNDO
void main(void)
{
TRISB=0;
TRISC=0;
Lcd8_Config(&PORTC,&PORTB,0,2,1,7,6,5,4,3,2,1,0); // ESTA PARTE ES LA CONFIGURACION DEL LCD
Lcd8_Out(1,1,"HOLA MUNDO");
while(1) //CICLO INFINITO
{
Lcd8_Cmd(LCD_SHIFT_LEFT);
Delay_ms(300);
}
}
EL FAMOSO HOLA MUNDO
void main(void)
{
TRISB=0;
TRISC=0;
Lcd8_Config(&PORTC,&PORTB,0,2,1,7,6,5,4,3,2,1,0); // ESTA PARTE ES LA CONFIGURACION DEL LCD
Lcd8_Out(1,1,"HOLA MUNDO");
while(1) //CICLO INFINITO
{
Lcd8_Cmd(LCD_SHIFT_LEFT);
Delay_ms(300);
}
}
Codigo para lcd de 16*2
Este es un programa sencillo de como mandar un mesaje a un lcd de 16*2
claro con maneras diferentes de mandar un mensaje chequenlo y me comentan
conexion
char uno[]="HOLA MI AMOR";
char dos[]="HOY PASO ALGO";
char tres[]="Y NO LO IMAGINAS";
char cuatro[]="Y K CREES K FUE";
void main(void)
{
TRISB=0;
TRISC=0;
Lcd8_Config(&PORTC,&PORTB,0,2,1,7,6,5,4,3,2,1,0);
Lcd8_cmd(LCD_CLEAR);
lcd8_out(1,1,uno);
lcd8_out(2,1,dos);
delay_ms(1200);
Lcd8_cmd(LCD_CLEAR);
lcd8_out(1,1,tres);
lcd8_out(2,1,cuatro);
delay_ms(1200);
Lcd8_cmd(LCD_CLEAR);
lcd8_out(1,1,"SOÑE CON UN ANGEL");
lcd8_out(2,1,"Y ERAS TU");
}
simulacion:
las simulaciones son el software proteus
el pic utlizado es el 16f877a
claro con maneras diferentes de mandar un mensaje chequenlo y me comentan
conexion
char uno[]="HOLA MI AMOR";
char dos[]="HOY PASO ALGO";
char tres[]="Y NO LO IMAGINAS";
char cuatro[]="Y K CREES K FUE";
void main(void)
{
TRISB=0;
TRISC=0;
Lcd8_Config(&PORTC,&PORTB,0,2,1,7,6,5,4,3,2,1,0);
Lcd8_cmd(LCD_CLEAR);
lcd8_out(1,1,uno);
lcd8_out(2,1,dos);
delay_ms(1200);
Lcd8_cmd(LCD_CLEAR);
lcd8_out(1,1,tres);
lcd8_out(2,1,cuatro);
delay_ms(1200);
Lcd8_cmd(LCD_CLEAR);
lcd8_out(1,1,"SOÑE CON UN ANGEL");
lcd8_out(2,1,"Y ERAS TU");
}
simulacion:
las simulaciones son el software proteus
el pic utlizado es el 16f877a
jueves, 10 de marzo de 2011
CODIGO DE NUMEROS PRIMOS PARA EL 8086
AQUI LES DEJO EL CODIGO PARA NUMEROS PRIMOS DEL 8086
ME COSTO PERO VALIO LA PENA PASARLO ME EXCENTO DE UN EXAMEN SUERTE
org 100h
;aquie
mov bp,55 ;Este es el numero a comparar
push bp[300]
mov ax,1
mov cx,1
cmp bp,2
jng primo ; si bp es mayor a 2 el numero es primo
jg comparacion ; si no es mayor sigue el procedimiento
comparacion:
mov ax,cx
mul ax
cmp ax,bp
jg decremento ;en caso de k sea mayor
je no_primo ;no es primo
jl incremento ;menor
decremento:
dec cx
jmp vamos_a_modulo
incremento:
inc cx
jmp comparacion
vamos_a_modulo:
pop bp[300] ; retorna valor a bp
mov ax,cx ;recupero valor de cx para ponerlo en ax
mov bx,bp ;salvo valor guardado de numero
xchg bp,ax ;intercambio valores para hacer division
ciclo:
cmp cx,2
jnl entra ;si es mayor
jl primo ;si es menor
entra:
div cx
cmp dx,0 ;nos da el modulo de la operacion
je no_primo ;tiene paridad
jg seguir ;sigo para continuar con el decremento
seguir:
dec cx
mov ax,bx
mov dx,0
jmp ciclo
no_primo:
mov al,'n'
mov ah,0eh
int 10h
mov al,'o'
mov ah,0eh
int 10h
mov al,' '
mov ah,0eh
int 10h
mov al,'p'
mov ah,0eh
int 10h
mov al,'r'
mov ah,0eh
int 10h
mov al,'i'
mov ah,0eh
int 10h
mov al,'m'
mov ah,0eh
int 10h
mov al,'o'
mov ah,0eh
int 10h
jmp final
primo:
mov al,'p'
mov ah,0eh
int 10h
mov al,'r'
mov ah,0eh
int 10h
mov al,'i'
mov ah,0eh
int 10h
mov al,'m'
mov ah,0eh
int 10h
mov al,'o'
mov ah,0eh
int 10h
final:
mov al,' '
mov ah,0eh
int 10h
mov al,' '
mov ah,0eh
int 10h
mov al,'H'
mov ah,0eh
int 10h
mov al,'e'
mov ah,0eh
int 10h
mov al,'c'
mov ah,0eh
int 10h
mov al,'h'
mov ah,0eh
int 10h
mov al,'o'
mov ah,0eh
int 10h
mov al,' '
mov ah,0eh
int 10h
mov al,'x'
mov ah,0eh
int 10h
mov al,' '
mov ah,0eh
int 10h
mov al,'H'
mov ah,0eh
int 10h
mov al,'u'
mov ah,0eh
int 10h
mov al,'g'
mov ah,0eh
int 10h
mov al,'o'
mov ah,0eh
int 10h
ret
ME COSTO PERO VALIO LA PENA PASARLO ME EXCENTO DE UN EXAMEN SUERTE
org 100h
;aquie
mov bp,55 ;Este es el numero a comparar
push bp[300]
mov ax,1
mov cx,1
cmp bp,2
jng primo ; si bp es mayor a 2 el numero es primo
jg comparacion ; si no es mayor sigue el procedimiento
comparacion:
mov ax,cx
mul ax
cmp ax,bp
jg decremento ;en caso de k sea mayor
je no_primo ;no es primo
jl incremento ;menor
decremento:
dec cx
jmp vamos_a_modulo
incremento:
inc cx
jmp comparacion
vamos_a_modulo:
pop bp[300] ; retorna valor a bp
mov ax,cx ;recupero valor de cx para ponerlo en ax
mov bx,bp ;salvo valor guardado de numero
xchg bp,ax ;intercambio valores para hacer division
ciclo:
cmp cx,2
jnl entra ;si es mayor
jl primo ;si es menor
entra:
div cx
cmp dx,0 ;nos da el modulo de la operacion
je no_primo ;tiene paridad
jg seguir ;sigo para continuar con el decremento
seguir:
dec cx
mov ax,bx
mov dx,0
jmp ciclo
no_primo:
mov al,'n'
mov ah,0eh
int 10h
mov al,'o'
mov ah,0eh
int 10h
mov al,' '
mov ah,0eh
int 10h
mov al,'p'
mov ah,0eh
int 10h
mov al,'r'
mov ah,0eh
int 10h
mov al,'i'
mov ah,0eh
int 10h
mov al,'m'
mov ah,0eh
int 10h
mov al,'o'
mov ah,0eh
int 10h
jmp final
primo:
mov al,'p'
mov ah,0eh
int 10h
mov al,'r'
mov ah,0eh
int 10h
mov al,'i'
mov ah,0eh
int 10h
mov al,'m'
mov ah,0eh
int 10h
mov al,'o'
mov ah,0eh
int 10h
final:
mov al,' '
mov ah,0eh
int 10h
mov al,' '
mov ah,0eh
int 10h
mov al,'H'
mov ah,0eh
int 10h
mov al,'e'
mov ah,0eh
int 10h
mov al,'c'
mov ah,0eh
int 10h
mov al,'h'
mov ah,0eh
int 10h
mov al,'o'
mov ah,0eh
int 10h
mov al,' '
mov ah,0eh
int 10h
mov al,'x'
mov ah,0eh
int 10h
mov al,' '
mov ah,0eh
int 10h
mov al,'H'
mov ah,0eh
int 10h
mov al,'u'
mov ah,0eh
int 10h
mov al,'g'
mov ah,0eh
int 10h
mov al,'o'
mov ah,0eh
int 10h
ret
sábado, 19 de febrero de 2011
COMO ENCENDER UN LED
ESTE ES EL PRIMER PROGRAMA PARA COMENZAR ESPERO K LES GUSTE
ESPERO ALGUN COMENTARIO
PIC 16F877A
void main()
{
TRISD=0; //TRIS CONFIGURA EL PUERTO D COMO SALIDA
PORTD.F0=1; //MANDO UN 1 LOGICO AL PUERTO DE SALIDA D0
Delay_ms(300); //ESTE PERMANECERA ENCENDIDO POR 300 ms
PORTD.F0=0; //APAGO EL LED, MANDO UN CERO LOGICO AL PUERTO D0
Delay_ms(300); // APAGO EL LED POR 300ms
PORTD.F0=1;
Delay_ms(300);
}
{
TRISD=0; //TRIS CONFIGURA EL PUERTO D COMO SALIDA
PORTD.F0=1; //MANDO UN 1 LOGICO AL PUERTO DE SALIDA D0
Delay_ms(300); //ESTE PERMANECERA ENCENDIDO POR 300 ms
PORTD.F0=0; //APAGO EL LED, MANDO UN CERO LOGICO AL PUERTO D0
Delay_ms(300); // APAGO EL LED POR 300ms
PORTD.F0=1;
Delay_ms(300);
}
ESPERO LES SIRVA PARA COMENZAR A ENTENDER
SUERTE
domingo, 13 de febrero de 2011
ALGUNOS ARCHIVOS DE AYUDA
MIREN ANTES DE COMENZAR, ME ENCANTARIA DEJAR UN PEQUEÑO MANUAL K ENCONTRE EN LA WEB PARA PODER EMPEZAR ESPERO QUE LES SIRVA,
ESTO ES SOLO EL COMIENZO
PRIMEROS PASOS DE MIKROC CON PIC 16F877
COMO COMENZAR
BUENO PRIMER ANTES QUE NADA TENEMOS QUE TENER EL PROGRAMA PARA PODER TRABAJAR A CONTINUACION LES DEJO EL LINK DE DESCARGA
Chavos... Se que a algunos de ustedes les interesa la programación de microcontroladores PIC ,asi que esta noche les traigo MikroC 8.2, que les permitirá realizar sus programas en lenguaje C/C++ para cargarlos en sus PIC's.
Chavos... Se que a algunos de ustedes les interesa la programación de microcontroladores PIC ,asi que esta noche les traigo MikroC 8.2, que les permitirá realizar sus programas en lenguaje C/C++ para cargarlos en sus PIC's.
Trae un Crack para que puedan usarlo sin problemas de registro y esas cosas...
NOTA: Leí que en algunos casos los antivirus reconocen Cracks de este tipo como un troyano, pero les aseguro que NO TRAE NINGUN TIPO DE VIRUS, solo les pido tengan precaución al momento de bajarlo, pues si su antivirus lo escanea (lo mas seguro es que eso pase), eliminará el Crack sin que ustedes lo noten... asi que les recomiendo deshabilitar esa opción o cerrar el antivirus al menos mientas realiza la descarga
BUENO AQUI LES DEJO ESTE LINK
MIKRO C CON CRACK
Suscribirse a:
Entradas (Atom)