• Sábado 4 de Mayo de 2024, 17:21

Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.


Mensajes - jaumegs

Páginas: 1 [2] 3 4 5
26
C/C++ / Manejo Del Dico Flexible En C
« en: Miércoles 18 de Enero de 2006, 00:02 »
Que libreria incluye funciones para leer y escribir el disco flexible sector por sector?, es decir, especificando cara, pista y siector.

P.D.- Para dev-c++ o borland cpp compiler 5.

SALUDOS

27
C/C++ / Compilar Un Binario
« en: Martes 17 de Enero de 2006, 23:58 »
Cómo puedo compilar  un archivo binario "puro"?, es decir, que no saque un .exe, sino un .bin o sin extensión y que se comporte como tal.

Un archivo de este tipo puede ser ejecutado, por ejemplo, como un programa de arranque? Me refiero a si crearia conflictos al no encontrar las interrupciones. Imagino que si, pero, sería posible compilar desde el GCC (por ejemplo) archivos binarios que no utilicen interrupciones ni características específicas de un SO?

SALUDOS

28
ASM (Ensamblador) / Re: Sobre Solocodigos
« en: Lunes 16 de Enero de 2006, 00:13 »
Hola,

Si en vez de crear un sistema de archivos coges uno ya creado como FATFAT12 crearás compativilidad con DOS/windows, y esto motivará mucho mas, a parte de ahorrar tiempo en diseñar un buen sistema de archivos.

Estaría muy bien poder editar los archivos del SO tanto desde el propio SO como desde otro, en este caso DOS o windows.

SALUDOS

29
Microcontroladores / Re: Calentar Un Alambre
« en: Jueves 12 de Enero de 2006, 22:33 »
Bueno, aunque un poco retrasado, por si les interesa ya conseguí mi proposito.

Lo solucioné modificando un transformador de un horno microondas. Corté el bobinado secundario y puse un cable grueso, de 2mm, dándole unas cuantas vueltas (8 creo).

El transformador inicialmente con una entrada de 230v tenía una salida de 2100v. Después de la modificación con la misma entrada, tiene una salida de 6v, pero según los cálculos de unos 400Amperios.

En cuanto al alambre, se coloca directamente en la salida del transformador. Para controlar el voltage de salida, y así la intensidad, se coloca un dimmer de una lámpara misma en la toma de corriente. El transformador apenas se calienta.

He conseguido poner incandescente alambres de hasta 1mm de grosor. Al poner mas grosor la intensidad aumenta rápidamente, lo que calienta el transformador.

Bueno, no hay fórmulas pero almenos funciona ;)

SALUDOS

30
Microcontroladores / Re: Fallo - Rs232
« en: Miércoles 11 de Enero de 2006, 23:53 »
OK. Lo acabo de ver revisando los mensajes :P eso pasa por no usar el buscador...

SALUDOS Y GRACIAS

31
Microcontroladores / Re: Fallo - Rs232
« en: Miércoles 11 de Enero de 2006, 18:53 »
Bueno... creo que nos hemos desviado un poquito del tema, pero al crearse estas discusiones siempre da gusto leerlas :alien:

Creo que la elección de programar en ASM o C es algo que debe realizar uno mismo. El ASM te hace tomar un contacto mayor con el micro, programar en C (no he programado en C nunca para un microcontrolador... para PC si) es mejor para optimizar el tiempo y no pasarte horas con algo que no te sale, o si quieres un programa para un PIC y otro tipo de micro y canviar unas cuantas lineas de código, no un programa entero (no se si eso es posible, pero si se sigue la misma teoria que en los computadores...).

Todo es cuestión de uno mismo, si uno es un poco masoca, como yo, y le gusta decirle al micro lo que ha de hacer en cada preciso instante sin importarle el tiempo que gasta en ello... pues adelante, ASM. Si uno prefiere pasarse mucho menos tiempo, le da igual que el programa ocupe unos bits mas, y quiere que su programa sea mas portable, pues C.

Yo cuando le coja mas práctica al ASM me gustaria aprender C para PIC, alomejor resulta que me gusta mas :smartass:... no que va, creo que nunca se ha de perder el contacto con el ASM, programes en lo que programaes.

SALUDOS

P.D.- Bueno, a lo que íbamos, me estoy volviendo loco en canviar de micro... del 16f84 hay mucha documentación (en castellano) sobre sus registros, para que sirven, como usarlos,... en cambio con los 16f876 y otros no encuentro nada, escepto los documentos de Microchip en ingles, que por desgracia no es idioma que domino, y menos para aprender algo de programación, aunque mi interés por reforzarlo no desaparece.

NO existe por alli algo que te explique como usar la UART en un 16f876, el bus I2C, y esas cosas? (en ASM)

32
Microcontroladores / Re: Fallo - Rs232
« en: Lunes 9 de Enero de 2006, 18:12 »
Bueno, realmente yo también estoy deacuerdo... pero me interesaba practicar un poco... :smartass:

Definitivamente utilizare el 16f876. Pero ahora el problema está en que solo he programado el 16f84... y desconozco los registros del 16f876 y como realizar tareas tales como la utilización de la UART.

Alguien podría recomendarme un lugar que explique esto?

SALUDOS

33
Microcontroladores / Fallo - Rs232
« en: Domingo 8 de Enero de 2006, 17:34 »
Hola,

Se que esto se pide mucho por aqui, pero no me queda otro remedio...

Miren, este codigo (sacado del FTP del foro, un poco modificado) teóricamente tocaría funcionar para la transmisión y recepción serie...

Lo alucinante es que antes me funcionaba, bueno, me explico...
HAce unos dias formatee el ordenador... y me olvidé de guardar todos los programas para los PIC. Entre ellos, un programa que me funcionaba muy bien, era este mismo código(un poco mas modificado). Este código funcionaba bien, pero no se porque ahora no hay forma...

Lo he probado en simuladores y funciona bien, no da ningún error. Puedo pensar que es el hardware... pero estoy mas que arto de montarlo y desmontarlo...

Código: Text
  1. ;------------------------------------------------------------------------------
  2. ; DECLARACIÓN DE VARIABLES
  3. ;------------------------------------------------------------------------------
  4.  
  5. #Define    RxD  PORTB,4  &#59; Receive Data
  6. #Define    TxD   PORTB,5  &#59; Transmit Data
  7.  
  8. tempData1  EQU  0x44
  9. counter2  EQU  0x45
  10. counter1  EQU  0x46
  11.  
  12. ;------------------------------------------------------------------------------
  13.  
  14. RS232_setUp:
  15.   bsf STATUS,RP0  &#59; Segundo banco
  16.  
  17.   bsf RxD    &#59; Configura la entrada
  18.   bcf TxD    &#59; Configura la salida
  19.  
  20.   bcf STATUS,RP0  &#59; Primer banco
  21.  
  22.   return    &#59; Retorna donde fue llamada
  23.  
  24. ;------------------------------------------------------------------------------
  25.  
  26. RS232_readData:
  27.  
  28.   movlw 0x08
  29.   movwf counter1
  30.  
  31. waitBegin
  32.  
  33.   btfsc RxD  &#59; Bit de START?
  34.   goto waitBegin  &#59; No, sigue esperando
  35.       &#59; Si, sigue el programa
  36.  
  37.   call wait_mc100  &#59; Espera a que termine el bit de START
  38.   call wait_mc50  &#59; Espera medio bit para leer el primer bit de
  39.       &#59; datos medio bit retrasado
  40. readBit
  41.  
  42.   bcf STATUS,C  &#59; Supone que es "0"
  43.   btfsc RxD  &#59; Es "0" realmente?
  44.   bsf STATUS,C  &#59; No, es "1"
  45.  
  46.   rrf tempData1,F
  47.   call wait_mc100
  48.  
  49.   decfsz counter1,F&#59; Ha leido todos los bits de datos?
  50.   goto readBit  &#59; No, lee el próximo bit
  51.  
  52.   call wait_mc200  &#59; Si, espera al bit de STOP
  53.   movf tempData1,W&#59; Pone el resultado en el acumulador
  54.  
  55.   return    &#59; Retorna donde fue llamada
  56.  
  57. ;------------------------------------------------------------------------------
  58.  
  59. RS232_sendAsciiNumber:
  60.   addlw '0'
  61. RS232_sendData:
  62.   movwf tempData1  &#59; Guarda el contenido del byte a trans-
  63.       &#59;   mitir
  64.   movlw 0x08  &#59; Número de bits a transmitir
  65.   movwf counter1
  66.   bcf TxD  &#59; Bit de START
  67.   call wait_mc100
  68.  
  69.  sendBit    &#59; Comienza a enviar tempData1s
  70.   rrf tempData1,F  &#59; Lleva el bit que se quiere enviar al
  71.   btfss STATUS,0  &#59;  Carry para deducir su valor. ¿Es un
  72.       &#59;  "1"  el bit a transmitir?
  73.   goto sendZero  &#59; No, pues envía un "0"
  74.  
  75.  sendOne
  76.   bsf TxD  &#59; Transmite un "1"
  77.   goto endSendBit
  78.  
  79.  sendZero
  80.   bcf TxD  &#59; Transmite un "0"
  81.  
  82.  endSendBit
  83.   call wait_mc100  &#59; Este es el tiempo que estará en alto
  84.       &#59;   o bajo
  85.   decfsz counter1,1&#59; Comprueba que es el último bit
  86.   goto sendBit  &#59; Como no es el último bit repite la
  87.       &#59;   operación
  88.   bsf TxD  &#59; Envía dos bits de stop
  89.   call wait_mc200
  90.  
  91.   return    &#59; Retorna donde fue llamada
  92.  
  93. ;------------------------------------------------------------------------------
  94.  
  95. wait_createMc:
  96.   movwf counter2  &#59; Aporta 1 ciclo de máquina
  97.  
  98. waitLoop
  99.   decfsz counter2,1&#59; Aporta 1 c.m. cuando no se salta, y
  100.       &#59;  2 c.m. si se salta.
  101.   goto waitLoop  &#59; Aporta 2 ciclos de máquina
  102.  
  103.   return    &#59; Aporta 2 ciclos de máquina
  104.  
  105.  
  106. ;------------------------------------------------------------------------------
  107. ; RETARDOS
  108. ;------------------------------------------------------------------------------
  109.  
  110. wait_mc50:    &#59; La llamada "call" aporta 2 c.m.
  111.   nop    &#59; Aporta 1 ciclo de máquina
  112.   movlw 0Eh  &#59; Aporta 1 ciclo de máquina
  113.   goto wait_createMc&#59; Aporta 2 ciclos de máquina
  114.  
  115. wait_mc100:    &#59; La llamada "call" aporta 2 c.m.
  116.   movlw 1Fh  &#59; Aporta 1 ciclo de máquina
  117.   goto wait_createMc&#59; Aporta 2 ciclos de máquina
  118.  
  119. wait_mc200:    &#59; La llamada "call" aporta 2 c.m.
  120.   nop    &#59; Aporta 1 ciclo de máquina
  121.   movlw 40h  &#59; Aporta 1 ciclo de máquina
  122.   goto wait_createMc&#59; Aporta 2 ciclos de máquina
  123.  

Bueno, aquí les dejo el código haber si me pueden hechar una mano.

SALUDOS

34
Microcontroladores / Re: Calentar Un Alambre
« en: Miércoles 28 de Diciembre de 2005, 22:10 »
Creo que lo enfoco desde un mal punto de vista.

Yo he intentado calcular la potencia desarroyada por el alambre, pero esto no es lo que lo hace calentarse realmente.

Si un circuito por el que circula una corriente de 1A le añado un alambre de un diametro de unos 2mm, que pasa? nada, la corriente circula perfectamente y no se calienta nada.

Ahora bien, si al circuito anterior añado un alambre de 0,1mm de diámetro que pasa? Que el alambre no soportaria esa corriente y se fundiria.

Pero si calculo su resistencia me daría como resultado 0,001ohms (por ejemplo).

Imagino que el factor que hace calentarse el alambre es que si su diámetro es pequeño y se le aplican grandes tensiones su resistencia aumenta drásticamente.

Que opinan?

SALUDOS

35
Microcontroladores / Re: Calentar Un Alambre
« en: Miércoles 28 de Diciembre de 2005, 00:03 »
bueno, leyendo un buen rato he llegado a varias conclusiones:

Citar
I = Q/t
V = W/Q

Q = I·t  ->  V = W/(I·t)  ->  V·I = W/t .....  W/t = P ... P = V·I
-------------------
I - intensidad, V - voltaje, W - trabajo, Q - carga, P -potencia


I = V/R
P = (I·R)·I = I^2·R

Ahora si calculo la resistencia de el alambre de 60cm de largo(0,6m), diámetro 0,4(radio 0,2) y de acero (resistividad = 12,30·10^-8 ).

Código: Text
  1. R = ((12,3·10^-8)·0,6)/pi·(0,2)^2 = 5,873·10^-7 ohms
  2.  

Hasta este punto llego, pero... el problema mas serio seria la parte del calor que puede disipar el alambre...

Si tuviera esto con aplicarle una intensidad mayor a la necesaria para llegar hasta el calor maximo que puede disipar, asi iria incrementando su temperatura i al aumentar la temperatura aumentaria la resistencia, disminuyendo así el voltaje, quedando en un estado de equilibrio...

Bueno... asusta un poco todo esto.

Gracias

SALUDOS

36
Microcontroladores / Calentar Un Alambre
« en: Martes 27 de Diciembre de 2005, 13:37 »
Hola,

Esta pregunta no está relacionada con la programación, pero ya que alguno de ustedes sabe electrónica me atreveré a preguntarlo.

Miren, yo quiero alguna fórmula o el método de cálculo para averiguar a que augmento de temperatura tiene un conductor de diámetro D, longitud x, resistencia R, material (alambre, supongo que acero galvanizado) al hacer correr una corriente I atraves de él.

Bueno, supongo que si existe tal fórmula tendra estas variables, sino simplemente expondré mi caso.

Tengo un transformador con salida de 24V 2,5A, quiero calentar a unos 200º-300º un alambre de 0,4mm y 60cm de largo.

Lo que necesito saber es la corriente que he de hacer circular por el alambre para que suba a esa temperatura sin llegar a ponerse incandescente.

P.D- Esto no tiene nada que ver con el tema de estos foros, pero les agradeceria respuestas.

SALUDOS

37
C/C++ / Problema En Devcpp
« en: Viernes 23 de Diciembre de 2005, 18:54 »
Saludos,
Estoi iniciandome en C++, con el compilador DevCpp.

Al compilar, crea ejecutables del orden de 450Kb, cosa que no me pasaba cuando compilaba en C... y si compilo el mismo programa en otro compilador, me crea ejecutables muchisimo mas pequeños.

Como puedo hacer que no me cree esos ejecutables tan grandes?

SALUDOS :hola:

38
Hardware / Re: Procesador 486
« en: Jueves 22 de Diciembre de 2005, 17:05 »
Confirmado, si que lo es. Bueno, mas precisamente es el diagrama de los pines para proceadores i486 DX2, que es precisamente el que tengo yo :P

Bueno, gracias por su ayuda.

SALUDOS.

39
Hardware / Re: Procesador 486
« en: Jueves 22 de Diciembre de 2005, 16:54 »
:P MAs o menos esa era mi intención.

Mi idea era empezar con los 8086, pero no encuentro por ningún lado, asi que... me regalaron un 486... y por probar.

He visto sites donde hacen ordenadores basicos, yo no pretendo nada mas... procesador, ram, un controlador para los puertos, otro para las INT... y claro esta... una rom. Algo sencillo... MUY sencillo.

Con un fin educativo... no pretendo hacer nada útil, y no creo que lo consiga hacer funcionar... antes tendré que cargarme algunos prcesadores...

SALUDOS

40
Microcontroladores / Re: Ultrasonidos Con Pic
« en: Miércoles 21 de Diciembre de 2005, 15:10 »
Muchas gracias!

41
Hardware / Procesador 486
« en: Miércoles 21 de Diciembre de 2005, 00:49 »
Bueno, esta no es exactamente una pregunta sobre un tema de ensamblador, pero va ligada.

He estado buscando por la red y no he encontrado por ningún lugar alguna web que de un datasheet o simplemente que función desempeña cada uno de los pines de un 486(DX2, por lo que he encontrado, hay pequeñas variaciones según el modelo).

Eso de que no he encontrado nada no es del todo cierto, pues he encontrado esto:
http://home.wtnet.de/~akstiefler/486/knifflig.html
pero como podeis ver está en alemán.

Solo observando el título se ve que se refiere a AMD, y a los procesadores 5x86.

Yo he interpretado que esto se debe tratar de un 486, una razón es que me apareció al buscar "486" en el google, y otra es porque coincide en el número de pines.

Bueno, la pregunta es:

Es esto realmento lo que ando buscando?

SALUDOS

42
ASM (Ensamblador) / Re: Interrupciones. Que Son?
« en: Domingo 11 de Diciembre de 2005, 00:55 »
OK, muchas gracias.

Despues de un buen rato buscando ya he encontrado cosas en español.

SALUDOS

43
ASM (Ensamblador) / Re: Interrupciones. Que Son?
« en: Sábado 10 de Diciembre de 2005, 23:03 »
Desde el momento en que uno sabe alguna cosa que otro no, puede tomar el papel de maestro de eso, de igual modo, que el otro también lo puede ser en otros campos.

Bueno, quizás no haya formulado bien mis preguntas, en la pregunta anterior con razón podrias haber dicho que buscara por la web, realmente pregunté antes de buscar.

Esta nueva pregunta pido otra cosa, acerca de la misma materia, pero yo no le encuentro similitud. Pido si es posible hacer una interrupción, y si ese es el caso, cómo?. No obligo a nadie a contestar, o a pasarse una hora escribiendo para mi, solo pido si alguien sabe algo acerca de ello, o alguna web.

Te agradezco la dirección que me has dado, pero no me ha servido de mucho, imagino que es porque no se por donde empezar con ella. Allí ay muchisimo mas de lo que pregunto, diria que todo sobre los procesadores intel.

SALUDOS

44
ASM (Ensamblador) / Re: Interrupciones. Que Son?
« en: Sábado 10 de Diciembre de 2005, 21:53 »
Tranquilidad.
Primero, antes de preguntar nada intento contestar a mis preguntas desde otras fuentes.
Se que son las interrupciones, simplemente he expuesto como las veo yo (las interrupciones por software)...

Y porfavor, no cuestiones mi forma de aprender, simplemente me interesa mas la programación a bajo nivel, y por lo tanto acceder al hardware como tal. Si lo que quisiera fuera meter cuatro parametros i dejar que un "algo" haga el resto, programaria en C. Yo lo único que quiero es entender como se comunican el hadware y el procesador, me da igual si hay unas cositas llamadas interrupciones de la BIOS que hacen la vida mas facil, para eso estan los lenguajes de alto nivel.

Desde mi punto de vista prefiero aprender a manejarlo todo a bajo nivel, y apartir de este punto, ya manejar las interrupciones de la BIOS o crear mis propias interrupciones.

No me meto con las interrupciones de la BIOS, son muy útiles, pero creo que debe ser una opción el utilizarlas, no una obligación.

Siento parecerte pesado, que no hago nada por mi mismo y lo que pienses de mi. Es mi forma de ver las cosas.

Y ademas, los foros están para preguntar cosas, da igual la estupidez de la pregunta, así, si alguien tiene una de estas dudas estúpidas, al buscarla por el buscador del foro la encontrará y así no tendra que romperse la cabeza buscandola por la red... O almenos eso entiendo yo por foro... sino, si todo son preguntas la leche de complejas... a parte de que solo recibirian dos o tres respuestas, nadie llegaria nunca a preguntarselas mas que nada porque no ha aprendido lo básico...


Bueno, intentaré preguntar menos... Pero mi problema es que mi nivel de ingles es bastante bajo, y no me da para mucho... se que deberia aprender mas ingles si quiero moverme en este mundo, pero, si en webs como esta se respondiera a este tipo de preguntas, gente como yo que no sabemos ingles, encontrariamos la respuesta sin necesidad de aprender mas idiomas.

SALUDOS

45
ASM (Ensamblador) / Interrupciones. Que Son?
« en: Sábado 10 de Diciembre de 2005, 20:27 »
Que son exactamente las interrupciones? Bueno, entiendo su función, como se usan... Tienen un cierto parecido con las llamadas "call" a una función, pero como que ya estan cargadas en memoria, no pueden ser llamadas por un "call" al no ser que sepas su posición en memoria...

Bueno, eso es lo que entiendo yo de ellas :huh:

Puedo hacer yo una interrupcion? Por ejemplo... crear una interrupcion (0x34) cargarla en memoria y al introducirla en mi programa que ejecute esa funcion...
Cómo puedo hacerlas?

Cuanta mas información mejor ;)

SALUDOS

46
ASM (Ensamblador) / Re: Paginas De Viedo
« en: Sábado 10 de Diciembre de 2005, 01:49 »
Y en que parte de la memoria estan situadas?

En las funciones de la BIOS están numeradas, que patron sigue esa numeración?

(Hoy estoy preguntón)

SALUDOS

47
ASM (Ensamblador) / Re: Problema: Pierdo El Cursor... :-s
« en: Sábado 10 de Diciembre de 2005, 01:44 »
jejej, ok. Cuando he dicho la ram de la bios me referia a el código de la bios cargado en la ram, que efectivamente esta en la f000:0000(por eso he añadido la PD)...

SALUDOS :kicking:

48
ASM (Ensamblador) / Re: Problema: Pierdo El Cursor... :-s
« en: Sábado 10 de Diciembre de 2005, 00:27 »
Citar
0040:0050 16 Bytes
Cursor Positions on all pages

No entiendo esto :-S  esto que es, que la posición del cursor se encuentra en el segmento 0x0040 offset 0x0050 de la RAM?

SALUDOS

PD- He visto que al hablar de esta posición de memoria se refieren a la RAM de BIOS. Quiere decir esto que 0x0040:0x0050 se encuentra en 0xF040:0x0050?

49
Microcontroladores / Ultrasonidos Con Pic
« en: Viernes 9 de Diciembre de 2005, 23:59 »
He estado mirando i no encuentro por ningún lugar el esquema de un circuito de ultrasonidos. El circuito ha de incluir un transmisor y un receptor, controlados por un PIC (16f84 si puede ser).

Mi intención es crear un "radar" de corta distancia de ultrasonidos, movido por un motor PaP para así poder hacer una imagen de 360º, para eso necesitaria que el programa del PIC cronometre, lo mas preciso posible, el tiempo que tarda en recibir un eco después de transmitirlo.

Bueno... el programa puedo hacerlo yo, pero no se como conectar dos módulos de ultrasonidos a un PIC, ni tampoco su funcionamiento.

SALUDOS :alien:

P.D.-perdón por el rollo que os he contado... :kicking:

50
ASM (Ensamblador) / Paginas De Viedo
« en: Viernes 9 de Diciembre de 2005, 23:50 »
Hola,

Qué es eso de las páginas de video (no los modos...) :huh: ? (Lo pide como parámetro en varias funciones de video de la BIOS)

SALUDOS :ph34r:

Páginas: 1 [2] 3 4 5