TODOPIC

Otros Microcontroladores / Dispositivos programables => Microcontroladores ARM => Mensaje iniciado por: vszener en 01 de Agosto de 2005, 14:58:00

Título: MICROPROCESADOR MC68000
Publicado por: vszener en 01 de Agosto de 2005, 14:58:00
Bueno ya se que este post es de microcontroladores pero creo que todos los universitarios de carreras relacionadas con electronica y quizas mas de un aficionado o simpatizantes de los integrados necesiten trabajar con este micro(en asiganuturas como MICROPROCESADORES, SISTEMAS DIGITALES, etc), creo que es un dispositivo de facil aprendizaje y bastante potente y por lo tanto suspuse que seria bueno iniciar un enlace hacia este dispositivo en su parcela del foro jeje dedicada a motorola. La idea es desarrollar programas y simularlos(asi podremos aprender un poquito mas de este fascinante mundo de los integrados), comprender su estructura y por supuesto trabajar con este dispositivo!!!jeje, bueno no se si me quedare solo jeje pero que sepais que intentare ser constante en ejemplos y demas cositas relacionadas con este micro jeje (todo el tiempo posible que me deje los estudios, el trabajo y demas jeje), bueno lo dicho, espero que sea de vuestro agrado y al liooo!!!

     INDICE:  

          1. Factorial de un numero     Pagina 1 (http://www.todopic.com.ar/foros/index.php?topic=941.0)
          2. Iluminacion de led's de izquierda a derecha     Pagina 1 (http://www.todopic.com.ar/foros/index.php?topic=941.0)
          3. Coche fantastico I (Con tablas)     Pagina 1 (http://www.todopic.com.ar/foros/index.php?topic=941.0)
          4. Coche fantastico II (Sin tablas)     Pagina 1 (http://www.todopic.com.ar/foros/index.php?topic=941.0)
          5. Luces      Pagina 1 (http://www.todopic.com.ar/foros/index.php?topic=941.0)
          6. Iluminacion de 8 led's correlativos     Pagina 1 (http://www.todopic.com.ar/foros/index.php?topic=941.0)
          7. Switch & Led's     Pagina 1 (http://www.todopic.com.ar/foros/index.php?topic=941.0)
          8. Switch & 7seg     Pagina 2 (http://www.todopic.com.ar/foros/index.php?topic=941.15)
          9. Contador     Pagina 2 (http://www.todopic.com.ar/foros/index.php?topic=941.15)
        10. Slider & Bar     Pagina 2 (http://www.todopic.com.ar/foros/index.php?topic=941.15)
        11. Slider & Led's     Pagina 2 (http://www.todopic.com.ar/foros/index.php?topic=941.15)

Título: RE: MICROPROCESADOR MC68000
Publicado por: vszener en 01 de Agosto de 2005, 15:11:00
Bien, para empezar a trabajar necesitaremos un entorno de trabajo para este micro, un software de simulacion para poder comprobar nuestros programitas y ummmmm no se jeje de momento con respecto a software creo que eso es lo basico, asi que aqui teneis enlaces donde se puede descargar el material de trabajo necesario:

http://www.hzeeland.nl/~pfondse/ide68k/index.html ;de aqui se puede bajar un programa llamado IDE68K el cual compila y tiene un entorno de simulacion con los perifericos basicos. La verda que existen otros entornos de trabajo para el 68k pero yo me quedo con este(no es para hacerle publicidad al producto ennn jeje) pero lo veo muy completo con su entorno de simulacion bastante completito tipo barra led"s, switch"s, etc

Bueno, aparte el proteus tb incluye este micro, asi que tb podeis simular desde alli, la direccion el santo "burrito" la tiene para poder descargarse jeje.

El programa IDE68K(aunque posteare mas tarde como funciona) es un programa shareware, es decir no es gratuito, debes registrarte pero TRANKILOS!!!!jeje no caduca ni nada de eso, solamente que al pasado algun tiempo mientras estamos trabajando en la ventana de editor de programa nos sale de vez en cuando una ventanita recordandonos que debemos registrarnos(esa es la unika limitacion), decir que para poder registrarse no hace falta pagar...(cracks???jeje la version anterior del crack vale para esta tbVacilando y asi no nos saldra mas la ventanita de registro)Giño
Título: RE: MICROPROCESADOR MC68000
Publicado por: vszener en 01 de Agosto de 2005, 15:27:00
Aqui teneis una pagina del departamento de tecnologia electronica de la universidad de sevilla dedicada a este micro y tiene bastante cositas como manuales y demas cositas:

http://www.dte.us.es/tec_ind/electron/sd/


Si los archivos os piden una clave de apertura: penelope

Seguimos en contacto!!!!Giño
Título: RE: MICROPROCESADOR MC68000
Publicado por: vszener en 01 de Agosto de 2005, 15:57:00
Aqui os subo un archivito en pdf con el set de instrucciones clasificadas, comentadas(en español) y resumidas para tenerlas a mano(yo en su momento las imprimi jeje)


Bueno no me deja subir el archivo....Llorando asi que os dejo el enlace para descargarla y con mas informacion de este micro:
http://www.dte.us.es/tec_inf/itig/microele/INDEX.HTM
Si trasteais en el link de el post anterior llegais tb a esta pagina pero bueno asi os facilito el trabajo y adelantamos camino para poder llegar ya a empezar a meter mano a los programitas y demas jejeGiño
Título: RE: MICROPROCESADOR MC68000
Publicado por: vszener en 01 de Agosto de 2005, 16:02:00
Si os interesa libros de referencia hacia este micro deciros que hay bastantes, algunos mejores que otros jeje aqui algunos libros:

· SISTEMAS DIGITALES: Ingenieria de los microprocesadores 68000
  Antonio Garcia Guerra y Enrique Fenoll Comes

· LA FAMILIA DEL MC 68000
  Julio Septien et all

· DISEÑO Y PROGRAMACION DEL uP 68000 Y PERIFERICOS
  Enrique Colomar Pous et all

Hay mas, pero con el primer libro y el tercero, teneis de sobra para entender todo lo necesario de este micro





 :wink:
Título: RE: MICROPROCESADOR MC68000
Publicado por: vszener en 01 de Agosto de 2005, 16:36:00
Bien, llegados a este punto con los softwares instalados, la paginas revisadas y con ilusion en aprender y desarrollar todas nuestras ideas aqui va el primer ejemplo, bastante facilito.
Ej.1. CALCULAR FACTORIAL DE UN NUMERO

;---------------------------------------------------------
;       VsZeNeR"04      07/Julio/04    
;Programa: Factorial de un numero
;Simulador MC68000: IDE68K(vs1.35)    
;
;Entrada:       NUM: Numero a factorizar
;                     D0:  Almacenar NUM
;                     D1:  Almacenar variable
;                     VAR: Constante interna del programa
;
;Salida:          D1: Resultado
;
;Resumen:     Programa que calcula factorial de un numero,
;                     si el numero introducido es negativo, el
;                     programa termina.                      
;---------------------------------------------------------

            org     $400         ;lugar de inicio del programa
NUM     dc.l    10              ;numero a factorizar
VAR      dc.l    -1              ;constante interna del programa para ver si el numero       introducido es negativo

main    move.l  NUM,D0          ;almacena en D0 el numero a factorizar: D0<-NUM
          sub.l   #1,D0           ;decremento D0: D0=D0-1
          TST     D0
          BEQ     cero            ;si D0=0 ->numero introducido 1->ve a cero 1!=1
          CMP     VAR,D0          ;compara si el numero introducido es negativo
           BEQ     cero            ;D0=VAR ->numero introducido es 0->ve a cero 0!=1
           BLT     fin             ;numero introducido es negativo ->fin
           move.l  #1,D1           ;almacena en D1 constante 1: D1=1
           move.l  NUM,D0          ;almacena en D0 el numero a factorizar: D0<-NUM
bucle   mulu    D0,D1           ;multiplica sin signo: D1=D0*D1.Factorial no contempla numeros negativos por eso multiplicacion sin signo
          sub.l   #1,D0           ;decremento D0: D0=D0-1
           TST     D0
           BNE     bucle           ;si D0!=0 ->ve a bucle
           BEQ     fin               ;si D0=0 ->fin
cero    move.l  #1,D1         ;almacena el factorial en D1 0!=1!=1
fin    
        end     main

Compilar en el ide68k y simular en el visualicer simulator y listo!!! la verda que al copiar el programa en esta ventana queda algo desordenado ummmm peor bueno haber si puedo subir el programa en asm(si me lo permite el servidor!!! jeje), a seguir programando!!!!Giño

PD: Sigue sin dejarme subir nadaLlorando
Título: RE: MICROPROCESADOR MC68000
Publicado por: vszener en 01 de Agosto de 2005, 16:54:00
Aqui os podeis descargar el programa factorial d eun numero


Suerte!!! :wink:
Título: RE: MICROPROCESADOR MC68000
Publicado por: vszener en 02 de Agosto de 2005, 16:07:00
Vamos con el 2º ejemplito, esta vez vamos a jugar con la barra de led"s que trae el visual simulator, el siguiente programa ilumina led"s de izquierda a derecha, recordar que los perifericos en el 68k se programan como posiciones de memoria. Los led"s se han declarado en el programa en una tabla, tb se puede hacer el mismo programa sin declarar la tabla de direcciones de led"s...ya la pondre!!! pokito a pokoo jeje.

;-------------------------------------------------------------------------------------------
;       VsZeNeR"04       9/julio/04    
;Programa: Iluminacion de 8 Led"s de izquierda a derecha
;Simulador MC68000: IDE68K(vs1.35)    
;
;Entrada:       TABLA: Contiene el led que debe encenderse
;               D0:    Registro almacena la constante de retardo
;               A0:    Direccion que apunta a la tabla
;               RET:   Constante interna del programa cuya funcion es suministrar el retardo
;
;Notas:     Subrutina delay: Se le introduce un retardo para que se vea el desplazamiento
;                            de los led"s        
;
;Resumen:   Programa que enciende led de izquierda a derecha                      
;-------------------------------------------------------------------------------------------
        org     $400            ;inicio del programa
*****VARIABLES*****************
tabla   dc.b    %10000000       ;Led 0 on: A0=$400 ->inicio de tabla
        dc.b    %01000000       ;Led 1 on: A0=$401
        dc.b    %00100000       ;Led 2 on: A0=$402
        dc.b    %00010000       ;Led 3 on: A0=$403
        dc.b    %00001000       ;Led 4 on: A0=$404
        dc.b    %00000100       ;Led 5 on: A0=$405
        dc.b    %00000010       ;Led 6 on: A0=$406
        dc.b    %00000001       ;Led 7 on: A0=$407 ->fin de tabla
RET     equ     $FFFFF          ;constante de retardo
*****PROGRAMA******************
main    lea     TABLA,A0        ;carga direccion de tabla en A0
loop    move.b  (A0)+,$E003     ;carga e ilumina led correspondiente e incrementa direccion de A0
        BSR     delay           ;salta a subrutina delay
        CMP     #$407,A0        ;¿fin de tabla?
        BLS     loop            ;no es fin de tabla ->ve a loop
        BRA     main            ;si es fin de tabla ->ve a main
*****RETARDO*******************
delay   move.l  #RET,D0         ;carga constante de retardo en registro D0
loop1   sub.l   #1,D0           ;D0=D0-1
        TST.l   D0              ;¿D0==0?
        BNE     loop1           ;no es igual a cero ->ve a loop1
        rts                     ;si es cero ->fin de subrutina
******************************        
        end     main            ;fin programa

Esto como siempre el copia y pega sale las cosas descentradas...lo subire al almacen y ya os avisare jeje a seguirrr y haber si alguien mas se animaa que voy a coger complejo de monopolista jejeGiño
Título: RE: MICROPROCESADOR MC68000
Publicado por: vszener en 03 de Agosto de 2005, 13:12:00
Bien una mas de led"s, esta vez vamos a simular el colorido del coche fantastico jeje aqui va el codigo(ya sabeis algo desordenado por el copia y pega peor lo subire al almacen y os avisare)

;-------------------------------------------------------------------------------------------
;       VsZeNeR"04       9/julio/04    
;Programa: Iluminacion de 8 Led"s de derecha a izquierda y viceversa
;Simulador MC68000: IDE68K(vs1.35)    
;
;Entrada:       TABLA: Contiene el led que debe encenderse
;               D0:    Registro almacena la constante de retardo
;               A0:    Direccion que apunta a la tabla
;               RET:   Constante interna del programa cuya funcion es suministrar el retardo
;
;Notas:     Subrutina delay: Se le introduce un retardo para que se vea el desplazamiento
;                            de los led"s        
;
;Resumen:   Programa que enciende led de derecha a izquierda viceversa(Coche fantastico)                      
;-------------------------------------------------------------------------------------------
        org     $400            ;inicio del programa  
******VARIABLES****************
TABLA   dc.b    %00000001       ;Led 0 on: A0=$400 ->inicio de tabla        
        dc.b    %00000010       ;Led 1 on: A0=$401
        dc.b    %00000100       ;Led 2 on: A0=$402
        dc.b    %00001000       ;Led 3 on: A0=$403
        dc.b    %00010000       ;Led 4 on: A0=$404
        dc.b    %00100000       ;Led 5 on: A0=$405
        dc.b    %01000000       ;Led 6 on: A0=$406
        dc.b    %10000000       ;Led 7 on: A0=$407 ->fin de tabla
RET     equ     $FFFFF          ;constante de retardo
******PROGRAMA*****************        
main    lea     TABLA,A0        ;carga direccion de la tabla en A0
loop    move.b  (A0)+,$E003     ;carga e ilumina el LED"S correspondiente e incrementa direccion A0
        bsr     delay           ;salta a subrutina delay
        CMP     #$407,A0        ;¿es el final de la tabla?
        BLS     loop            ;no es el final ->ve a loop
*******FIN DE TABLA************ ;ilumina led"s de izquierda a derecha
lop1    move.b  -(A0),$E003     ;decrementa direccion A0 y carga e ilumina el correspondiente LED"S
        bsr     delay           ;salta a subrutina delay
        CMP     #$400,A0        ;¿es el principio de la tabla?
        BHI     lop1            ;no es el principio ->ve a lop1
        BRA     loop            ;si es el principio ->ve a loop
*******RETARDO*****************
delay   move.l  #RET,D0         ;carga la constante de retardo en registro D0
lop2    sub.l   #1,D0           ;D0=D0-1
        TST.l   D0              ;¿D0==0?
        BNE     lop2            ;no es igual a cero ->ve a lop2
        rts                     ;si es igual a cero ->fin de subrutina
*******************************
        end     main

Esta programado tb con tablas la direcciones de los led"s a iluminar, como dije en el anterior ejemplo se puede programar sin tablas por lo tanto ahorra memoria...ya pondre la programacion sin tabla, de momento asi pokito a poko iremos progresando a mass....a seguir programando!!!Giño
Título: RE: MICROPROCESADOR MC68000
Publicado por: vszener en 05 de Agosto de 2005, 13:16:00
Ya espero que los que esten programando aunque en silencio ummmm jeje tengan algo de isea, los ejemplos anteriores han sido programados siguiendo tablas, es decir, en el 68k los perifericos, como ya mencione, se programan y se tratan como direcciones de memoria, or lo tanto definiendo su direccion adecuadamente podremos manejarlos. Se pueden manejar por tablas, es decir, se definen todas las direcciones de los perifeicos segun lo que querramos hacer, pero como mencionado tb se pueden hacer sin tablas(sin definir todas las direcciones) mediante instrucciones de rotacion y desplazamiento. Aqui os dejo un ejemplo de la iluminacion del coche fantastico pero esta vez sin tablas.

;-------------------------------------------------------------------------------------------
;       VsZeNeR"04       14/julio/04    
;Programa: Desplazamiento led"s de derecha a izquierda y viceversa sin tabla(coche fantastico)
;Simulador MC68000: IDE68K(vs1.35)    
;
;Entrada:       D0:    Registro encargado almacenar led encendido
;               D1:    Registro encargado almacenar constante de retardo
;               RET:   Constante interna del programa cuya funcion es suministrar el retardo
;
;Notas:     Subrutina delay: Genera un retardo para poder visualizar los led"s
;                                    
;
;Resumen:   Programa que enciende 7 led"s de derecha a izquierda y viceversa sin tabla                      
;-------------------------------------------------------------------------------------------
        org     $400            ;inicio programa
*****VARIABLES*****************
RET     equ     $FFFFF          ;constante de retardo
*******************************
main    move.b  #%00000001,D0   ;cargo primer led se va encender en registro D0  
loop    move.b  D0,$E003        ;enciende led correspondiente
        BSR     delay           ;ve a subrutina delay  
        asl     #1,D0           ;desplazamiento hacia izquierda del bit 1(led on)
        CMP     #$100,D0        ;¿es el led 7 on? fin de led"s $100=000100000000 fin led"s  
        BEQ     izqu            ;si es led 7 ->ve a izqu  
        BNE     loop            ;no es led 7 ->ve a loop
*****IZQU->DERECHA*************
izqu    asr     #1,D0           ;desplazamiento hacia derecha del bit 1(led on)
        move.b  D0,$E003        ;enciende led correspondiente
        BSR     delay           ;ve a subrutina delay
        CMP     #$1,D0          ;¿es el led 1 on? principio de led"s $1=00000001
        BEQ     loop            ;si es led 1 ->ve a loop
        BNE     izqu            ;no es led 1 ->ve a izqu
*****SUBRUTINA DELAY***********
delay   move.l  #RET,D1         ;D1=RET
loop1   sub.l   #1,D1           ;D1=D1-1
        TST.l   D1              ;¿D1==0?
        BNE     loop1           ;no es cero ->ve aloop1
        rts                     ;si es cero ->fin de subrutina
*******************************  
        end     main            ;fin programa  

A seguir programando!!!Giño
Título: RE: MICROPROCESADOR MC68000
Publicado por: vszener en 06 de Agosto de 2005, 13:35:00
Lo prometido es deuda, asi que aqui os dejo el enlace con los tres programitas anteriores para poder ser descargados e esta direccion, los programas son:
      1º. Iluminacion led"s simulando colorido coche fantastico(sin tablas)
      2º. Iluminacion led"s simulando colorido coche fantastico(con tablas)
      3º. Iluminacion de led"s derecha a izquierda




 :wink:
Título: RE: MICROPROCESADOR MC68000
Publicado por: vszener en 06 de Agosto de 2005, 13:38:00
Vamos otra de led"s jeje aunque creo que ya manejareis los led"s bastante bien aqui teneis otro ejemplito para seguir practicando, esta vez la secuencia de iluminacion es de fuera a dentro:

;-------------------------------------------------------------------------------------------
;       VsZeNeR"04       9/julio/04    
;Programa: Iluminacion de 8 Led"s de los extremos de fuera hacia dentro y viceversa
;Simulador MC68000: IDE68K(vs1.35)    
;
;Entrada:       TABLA: Contiene el led que debe encenderse
;               D0:    Registro almacena la constante de retardo
;               A0:    Direccion que apunta a la tabla
;               RET:   Constante interna del programa cuya funcion es suministrar el retardo
;
;Notas:     Subrutina delay: Se le introduce un retardo para que se vea el desplazamiento
;                            de los led"s        
;
;Resumen:   Programa que enciende led de fuera a dentro y viceversa                      
;-------------------------------------------------------------------------------------------
        org     $400            ;inicio del programa
*****VARIABLES*****************
TABLA   dc.b    %10000001       ;Led"s 7y0 on: A0=$400 ->inicio de tabla
        dc.b    %01000010       ;Led"s 6y1 on: A0=$401
        dc.b    %00100100       ;Led"s 5y2 on: A0=$402
        dc.b    %00011000       ;Led"s 4y3 on: A0=$403 ->fin de tabla
RET     equ     $FFFFF          ;constante de retardo
*****PROGRAMA******************
main    lea     TABLA,A0        ;carga direccion de tabla en A0
loop    move.b  (A0)+,$E003     ;carga e ilumina led correspondiente e incrementa direccion de A0
        BSR     delay           ;salta a subrutina delay
        CMP     #$403,A0        ;¿fin de tabla?
        BLS     loop            ;no es fin de tabla ->ve a loop
*****FIN TABLA***************** ;mueve los led"s en sentido contrario
lop1    move.b  -(A0),$E003     ;decrementa direccion de A0 y carga e ilumina led correspondiente
        BSR     delay           ;salto a subrutina delay
        CMP     #$400,A0        ;¿principio de tabla?
        BHI     lop1            ;no es principio tabla ->ve a lop1
        BRA     loop            ;si es principio tabla ->ve a loop
*****RETARDO*******************
delay   move.l  #RET,D0         ;carga constante de retardo en D0
loop2   sub.l   #1,D0           ;D0=D0-1
        TST.l   D0              ;¿D0==0?
        BNE     loop2           ;no es igual a cero ->ve a loop2
        rts                     ;si es cero ->fin subrutina
*******************************
        end     main            ;fin programa

Sin prisas pero sin pausa!!!Giño
Título: RE: MICROPROCESADOR MC68000
Publicado por: vszener en 07 de Agosto de 2005, 11:15:00
Vamos con otro ejemplito de led"s, ya os lo sabreis de memoria programarlos no???jeje pues toma otro ejemplito mas, esta vez se iluminan correlativamente, una secuencia bastante bonita jeje:

;-------------------------------------------------------------------------------------------
;       VsZeNeR"04       9/julio/04    
;Programa: Iluminacion de 8 Led"s correlativamente
;Simulador MC68000: IDE68K(vs1.35)    
;
;Entrada:       D0:    Registro encargado iluminar led"s
;               D1:    Registro encargado almacenar cosntante de retardo
;               RET:   Constante interna del programa cuya funcion es suministrar el retardo
;
;Notas:     Subrutina delay: Se le introduce un retardo para que se vea el desplazamiento
;                            de los led"s        
;
;Resumen:   Programa que enciende led"s correlativamente                      
;-------------------------------------------------------------------------------------------
        org     $400            ;inicio programa
*****VARIABLES*****************
RET     equ     $FFFFF          ;constante de retardo
*****PROGRAMA******************
main    move.b  #0,D0           ;D0=0
loop    move.b  D0,$E003        ;carga e ilumina el correspondiente led
        BSR     delay           ;salto a subrutina delay
        add.b   #1,D0           ;D0=D0+1
        CMP     #$0,D0          ;¿estan todos los led"s encendidios?
        BHI     loop            ;no estan todos encendidios ->ve a loop
        BRA     main            ;si estan todos encendidos ->ve a main
*****RETARDO*******************
delay   move.l  #RET,D1         ;cargo constante de retardo en D1
loop1   sub.l   #1,D1           ;D1=D1-1
        TST.l   D1              ;¿D1==0?
        BNE     loop1           ;no es igual a cero ->ve a loop1
        rts                     ;si es igual a cero ->fin de subrutina
*******************************
        end     main            ;fin de programa

Seguimos en contacto, corto y cambio!!!Giño
Título: RE: MICROPROCESADOR MC68000
Publicado por: vszener en 10 de Agosto de 2005, 13:20:00
Bien, ahora ya que sabemos programar los led"s vamos con los switch, este ejemplito enciende el led correspondiente al switch pulsado:

;-------------------------------------------------------------------------------------------
;       VsZeNeR"04       16/julio/04    
;Programa: Led"s y switches
;Simulador MC68000: IDE68K(vs1.35)    
;
;Entrada:       D0:    Registro encargado almacenar led a encender
;              
;
;Resumen:   Programa que enciende led correspondiente al switch seleccionado                      
;-------------------------------------------------------------------------------------------      
        org     $400            ;inicio programa
*****VARIABLES******************
SWITCH  equ     $E001           ;direccion de los switches
LED     equ     $E003           ;direccion de los led"s
*****PROGRAMA*******************
main    move.b  SWITCH,D0       ;carga contenido switch en D0(activado=1 ; desactivado=0)
    move.b  D0,LED          ;enciende led correspondiente a los switches activados
        BRA     main            ;ve a main
        end     main            ;fin programa

Pokito a poko vamos programando!!!Giño
Título: RE: MICROPROCESADOR MC68000
Publicado por: vszener en 10 de Agosto de 2005, 13:28:00
Aqui va el enlace para descargarse los tres ejemplitos anteriores :wink:
Título: RE: MICROPROCESADOR MC68000
Publicado por: vszener en 11 de Agosto de 2005, 12:59:00
Aqui va otro ejemplito mas, esta vez usaremos dos perifericos(switch"s y display 7 segmentos), el programa consiste en que cada switch controla un display que cada vez que pulsemos un switch se va incrementando el correspondiente display en una unidad:

;-------------------------------------------------------------------------------------------
;       VsZeNeR"04       16/julio/04    
;Programa: Switch y 7 segmentos
;Simulador MC68000: IDE68K(vs1.35)    
;
;Entrada:       D0:    Registro encargado almacenar direccion de switch
;               A0:    Almacena direccion de tabla e ilumina 1º 7 segmentos
;               A1:    Almacena direccion de tabla e ilumina 2º 7 segmentos
;               A2:    Almacena direccion de tabla e ilumina 3º 7 segmentos
;               A3:    Almacena direccion de tabla e ilumina 4º 7 segmentos                                      
;
;Resumen:   Programa que enciende 7 segmento adecuado segun switch y lo incrementa de 0-9
;           Solo estan activos los 4 switch de 0-3, del 4-7 no actuan                      
;-------------------------------------------------------------------------------------------
        org     $400                    ;inicio programa
*****VARIABLES*************************
TABLA   dc.b    %00111111               ;0 on: A0=$400 ->inicio tabla
        dc.b    %00000110               ;1 on: A0=$401
        dc.b    %01011011               ;2 on: A0=$402
        dc.b    %01001111               ;3 on: A0=$403
        dc.b    %01100110               ;4 on: A0=$404
        dc.b    %01101101               ;5 on: A0=$405
        dc.b    %01111101               ;6 on: A0=$406
        dc.b    %00000111               ;7 on: A0=$407
        dc.b    %01111111               ;8 on: A0=$408
        dc.b    %01100111               ;9 on: A0=$409 ->fin tabla
SWITCH  equ     $E001                   ;direccion efectiva de los switches
*****PROGRAMA**************************
main    move.b  #%00111111,$E017        ;ilumino 0 en 1º 7 segmentos
        lea     TABLA+1,A0              ;cargo direccion segunda TABLA en A0(carga 2º direccion ya que esta iluminado 0)
        move.b  #%00111111,$E015        ;ilumino 0 en 2º 7 segmentos
        lea     TABLA+1,A1              ;cargo direccion segunda TABLA en A1(carga 2º direccion ya que esta iluminado 0)
        move.b  #%00111111,$E013        ;ilumino 0 en 3º 7 segmentos
        lea     TABLA+1,A2              ;cargo direccion segunda TABLA en A2(carga 2º direccion ya que esta iluminado 0)
        move.b  #%00111111,$E011        ;ilumino 0 en 4º 7 segmentos
        lea     TABLA+1,A3              ;cargo direccion segunda TABLA en A3(carga 2º direccion ya que esta iluminado 0)
progr   move.b  SWITCH,D0               ;cargo direccion de SWITCH en registro D0
        CMP     #%00000001,D0           ;¿primer switch on?
        BNE     second                  ;no ->ve a second
        move.b  (A0)+,$E017             ;si ->ilumina numero correspondiente en 1º 7 seg e incrementa direccion A0
        clr.b   D0                      ;reset D0
        clr.b   SWITCH                  ;reset SWITCH
        CMP     #$40A,A0                ;¿A0 esta en fin TABLA?
        BEQ     uno                     ;si ->ve a uno
        BRA     progr                   ;no ->ve a progr
*****SEGUNDO 7 SEGMENTOS***************
second  CMP     #%00000010,D0           ;¿segundo switch on?
        BNE     third                   ;no ->ve a third
        move.b  (A1)+,$E015             ;si ->ilumina numero correspondiente en 2º 7 seg e incrementa direccion A1
        clr.b   D0                      ;reset D0
        clr.b   SWITCH                  ;reset SWITCH
        CMP     #$40A,A1                ;¿A1 esta en fin TABLA?
        BEQ     dos                     ;si ->ve a dos
        BRA     progr                   ;no ->ve a progr
*****TERCER 7 SEGMENTOS****************
third   CMP     #%00000100,D0           ;¿tercer switch on?
        BNE     four                    ;no ->ve a four
        move.b  (A2)+,$E013             ;si ->ilumina numero correspondiente en 3º 7 seg e incrementa direccion A2
        clr.b   D0                      ;reset D0
        clr.b   SWITCH                  ;reset SWITCH
        CMP     #$40A,A2                ;¿A2 esta en fin TABLA?
        BEQ     tres                    ;si ->ve a tres
        BRA     progr                   ;no ->ve a progr
*****CUARTO 7 SEGMENTOS****************
four    CMP     #%00001000,D0           ;¿cuarto switch on?
        BNE     five                    ;no ->ve a five
        move.b  (A3)+,$E011             ;si ->ilumina numero correspondiente en 4º 7 seg e incrementa direccion A3
        clr.b   D0                      ;reset D0
        clr.b   SWITCH                  ;reset SWITCH
        CMP     #$40A,A3                ;¿A3 esta en fin TABLA?
        BEQ     cuatro                  ;si ->ve a cuatro
five    BRA     progr                   ;no ->ve a prog
*****SUBRUTINAS************************
uno     BSR     loop                    ;ve a subrutina uno
        BRA     progr                   ;ve a progr
dos     BSR     loop1                   ;ve a subrutina dos
        BRA     progr                   ;ve a progr                
tres    BSR     loop2                   ;ve a subrutina tres
        BRA     progr                   ;ve a progr
cuatro  BSR     loop3                   ;ve a subrutina cuatro
        BRA     progr                   ;ve a progr
loop    lea     TABLA,A0                ;carga direccion TABLA en A0(actualiza A0)
        rts                             ;fin subrutina uno
loop1   lea     TABLA,A1                ;carga direccion TABLA en A1(actualiza A1)
        rts                             ;fin subrutina dos
loop2   lea     TABLA,A2                ;carga direccion TABLA en A2(actualiza A2)
        rts                             ;fin subrutina tres
loop3   lea     TABLA,A3                ;carga direccion TABLA en A3(actualiza A3)
        rts                             ;fin subrutina cuatro
***************************************
        end     main                    ;fin programa

Hasta el siguiente ejemplito!!!Giño
Título: RE: MICROPROCESADOR MC68000
Publicado por: vszener en 12 de Agosto de 2005, 13:06:00
El ejemplito de hoy es con el periferico 7segmentos, utilizaremos los 4 que estan disponibles en el simulador del IDE68k, el programa consiste en un contador ascendente que cuenta de 0000-9999:

 ;-------------------------------------------------------------------------------------------
;       VsZeNeR"04       12/julio/04    
;Programa: Contador
;Simulador MC68000: IDE68K(vs1.35)    
;
;Entrada:       D0:    Registro encargado almacenar constante de retardo
;               D1:    Registro encargado de ser contador de retardo
;               RET:   Constante interna del programa cuya funcion es suministrar el retardo
;               A0:    Almacena direccion de tabla e ilumina 1º 7 segmentos
;               A1:    Almacena direccion de tabla e ilumina 2º 7 segmentos
;               A2:    Almacena direccion de tabla e ilumina 3º 7 segmentos
;               A3:    Almacena direccion de tabla e ilumina 4º 7 segmentos
;
;Notas:     Subrutina delay: Retardo de un segundo
;                                    
;
;Resumen:   Programa que cuenta de forma ascendente numeros del 0000-9999                      
;-------------------------------------------------------------------------------------------
         org     $400                   ;inicio de programa
*****VARIABLES*************************
TABLA    dc.b    %00111111              ;0 on: A0=$400
         dc.b    %00000110              ;1 on: A0=$401
         dc.b    %01011011              ;2 on: A0=$402
         dc.b    %01001111              ;3 on: A0=$403
         dc.b    %01100110              ;4 on: A0=$404
         dc.b    %01101101              ;5 on: A0=$405
         dc.b    %01111101              ;6 on: A0=$406
         dc.b    %00000111              ;7 on: A0=$407
         dc.b    %01111111              ;8 on: A0=$408
         dc.b    %01100111              ;9 on: A0=$409
RET      equ     $FFFFF                 ;constante de retardo
*****PROGRAMA**************************        
main     move.b  #%00111111,$E015       ;0 on en 2º 7seg
         move.b  #%00111111,$E013       ;0 on en 3º 7seg
         move.b  #%00111111,$E011       ;0 on en 4º 7seg
         lea     TABLA+1,A3             ;carga segunda direccion tabla en A3.Segunda direccion porque el 0 ya esta encendido
ini2     lea     TABLA+1,A2             ;carga segunda direccion tabla en A2.Segunda direccion porque el 0 ya esta encendido
ini1     lea     TABLA+1,A1             ;carga segunda direccion tabla en A1.Segunda direccion porque el 0 ya esta encendido
ini0     lea     TABLA,A0               ;carga direccion de tabla en A0
*****PRIMER 7 SEGMENTOS****************
loop     move.b  (A0)+,$E017            ;ilumina numero correspondiente en 1º 7seg e incrementa direccion A0
         BSR     delay                  ;salta subrutina delay
         CMP     #$40A,A0               ;¿A0 esta en fin de tabla??
         BNE     loop                   ;no es fin tabla ->ve a loop
         BEQ     next                   ;si es fin tabla ->ve a next ->2º 7 segmentos
*****SEGUNDO 7 SEGMENTOS***************
next     CMP     #$40A,A1               ;¿A1 esta en fin de tabla?
         BNE     loop1                  ;no es fin tabla ->ve a loop1
         BEQ     next1                  ;si es fin tabla ->ve a next1 ->3º 7 segmentos
loop1    move.b  (A1)+,$E015            ;ilumina numero correspondiente e incrementa A1
         BRA     ini0                   ;ve a ini0
*****TERCER 7 SEGMENTOS****************
next1    move.b  #%00111111,$E015       ;0 on en 2º 7 segmentos
         CMP     #$40A,A2               ;¿A2 esta en fin de tabla?
         BNE     loop2                  ;no es fin tabla ->ve a loop2
         BEQ     next2                  ;si es fin tabla ->ve a next2 ->4º 7 segmentos
loop2    move.b  (A2)+,$E013            ;ilumina numero correspondiente e incrementa A2
         BRA     ini1                   ;ve a ini1
*****CUARTO 7 SEGMENTOS****************
next2    move.b  #%00111111,$E013       ;0 on en 3º 7 segmentos
         CMP     #$40A,A3               ;¿A3 esta en fin de tabla?
         BNE     loop3                  ;no es fin tabla ->ve a loop3
         BEQ     main                   ;si es fin tabla ->ve a main ->no hay mas 7 segmentos
loop3    move.b  (A3)+,$E011            ;ilumina numero correspondiente e incrementa A3
         BRA     ini2                   ;ve a ini2
*****RETARDO DE 1SEG***********
delay   move.b  #0,D1                   ;D1=0: contador para conseguir un retardo de un segundo
loop4   move.l  #RET,D0                 ;D0=RET
        add.b   #1,D1                   ;D1=D1+1
loop5   sub.l   #1,D0                   ;D0=D0-1
        TST.l   D0                      ;¿D0==0?
        BNE     loop5                   ;no es igual a cero ->ve a loop5
        CMP     #4,D1                   ;¿es un segundo?Para que sea un segundo D1=4
        BNE     loop4                   ;no es un segundo ->ve a loop4
        rts                             ;si es un segundo ->fin de subrutina
*******************************        
        end     main                    ;fin programa

Nos vemos en el siguiente ejemplito!!!Giño
Título: RE: MICROPROCESADOR MC68000
Publicado por: xootraoox en 13 de Agosto de 2005, 03:22:00
Ufff... amigazo.... que decirte ... la verdad es que esta forma de informar es bastante practica y sirve de mucho en realidad es asi como se aprende con facilidad... bueno al parecer por estos lados no es de mucho interes hablar de motorola o freescale (como prefieras) pero la verdad es que por lo que he visto es bastante mas interesante que los pic... a la vez tambien es muyyyy poca la informacion que se encuentra comparado con los pics, lo que lo hace mas dificil de aprender de forma independiente...

bueno sin mas que decir te felicito por la iniciativa que has tomado y a la ves te pido que no pares ya que de verdad que es de utilidad este material....

despide

-==XooTRAooX==-
Título: RE: MICROPROCESADOR MC68000
Publicado por: vszener en 13 de Agosto de 2005, 14:51:00
Por finn!!! jeje a la entrada nº 17 ha contestado alguien!!!jeje ya creia que estaba solo con el 68k jeje, bueno la verdad es que informacion de otros dispositivos, ya sean microcontroladores o microprocesadores, son bastante inferior a la informacion que te puedes encontrar para PIC"s, pero dentro de lo que cabe, el 68K fue en su momento(y sigue siendo) un poderoso microprocesador que aunque llego tarde al mercado(ya que la tecnologia avanzaba) fue muy popular por su facilidad de programacion y manejo, bueno gracias por tu respuesta y a seguir con este "cacharrito" que cuanto mas lo usas mas lo quieres jeje

-----------------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------------

El programa Slider & Bar
Código: ASM
  1. ;---------------------------------------------------------
  2. ;       VsZeNeR'05      
  3. ;      14/Agosto/05    
  4. ;Programa: Slider & Led's
  5. ;Simulador MC68000: IDE68K(vs1.35)    
  6. ;
  7. ;Entrada:       Slider
  8. ;Salida:        Led's
  9. ;
  10. ;Resumen: Programa que maneja el Slider y se refleja Led's                      
  11. ;---------------------------------------------------------
  12.  
  13.         org     $400          ;inicio programa
  14. SLIDER  equ         $E005               ;etiqueta direccion slider
  15. BAR       equ       $E007         ;etiqueta direccion Bar
  16.        
  17. main    move.b  SLIDER,BAR    ;mueve contenido del slider a Bar display
  18.         bra     main          ;vuelve a main (bucle infinito)
  19.  
  20.         end     main


Suerte!!! :wink:
Título: RE: MICROPROCESADOR MC68000
Publicado por: vszener en 13 de Agosto de 2005, 15:11:00
Desde esta direccion s epueden descargar los tres programas anteriores:
          1º.Switch y 7 segmentos
          2º.Contador
          3º.Slider & Bar




Suerte!!! :wink:
Título: RE: MICROPROCESADOR MC68000
Publicado por: vszener en 14 de Agosto de 2005, 08:41:00
Hoy voy a explicar de forma basica como manejar el simulador IDE 68k, para ello utilizare el ultimo ejemplo del Slider&Bar. Empezamos!!!

1º. Arrancar el programa 68000 IDE


2º. Escribimos el programa y le damos al iconito del disco para guardar el programa

Arriba saldra al lado de 68000 el nombre que le hemos puesto al programa

3º.Compilar: para ello pulsamos el iconito que tiene cruzado un martillo y otra cosa que no se que es jeje Vamos en la ilera de iconitos el priemro de los 4 ultimos

De todas formas pasad el puntero del raton sobre los iconitos y saldra su nombre(asamble/buil all) es para compilar

4º. Simularlo: Para ello pulsamos el iconito que esta al lado del icono de compilar, es una lupa con rayitas amarillas chicas en la mitad del icono(Run visual simulator)


5º. Perifericos: Seleccionamos los perifericos que programamos, para ello en el menu pinchamos peripherals y alli seleccionamos los perifericos, en este caso slider y bar display


6º Simulamos el programa para ello pulsamos la flecha grande verde que apunta hacia abajo

Si queremos simularlo paso a paso la primera flecha verde
Si queremos simularlo despacio la segunda flecha verde

Bueno, esta es la pekeñita introduccion a manejar el simulador, ya explicare como crear proyectos y compilar en alto nivel como c y demas cositas, espero que me explicara bien jeje!!! ya nadie tiene excusa de utilizar el programa y hacer algun que otro ejemplito ennn jejeGiño
Título: RE: MICROPROCESADOR MC68000
Publicado por: xootraoox en 14 de Agosto de 2005, 08:50:00
Una pregunta amigazo....

el hardware necesario para trabajar con el ya mencionado es muy complicado??

la verdad es que no he leido nada aun sobre el pero quisiera tener una referencia para ver si es que puedo empezar a experimentar con el.....

es posible armarlo por uno mismo

o solo basta con un simple programador como es en el caso de los hc08 (MON08)

bueno espero todo el desarrollo sea tan accequible como con otros micros lo es

despide nuevamente
-==XooTRAooX==-
Título: RE: MICROPROCESADOR MC68000
Publicado por: vszener en 14 de Agosto de 2005, 09:23:00
Ummmm la verdad que el hardware no es que sea muy complicado, no va ser como el hardware de un pic, ten en cuenta que estamos hablando de un microprocesador, es decir de un "sistema abierto" el cual necesita memoria externa y demas dispositivos para un optimo funcionamiento, aun asi con algunos conocimientos de electronica podemos hacer una "placa base" para el 68k funcione correctamente. Sobre el tema de programar el dispositivo la verdad que yo conozco los TM-683 que aparte son entrenadores del mismo Ic, que es el que yo utilizo. Si tienes en mente en meter mano a una aplicacion con este dispositivo ten en cuenta que es un microprocesador, por lo demas no tienes que tener muxos inconvenientes en armar un circuito practico con el, lo dificil es encontrar un programador....pero vamos estamos manos a la obra!!!Giño


PD: Aunque creo que existen programadores para este dispositivo e incluso los venden...haber si encuentro algo y te comento.
Título: RE: MICROPROCESADOR MC68000
Publicado por: vszener en 14 de Agosto de 2005, 09:30:00
Aqui la nueva entrega de programitas calentitos al dia!!!jeje bien este es muy similar al anterior por no decir que es igual, lo unico que cambia es el periferico a tratar, esta vez utilizaremos el slider y los led"s, son 8 led"s y el slider esta comprendido entre valores de 0-255....8 led"s pueden ser bit"s 8 bits se pueden representar hasta 256 mas o menos lo que abarca el slider, asi que aki tenemos una representacion en binario, cada led encendido representa un 1 y los apagados un 0....asi ke tenemos un numero de 8 bits en binario que dara el valor del slider en decimal jeje:

;---------------------------------------------------------
;       VsZeNeR"05      
;      14/Agosto/05    
;Programa: Slider & Led"s
;Simulador MC68000: IDE68K(vs1.35)    
;
;Entrada:       Slider
;Salida:        Led"s
;
;Resumen: Programa que maneja el Slider y se refleja Led"s                      
;---------------------------------------------------------

        org     $400          ;inicio programa
SLIDER  equ       $E005      ;etiqueta direccion slider
LED     equ       $E003         ;etiqueta direccion led
       
main    move.b  SLIDER,LED    ;mueve contenido del slider a led
        bra     main          ;vuelve a main (bucle infinito)

        end     main

Hasta la proxima!!!Giño
Título: RE: MICROPROCESADOR MC68000
Publicado por: xootraoox en 14 de Agosto de 2005, 09:36:00
opppssss... ok... en realidad no me gusta eso de los microprocesadores por el momento, asi que por ahota esta descartado hasta nuevo aviso...

desde ya en todo caso se agradece el aorte que estas haciendo `para esta gran comunidad
Título: RE: MICROPROCESADOR MC68000
Publicado por: Modulay en 08 de Septiembre de 2005, 19:22:00
Pues tengo un pequeño problemilla a ver si alguien me puede ayudar.No tengo demasiado claro que condición ó condiciones se deben dar para que se produzca el salto a la rutina B_R

Codigo:

FUNCION2          LEA        INICIO_CADENA,A0
      MOVE.L  #$10,D0
B_REPRE      CMPI.B  #$0D,(A0)
      DBEQ    D0,B_R
      SUBI.L  #1,D0
                                .
      .
      .
B_R      MOVE.B  (A0)+,CODIGO
      .
      .
      .
      RTS



A mi entender,las condiciones para saltar a B_R son que D0 sea distinto de 0 y que el byte apuntado por A0 sea distinto de $0D.En el momento en que alguna de las dos ya no se cumpla,no se produce el salto.Pues bien,lo he simulado y no hace eso ni por asomo
Título: RE: MICROPROCESADOR MC68000
Publicado por: vszener en 17 de Septiembre de 2005, 18:02:00
Ke tal Modulay!!!haber visto por encima el codigo, creo que el fallo esta en la instruccion DBEQ D0,B_R si lo que quieres es que salte a B_R cuando D0 sea distinto de 0 entonces no debes poner EQ en DBcc ya que EQ=equal=igual a cero, por lo tanto esa instruccion salta a B_R cuando vale cero(todo lo contrario a lo que tu deseas), para saltar cuando D0 sea distinto de cero debes poner NE es decir DBNE D0,B_R.....espero que sea lo que pedias!Giño
Título: RE: MICROPROCESADOR MC68000
Publicado por: Modulay en 17 de Septiembre de 2005, 19:15:00
Si,he expresado justo lo contrario de lo que tenía en mente.
A ver,antes de entrar a decrementar D0,comprueba el contenido de A0.Si éste fuera $0D se produciría el salto al primer paso por el DBEQ ¿no?.Si dicha comparación no provoca el salto sería la llegada de D0 a 0 quien lo provocaría ¿no?
Hay una cosa que sigo sin entender.Se supone que estos saltos condicionales se basan en el estado del bit Z.Si tras la comparación del registro A0,este bit se pusiera a 1...¿que pasaría al ejecutar DBEQ? ¿se comprobaría en primera instancia el contenido de Z y se realizaría el salto sin decrementar D0? ¿se decrementaría pero no se comprobaría si ha llegado a 0?
Lo digo pq se me antoja la posibilidad de machacar el resultado de la primera comprobacion con el obtenido en la segunda y basarse unicamente en el valor de D0 para realizar o no el salto
Título: RE: MICROPROCESADOR MC68000
Publicado por: Nocturno en 19 de Septiembre de 2005, 03:57:00
¡Qué raro hablas desde que dejaste los PIC! loco
Título: RE: MICROPROCESADOR MC68000
Publicado por: vszener en 19 de Septiembre de 2005, 17:44:00
Haber las instrucciones de comparacion utilizan el bit Z, eso si en tu programa falta lo que quieres comparar, es decir, en el trozo de codigo:
Codigo:
CMPI.B #$0D,(A0)
DBEQ D0,B_R

debajito del COMPI.B debes poner el salto a realizar es decir si quieres que salte si es cero a la siguiente instruccion debes poner BEQ sig
Codigo:
          CMPI.B #$0D,(A0)
           BEQ      sig
           BNE      sig_out
sig      DBEQ D0,B_R
sig_out .....


Es decir, debes especificar los saltos, aqui te puedes descargar las instrucciones resumidas:
http://miarroba.com/foros/ver.php?foroid=348538&temaid=3442593

Vamos para hacer el codigo mas optimo seria algo asi asi:
Codigo:
          CMPI.B #$0D,(A0)
           BNE      sig_out
           DBEQ D0,B_R
           ........
sig_out .....


Mejor asi que ir comprobando el bit Z del CCR....recordar que el bit Z se pone a 1 cuando el resultado de una operacion o de una transferencia(MOVE) es CERO.
Giño
Título: RE: MICROPROCESADOR MC68000
Publicado por: pocher en 21 de Septiembre de 2005, 02:50:00
De nuevo felicitarte por tus aportes. Hay tantas cosas en el FORO y la verdad que ultimamente entro poco que se me había pasado este minicursillo sobre el 68000.

A mí me interesaría tocarlo, solo una pregunta. ¿has probado a simular los programas en PROTEUS?

Un saludo
Título: RE: MICROPROCESADOR MC68000
Publicado por: vszener en 21 de Septiembre de 2005, 05:22:00
Si te digo la verdad pocher lo mire una vez la simulacion en PROTEUS pero no se por donde le cargo el archivo .HEX!!!!jeje asi que por eso no he subido simulaciones en PROTEUS sino que simplemente me he dedicado a simularlo en el programa IDE68K el cual viene incluido un simulador bastante basico con algunos perifericos.....aunque decirte que vi hace tiempo un modelo del 68000 en PROTEUS donde si s ele podia colocar el archivo .HEX pero lo perdi!!!!!jeje tendre que revisarlo mas!!!Giño
Título: RE: MICROPROCESADOR MC68000
Publicado por: Modulay en 21 de Septiembre de 2005, 13:55:00
jeej Manolo hay q probar cositas nuevas.Pero no te preocupes que me mantengo fiel a mis principios Sonrisa GiganteSonrisa Gigante
vszener,pues el código tal y como yo lo puse está sacado de un exámen.La cuestión debe estar en cual es la secuencia que sigue DBEQ a nivel de microinstrucción
Título: RE: MICROPROCESADOR MC68000
Publicado por: vszener en 21 de Septiembre de 2005, 14:41:00
Ummmm pues la verdad que me extraña que despues de la comprobacion no venga el dato de instruccion a realizar.....haber si es una errata de examen(en mi escuela no seria la primera vez por desgracia.....) de todas formas la instruccion de salto DBcc(Decrement and Branch on cc) es una instruccion que tiene dos argumentos, el primero es el registro de datos y el segundo un desplazamiento de 16 bits respecto al PC:
Codigo:

1.  Comprueba la condicion cc.Si se cumple, pasa a ejecutar la instruccion siguiente(secuencia normal del programa en si), en el caso de estar en un bucle se saldria del mismo.
2.  Decrementa el contenido del registro de datos.
3.  Si el contenido del registro es -1, como en el paso 1. , se ejecuta la instruccion siguiente(salida del bucle en caso de estar realizando uno).
4.  Modifica el PC con el desplazamiento indicado(Salta al comienzo del bucle).



Ese es el funcionamiento de la instruccion DBcc.....Giño
Título: RE: MICROPROCESADOR MC68000
Publicado por: Modulay en 24 de Septiembre de 2005, 14:02:00
Aqui va un enlace donde se puede encontrar material sobre el 68000 y también sobre los HC11,todo en español:

http://www.ieev.uma.es/sisdig/transparencias.htm
Título: RE: MICROPROCESADOR MC68000
Publicado por: vszener en 03 de Diciembre de 2005, 07:22:00
Bueno aqui dejo otro enlace bastante bueno sobre este microprocesador:
http://www.depeca.uah.es/wwwnueva/docencia/ING-TELECO/ised/


PD: Ya volveremos pronto con cositas nuevas....Giño
Título: RE: MICROPROCESADOR MC68000
Publicado por: vszener en 05 de Febrero de 2006, 11:25:00
Holaaa!!!bueno esto esta algo olvidado...pero vamos a seguir poniendo cositas, esta vez tres subrutinas las cuales pueden ser utiles y por supuesto como practica a programar todo es bueno jeje!
Codigo:

vs_DImensionVector -> Calcula la dimension del vector
vs_ElementoMayorVector -> Calcula el elemento mayor de un vector
vs_ElementoMayorVector2 ->Implica las dos subrutinas anteriores en una



Suerte!!!Giño
Título: Re: MICROPROCESADOR MC68000
Publicado por: vszener en 15 de Julio de 2006, 10:05:24
Bueno, por fin he actualizado este post, ya esta listo el indice del contenido y subido a este post todos sus ejemplos citados!!!!


Suerte!!! :wink:
Título: Re: MICROPROCESADOR MC68000
Publicado por: pelusac en 09 de Agosto de 2006, 15:05:54
Tio muchas gracias, como siempre un aporte inmejorable. :-/

Un saludo.
Título: Re:MICROPROCESADOR MC68000
Publicado por: juaperser1 en 31 de Octubre de 2015, 07:10:32
Hola vszener, veo que estas colgando cosas de la web del departamento de tecnología eléctronica de la politécnica de Sevilla, además de haces todos los ejemplos y ejercicios que había en  las prácticas.

¿Eres profesor, o alumno?

¿ cuanto hace que estudiaste allí? Si es que lo hiciste.

Yo soy Juan Jose Perales, alumno interno del departamento por 3 años, y uno de los que daba clases en la asignatura de libre configuración y también club de microrobotica.

Quiza nos conocemos.   :D :D

Título: Re:MICROPROCESADOR MC68000
Publicado por: vszener en 01 de Noviembre de 2015, 17:19:21
Buenas Juan José:

Estudié allí en la época en las que colgué los ejercicios ( me ayudaban a entender la materia mejor ).

Me alegra saber que hay compañeros de la politécnica en el foro,


Un saludo ;)
Título: Re:MICROPROCESADOR MC68000
Publicado por: juaperser1 en 01 de Noviembre de 2015, 17:27:13
Citar
Buenas Juan José:

Estudié allí en la época en las que colgué los ejercicios ( me ayudaban a entender la materia mejor ).

Me alegra saber que hay compañeros de la politécnica en el foro,


Un saludo ;)

sabes que han pasado 10 años y siguen con los mismos ejercicios y los motorola esos?  :D :D ya no saben de donde sacar piezas para arreglarlos
Título: Re:MICROPROCESADOR MC68000
Publicado por: vszener en 01 de Noviembre de 2015, 17:38:59
Jeje, espero que tanto Ariel como Barbancho ya sepan manejar bien el simulador...

Que recuerdos... estas Navidades tengo que pasarme para recoger el titulo, a ver si me paso por los laboratorios.

Lo dicho, me alegra muchísimo saber que hay compañeros de la escuela.

Un saludo!
Título: Re:MICROPROCESADOR MC68000
Publicado por: juaperser1 en 01 de Noviembre de 2015, 17:45:19
Citar
Jeje, espero que tanto Ariel como Barbancho ya sepan manejar bien el simulador...

Que recuerdos... estas Navidades tengo que pasarme para recoger el titulo, a ver si me paso por los laboratorios.

Lo dicho, me alegra muchísimo saber que hay compañeros de la escuela.

Un saludo!

Si te pasas por la escuela, hecharás en falta a uno de los pocos que se preocupaban por los alumnos, y no hablo de un profesor, el jefe de taller Juan Membrilla que me enseño mas que los profesores en varias cosas y a usar la maquina cnc, murio de cancer hace un tiempo :( :(

Citar
Lo dicho, me alegra muchísimo saber que hay compañeros de la escuela.

lo mismo digo, de Sevilla hay aqui bastante gente  :D :D, o por lo menos que vivamos en Sevilla
Título: Re:MICROPROCESADOR MC68000
Publicado por: osbox en 30 de Enero de 2024, 20:35:37
 :-/ Nada que decir buenisimo tu tutorial lo he seguido ejemplo a ejemplo me costo encontrar el IDE68K version 3 que es el que corre en windows 11 23H2, pero lo consegui en telegraam hay un grupo de programadores 68000 y ahi tienen las 3 versiones, como dije gracias.