viernes, 28 de octubre de 2011

Imagen del PCB del KIT

Mariano Serra me conmenta que Mauro Fermin notó que los PDF's de el post anterior tienen un problema de escala. La mejor forma de obtener la imagen para hacer la placa es usando Altium y abriendo el proyecto. 
Pero para que aquellos que no lo tengan, subo un archivo de imagen con la placa en tamaño correcto (lo corroboré imprimiendo).


El archivo está en XPS que se abre con cualquier Windows, y sino pueden se bajan un visor de XPS. Es un formato que almacena archivos de impresión (similar a PDF). Y sino pueden usen ésto para convertila (http://www.xps2pdf.org/)


Archivo de Placa en XPS para imprimir: Link


Archivo de Placa en PDF para imprimir: Link


Saludos y gracias a Mauro y Mariano.

viernes, 21 de octubre de 2011

Circuito del Práctico





En el siguiente enlace encontrarán un archivo .RAR que contiene el circuito de las placas del laboratorio COMPLETO, con una bornera (fila de pines) para poder salir de la plaquita el hardware que necesiten agregar para el trabajo final.

En el .RAR está el proyecto (Esquemático y PCB) de una placa que cumple las mismas funciones que las que están en el laboratorio. Están hechas en Alitum Designer 09.
Además hay PDF's del circuito (EDIT: Están fuera de escala! Usar éste)  y de los layers del PCB para los que no tengan el soft.
Creditos para Mariano Serra por todo el laburo hecho!

Link: PCB

viernes, 14 de octubre de 2011

Usando ECLIPSE, bien



La idea de utilizar ECLIPSE como IDE es que nos simplifique el trabajo de crear código.
En este post pongo algunos "tips" de ECLIPSE para hacer justamente eso.




Autocompletar palabras
En cualquier ventana de código, escriben las primeras letras de una variable, palabra clave o sentencia, presionan CTRL + ESPACIO y ECLIPSE les ofrece una lista de "coincidencias" o una sugerencias.




Ir a función e Ir a variable
En cualquier ventana de código, si tienen presionado CTRL y se acercan con el cursor del mouse al nombre de una función o variable, ECLIPSE la marca como link y al hacer clic van a la definición/prototipo de la misma.


Ver las funciones definidas en un archivo
En el panel de la derecha de ECLIPSE hay un panel llamado Outline que contiene la lista de funciones que están definidas en el archivo que se esta viendo actualmente. Haciendo doble clic sobre ellas se accede a su contenido.




Ver cada llamada a una función y ver a que otras funciones llama una función
Si en una vista de código, seleccionan con el cursor el nombre de una función y hacen clic derecho y seleccionan Open Call Hierarchy (o CTRL ALT H) se les abre en la parte inferior un panel con el nombre Call Hierarchy que muestra una lista jerárquica de todos los llamados a la función seleccionada. Tiene dos botoncitos que son para ver o bien "A quienes llama" o "Por quien es llamada" la función.

miércoles, 12 de octubre de 2011

lunes, 10 de octubre de 2011

Librerías standards (.h) y Eclipse

En caso de que hayan querido utilizar alguna librería standard de ANSI C como stdio.h, stdlib.h, math.h, etc habrán notado que Eclipse les subraya el código en amarillo y les indica que no encuentra el archivo, eh aquí la solución.


Antes que nada, el compilador (GCC) logra compilar sin problemas, por lo que le es posible encontrar la ruta. Es ECLIPSE quién no sabe donde buscar las librerías.


Para indicar la ruta, hacer lo siguiente:
1. Click derecho en el proyecto, Properties
2. En el cuadro de diálogo de Properties del proyecto, hacer clic en la categoría C/C++ General, y luego en Path and Symbols
3. En ese cuadro de diálogo, hacer clic en el botón Add...
4. Allí activar "Add to all configurations" y "Add to all languages", luego hacer clic en File System
5. Buscar el siguiente directorio C:\ARM\Yagarto\arm-none-eabi\include
6. Y poner OK
7. Poner también OK en la ventana Properties y aceptar cuando nos solicite recargar el proyecto. 
8. Las líneas amarillas de warning sobre las librerías deberían haber desaparecido.

sábado, 17 de septiembre de 2011

Circuito "Base" del Header LPC2148



Para evitar confusiones, subimos aquí los circuitos tanto del HEADER de Olimex LPC-H2148 como del circuito "Base" donde éste se conecta.

  • Circuito del Header LPC H2148:


  • Circuito "Base" (Con Led, Pulsador y conexión Serial):

lunes, 12 de septiembre de 2011

Manejo de Puertos Entrada/Salida





El siguiente es un ejemplo para manejar el "BackLight" de un display, pero puede interpretarse como un ejemplo para accionar una salida GPIO del LPC2148:

Para los que estén haciendo el práctico:
El LED a manejar está conectado al pin 0.17 del LPC2148

// Se supone que PINSEL0, IODIR0 e IOCLR0 están definidas



#define P_BACKLIGHT_PINSEL PINSEL0
#define P_BACKLIGHT_PINSEL_bits (0x03)<<28
#define P_BACKLIGHT_IODIR IODIR0
#define P_BACKLIGHT_offset 14
#define P_BACKLIGHT_bits         ((0x01)<<P_BACKLIGHT_offset)
#define P_BACKLIGHT_IOSET IOSET0
#define P_BACKLIGHT_IOCLR IOCLR0



/* Incializo backlight */
P_BACKLIGHT_PINSEL &= ~P_BACKLIGHT_PINSEL_bits; /* bits de funcion a 00->GPI*/
P_BACKLIGHT_IODIR |= P_BACKLIGHT_bits; /* bit a 1 -> salida*/
P_BACKLIGHT_IOCLR = P_BACKLIGHT_bits; /* Lo apago al comenzar */

domingo, 11 de septiembre de 2011

Tutorial de Assembler para ARM

El alumno Genovese encontró este tutorial muy didáctico sobre ASSEMBLER de ARM que explica todo el Instruction Set de forma detallada.


Acá esta: ARM Intruction SET
La URL es: http://www.davespace.co.uk/arm/introduction-to-arm/instruction-sets.html

Definiciones de registros para el LPC2148 (+Manual)



Como muchos se habrán dado cuenta, el ejemplo TESTLPC2148 no contiene las definiciones de los registros del LPC2148.
Hace falta agregar un archivo .h que defina todos los registros con su correspondiente posición de memoria.
Pueden encontrar muchos de éstos archivos en la WEB. Acá subo uno que vengo utilizando hace tiempo.
Éste es el link.
Ésta es la URL: https://docs.google.com/leaf?id=0B3-4Ewxut6n3ZDYwOGFkZDEtYzFmZC00YzE5LWE5NjAtMGI1NjU1NDNkMGE3&hl=en_US

Para pode utilizar este archivo deben hacer lo siguiente:

  1. Descargarlo
  2. Agregarlo al proyecto dentro de la carpeta "\inc"
  3. En el archivo "main.c" (o en donde hagan uso de las definiciones) agregar:
    • #include "registers.h"



Manual del LPC2148



Para aquellos que aún no lo han hecho, BAJEN INMEDIATAMENTE el manual del LPC2148 y empiezen a leer los capítulos iniciales:


Éste es el link.
Ésta es la URL: http://www.nxp.com/documents/user_manual/UM10139.pdf

Tutorial "Primeros pasos con ARM"

Actualicé el PowerPoint (está como PDF para evitar problemas) que pasamos en el práctico del Jueves a la tarde (con Julio Sanchez).
Incluye las instrucciones de instalación de Yagarto paso a paso y ahora agregué unos cuantos slides sobre la compilación del primer proyecto y su grabado en la FLASH del uC.


Éste es el link.
Esta es la URL: https://docs.google.com/viewer?a=v&pid=explorer&chrome=true&srcid=0B3-4Ewxut6n3YzM5MjBmMGYtNjQyMS00NmVlLTg0ZTEtMTJhOTM5MjJiYjI0&hl=en



Bienvenidos

Este es el primer post del Blog de la materia Electrónica Digital 3 de la FCEFyN de la UNC. Tiene el fin de ser un lugar dónde podamos compartir información de la cátedra, donde podamos colgar archivos, y dónde podamos contestar preguntas tanto profes, ayudantes y alumnos.
Bienvenidos y a ponerle pilas!