TODOPIC
Microcontroladores PIC => Lenguaje C para microcontroladores PIC => Mensaje iniciado por: akane_12 en 16 de Febrero de 2014, 01:59:22
-
hola miren me dejaron hacer este programa pero no tengo idea de como hacerlo es en pic c y no se puedas ayudarme o sabes de alguien que me pueda ayudar este es el enunciado del programa
Crear un programa que realice un dado electrónico que:
Cuente del 0 al 6 y al presionar el interruptor conectado a RA0 se mantenga el valor
durante 2 segundos y continúe la cuenta
lo que yo tengo y me gustaria que me ayuden a ponerle esa interrumpcion ya qe no se como se hace por favor muchas gracias
#include <16f887.h>
#use delay(clock=4000000)
#fuses XT,NOWDT,NOPUT,NOMCLR,NOPROTECT,NOCPD,NOBROWNOUT,NOIESO,NOFCMEN,NOLVP
#use standard_io(d)
#use standard_io(c)
#use standard_io(a)
byte CONST unidad[10] = {0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D};
int i,j;
void main()
{
output_c(0x10);
i=0;
j=0;
while(true)
{
i=0;
j=0;
output_d(0x3F);
delay_ms(500);
output_d(0x00);
if(input(PIN_A0)==1)
{
delay_ms(100);
while(i<=9)
{
output_d(unidad);
delay_ms(500);
i++;
}
}
}
}
-
si lo que deseas es que los foreros te lo hagan...
no creo que te lo den hecho, aqui se aclaran dudas y se solucionan problemas....
sin emabargo... si tienes problemas con el funcionamiento y como puedes mejorar el rendimiento y corregir fallos.... seré el primero en ayudarte y explicarte, siempre y cuando el resto de los foreros no sean tan rapidos para contestarte ;)
has programado alguna vez algun pic? sabes como funcionan interiormente? sabes algo de numeros hexadecimales y binarios? que compilador quieres usar? que pic deseas usar o tienes a tu disposicion? para que lo necesitas lo que pides?....
hay tantas preguntas que necesitan respuesta que te pediria contestases con sinceridad....
-
hola uso pic c ccs y ps apenas empiezo a programar pics lo que pasa esq no tengo la idea muy clara de como hacerlo
el mismo programa lo tengo en ensamblador pero no se las equivalencias en c para pasarlo solo quiero asi una idea de como hacerlo
gracias por tu ayuda n_n
-
http://www.todopic.com.ar/foros/index.php?topic=4530.0;topicseen (http://www.todopic.com.ar/foros/index.php?topic=4530.0;topicseen)
gran post del maestro vszener... aqui puedes sacar ideas de como hacer lo que deseas, si no entiendes algo, solo preguntalo....
un saludo y bienvenido
-
hola de nuevo mira este es el programa pero no se si me puedas ayudar para que en lugar qe sea de lcd sea para display de 7seg por fa y soy chica
#include <16f648a.h> //pic a utilizar
#fuses XT,NOWDT,NOPROTECT,PUT,NOLVP //ordenes para el programador
#use delay (clock=4000000) //Fosc=4Mhz
#define use_portb_lcd TRUE //definir portb lcd
#include<lcd.c> //libreria manejo lcd
///PROGRAMA
void main(void)
{
char tabNum[10]={"0","1","2","3","4","5","6","7","8","9"},i=0; //tabla y variable definida
lcd_init(); //inicializa lcd
printf(lcd_putc,"Presione boton
para contador0a9" ); //muestra mensaje inicio
do{ //espera hasta que se pulse boton...
}while(input(PIN_A0)==1);
printf(lcd_putc,"f" ); //...para borrar pantalla e iniciar contador
printf(lcd_putc,"
VsZeNeR"05" ); //auto publicidad en la 2ºfila lcd
lcd_gotoxy(8,1); //vuelve 1ºfila lcd y apunta la mitad de la columna
for( ; ; ){ //bucle...
if(!input(PIN_A0)){ //¿se ha pulsado el boton?
do{ //SI -> eliminar...
}while(!input(PIN_A0)); //...rebotes del boton
if(i>9){ //¿se ha mostrado digito 9?
i=0; //SI -> restaura valor indice(para mostrar digito 0)
output_high(PIN_B3); //activa buzzer(beep)
delay_ms(50); //tiempo de escucha del beep
output_low(PIN_B3); //desactiva buzzer(beep)
}
printf(lcd_putc,"%c",tabNum[ i ]); //muestra por pantalla el numero
printf(lcd_putc,"" ); //retrasa el cursor una posicion(escribe encima)
i++; //incremento contador indice tabNum
}
} //...infinito
}
-
Hay chicas en el foro que saben mucho mas que yo.... ser chica o chico no es algo que sea importante en este foro... es mas importante las ganas que tiene un@ por aprender
que pic vas a usar? el 16F887?
que interrupcion quieres añadir?
que es lo que deseas hacer? el dado electronico?
con la interrupcion que elija un numero, que lo puestre en un display de 7 segmentos y espere 2 segundo? despues que? se borra el display?
-
Hay chicas en el foro que saben mucho mas que yo.... ser chica o chico no es algo que sea importante en este foro... es mas importante las ganas que tiene un@ por aprender
ppyote, tal vez la aclaración de que es chica viene porque tú le dijiste bienvenido en lugar de bienvenida :mrgreen:
-
Hay chicas en el foro que saben mucho mas que yo.... ser chica o chico no es algo que sea importante en este foro... es mas importante las ganas que tiene un@ por aprender
ppyote, tal vez la aclaración de que es chica viene porque tú le dijiste bienvenido en lugar de bienvenida :mrgreen:
Sí es así, no me dí cuenta... Mil perdones akane_12