• Martes 5 de Noviembre de 2024, 09:23

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 - Gokuden

Páginas: [1]
1
ASM (Ensamblador) / I2c Y Pic. Controla Memoria Y Perifericos.
« en: Domingo 10 de Abril de 2005, 21:20 »
hola. aqui les dejo unas rutinas que hice esta semana y funcionana a la perfeccion. junto con un ejemplo. estas rutinas estan en asm y son para los micros de microhip que posean el modulo MSSP i2c. para cualquier, probe la misma rutina en un 877a, y en un 88 y todo bien.

COSAS PARA QUE TE FUNCIONE, debes colocar el  pto PORTC como entrada, aunque no he probado solo poniendo los pines que involucran al i2c.

saben que el i2c, lleva un start, stop, envio de byte y recepcion de byte, entonces habra una rutina para cada uno y las iras llamando dependiendo de como sea la comunicacion con el periferico.

S_STAR  es la rutina de start
S_STOP es la rutina de stop
S_BYTE  es la rutina de enviar byte
R_BYTE es la rutina de recivir byte.


;-----------------INICIO, CONFIGURACION DE PTOS Y I2C-------------------
                CALL        BANK_1              ; TE CAMBIAS AL BANCO 1
                MOVLW   0FFH
   MOVWF   TRISC
   MOVLW   B'10000000'
   MOVWF   SSPSTAT
   MOVLW   .9
   MOVWF   SSPADD
   CALL   BANK_0             ; TE CAMBIAS AL BANCO 0
   MOVLW   B'00101000'
   MOVWF   SSPCON
   MOVLW   .0



;-------------RUTINAS I2C-------------------
S_START   BCF   PIR1,SSPIF   ; CON ACK
   CALL   BANK_1
   BSF   SSPCON2,SEN
   CALL   BANK_0
START_W   BTFSS   PIR1,SSPIF
   GOTO   START_W
   RETURN



S_STOP   BCF   PIR1,SSPIF
   CALL   BANK_1
   BSF   SSPCON2,PEN
   CALL   BANK_0
STOP_W   BTFSS   PIR1,SSPIF
   GOTO   STOP_W
   RETURN



S_BYTE   BCF   PIR1,SSPIF
   MOVWF   SSPBUF
SEND_B   BTFSS   PIR1,SSPIF
   GOTO   SEND_B
   RETURN


R_BYTE   BCF   PIR1,SSPIF  ;PARA GRABAR
   CALL   BANK_1
   BSF   SSPCON2,RCEN
   CALL   BANK_0
READ_W   BTFSS   PIR1,SSPIF
   GOTO   READ_W
   BCF   PIR1,SSPIF
   CALL   BANK_1
   BCF   SSPCON2,ACKDT
   BSF   SSPCON2,ACKEN
   CALL   BANK_0
ACK_W   BTFSS   PIR1,SSPIF
   GOTO   ACK_W
   MOVF   SSPBUF,W
   RETURN


;---------------------------BANCOS------------------
BANK_0   BCF   STATUS,RP0
   BCF   STATUS,RP1
   RETURN

BANK_1   BSF   STATUS,RP0
   BCF   STATUS,RP1
   RETURN

BANK_2   BCF   STATUS,RP0
   BSF   STATUS,RP1
   RETURN
   
BANK_3   BSF   STATUS,RP0
   BSF   STATUS,RP1
   RETURN






EJEMPLO

vamos a usar una memoria i2c 24c32, o 64, 128, 16, como deseen.
la conectamos a la patitas SCK y SDA con sus respectivas resistencias de pull up a Vcc de 1k.


para grabar en la memoria, primero ponemos un start, luego le enviamos un dato que es siempre el mismo que es el de indetificacion, es 10100000, donde el ultimo bit significa leer o grabar. revisar pdf. luego le mandamos la direccion alta y luego a direccion baja de donde deseamos grabar ya que tiene 11bits de direccionamiento esta memoria. y luego le mandamos un byte que es el dato para grabar, si le sigues mandando dato, el automaticamente se incrementa de direccion y va grababdo el dato, al final le mandas un stop. entonces. el programa seria asi..


                CALL   S_START      ;start   
   MOVLW   B'10100000'             ; byte identificador a W
   CALL   S_BYTE                     ; envio de byte en W, que es identificador
   MOVLW   .0                              ; direccion alta
   CALL   S_BYTE                    ; envio de direccion alta
   MOVLW   .0                            ; direccion baja
   CALL   S_BYTE                   ; envio de direccion baja
                MOVLW   .233                        ; dato a grabar en posicion 000h
   CALL   S_BYTE                   ; envio de dato a grabar
   CALL   S_STOP                  ; stop, si deseas, mandas mas datos antes de parar

2
ASM (Ensamblador) / Pantalla Nokia 3310 Mas Pic Mas Asm
« en: Domingo 10 de Abril de 2005, 21:02 »
para facilitarle la vida, aqui les coloco todo lo necesario para hacer funcionar esta pantalla,estas rutinas fueron ya probadas por mi u otros y funcionan a la perfeccion  y aqui se las traigo algo ams ordenano.

primero tienen que decarar la variable afisaj o cambiarle el nombre , como deseen, y declarar los bit como aparecen ah i pero pueden cambia rlas asignaciones de bit y pto. luego llaman primero la rutina INILCD que es la que configura la lcd y luego ya puede mandar datos a ella poniendo el dato en acumulador o afisaj y llamando la rutina LCCMD.







LPH7779, LPH7677 Pins (front view)

 
      pin1     V+
      pin2     Sclk
      pin3     Sda
      pin4     DorC
      pin5     Cs
      pin6     Gnd
      pin7     Vout(DC/DC voltage converter)
      pin8     Reset



;--------------DELCALRACIONES DE BIT----------------
#DEFINE sclk   PORTB,0   ; Rb6 is serial clock line   
#DEFINE sdta   PORTB,1   ; Rb7 is input serial data line
#DEFINE dorc   PORTB,2   ; Ra0 is select register (H = Data, L =Command)
#DEFINE rset   PORTB,3   ; Ra1 is reset (L = Enable)
#DEFINE tens   PORTB,4   ; Ra2 is Vcmd LCD power supply on / off
#DEFINE enab   PORTB,5   ; Ra3 is Chip select (L = Enable)


   


;--------------INICIACION DE LCD----------------

INILCD   Call   pause   
   bsf   dorc            
   bsf   enab   
   bsf   tens   
   call    lcres   
   movlw    21H   
   movwf    afisaj
   call   lccmd   
   movlw    .197   
   movwf   afisaj      
   call   lccmd   
   movlw    13H   
   movwf    afisaj
   call   lccmd
   movlw    20H   
   movwf    afisaj
   call   lccmd   
   movlw    09H   
   movwf    afisaj
   call   cbild
   call   lccmd
   call   pause
   call   pause
   call   pause
   call   pause
   movlw    08H   
   movwf    afisaj
   call   lccmd   
   call   pause
   call   pause
   movlw    0CH   
   movwf    afisaj
   call   lccmd   
   movlw    40H   
   movwf    afisaj
   call   lccmd   
   movlw    80H   
   movwf    afisaj
   call   lccmd   
                return

;*****************************************************************
;      RUTINAS DATO, COMANDO Y RESETEO LCD NOKIA
;*****************************************************************
lcdta   bsf   dorc   ; bytes are stored in the display data ram, address
         ; incremented automatically
   bcf   enab   ; chip enabled
   call   varsa   
   bsf   enab   ; chip disabled
   retlw   00

lccmd   bcf   dorc   ; byte is a command it is read with the eight SCLK
   bcf   enab   ; chip enabled
   call   varsa   
   bsf   enab   ; chip disabled
   retlw   00   

lcres   bcf   rset   ; reset enabled
   call   pause
   bsf   rset    ; reset disabled
   retlw   00

;*****************************************************************
;      RUTINAS VARIAS DE LA LCD NOKIA
;*****************************************************************
varsa   bcf   sclk       
   btfsc    afisaj,7   ;bit0(MSB) if bit 7 of afisaj = 1 then sdta=1
   bsf   sdta   ; serial data line is high
   btfss    afisaj,7   ; if bit 7 of afisaj = 0 then sdta=0
   bcf   sdta   ; serial data line is low
   nop      ; can be replaced with a nop if a higher speed it is
   bsf   sclk   ; positive edge
   nop      ; can be replaced with a nop if a higher speed it is
   bcf   sclk   ; negative edge
   btfsc    afisaj,6   ;bit1 if bit 6 of afisaj = 1 then sdta=1
   bsf   sdta   ; serial data line is high
   btfss    afisaj,6; if bit 6 of afisaj = 0 then sdta=0
   bcf   sdta   ; serial data line is low
   nop
   bsf   sclk   ; positive edge
   nop
   bcf   sclk   ; negative edge
   btfsc    afisaj,5   ;bit2
   bsf   sdta   ; serial data line is high
   btfss    afisaj,5
   bcf   sdta   ; serial data line is low
   nop
   bsf   sclk   ; positive edge
   nop
   bcf   sclk   ; negative edge
   btfsc    afisaj,4   ;bit3
   bsf   sdta   ; serial data line is high
   btfss    afisaj,4
   bcf   sdta   ; serial data line is low
   nop
   bsf   sclk   ; positive edge
   nop
   bcf   sclk   ; negative edge
   btfsc    afisaj,3   ;bit4
   bsf   sdta   ; serial data line is high
   btfss    afisaj,3
   bcf   sdta   ; serial data line is low
   nop
   bsf   sclk   ; positive edge
   nop
   bcf   sclk   ; negative edge
   btfsc    afisaj,2   ;bit5
   bsf   sdta   ; serial data line is high
   btfss    afisaj,2
   bcf   sdta   ; serial data line is low
   nop
   bsf   sclk   ; positive edge
   nop
   bcf   sclk   ; negative edge
   btfsc    afisaj,1   ;bit6
   bsf   sdta   ; serial data line is high
   btfss    afisaj,1
   bcf   sdta   ; serial data line is low
   nop
   bsf   sclk   ; positive edge
   nop
   bcf   sclk   ; negative edge
   btfsc    afisaj,0   ;bit7(LSB)
   bsf   sdta   ; serial data line is high
   btfss    afisaj,0
   bcf   sdta   ; serial data line is low
   nop
   bsf   sclk   ; positive edge
   nop
   bcf   sclk   ; negative edge
   retlw   00

cbild   bcf   sdta   ; serial data line is low a null value it is send to
   movlw   .6   ; set the maximal value for Y axe
   movwf   COUNT3
c3   movlw   .84   ; set the maximal value for X axe
   movwf   COUNT1
c1   movlw   .8  ; for a serial transmission of one byte , a number of 8 clock
   movwf   COUNT2
   bsf   dorc      ; null value bytes are stored in the display
            ; incremented automatically
   bcf   enab      ; chip enabled  
c2   bcf   sclk      ; negative edge ;at this stage sdta=0 and
   nop         ; no operation
   nop         ; no operation
   bsf   sclk      ; positive edge
   decfsz  COUNT2   
   goto    c2
   bsf   enab      ; chip disabled       
   decfsz  COUNT1   
   goto    c1      
   decfsz  COUNT3    
   goto  c3          
   retlw    00   

;*****************************************************************
;      RETARDOS DE LA LCD NOKIA
;*****************************************************************
pause   movlw   .7      
   movwf   COUNT3   
d3   movlw   .50
   movwf   COUNT1
d1   movlw   .250   
   movwf   COUNT2
d2   decfsz  COUNT2   
   goto    d2      
   decfsz  COUNT1   
   goto    d1      
   decfsz  COUNT3    
   goto  d3          
   retlw    00

halta   movlw   20H      
   movwf   COUNT1   
g1   movlw   40H      
   movwf   COUNT2   
g2   decfsz  COUNT2   
   goto    g2      
   decfsz  COUNT1   
   goto    g1      
   retlw   00

3
ASM (Ensamblador) / Re: Como Convertir Hexadecimal(o Binario) A Decimal
« en: Domingo 10 de Abril de 2005, 20:39 »
aqui esta tu solucion amigo jonathan.  como tienes un numero que sobre pasa los 8bits, necesitas pasar esas dos o tres palabras de 8 bits a numeros individuales, unidad, decena, centena, unidad de mil, centena de mil, etc etc o que es lo mismo, debes pasarlo a bcd.

esta preciosa rutina que dare lo hace a la perfeccion.  tiene 3 registros que son DATOL, DATOM Y DATOH, aqui vas a poner el numero binario que deseas convertir, DATOL, es el menos signifcativo, DATOM es el siguiente y DATOH es el mas significativo, osea que puedes convertir hasta 24bits, pero si son dos palabras nada mas, entonces pones la primera tuya en DATOL, la segunda en DATOM, y DATOh le pones 00h.  Tienes 6 registros llamados DATO1,DATO2,DATO3,DATO4,DATO5,DATO6 que son los resultados, doned DATO1 ES EL MENOS SIGNIFICATIVO Y DATO 6 EL MAS. ejemplo.

pones 00h en DATOH, pones 00H EN DATOM, y pones FFh en DATOL, en total tendras el valor 255 en decimal, al hacer la rutina te quedara el 5 en DATO1, el 5 en DATO2, y el 2 en DATO3, todo los demas DATO4 A DATO6  seran 00h.
la rutina comienza en B2, asi que primero asegurate de limpear poniendo 00h a todo los registros DATO, luego pones tus valores en DATOL,My H, y haces un call B2, y tendras tu resultado

;*****************************************************************************************
;      BINARIO BCD                            
;*****************************************************************************************


B2   MOVF   DATOL,0
   BTFSS   STATUS,Z
   GOTO   INCRE
   GOTO   CHQ
INCRE   DECF   DATOL
   INCF   DATO1
   MOVF   DATO1,0
   XORLW   0AH
   BTFSS   STATUS,Z
   GOTO   B2
   CLRF   DATO1
   INCF   DATO2
   MOVF   DATO2,0
   XORLW   0AH
   BTFSS   STATUS,Z
   GOTO   B2
   CLRF   DATO2
   INCF   DATO3
   MOVF   DATO3,0
   XORLW   0AH
   BTFSS   STATUS,Z
   GOTO   B2
   CLRF   DATO3
   INCF   DATO4
   MOVF   DATO4,0
   XORLW   0AH
   BTFSS   STATUS,Z
   GOTO   B2
   CLRF   DATO4
   INCF   DATO5
   MOVF   DATO5,0
   XORLW   0AH
   BTFSS   STATUS,Z
   GOTO   B2
   CLRF   DATO5
   INCF   DATO6
   GOTO   B2
CHQ   MOVF   DATOM,0
   BTFSS   STATUS,Z
   GOTO   INCRE2
   GOTO   CHQ2
INCRE2   DECF   DATOM
   GOTO   INCRE
CHQ2   MOVF   DATOH,0
   BTFSS   STATUS,Z
   GOTO   INCRE3
   RETURN
INCRE3   DECF   DATOH
   MOVLW   0FFH
   MOVWF   DATOM
   GOTO   INCRE

4
Microcontroladores / Re: Se Puede Compaginar Ensamblador Y C?
« en: Domingo 10 de Abril de 2005, 04:08 »
esto es lo que deseo aprender, alguito d c, programar todo en asm, y si necesito utilizar algun dispositivo externo en c, lo uso.

5
Microcontroladores / Re: Gtp Usb Lite
« en: Domingo 10 de Abril de 2005, 04:05 »
gracias ^^

6
Microcontroladores ATMEL / Re: Aprende Arquitectura 8051
« en: Sábado 9 de Abril de 2005, 04:28 »
primero comenzemos con algo basico.

estos micro controladores son famosos, economicos y versatiles. ESCUCHEN, tenganlos por seguro que si tienen un micro de estos, el prgoramador aprendera sa usarlo, es realmente facil.


BREVE INTRODUCCION

este micro tiene 4 ptos como un 877, no trae adc, ni i2c, ni captura, trae solo uart.
y no trabaja a 4 ciclos por instruccion como microchip sino a 12. exactamente el trabaja a 1microsegundo por instruccion si le colocas un cristal e 11,0529mhz, que es bastante comercial.  

 

otra cosa es que no se configuran puertos, es decir, si deseas sacar datos por el saca y si deseas leer lee, es bidireccional en tiempo de ejecucion.

con respecto a las interrupciones, tiene igual interrupciones para cada modulo, como timers, uart, etc etc pero cada uno apunta a un vector diferente, no como en microchip que todos apuntan a 04h, estos apuntan diferente, asi que puedes hacer rutinas de interrupcion diferentes para cada una. pero me imagino que tendran una duda. ?que pasa si esta interrumpido y viene otra interrupcion?, el tiene un registro donde tu le puedes dar mas prioridad a una que a otra, y si estas en una interrupcion y se activa la de mayor prioridad, entonces se va a la otra, se ejecuta y regresa a la que estaba realizando. ^^. pero si todas tienen la misma jerarquia, pos la interrupcion que se haga mientras este haciendo una no se ejecuta, se pierde .



ADENTREMOS ALGO A LA PROGRAMACION.

los puertos se llaman p0, p1,p2, y p3 a diferencia de porta,portb,etc etc.

con respecto a las instrucciones. estan en el pdf que les di arriba, en un capitulo, pero para decirles una de las mas utilizadas en microchips serian.

MICROCHIP VS 8051

CALL LCALL O ACALL
GOTO JMP O LJMP


COSAS IMPORTANTISIMA.

porque ciertas instrucciones se les pone una L antes. es porque s i tu programa es muy largo, las instrucciones sin L como esas llaman a rutinas que esten 128 lineas por debajo o per encima a ella, en cambio con la L antes, puedes abarcar toda la memoria del micro. mejor usa siempre L, lo que pasa es que esta instruccion te ocupa dos espacios en vez de 1 como las demas.

este mciro funciona como microcontrolador, como microchip o como microprocesador, asi que la patita EA, debe ir a tierra creo, voy a revisar y corregire si no es asi.

este micro no tiene PWR, o power on reset de microchip, asi que debes resetearlo manualmente despues de haberlo encendido, o le pones una resistencia de 10k a tierra, y en esa misma patita un condensador de 10micros F. a vcc. pero el lado negativo del condensador a Vcc. ya que el reset es inverso.

con respecto al direccionamiento, es micro usa un direccionamiento diferente, usa un registro llamado DPTR, este registro es de 16 bits y puedes usarlo directo, meter valores de 16bits en el, pero para leerlo, el tiene un Dptr bajo y un dptr alto ya que este micro es de 8bits. QUE SIGNIFICA ESE DIRECCIONAMIENTO. significa que no usa el cochino PCL de microchip, tienes dos bancos de registro, ni paginas, todo esta en una misma pagina y dos bancos. programas para adelante y no le pares a nada ^^.


PRIMEROS CONOCIMIENTOS DE SUS CARACTERISTICAS. SEGUNDA PARTE ANTES DE HACER UN PROGRAMA.


INTERRUPCIONES.

tiene varias interrupciones, y como dije antes, un vector de interrupcion diferente.
que son vectores de interrpcion? es la localidad de memoria a donde el micro se dirije cuando se acontece la interrupcion deseada y previamente activada.

son estos:

INTERRUPCION VECTOR A QUE APUNTA.
1. interrupcion externa 0 (IE0) 3h
2. interrupcion timer0 (TF0) BH
3. interrupcion externa 1 (IE1) 13h
4. interrupcion timer 1 (TF1) 1BH
5. R1 y T1, interrupcion serial 23H
y hay un timer 2 que es para el 89c52.



DIFERENCIAS ENTRE 89C51 Y 89C52

son iguales, si tienes un programa en uno, puedes programarlo en el otro, colocarlo en tu circuito sin alterar nada y te funcionara. pero el 89c52 trae un timer2 y trae 8k de memoria en comparacion a los 4k que trae el 51.


OTRAS COSA.

ete micro tiene unos registros de ram, que tienen nombre, que son r0,r1,r2... a r7, puedes usarlos cuando quieras, son ram que trae el micro pero ya tienen nombre.


REGISTROS MAS USADOS.

esta el famoso status qe ahora no se usa para nada. a menos que vayas a usar el carry. ya no se usa el Z, no existe, ya que hay instrucciones para comparar directo y no con una xorwf o xorlw



registro de interrupcion.




y el de priroridades pero este no le paren mucho




TIMERS


El 8051 tiene 2 timer/contadores de 16 bits cada uno, llamados Timer 0 y
el Timer 1 respectivamente. Ambos pueden ser configurados para operar como
temporizadores (timers) o como contadores (counters).

Cuando se trabaja como contador, el registro interno del contador, es incrementado cada vez que existe una transición negativa (de 1 a 0) por la línea de entrada correspondiente a T0 ó T1. En cambio, cuando funciona como temporizador "Timer", el registro es incrementado cada 12 periodos de oscilación es decir su frecuencia de conteo es 1/12 de la frecuencia del oscilador.

En el momento que los bits del registro del contador pasan de todos 1's a
todos 0's, se activa la línea de interrupción interna correspondiente a TF0 o TF1,
generándose, (si ha sido permitida) una interrupción.





REGISTRO DE MODO DE CONTROL DEL TIMER/CONTADOR

Este registro permite especificar si se van a trabajar como Temporizadores
(Timers) o como Contadores (Counters), los puertos denominados Timer 0 y Timer 1. Existen 4 modos de trabajo para estos puertos




COSAS IMPORTATES 2.

otra cosa que deben saber es que tu puedes levantar el bit o bajar el bit de un registro de forma directa.

ejemplo.

el bcf o bsf de microchip aqui con clr y setb respectivamente.
este ejemplo es como si usaremos el status de microchip. si deseamos poner en alto el bit RP0, ponemos


SETB RPO en vez de BSF STATUS,RP0


COSAS ANTES DE HACER EL PROGRAMA.


este microcontrolador no controla nada de corriente en sus salidas, asi que no podran prender ni un led, pueden quemar el puerto. asi que deben usar un latch, buffer digital, o un amplificador operacional en modo seguidor para ello. pero para informacion y otras cosas pueden hacerlo directo. la corriente de cada pto es de menos de 1mA.



el acumulador se llama A, hay registros ram con nombres libres de uso como B, r1 a r7, y puedes mover datos directo de un registro a otro

SOFTWARE

para programar usaremos el block de notas, y como compilador el ASM52, buscalo en google. para hacer los retardos o delays usaremos el PICLOOPS, el cual este posee la capacidad de tambien hacer retardos para 8051.




PRENDAMOS Y APAGUEMOS UN LED

PONDRE EL PROGRAMA Y EXPLICARE LINEA A LINEA.

 






$MOD51 ;identificador de programa, obligatorio.
;primero programa
;POWERED by:
; Gokuden
;****************DECLARACION DE REGISTROS********************
LED BIT P1.0
DATOL EQU 20H
; decimos qe el bit 0 del Pto1, se llamara LED, con la pseudoinstruccion BIT
; asi se declara una variable, igual que microchip. desde 20h com el 16f84a

;************************ VECTORES**************************
ORG 0000H ;comenzaremos a programar desde la 0h, obligatorio
LJMP START ; cuando el micro arranca, apunta a 00000h MOV SP,#2FH;stack pointer es el stack, dejalo asi

;*******************CUERPO**************************
START: SETB P1.0
LCALL RET1S
CLR P1.0
LCALL RET1S
JMP START


; PONEMOS EN ALTO EL BIT P1.0 ......ES COMO EL BSF PORTB,0.
; LLAMAMOS A LA RUTINA DE 1SEGUNDO DE RETARDO
; PONEMOS EN BAJO EL BIT P1.0....... ES COMO EL BCF PORTB,0
; LLAMAMOS LA RUTINA DE 1 SEGUNDO
; VAMOS A START DE NUEVO, COMO EL GOTO START .



;********************************************************** ; ESTO ES RUTINA DE 1SEGUNDO. SE HACE CON PICLOOPS.
; RETARDO 1 SEGUNDO
;****************************************************************
RET1S: MOV R1,#16
MOV R2,#71
MOV R3,#255
LOOP: DJNZ R3,$
DJNZ R2,LOOP
DJNZ R1,LOOP
RET


; MOVEMOS EL VALOR EN DECIMAL A EL REGISTRO R1, FIJENSE QUE SE MUEVE DIRECTO, Y NO COM EN MICROCHIP QUE PRIMERO A W LUEGO A EL REGISTRO
;Y NO COM EN MICROCHIP QUE PRIMERO A W LUEGO A EL REGISTRO
; DECREMENTA Y SALTA SI NO ES CERO EL VALOR.
; DECREMENTA Y SALTA SI NO ES CERO


END











disculpen que no puse los comentarios al lado pero se descuadraba el programa.
luego pondre otro programa mas complicado con mas cosas. no eexplico las instrucciones porque son muchas pero por eso ire haciendo programas y las iran viendo en ejecucion.

pero si en realidad no van a dejar esto solo en el pc y van a comprar el micro y van a programrarlo ya probar. pos me mandan un email a supergogeta_4@hotmail.com, o por aqui mismo mejor, y le detallo a la perfeccion cada detalle , cada paso, y que tengan duda.



SE QUE NO ES FACIL ARRANCAR ASI COMO ASI Y QUE LO QUE ESCRIBI NO ES SUFICIENTE PERO ASI EMPESAREMOS, LOS QUE COMPREN Y TENGAN COMO PROGRAMARLOS, ME DICEN, Y LO HAREMOS DETALLADAMENTE.

7
Microcontroladores ATMEL / Aprende Arquitectura 8051
« en: Viernes 8 de Abril de 2005, 18:36 »
hola.

aqui les dejo un rar con un completo paquete en español de funcionamiento e instrucciones, registros de estos micros.



les recomiendo que si desean comenzar, usen un 89c51 o 52. si desean tambien, puedo poner aqui una introduccion de como se programa para que vean como se programa ... junto con un compilador...


http://usuarios.lycos.es/gokudenelavismo/temporal/pdf 51 todo.rar

8
Programación en C / Re: Libreria Control Pcf8833 V0.1
« en: Domingo 20 de Marzo de 2005, 02:55 »
hola!!


jonathan!, cual es esa aplicacion que dices para pasar fotos a asm?? :P  es que no me manejo con el C  :(   y me gustaria usarla!!!.

actualmente estoy apenas dandole a la del 3310, la de sin color pero tambien me compre esta 6100, aunque me las ver enegras haciendo las ruintas en ASM, al terminarlas se las pasaré..

9
Microcontroladores / Re: Hola A Todos
« en: Lunes 14 de Febrero de 2005, 01:54 »
Cita de: "Platypus"
Hola Jonathan, te agradezco tu afecto

Estuve trabajando con el 89C51 desde marzo hasta julio de 2003, en concreto no era de ATMEL sino de Philips. Para programarlo utilizabamos la caracteristica ISP (programación serie), para lo cual con un sencillo montaje (MAX232, cable RJ11, un adaptador de RJ11 a DB para puerto serie y el software adecuado, tienes lo necesario para programarlo con unos gastos muy reducidos).

Con ATMEL puedes hacer el mismo montaje, pero seguramente el software de descarga sea distinto al que yo utilizaba. De todos modos aquí tienes los nombres por si te interesa buscarlos o probar con Philips (aunque el uC creo que es un poco más caro):

FlashMagic (software de descarga)
Prowiew 32 de Franklin Sotware Inc. (entorno IDE)

No se cuales son las últimas versiones ni como está el tema ahora mismo, llevo un tiempo sin tocarlo.

En cuanto al entorno de desarrollo de Franklin (yo solo utilicé código fuente en C, pero admite ASM como todos los que conozco) te puedo decir que incorpora el mejor simulador que yo he visto (muy visual y bien organizado), aunque la verdad es que he visto pocos.

Para terminar sólo decirte que el único problema con que algunos de los que en su día estuvimos trabajando con esto nos encontramos, es que a veces se corrompía el Boot Loader, una dirección de inicio o no se qué (no recuerdo muy bien) y la única forma de recuperar el uC era con un programador paralelo; por el resto fenomenal.

Te adjunto una foto de la tarjeta de desarrollo que me hice, aunque la hice a pelo y no dispongo del esquemático.

Espero que te sea de provecho. Un Saludo.
hola amigo platypus. ando con el 51 ahorita y me interesa ese simulador Prowiew 32 de Franklin Sotware Inc. (entorno IDE). donde lo puedo conseguir que no lo veo por ningun lado. gracias

Páginas: [1]