Menú

Mostrar Mensajes

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

Mostrar Mensajes Menú

Mensajes - Tokes

#11
¿¿Con interruptores??
#12
Buen día, disculpen que me entrometa, pero, mi estimado 1234567 (o como te hagas llamar): si quieres habilitar una línea de 220 V ¿por qué no lo haces con triacs?

Utilizar optoacopladores con salida a triac es muy fácil, y la corriente que le demandas al puerto es muy pequeña.

Para utilizar relevadores necesitas la fuente de alimentación (en este caso, tu cargador); pero utilizando triacs sólo necesitas la corriente del puerto paralelo para encender los leds de los optoacopladores.

Aquí te dejo un enlace:

http://www.pablin.com.ar/electron/circuito/computer/triac220/index.htm

Espero que te sirva. Nos vemos
#13
Hola, JSP10:

Pues, que yo sepa, la función que manda datos al lcd es: lcd_putc(), no PUTLCD() (Aunque, claro, tal vez tengas una librería modificada).

Si tienes la librería que yo conozco, entonces deberás hacer los siguientes ajustes:

- Cambiar el código PUTLCD("\fHello World"); por el código lcd_putc("\fHello World");

- Antes de incluir la librería lcd.c debes definir lo siguiente:
  #define   use_portb_lcd. Si no agregas esta definición antes de
  inluir la librería antes mencionada, el puerto por defecto para el lcd será
  el PORTD.

Es todo. Espero haberte ayudado.
#14
Pues sí, se alenta, pero parece que se congela: si estaba moviendo el puntero, el puntero se detiene y 2 segundos después aparece en otro lugar; si estaba escribiendo texto, no aparece nada hasta 2 segundos después; si estaba reproduciendo audio, la música se detiene y las bocinas emiten un rechinido extraño que no puedo explicar.

LunaHAck, gracias por tu respuesta, pero pues eso ocurre aunque no tenga programas abiertos. Es decir, aunque no se esté ejecutando ningún programa, de todos modos el puntero se congela o alenta. ¡Puff! En verdad que es chafa mi netbook.
#15
Hola a toda la gente del foro.

Verán, tengo un pequeño problema. Mi netbook se "detiene" o alenta frecuentemente, en promedio cada 40 segundos.

En el momento que se detiene no puedo mover el puntero ni... bueno, no puedo hacer nada porque queda como congelada y el reproductor de Windows emite un rechinido fastidioso. Este momento dura aproximadamente entre 1 y 2 segundos.

Ya analicé la computadora con Avast pero no encontró virus, y no sé qué hacer.

Mi netbook tiene procesador Intel Atom N455 y Windows 7 Starter.

Les agradezco la atención prestada.
#16
Saludos a todos. Aquí dejo mi código:

Private Function Bits_d_tks(ByVal d As Long, ByVal n As Long) As Long
   If n And &H80000000 Then
       n = -n
       While n > 0
           d = desp_1pos_izq(d)
           n = n - 1
       Wend
   Else
       While n > 0
           d = desp_1pos_der(d)
           n = n - 1
       Wend
   End If
   Bits_d_tks = d
End Function

Private Function desp_1pos_izq(ByVal num As Long) As Long
Dim i As Long, b As Long

   b = 1
   For i = 0 To 29
       If num And b Then
           b = b * 2
           desp_1pos_izq = desp_1pos_izq Or b
       Else
           b = b * 2
       End If
   Next
   
   If num And &H40000000 Then
       desp_1pos_izq = desp_1pos_izq Or &H80000000
   End If
End Function

Private Function desp_1pos_der(ByVal num As Long) As Long
   If num <> &HFFFFFFFF And num <> 0 Then
       num = num \ 2
   End If
   desp_1pos_der = num
End Function
#17
Buen día:

Aquí están los pequeños problemas.



Hasta pronto.
#18
Yo también lo probé y el led sí prende. Dale doble click a la eeprom y desactiva la casilla Exclude From Simulation.

También asegúrate de haber colocado las resistencias de pullup en las líneas sda y scl. La terminal WP de la memoria debe dejarse sin conexión.

Reitero: SÍ funciona. No puedo hacer más por tí. Saludos.
#19
Tienes algunos errores en la programación, aquí está el código corregido:

#include <16C62B.h>
#fuses XT,WDT
#use delay(clock=4000000,restart_wdt())
#use i2c(Master,Slow,SDA=PIN_C4,SCL=PIN_C3,RESTART_WDT)

int ByteR;

void main()
{
//Escribe el dato.
i2c_start();
i2c_write(0b10100110);
i2c_write(0x00);
i2c_write(0x10);
i2c_write(0x01);
i2c_stop();
delay_ms(5);

//Lee el dato.
i2c_start();
i2c_write(0b10100110);
i2c_write(0x00);
i2c_write(0x10);
i2c_start();
i2c_write(0b10100111);
ByteR = i2c_read(0);
i2c_stop();

output_bit(PIN_B0,ByteR);

}


Las líneas A2A1A0=011, es decir, A2 debe estar conectado a tierra; y A1 y A0, a Vcc.

También da doble click sobre la eeprom en Proteus y asegúrate que la casilla Exclude From Simulation esté desactivada.

Es todo. Buen día.
#20
Qué tal:

La dirección de esclavo de la 24LC256 es:

  Dirección fija de 4 bits     A2  A1  A0  Lectura/Escritura

Para especificar lectura se envía un '1', para escritura se envía un '0'.

Por lo tanto, si se quiere escribir un dato en la 24LC256 con sus terminales A2, A1 y A0 = 110, hay que enviar:

                  1010               110             0
             Dirección fija   A2  A1  A0   Escritura

Para la lectura sería:

                  1010               110             1
             Dirección fija   A2  A1  A0    Lectura

Realizar una lectura en una memoria i2c es más complicado que realizar una escritura, ya que para realizar la lectura, primero hay que direccionar el dispositivo en modo escritura para indicarle la dirección que se va a leer.

Esto sería más o menos así:

Leer el dato contenido en la dirección 0x1052 de una 24LC256 que tiene sus líneas A2A1A0=011.

i2c_start();
i2c_write(0b10100110);  //Direeciona la eeprom en modo escritura.
i2c_write(0x10);  //Byte alto de la dirección a acceder.
i2c_write(0x52);  //Byte bajo de la dirección a acceder.
i2c_start();  //Envía restart.
i2c_write(0b10100111);  //Direcciona la eeprom en modo lectura.
dato=i2c_read(0);  //Lee el dato y no envía ACK.
i2c_stop();


Hasta pronto.