Autor Tema: Necesito ayuda con la programacion en C de AT89S8252 y su A/D  (Leído 2535 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado Ratlos

  • PIC10
  • *
  • Mensajes: 10
Necesito ayuda con la programacion en C de AT89S8252 y su A/D
« en: 25 de Noviembre de 2004, 05:47:00 »
Soy un estudiante,  que esta haciendo un proyecto de programcion en C de un microcontrolador marca ATMEL AT89S8252, en alemania. La cosa esta muy chunga porque no tengo muchos conocimientos de electronica, y menos de programacion. (Ese es un asunto muy largo para explicarlo ahora, porque yo soy electrico). Espero que alguien se apiade de mi, y me pueda ayudar.
El caso que tengo que iniciar el micro, para que funcione de tal manera, que un conversor A/D externo (MAX 197) coja una señal analogica y la pase a digital. El micro tiene que coger esa señal y enviarla al ordenador por puerto COM1 y presentarla en pantalla. Todo esto en lenguaje C con el compilador RIDE 51
Bien Tengo una placa, donde esta el analogico digital.
Un micro AT89S8252.
Un cable RS485
Otra placa donde se pasa de RS485 a RS232
Y finalmente el ordenador con el programa Tera Term Pro donde imprime la cifra (supuestamente).

Mi problema esta ahora mismo en que tengo que inicializar el conversor A/D como si de un micro se tratara, pero para ello necesito enviar las ordenes desde el micro AT89S8252. Estas ordenes las enviaria por el puerto 0 y le llegarian al A/D por sus salidas. (Es un poco complicado) El problema esta como le digo yo al micro que envie esa informacion, y que se prepare a continuacion para recibir la cifra que supuestamente el analogico digital a convertido previamente. Y todo esto en lenguaje C.
Si alguien me puede ayudar al respecto que por favor contacte conmigo.
GRACIAS
DANKE SCHÖN!!

Desconectado gfp

  • PIC18
  • ****
  • Mensajes: 274
RE: Necesito ayuda con la programacion en C de AT89S8252 y su A/D
« Respuesta #1 en: 25 de Noviembre de 2004, 11:47:00 »
Por que no lo intentas con u  procesador de Microchip. Aqui en el foro muchos participantes tenemos el compilador de C y muy seguramente te podamos ayudar.

gfp Sonrisa

Desconectado kruskal

  • PIC16
  • ***
  • Mensajes: 108
RE: Necesito ayuda con la programacion en C de AT89S8252 y su A/D
« Respuesta #2 en: 25 de Noviembre de 2004, 18:39:00 »
La inmensa mayoria de este foro somo picmaniacos si te da por utilizar estos aparatitos,  que tambien algunos modelos tiene CA/D, podriamos ayudarte.

Otra cosa que significa "chunga" por suposicion puedo intuir pero no me parece una palabra muy alemana.
 so ein mist!!!.

Salud2

Desconectado pikman

  • Moderador Local
  • PIC24F
  • *****
  • Mensajes: 679
RE: Necesito ayuda con la programacion en C de AT89S8252 y su A/D
« Respuesta #3 en: 25 de Noviembre de 2004, 21:29:00 »
Ratlos, hay un subforo de ATMEL en donde probablemente algunas personas, yo estoy ahora empezando a utilizar los AVR en C con el compilador de imagecraft, pero no he hecho mucho todavia, creo que tambien tienen un compilador para el micro que quieres utilizar, de cualquier manera no descartes la idea que te proponen de usar un pic pues en este foro hay mas usuarios de estos maravillosos microcontroladores, y con CCS no seria muy dificila hacer lo que te propones inclusive en ASM,

espero que te sirva y a tus ordenes.

PIKMAN,

saludos
PikMan

Desconectado rferrero

  • PIC16
  • ***
  • Mensajes: 113
RE: Necesito ayuda con la programacion en C de AT89S8252 y su A/D
« Respuesta #4 en: 28 de Noviembre de 2004, 06:36:00 »

    Bueno, pues sí, sería muuy sencillote con un PIC. Si tienes un ATMEL, será sencillo, también, aunque te tocará mirarte bien qué juego de instrucciones tiene y darle caña.
 
    Básicamente, lo que tienes que hacer está aquí:

#include <16F876.h>   // El PIC. Aquí iría tu ATMEL.
#device adc=10      //  Queremos que convierta con 10 bits
#fuses XT, NOPROTECT, NOPUT, NOWDT, NOBROWNOUT, NOLVP, NOCPD, NOWRT
#use delay (clock=4000000)  // Señal de reloj
#use rs232(baud=9600, xmit=PIN_C6, rcv=PIN_C7)  // Sacar datos puerto serie

void main( void )    // Función principal
{
  long  valor;    // Valor es una variable de 16 bits
  float const resoluc= 5.0/1024.0;      // Conversión es con 10 bits   2^10
  float voltios;
  setup_adc_ports( ALL_ANALOG );        // Entrada analógica por RA0
           // El puerto destinado a la conversión A/D es el A. Viene preparado así
           //  de fábrica.
          // Se le indica qué pines de dicho puerto serán analógicos o digitales
  setup_adc( ADC_CLOCK_INTERNAL );    // Reloj interno para el conversor A/D
  set_adc_channel(3);        // Elegimos canal 3 para convertir
  while ( 1 )            // Bucle infinito. Coge datos y los convierte continuamente.          
  {
      valor = read_adc();          // Función incorporada del compilador CCS para
       // lenguaje C donde él solito convierte el valor y sabe cuánto tiempo
       // debe esperar.
      voltios= valor * resoluc;    
      printf("%f voltios ", voltios );  // Sacamos el resultado por pantalla
      delay_ms(200);         // Convierte cada 200ms o el tiempo que quieras
        // Siempre hay que dejar un tiempo entre adquisiciones de datos a convertir
  }
}  


     Con micros ATMEL no sé si se pueden programar en C. Éste te lo pongo a modo de ejemplo. En ensamblador, se haría igual, pero con distintas instrucciones. Te tocaría añadir algunas más pero, independientemente del lenguaje que uses, aquí tienes lo que tienes que hacer para utilizar un conversor A/D. Si tienes dudas, ya sabes dónde encontrarnos. Espero te sirva de algo.
 
      Un saludo.   Muchas risas

Desconectado pikman

  • Moderador Local
  • PIC24F
  • *****
  • Mensajes: 679
RE: Necesito ayuda con la programacion en C de AT89S8252 y su A/D
« Respuesta #5 en: 28 de Noviembre de 2004, 09:14:00 »
Bueno, la verdad estuve mirando y no es un AVR el micro que pretendes programar pues yo estoy experimentando con ellos y el compilador de IMAGECRAFT, este que pretendes usar creo que es compatible con la linea INTEL, por lo que seria, con varias modificaciones, aplicable el programa en C que han dado como ejemplo, aunque no creo, que por lo sencillo que es tu proyecto podrias hacerlo en ASM directamnete.

saludos

PIKMAN
saludos
PikMan

Desconectado rferrero

  • PIC16
  • ***
  • Mensajes: 113
RE: Necesito ayuda con la programacion en C de AT89S8252 y su A/D
« Respuesta #6 en: 28 de Noviembre de 2004, 13:47:00 »

    Pues sí, la verdad es que se puede hacer casi con menos líneas de código en ASM, pero para sacar los datos obtenidos por pantalla es más fácil mediante RS232 y directamente en el monitor que en LCD.
 
    Eso ya es cuestión de gustos. Sonrisa

Desconectado Ratlos

  • PIC10
  • *
  • Mensajes: 10
RE: Necesito ayuda con la programacion en C de AT89S8252 y su A/D
« Respuesta #7 en: 29 de Noviembre de 2004, 02:39:00 »
Muchiiisimas gracias COLABORADORES a todos vosotros, por toda la informacion que me habeis dado, ahora voy a intentar asimilarla, ya que para mi es un poco dificil, porque no entiendo mucho de programacion, y menos en C.
Mucha gente me ha dicho que utilice un PIC para mi proyecto, y lenguaje ensamblador, pero el problema es que las condiciones de mi proyecto aqui en alemnia, no las pongo yo. Si no que, los profesores son los que las ponen, y lo peor es que el profesor de mi proyecto, nunca a programado un micro en lenguaje C!! Creo que me estan tomando el pelo y experimentando con migo.
Un saludo, y una vez mas, MUCHAS GRACIAS.
Si tengo alguna duda volvere a consultaros, que supongo que sera pronto.

Desconectado stk500

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4919
Re: RE: Necesito ayuda con la programacion en C de AT89S8252 y su A/D
« Respuesta #8 en: 12 de Noviembre de 2007, 14:46:10 »
Muchiiisimas gracias COLABORADORES a todos vosotros, por toda la informacion que me habeis dado, ahora voy a intentar asimilarla, ya que para mi es un poco dificil, porque no entiendo mucho de programacion, y menos en C.
Mucha gente me ha dicho que utilice un PIC para mi proyecto, y lenguaje ensamblador, pero el problema es que las condiciones de mi proyecto aqui en alemnia, no las pongo yo. Si no que, los profesores son los que las ponen, y lo peor es que el profesor de mi proyecto, nunca a programado un micro en lenguaje C!! Creo que me estan tomando el pelo y experimentando con migo.
Un saludo, y una vez mas, MUCHAS GRACIAS.
Si tengo alguna duda volvere a consultaros, que supongo que sera pronto.
Entschuldigung Ratlos :D
pero si entra en la atmel alli hay aplicaciones de ADC/DAC
aqui http://www.atmel.com/dyn/general/advanced_search_results.asp?device=1&tools=1&faqs=1&datasheets=1&appNotes=1&userGuides=1&software=1&press=1&articles=1&flyers=1&checkAll=1&checkAllReference=1&target=adc
y aqui tiene como se programa en AVR todos completo :D
http://www.avr-asm-tutorial.net/avr_en/index.html


 

anything