Professional Documents
Culture Documents
7TO SEMESTRE
ENERO-JUNIO 2018
INTEGRANTES:
NOMBRE MATRICULA SEMESTRE
ADRIAN LEAL RODRIGUEZ 1429469 7to
Marco Teórico
Microcontrolador MC9S08SE8
Las MCU de la serie MC9S08SE8 son miembros de la familia HCS08 de bajo costo
y alto rendimiento de 8 bits unidades de microcontroladores (MCU). Todos los MCU
de la familia usan el núcleo mejorado HCS08 y están disponibles con una variedad
de módulos, tamaños de memoria, tipos de memoria y tipos de paquetes.
Lenguaje Ensamblador
El lenguaje ensamblador es un lenguaje de programación de bajo nivel. Consiste en
un conjunto de mnemónicos que representan instrucciones básicas para
los computadores, microprocesadores, microcontroladores y otros circuitos
integrados programables. Implementa una representación simbólica de los códigos
de máquina binarios y otras constantes necesarias para programar una arquitectura
de procesador y constituye la representación más directa del código máquina
específico para cada arquitectura legible por un programador. Cada arquitectura de
procesador tiene su propio lenguaje ensamblador que usualmente es definida por
el fabricante de hardware, y está basada en los mnemónicos que simbolizan los
pasos de procesamiento (las instrucciones), los registros del procesador, las
posiciones de memoria y otras características del lenguaje.
Material Utilizado:
Microcontrolador Motorola
1
MC9S08SE8
Metros de Alambre de
2
conexiones calibre 24
1 Pushbuttons
12 Resistencias de 330Ω
Programación Utilizada
;*******************************************************************
;* This stationery serves as the framework for a user application. *
;* For a more comprehensive program that demonstrates the more *
;* advanced functionality of this processor, please see the *
;* demonstration applications, located in the examples *
;* subdirectory of the "Freescale CodeWarrior for HC08" program *
;* directory. *
;*******************************************************************
;
; export symbols
;
XDEF _Startup
ABSENTRY _Startup
;
; variable/data section
;
ORG RAMStart ; Insert your data definition here
contador0: EQU $80
contador1: EQU $81
contador2: EQU $82
retardo1: EQU $90
;
ORG $E100
display1:
DC.B $40,$79,$24,$30,$19,$12,$02,$78,$00,$18
;
; code section
;
ORG ROMStart
_Startup:
LDHX #RAMEnd+1 ; initialize the stack pointer
TXS
CLI ; enable interrupts
mainLoop:
JSR PROG_PORTS
PROG_PORTS:
BCLR 0,PTADD
LDA #$FF
STA PTCDD
MOV #$0F,contador1
LDA #$FF
BRA RESTRICCION
RESTRICCION:BRSET 0,PTAD,barrido
BRA D1
;**************************************************************
;* spurious - Spurious Interrupt Service Routine. *
;* (unwanted interrupt) *
;**************************************************************
;**************************************************************
;* Interrupt Vectors *
;**************************************************************
ORG $FFFA
DC.W spurious ;
DC.W spurious ; SWI
DC.W _Startup ; Reset
Diagrama
Conclusión
En conclusión con este proyecto podemos decir que nos sirvió para comprender
que es lo que podemos hacer con el microcontrolador como lo es con este proyecto
que fue crear unos dados electrónicos usando el lenguaje ensamblador el cual nos
sirvió para reforzar nuestros conocimientos de este lenguaje y saber qué es lo que
estamos haciendo y la representación en el display cuando se está preparando el
conteo, en si este proyecto nos ayudó para comprender que muchos usos se
pueden hacer con el microcontrolador y en la práctica del lenguaje ensamblador.