Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > ASM y Microcontroladores
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 13-03-2008
Avatar de MaMu
MaMu MaMu is offline
Miembro
 
Registrado: abr 2006
Ubicación: Argentina
Posts: 863
Poder: 19
MaMu Va por buen camino
Electrónica, Microcontroladores y Delphi

Bueno, es nada más para decir, que si alguien necesita ayuda con la parte de HARDWARE experimental o proyectos que involucren electrónica y microntroladores, estoy a disposición para colaborar. Soy técnico en robótica, por lo que este apartado de asembler es mi debilidad. Si necesitan diseñar circuitos, etc, no duden en consultarme.


Saludos
__________________
Código Delphi [-]
 
try 
ProgramarMicro(80C52,'Intel',MnHex,True);
except
On Exception do
MicroChip.IsPresent(True);
end;
Responder Con Cita
  #2  
Antiguo 13-03-2008
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 26
Caral Va por buen camino
Hola
Pues yo necesito unos cuantos robots que reemplacen a mi personal, cuando empiezo el curso.
Saludos
Responder Con Cita
  #3  
Antiguo 13-03-2008
Avatar de MaMu
MaMu MaMu is offline
Miembro
 
Registrado: abr 2006
Ubicación: Argentina
Posts: 863
Poder: 19
MaMu Va por buen camino
Cita:
Empezado por Caral Ver Mensaje
Hola
Pues yo necesito unos cuantos robots que reemplacen a mi personal, cuando empiezo el curso.
Saludos
Depende de la tarea que realicen, todo es automatizable, lo que no significa que sean un 100% autónomos, algunas veces requieren de la intervención humana, como en el caso tuyo, quizas un regaño al personal,
__________________
Código Delphi [-]
 
try 
ProgramarMicro(80C52,'Intel',MnHex,True);
except
On Exception do
MicroChip.IsPresent(True);
end;
Responder Con Cita
  #4  
Antiguo 13-03-2008
Avatar de eduarcol
[eduarcol] eduarcol is offline
Miembro Premium
 
Registrado: ago 2003
Ubicación: En los estados Zulia y Merida de Venezuela
Posts: 4.151
Poder: 26
eduarcol Va por buen camino
Cita:
Empezado por mamu Ver Mensaje
Depende de la tarea que realicen, todo es automatizable, lo que no significa que sean un 100% autónomos, algunas veces requieren de la intervención humana, como en el caso tuyo, quizas un regaño al personal,
JEJEJE, has dado en el blanco, Carlos no cambia el personal por robot, luego a quien regaña??
__________________
...Yo naci en esta ribera del arauca vibr@d0r
Soy hermano de la espuma,
de la garza, de la rosa y del sol...
Viva Venezuela
Responder Con Cita
  #5  
Antiguo 13-03-2008
Avatar de rretamar
[rretamar] rretamar is offline
Miembro Premium
 
Registrado: ago 2006
Ubicación: San Francisco, Córdoba, Argentina
Posts: 1.168
Poder: 21
rretamar Va camino a la famarretamar Va camino a la fama
Hola.
De robótica nada, pero trabajo con microcontroladores (la línea PIC de Microchip, programándolos en Pascal) y también uso Delphi.

(Los dos chips grandes de la foto...tienen código generado con un compilador de Pascal...cada chip tiene 32 Kb de memoria para programa y 2 Kb de RAM)



Intento ganarme la vida en la parte de electrónica e informática industrial. Me interesa todo lo referido a control, adquisición de datos, monitoreo, automatización. Así que intentaré aportar lo que se pueda al foro y por supuesto, aprender de otros.

Saludos !

Última edición por rretamar fecha: 13-03-2008 a las 18:28:47.
Responder Con Cita
  #6  
Antiguo 13-03-2008
JoseFco JoseFco is offline
Baneado
 
Registrado: dic 2007
Posts: 1.861
Poder: 0
JoseFco cantidad desconocida en este momento
Hola Amigos.

(la línea PIC de Microchip, programándolos en Pascal)

Suena interesante, me gustaria aprender.

Un Saludo.
Responder Con Cita
  #7  
Antiguo 13-03-2008
Avatar de MaMu
MaMu MaMu is offline
Miembro
 
Registrado: abr 2006
Ubicación: Argentina
Posts: 863
Poder: 19
MaMu Va por buen camino
Cita:
Empezado por JoseFco Ver Mensaje
Hola Amigos.

(la línea PIC de Microchip, programándolos en Pascal)

Suena interesante, me gustaria aprender.

Un Saludo.
El unico problema es el peso final del HEX compilado, ya que todo se pasa a HEX, lo que hacen los compiladores es traducción LINEA a LINEA, por lo que casi nunca queda optimizado el código y la redundancia de código es abundante. La ventaja es con la comodidad que se programa. Al igual que en C, es muy cómodo, pero yo prefiero el assembler, es cuestión de gusto y de costumbre, pero a veces es cuestión de espacio.

Saludos
__________________
Código Delphi [-]
 
try 
ProgramarMicro(80C52,'Intel',MnHex,True);
except
On Exception do
MicroChip.IsPresent(True);
end;
Responder Con Cita
  #8  
Antiguo 13-03-2008
Avatar de seoane
[seoane] seoane is offline
Miembro Premium
 
Registrado: feb 2004
Ubicación: A Coruña, España
Posts: 3.717
Poder: 24
seoane Va por buen camino
Desde la universidad que no programo microcontroladores. Mi proyecto de fin de carrera lo hice en ensamblador y delphi, en cuanto al hardware la pieza principal era un PIC 16876, lo echo de menos
Responder Con Cita
  #9  
Antiguo 13-03-2008
Avatar de MaMu
MaMu MaMu is offline
Miembro
 
Registrado: abr 2006
Ubicación: Argentina
Posts: 863
Poder: 19
MaMu Va por buen camino
Cita:
Empezado por seoane Ver Mensaje
Desde la universidad que no programo microcontroladores. Mi proyecto de fin de carrera lo hice en ensamblador y delphi, en cuanto al hardware la pieza principal era un PIC 16876, lo echo de menos
Tengo unos cuantos dando vueltas, y aunque algunos como 16F84 hayan sido reemplazados por el 16F628, todavia les saco el jugo, apenas me sobran dos bits de eeprom para guardar los ultimos 2 digitos del año, jeje.

El unico problema, es que estamos en ASM, faltaría el subforo Electrónica & Delphi como para no desvirtuar el asunto.

Salutes
__________________
Código Delphi [-]
 
try 
ProgramarMicro(80C52,'Intel',MnHex,True);
except
On Exception do
MicroChip.IsPresent(True);
end;

Última edición por MaMu fecha: 13-03-2008 a las 23:37:21.
Responder Con Cita
  #10  
Antiguo 13-03-2008
JoseFco JoseFco is offline
Baneado
 
Registrado: dic 2007
Posts: 1.861
Poder: 0
JoseFco cantidad desconocida en este momento
Hola mamu.

Mi comentario anterior fue una broma jejejeje es que me resulto curioso lo de programar un micro en Pascal. (la línea PIC de Microchip, programándolos en Pascal) Claro yo entendi lo que queria decir el amigo.
Yo estoy de acuerdo contigo en que algunos copiladores solo generan mas codigo de lo que en realidad hace falta.Yo entre en el mundo de los microcontroladores a principio de la decada de los 80s y aprendi de una forma poco usual (metiendo hex uno a uno) pero fue la unica forma de entenderlos en esa epoca.Luego llegaron los Dallas DS5000 con sus Dinamic Rams y fue mas facil la cosa ya me permitia programar sobre lo programado y usando otras herramientas.
Mis primeros programas eran creados en programadores universales y hex a hex, con las instruciones mcs-51 a mi lado para entender que estaba haciendo y que queria hacer en cada funcion.Eso hoy dia suena a tecnologia atrasada jajajaja y estoy de acuerdo.Pero eso me ayudo a entenderlos mejor y poder hoy dia mirando una linea de codigo "hex" o "Intelhex" saber que hace o que espera.Cuando uno domina las instruciones de un micro en particular solo hace falta un notepad y un copilador como el Tasm-51 para MS-DOS window.Creo mi programita asm lo guardo como tal llamo a tasm-51 miprogramita.asm miprogramita.hex y enter. Ya este me genera mi intelhex y a ponerlo al chip.
En microcontroladores el espacio de memoria es importante y eso se logra reduciendo al maximo el codigo.Asm es el camino para eso aunque suene tecnologia atrasada.

Un Saludo.
Responder Con Cita
  #11  
Antiguo 14-03-2008
Avatar de rretamar
[rretamar] rretamar is offline
Miembro Premium
 
Registrado: ago 2006
Ubicación: San Francisco, Córdoba, Argentina
Posts: 1.168
Poder: 21
rretamar Va camino a la famarretamar Va camino a la fama
[quote=mamu;273118]a. Al igual que en C, es muy cómodo, pero yo prefiero el assembler, es cuestión de gusto y de costumbre, pero a veces es cuestión de espacio.

[quote]
Responder Con Cita
  #12  
Antiguo 14-03-2008
Avatar de rretamar
[rretamar] rretamar is offline
Miembro Premium
 
Registrado: ago 2006
Ubicación: San Francisco, Córdoba, Argentina
Posts: 1.168
Poder: 21
rretamar Va camino a la famarretamar Va camino a la fama
Cita:
Empezado por mamu Ver Mensaje
a. Al igual que en C, es muy cómodo, pero yo prefiero el assembler, es cuestión de gusto y de costumbre, pero a veces es cuestión de espacio.
También es cuestión de tiempo y productividad. En especial si es un desarrollo muy complejo.

Por ejemplo en esa placa que mostré (es la placa principal de un equipo de balanceo) usa cálculos angulares y de tensión con punto flotante (incluyendo cálculos trigonométricos), manejo de strings ("campos de edición" numéricos y alnanuméricos en un display LCD), almacenamiento de una tabla de piezas (con sus correspondientes campos), comunicación con la PC, etc. Si no hubiera usado un lenguaje de alto nivel todavía estaría programando.

Ejemplo de un procedimiento de ingreso numérico de datos por teclado, con validación (máximo y mínimo):

Código:
// Mostrar campo de entrada de datos numéricos validado (tipo Word, 5 caracteres de largo)
//
{$ifdef Modo_programacion}
Procedure InputWord(Fila, Columna: Byte; Minimo, Maximo: Word; Var Valor: Word);
Var
  Tecla, Longitud: Byte;
  Valor_Original: Word;
Begin
  Valor_Original:=Valor;                                                  // Respaldar variable (por si se presiona Esc)
  WordToStr(Valor,Cifras);
  Trim5(Cifras);                                                           // Elimina los espacios a la izquierda
  Repeat
    Repeat
      LCD_Cmd(LCD_BLINK_CURSOR_ON);                                       // Activar cursor parpadeante
      Mostrar_Cifras(Fila, Columna);                                      // Mostrar Valor actual
      Tecla:=KeyPressed;                                                  // Esperar hasta que se pulse una Tecla
      Longitud:=StrLen(Cifras);
      If (Longitud < 5) Then                                              // No añadir más de 5 caracteres
         If (Tecla<>Borrar) And (Tecla<>Esc) And                          // Solamente agregar caracteres numéricos
           (Tecla<>ENTER) And (Tecla<>Coma) Then
              StrAppendSuf(Cifras,Tabla_Teclas[Tecla - 1]);               // Agregar dígito al final
      If (Tecla = Borrar) And (Longitud > 0) Then                         // Eliminar el último dígito
        Borrar_Ultimo_Caracter(Cifras);
      Mostrar_Cifras(Fila, Columna);                                      // Actualizar valor en pantalla
      Valor:=Str2Word(Cifras);                                           // Convertir en Valor numérico (se reemplazó la función StrToWord por un bug que presenta en la conversión)
    Until (Tecla = ENTER) Or (Tecla = ESC);
    If ((Valor < Minimo) Or (Valor > Maximo)) And (Tecla <> Esc) Then    // Valor fuera de rango. Advertir con mensaje parpadeante
      LCD_Blink(Fila + 1,'Valor fuera de rango', 0, 6);
    LCD_Cmd(LCD_CURSOR_OFF);                                              // Desactivar cursor      
  Until (Tecla=ESC) Or ((Valor >= Minimo) And (Valor <= Maximo));         // Si Valor=correcto o Tecla=Esc, salir
  If Tecla=ESC Then 
    Begin
      WordToStr(Valor_Original, Cifras);
      Trim5(Cifras);
      Valor:=Valor_Original;                                // Si se presionó Esc, cancelar cambios
    End;  
  Mostrar_Cifras(Fila, Columna);                            // Visualizar Valor final
  Delay_Ms(300);                                            // Demora para que se visualice el Valor final
End;
{$endif}
Un procedimiento de cálculo:
Código:
//
// Analizar los datos capturados en vector Muestras y obtener: promedios angulares, promedios de tensión, máximos y mínimos
// Cálculo de la masa de desequilibrio actual
// Parámetros: número de Muestras -permite el promedio instantáneo a medida que se van adquiriendo los valores desde el uC secundario-
//
Procedure Analizar_Datos(Capturas: Word);
Var
  Contador: Word;
  Suma_Senos, Suma_Cosenos: Real;
Begin
  // Inicializar variables
  Ciclo.Angulo_Medio := 0;     // Promedios
  Ciclo.Valor_Medio  := 0;
  Ciclo.Delta_Valores:=0;      // Deltas
  Ciclo.Delta_Angulos:=0;
  Ciclo.Valor_Minimo:= 4095;   // Mínimos y máximos
  Ciclo.Valor_Maximo:= 0;
  Ciclo.Angulo_Minimo:= 359;
  Ciclo.Angulo_Maximo:= -359;
  //
  Suma_Senos:=0;
  Suma_Cosenos:=0;
  //
  For Contador:=1 To Capturas Do
    Begin
      // Actualizar acumulador de valores de tensión
      Ciclo.Valor_Medio  := Ciclo.Valor_Medio  + Muestras[ Contador ].Valor;
      // Actualizar mínimos y máximos de valores de tensión
      If Muestras[Contador].Valor > Ciclo.Valor_Maximo Then Ciclo.Valor_Maximo := Muestras[ Contador ].Valor;
      If Muestras[Contador].Valor < Ciclo.Valor_Minimo Then Ciclo.Valor_Minimo := Muestras[ Contador ].Valor;
      //
      // Calcular totales de senos y consenos (coordenadas x,y)
      Suma_Senos :=   Suma_Senos   + SIN( Radianes(Muestras [Contador].Angulo) );     // Obtener la suma de los senos   (coordenada y)
      Suma_Cosenos := Suma_Cosenos + COS( Radianes(Muestras [Contador].Angulo) );     // Obtener la suma de los cosenos (coordenada x)
    End;
  //
 // Obtener el ángulo medio a través del arco tangente de las coordenadas
  Ciclo.Angulo_Medio :=  Grados( ATAN2(Suma_Cosenos, Suma_Senos ) );
  If Ciclo.Angulo_Medio < 0 Then Ciclo.Angulo_Medio := Ciclo.Angulo_Medio + 360;  // Reducir ángulos "negativos"
  //
  // Reducir el ángulo a los primeros cuatro cuadrantes
  //
  Ciclo.Delta_Angulos:= Ciclo.Angulo_Maximo - Ciclo.Angulo_Minimo;
  //
  // Calcular diferencias entre máximos y mínimos para los valores de tensión
  Ciclo.Delta_Valores:= Ciclo.Valor_Maximo  - Ciclo.Valor_Minimo;
  // Promediar valores de tensión (siempre positivos o iguales a cero)
   Ciclo.Valor_Medio  := Ciclo.Valor_Medio  / Capturas;
  // Calcular porcentaje de delta T sobre T
  Ciclo.Porcentaje_DeltaT := (100 * Ciclo.Delta_Valores) / Ciclo.Valor_medio;
  // Calcular masa de desequilibrio
  Ciclo.Masa_de_desequilibrio:= Desequilibrio(Ciclo.Radio, Ciclo.Valor_medio, Ciclo.Velocidad, Configuracion.Constante_K );
  // Calcular Valor U medio ("cantidad de desbalanceo") g.mm
  Ciclo.U := Ciclo.Masa_de_desequilibrio * Ciclo.Radio;
End;
Aquí se usan los procedimientos para ingreso de datos desde teclado:

Código:
Procedure Ensayo_Automatico;
Var
  // Variables de respaldo de datos de Ciclo que se modificarán durante el ensayo
  Respaldo_Capturas: Word;
  Respaldo_Velocidad: Word;
Begin
  //
  Detener_motor;
  //
  Borrar_Pantalla;
  LCD_OutC(2,'Parametros');
  LCD_OutC(3,'del ensayo:');
  Delay_Ms(2000);
  Borrar_Pantalla;
  //
  // Permitir modificación de las variables de ensayo (Vmin, Vmax, intervalo)
  LCD_OutC(3,'ENTER: Confirmar');
  LCD_OutC(4,'ESC: No cambiar');
  //
  LCD_Out(1,1,'Vel. Min.:       rpm');
  InputWord(1, 12, 100, 1500 , Velocidad_Minima_ensayo);  // VMin: Valores permitidos: 100 a 1500 rpm
  LCD_Out(1,1,'Vel. Max.:       rpm');
  InputWord(1, 12, 100, 1500 , Velocidad_Maxima_ensayo);  // VMax: Valores permitidos: 100 a 1500 rpm
  LCD_Out(1,1,'Incremen.:       rpm');
  InputWord(1, 12, 1, 500 , Incremento_Velocidad_ensayo); // Incremento: Valores permitidos: 1 a 500 rpm
  LCD_Out(1,1,'Muestras :          ');
  InputWord(1, 12, 1, 300 , Numero_de_Capturas_Ensayo);   // Capturas: Valores permitidos: 1 a 300 rpm
  //
  Borrar_Pantalla;
  LCD_OutC(2,'Ensayo automatico');
  LCD_OutC(3,'Ciclo / Esc: Abortar');
  Direccionar_multiplexor(Salida_microcontrolador_principal);              // Direccionar salida de uC principal hacia port serie
  Usart_Write_Text('Inicio del ensayo'+#10+#13);                           // Enviar "encabezado"
  Delay_Ms(2000);
  // Respaldar variables de ciclo
  Respaldo_Capturas := Configuracion.Numero_de_capturas;                   // Respaldar número de Capturas
  Respaldo_Velocidad := Ciclo.Velocidad;                                   // Respaldar velocidad
  //
  Ciclo.Velocidad := Velocidad_Minima_Ensayo;                              // Setear velocidad minima inicial
  Configuracion.Numero_de_capturas := Numero_de_capturas_ensayo;           // Asignar número de Capturas al Valor de ensayo
  Repeat
     Arrancar_Motor(Ciclo.Velocidad, Ciclo.Sentido , Autodetencion_OFF);  // Arrancar motor
     Indicador_de_progreso;                                                // Mostrar indicador de progreso
     Realizar_Capturas;                                                    // Capturar datos
     Ciclo.Velocidad := Ciclo.Velocidad + Incremento_Velocidad_Ensayo;    // Incrementar velocidad del ensayo
  Until (Ciclo.Velocidad > Velocidad_maxima_ensayo) Or (Ultima_Tecla_Presionada = Pulsador_Ciclo) Or (Ultima_tecla_presionada = Esc); // Finalizar bucle
  // Restaurar variables de Ciclo modificadas durante el ensayo
  Configuracion.Numero_de_capturas := Respaldo_Capturas;                   // Restaurar número de Capturas
  Ciclo.Velocidad := Respaldo_Velocidad;                                   // Restaurar velocidad
  Detener_Motor;                                                           // Fin del ensayo: detener motor y Borrar pantalla
  Borrar_pantalla;
End;
Saludos !
End;

Última edición por rretamar fecha: 14-03-2008 a las 04:58:04.
Responder Con Cita
  #13  
Antiguo 14-03-2008
JoseFco JoseFco is offline
Baneado
 
Registrado: dic 2007
Posts: 1.861
Poder: 0
JoseFco cantidad desconocida en este momento
Hola rretamar.

Entiendo el punto y lo complejo de la aplicacion.Veo dos microcontroladores, un 232 y algunos otros integrados en tu tableta.
Pero al final por mas complejo que lo puedas ver. Un microcontrolador es un encapsulado monolitico " no inteligente " que recorrera toda su memoria ejecutando intruciones y tomando diferentes vias de acuerdo a lo establecido en su programa y otros eventos internos y externos. Limitados a algunas manipulaciones Borleanas.Ya la parte mas profunda en las matematicas esas son para una pc y por eso la presencia del 232 en esa tableta.

Un Saludo.
Responder Con Cita
  #14  
Antiguo 14-03-2008
Avatar de rretamar
[rretamar] rretamar is offline
Miembro Premium
 
Registrado: ago 2006
Ubicación: San Francisco, Córdoba, Argentina
Posts: 1.168
Poder: 21
rretamar Va camino a la famarretamar Va camino a la fama
Smile

El diseño inicial estaba basado en una Panel-PC y un microcontrolador externo, que con la ayuda de un ADC de 12 bits más un encoder, se encargaria de la adquisición de datos. Pero el cliente pidió que no se use una PC y se terminó usando dos micros, un teclado de membrana y un display LCD de texto:



En cuanto al tamaño del código generado, obviamente será más extenso un compilado que el ensamblador "a pelo", pero los microcontroladores de gama alta tienen generosas cantidades de memoria (en 64 Kb se puede meter MUCHO código en Pascal). Y hay microcontroladores con bastante más de 64 k, (a precios más que accesibles, incluso con conexión USB o ethernet) así que el espacio no es un problema.

Este tipo de proyectos los realizo estilo "open source", o sea entrego los planos (esquemas electrónicos) y el código fuente del software al cliente.

PD: Me uno a la petición de un foro "electrónica & Delphi". ¿ A quién hay que hablarle ?.

Saludetes !

Última edición por rretamar fecha: 14-03-2008 a las 04:53:42.
Responder Con Cita
  #15  
Antiguo 14-03-2008
Avatar de MaMu
MaMu MaMu is offline
Miembro
 
Registrado: abr 2006
Ubicación: Argentina
Posts: 863
Poder: 19
MaMu Va por buen camino
rretamar, es muy cierto lo que decis de los uC, sobre todo de los más nuevos. Yo prefiero el assembler, y apoyo mucho la programación de uC en otros lenguajes, ya que da la oportunidad de incorporar grandes mentes al mundo de los uC, exelentes programadores con escaso conocimiento de assembler.
Soy partidario que un buen programador de uC independientemente del lenguaje, debe estar familiarizado con la electrónica misma.
Podriamos hacer muchísimos tutoriales de técnicas de interface, donde se incluya la electrónica paso a paso, y su correspondiente ejemplo de control en delphi, pero no se en que espacio se ubicarían. Estoy más que convencido que unos cuantos colegas foristas empezarían a buscar "cablecitos" .

Saludos
__________________
Código Delphi [-]
 
try 
ProgramarMicro(80C52,'Intel',MnHex,True);
except
On Exception do
MicroChip.IsPresent(True);
end;
Responder Con Cita
  #16  
Antiguo 14-03-2008
Avatar de rretamar
[rretamar] rretamar is offline
Miembro Premium
 
Registrado: ago 2006
Ubicación: San Francisco, Córdoba, Argentina
Posts: 1.168
Poder: 21
rretamar Va camino a la famarretamar Va camino a la fama
Cita:
Empezado por JoseFco Ver Mensaje
Veo dos microcontroladores, un 232 y algunos otros integrados en tu tableta.
¡ Exacto ! es un MAX232. Te felicito por ser tan buen observador...no se ve lo que dice sobre el chip, pero apuesto que lo reconociste por los cuatro condensadores que tiene al lado .

Saludos !
Responder Con Cita
  #17  
Antiguo 14-03-2008
JoseFco JoseFco is offline
Baneado
 
Registrado: dic 2007
Posts: 1.861
Poder: 0
JoseFco cantidad desconocida en este momento
Hola mamu y rretamar.

Veo que les agradaria la idea de un foro de electronica.Foros de electronica en la web son los que sobran.A mi me gustaria un foro de microcontroladores orientados a trabajar con aplicasiones Delphi.Algo asi como crear programas en donde se emplearan uC y Delphi.
Eso estaria mas de acuerdo con la estructura de este foro.
Es solo una opinion.
Se puede estudiar la cosa y pues elevar la idea a San Emilio a ver si nos concede el milagrito.

Un Saludo.
Responder Con Cita
  #18  
Antiguo 15-03-2008
Avatar de MaMu
MaMu MaMu is offline
Miembro
 
Registrado: abr 2006
Ubicación: Argentina
Posts: 863
Poder: 19
MaMu Va por buen camino
Cita:
Empezado por JoseFco Ver Mensaje
Hola mamu y rretamar.

Veo que les agradaria la idea de un foro de electronica.Foros de electronica en la web son los que sobran.A mi me gustaria un foro de microcontroladores orientados a trabajar con aplicasiones Delphi.Algo asi como crear programas en donde se emplearan uC y Delphi.
Eso estaria mas de acuerdo con la estructura de este foro.
Es solo una opinion.
Se puede estudiar la cosa y pues elevar la idea a San Emilio a ver si nos concede el milagrito.

Un Saludo.
Si, la idea es que sea Electrónica & Delphi, donde se podrían tratar muchos temas relacionados a Delphi, incluyendo los uControladores.
Yo soy moderador de un foro de electrónica, pero es exclusivo de electrónica, y he tocado muchas veces el control mediante Pascal de algunas interfases.

Saludos
__________________
Código Delphi [-]
 
try 
ProgramarMicro(80C52,'Intel',MnHex,True);
except
On Exception do
MicroChip.IsPresent(True);
end;
Responder Con Cita
  #19  
Antiguo 17-03-2008
REHome REHome is offline
Miembro
 
Registrado: jul 2003
Ubicación: España
Posts: 472
Poder: 22
REHome Va por buen camino
Cita:
Empezado por mamu Ver Mensaje
Tengo unos cuantos dando vueltas, y aunque algunos como 16F84 hayan sido reemplazados por el 16F628, todavia les saco el jugo, apenas me sobran dos bits de eeprom para guardar los ultimos 2 digitos del año, jeje.

El unico problema, es que estamos en ASM, faltaría el subforo Electrónica & Delphi como para no desvirtuar el asunto.

Salutes
Hola mi muy distinguido amigo. Es sustituto del 16F84A ahora es el 16F88, antes era el 16F628A porque no estaba el 16F88. Como que en pines era muy poco, se empezó a usar el 16F876A y 16F877A. Para que lo sepan, su nuevo sustituto son el 16F886 y 16F887 que son más modernos.

Llegaron lo de gama alta y los más usados son el 18F2550 y el 18F4550

EDIT:

- Sobre la electrónica, aquí también se basa en electrónica para microcontroladores y asm. Pueden poner algo en youtube, ahora estoy practicando con los pic, ver ejemplo simple y básico.

http://es.youtube.com/watch?v=lB9TyErcVU4

- Sobre me MAX232, si no quieres que sean identificado de lejos por los 4 condensadores, hay uno que se llama MAX233 que es igual que el MAX232 con la diferencia que los condensadores son internos y que este IC cuesta más que el MAX232 junto con los 4 C.

- Sobre las imágenes de arriba, si tiene más imágenes, las pone para verlas, ya me he guardado las dos que pusiste. No se para qué usar dos pic de 40 pines habiendo uno de 80 y 100.

Un saludos.
__________________
http://electronica-pic.blogspot.com....n-arduino.html Manuales de electrónica general, PIC y Arduino.

Última edición por REHome fecha: 17-03-2008 a las 22:27:20. Razón: Más información
Responder Con Cita
  #20  
Antiguo 18-03-2008
Avatar de rretamar
[rretamar] rretamar is offline
Miembro Premium
 
Registrado: ago 2006
Ubicación: San Francisco, Córdoba, Argentina
Posts: 1.168
Poder: 21
rretamar Va camino a la famarretamar Va camino a la fama
Lo de los dos PICs es un error de diseño que lo pagué muy caro (en cuestión de tiempo de desarrollo). Por un lado me permitió que el uC principal delegue tareas al otro uC, eos me permitió dividir el problema en dos partes bien diferenciadas, pero por otro, tuve que implementar un rudimentario protocolo de comunicaciones entre ambos y hacer que "dialoguen entre sí").

Hoy en día no haría eso; como bien decís, usaría un uC grande "todo-en-uno" pero a veces hay que "quemarse" para aprender la lección.

Saludos !
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Factura Electrónica aig Varios 13 10-12-2010 18:12:44
factura electronica spia Varios 2 22-02-2009 22:30:06
Biblioteca Electrónica [Gunman] Varios 1 07-02-2006 20:28:42
Basura electronica Investment Noticias 1 10-05-2005 17:40:33
transacion electronica edi davidelkata Internet 0 12-07-2003 12:52:09


La franja horaria es GMT +2. Ahora son las 01:16:19.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi