Upload
biblioman-aquihayapuntes
View
2.517
Download
1
Embed Size (px)
Citation preview
2011 www.AquiHayApuntes.com
Biblioman
GOBERNAR UN MICROCONTROLADOR DESDE LA BEAGLEBOARD-XM Conexión y control de un Microcontrolador (PIC) desde la BeagleBoard…
Gobernar un Microcontrolador desde la BeagleBoard-XM
www.aquihayapuntes.com Biblioman Página 2
Introducción
En algunas ocasiones necesitamos crear una aplicación de escritorio que haga de
interfaz entre un PC y un Microcontrolador para enviarle o recibir datos a través de un
canal de comunicaciones. En este artículo vamos a ver como se puede sustituir la
Computadora Personal (PC) por una placa de desarrollo embebido como la
BeagleBoard-XM, la gran ventaja de este tipo de placas es que son lo suficientemente
potentes en cuanto a memoria y velocidad de procesamiento para permitir la
instalación de un Sistema Operativo y acceder al control de su hardware a través de él.
Veremos las características de esta placa, así como los pasos que hay que seguir para
la instalación de diferentes sistemas operativos en ella como Linux, Android o
Windows, por último crearemos una aplicación de escritorio que se comunique con el
Microcontrolador para enviar o recibir datos desde BeagleBoard .
Comencemos….
Características hardware de la BeagleBoard-XM
Gobernar un Microcontrolador desde la BeagleBoard-XM
www.aquihayapuntes.com Biblioman Página 3
Procesador DM3730 basado en un núcleo ARM Cortex–A8, frecuencia de
trabajo 1GHz. Capacidad de vídeo en HD (Texas Instruments C64x + Procesador
DSP).
512 MB de memoria RAM DDR.
Puertos de comunicaciones: I2C, I2S, SPI, 4 puertos Host USB y 1 USB 2.0 HS
OTG, 1 puerto serie RS-232, 1 JTAG para depuración, 1 Conexión 10/100
Ethernet (a través de USB).
Señal de audio estéreo de entrada y salida para altavoces y micrófono.
Salida de vídeo: DVI-D y S-vídeo.
Conector de expansión para LCD.
Conector para cámara digital.
Slot para tarjetas de memoria micro-SD.
Conector para fuente de alimentación externa a 5V cc con protección ante
sobre voltajes.
La BeagleBoard es un proyecto de Hardware libre por lo que desde la página oficial:
http://beagleboard.org/hardware-xM
Se pueden descargar los esquemas así como el manual de referencia (en inglés).
Gobernar un Microcontrolador desde la BeagleBoard-XM
www.aquihayapuntes.com Biblioman Página 4
La BeagleBoard viene tal y como se muestra en la figura de abajo:
Sin cables y con una tarjeta micro SD de 4GB con adaptador para SD, la memoria lleva
pre-instalado una versión reducida (sin entorno gráfico y sin sistema de ficheros) del
Sistema Operativo Anström, pero que permite establecer un rlogin (login remoto) a
través de la interfaz serie RS-232 y un programa como el Hyperterminal o el GtkTerm
utilizado en Linux, instalado en un PC que hace de anfitrión y que nos servirá para
chequear todo el proceso de arranque de la BeagleBoard. La configuración de la
conexión serie en el ordenador que hace de anfitrión debe de ser la siguiente:
Baudios: 115.200
8 bits de datos
Sin Paridad
1 bit de parada
No control de flujo
La conexión se realiza con un cable serie directo (sin cruzar) ya que la BeagleBoard
hace de equipo de comunicación de datos (DCE) y el PC de equipo terminal de datos
(DTE).
Gobernar un Microcontrolador desde la BeagleBoard-XM
www.aquihayapuntes.com Biblioman Página 5
Instalación de diferentes Sistemas Operativos
Una buena opción de empezar a trabajar con la BeagleBoard es instalar y probar
diferentes sistemas operativos embebidos.
Anström: una vez que hemos chequeado la placa con la versión reducida
podemos instalar una versión más completa que incluya entorno gráfico y un
sistema de ficheros. Lo primero que tenemos que hacer es preparar la tarjeta
de memoria micro SD que albergará el Sistema Operativo. Cuando se utiliza un
procesador ARM la geometría física del disco es diferente a la de un PC. Los
parámetros que definen la geometría física de un disco son: Nº de cabezas, Nº
de sectores y Nº de cilindros. Para ARM esos parámetros deben de ser:
o head → 255
o sectores → 63
o los cilindros hay que calcularlos en función del tamaño en bytes de la
tarjeta que usemos por medio de la siguiente fórmula:
C(cilindros )= Tamaño en Bytes de la Memoria / Nº de Cabezas / Nº de Sectores / byte
por sector
La tarjeta que vamos a utilizar es de 4 GB de capacidad y la herramienta que
utilizaremos para preparar la tarjeta será fdisk incluida en todas las
distribuciones de Linux (yo he utilizado Ubuntu 10.10).
Los pasos a seguir son los siguientes:
1. Nos aseguramos de cuál es la partición de la tarjeta:
sudo fdisk -l
Muy importante este paso para no equivocarnos con las particiones que
tenga el disco duro de nuestro ordenador y perder los datos guardados en
ella.
2. Utilizaremos el siguiente comando para trabajar con el disco:
sudo fdisk /dev/sdb
Donde sdb es el nombre de dispositivo que mi ordenador le ha dado a la
tarjeta micro-SD en tú caso puede ser sdc u otro diferente.
Gobernar un Microcontrolador desde la BeagleBoard-XM
www.aquihayapuntes.com Biblioman Página 6
3. Limpiamos la tabla de particiones: (opción o)
Command (m for help): o Building a new DOS disklabel. Changes will remain in memory only, until you decide to write them. After that, of course, the previous content won't be recoverable. Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)
4. Mostramos la información del dispositivo (opción p)
Command (m for help): p Disco /dev/sdb: 3965 MB, 3965190144 bytes 122 cabezas, 62 sectores/pista, 1023 cilindros Unidades = cilindros de 7564 * 512 = 3872768 bytes Tamaño de sector (lógico / físico): 512 bytes / 512 bytes Tamaño E/S (mínimo/óptimo): 512 bytes / 512 bytes Identificador de disco: 0xe50a4022 ....
De esta información nos interesa el tamaño en bytes: 3965190144 correspondiente a una
tarjeta de 4 GB que es la que vamos a utilizar.
5. Entro en modo experto para establecer la geometría del disco (opcion X)
La geometría de la tarjeta como se ha comentado arriba debe de ser la siguiente:
h (cabezas)= 255
s (sectores)=63
Para el cálculo de los cilindros utilizamos la formula:
c(cilindros)= Tamaño en Bytes de la Memoria / Nº de Cabezas / Nº de Sectores/ bytes
por sector = 3965190144 /255/63/512= 482,073576097
Lógicamente hay que redondear a la baja, por tanto: c(cilindros)=482
Gobernar un Microcontrolador desde la BeagleBoard-XM
www.aquihayapuntes.com Biblioman Página 7
Ejecutamos las opciones del comando para establecer la geometría anteriormente
descrita:
Orden avanzada (m para obtener ayuda): h
Número de cabezas (1-256, valor predeterminado 122): 255
Orden avanzada (m para obtener ayuda): s
Número de sectores (1-63, valor predeterminado 62): 63
Atención: estableciendo desplazamiento de sector para compatibilidad con DOS
Orden avanzada (m para obtener ayuda): c
Número de cilindros (1-1048576, valor predeterminado 1023): 482
6. Volvemos al modo principal para crear las particiones (opción r)
Orden avanzada (m para obtener ayuda): r
Orden (m para obtener ayuda):
7. Creamos la primera partición donde se alojaran los archivos de
arranque del sistema operativo.
Orden (m para obtener ayuda): n
Acción de la orden
e Partición extendida
p Partición primaria (1-4)
p
Número de partición (1-4): 1
Primer cilindro (1-482, valor predeterminado 1): 1
Último cilindro, +cilindros o +tamaño{K,M,G} (1-482, valor predeterminado
482): 9
Gobernar un Microcontrolador desde la BeagleBoard-XM
www.aquihayapuntes.com Biblioman Página 8
Con 9 cilindros (equivale aproximadamente a 70 MB de espacio) es suficiente para los
archivos de arranque.
8. Creamos la segunda partición donde se alojarán los archivos del
sistema.
Orden (m para obtener ayuda): n
Acción de la orden
e Partición extendida
p Partición primaria (1-4)
p
Número de partición (1-4): 2
Primer cilindro (10-482, valor predeterminado 10): 10
Último cilindro, +cilindros o +tamaño{K,M,G} (10-482, valor predeterminado 482):
482
9. Hacemos que la partición 1 sea bootable (opción a)
Orden (m para obtener ayuda): a
Número de partición (1-4): 1
10. Introducimos la (opción p) para ver cómo nos quedarían las particiones
(hasta que no guardamos no se ejecutan las sentencias).
Orden (m para obtener ayuda): p
Disco /dev/sdb: 3965 MB, 3965190144 bytes
255 cabezas, 63 sectores/pista, 482 cilindros
Unidades = cilindros de 16065 * 512 = 8225280 bytes
Tamaño de sector (lógico / físico): 512 bytes / 512 bytes
Tamaño E/S (mínimo/óptimo): 512 bytes / 512 bytes
Identificador de disco: 0x8f1b93c7
Gobernar un Microcontrolador desde la BeagleBoard-XM
www.aquihayapuntes.com Biblioman Página 9
Disposit. Inicio Comienzo Fin Bloques Id Sistema
/dev/sdb1 * 1 9 401593+ 83 Linux
/dev/sdb2 10 482 8032+ 83 Linux
El sistema de archivos para cada partición debe de ser la siguiente: para la primera
partición que albergará los archivos de arranque del sistema operativo FAT 32 y para la
segunda partición donde guardaremos los archivos del sistema ext3
Como vemos arriba la partición 1 esta para un sistema Linux y tiene que ser Fat 32.
11. Para cambiar eso introducimos la (opción t) seguido del número de
partición que queremos cambiar en este caso la Nº 1
Orden (m para obtener ayuda): t
Número de partición (1-4): 1
Código hexadecimal (escriba L para ver los códigos): l
0 Vacía 24 NEC DOS 81 Minix / old Lin bf Solaris
1 FAT12 39 Plan 9 82 Linux swap / So c1 DRDOS/sec (FAT-
2 XENIX root 3c PartitionMagic 83 Linux c4 DRDOS/sec (FAT-
3 XENIX usr 40 Venix 80286 84 Unidad C: ocult c6 DRDOS/sec (FAT-
4 FAT16 <32M 41 PPC PReP Boot 85 Linux extendida c7 Syrinx
5 Extendida 42 SFS 86 Conjunto de vol da Datos sin SF
6 FAT16 4d QNX4.x 87 Conjunto de vol db CP/M / CTOS / .
7 HPFS/NTFS 4e QNX4.x segunda 88 Linux plaintext de Utilidad Dell
8 AIX 4f QNX4.x tercera 8e Linux LVM df BootIt
9 AIX bootable 50 OnTrack DM 93 Amoeba e1 DOS access
a OS/2 Boot Manag 51 OnTrack DM6 Aux 94 Amoeba BBT e3 DOS R/O
b W95 FAT32 52 CP/M 9f BSD/OS e4 SpeedStor
c W95 FAT32 (LBA) 53 OnTrack DM6 Aux a0 Hibernación de eb BeOS fs
e W95 FAT16 (LBA) 54 OnTrackDM6 a5 FreeBSD ee GPT
f W95 Ext'd (LBA) 55 EZ-Drive a6 OpenBSD ef EFI (FAT-12/16/
Gobernar un Microcontrolador desde la BeagleBoard-XM
www.aquihayapuntes.com Biblioman Página 10
10 OPUS 56 Golden Bow a7 NeXTSTEP f0 inicio Linux/PA
11 FAT12 oculta 5c Priam Edisk a8 UFS de Darwin f1 SpeedStor
12 Compaq diagnost 61 SpeedStor a9 NetBSD f4 SpeedStor
14 FAT16 oculta <3 63 GNU HURD o SysV ab arranque de Dar f2 DOS secondary
16 FAT16 oculta 64 Novell Netware af HFS / HFS+ fb VMware VMFS
17 HPFS/NTFS ocult 65 Novell Netware b7 BSDI fs fc VMware VMKCORE
18 SmartSleep de A 70 DiskSecure Mult b8 BSDI swap fd Linux raid auto
1b Hidden W95 FAT3 75 PC/IX bb Boot Wizard hid fe LANstep
1c Hidden W95 FAT3 80 Old Minix be arranque de Sol ff BBT
1e Hidden W95 FAT1
Como se ve arriba si pulsamos l nos salen las opciones disponibles, tenemos que
seleccionar la c
12. Seleccionamos otra vez la (opción p) para comprobar que todo este
correcto antes de guardar los cambios:
Orden (m para obtener ayuda): p
Disco /dev/sdb: 3965 MB, 3965190144 bytes
255 cabezas, 63 sectores/pista, 482 cilindros
Unidades = cilindros de 16065 * 512 = 8225280 bytes
Tamaño de sector (lógico / físico): 512 bytes / 512 bytes
Tamaño E/S (mínimo/óptimo): 512 bytes / 512 bytes
Identificador de disco: 0x8f1b93c7
Disposit. Inicio Comienzo Fin Bloques Id Sistema
/dev/sdb1 * 1 9 401593+ c W95 FAT32 (LBA)
/dev/sdb2 10 482 8032+ 83 Linux
13. Guardamos los cambios con la opción w
14. Ahora nos queda formatear las particiones: antes comprobamos que no se
ha montado ninguna partición automáticamente.
Gobernar un Microcontrolador desde la BeagleBoard-XM
www.aquihayapuntes.com Biblioman Página 11
Para desmontar las particiones se utiliza el comando umount y gráficamente también lo
podemos hacer desde Gparted:
sudo umount /dev/sdb1
sudo umount /dev/sdb2
Los comandos que tenemos que utilizar para formatear las particiones son los
siguientes:
sudo mkfs.vfat -F 32 /dev/sdb1
sudo mkfs.ext3 /dev/sdb2
Como hemos comentado ya la primera partición en FAT32 y la segunda en el sistema
de ficheros de Linux ext3.
15. Ahora creamos dos carpetas (Angstrom y boot) en el directorio /media
Que será donde montemos las dos particiones de la tarjeta para poder acceder a ella y
guardar los archivos pertinentes:
sudo mkdir –p /media/boot
sudo mkdir /media/Angstrom
16. Ahora montamos las particiones en ambas carpetas para poder acceder
a ellas ( si es que no lo ha hecho el sistema ya automáticamente):
sudo mount /dev/sdb1 /media/boot
sudo mount /dev/sdb2 /media/Angstrom
Gobernar un Microcontrolador desde la BeagleBoard-XM
www.aquihayapuntes.com Biblioman Página 12
En el escritorio nos deben de aparecen las dos particiones ya montadas:
17. Nos descargamos los siguientes archivos de la página:
http://www.angstrom-distribution.org/demo/beagleboard/
Angstrom-Beagleboard-demo-image-glibc-ipk-2011.1-
beagleboard.rootfs.tar.bz2
MLO
u-boot.bin
uImage
md5sums
El md5sums es la suma de verificación para comprobar que los archivos se han
descargado correctamente.
Se comprueban de la siguiente forma:
md5sum MLO
El sistema mostrará esto:
biblioman@biblioman-desktop:~/Distribucion Angstrom$ md5sum MLO
571d5b229f7995aba3752004f6119118 MLO
Que cotejaremos con el archivo md5sums.txt.
18. Copiamos los archivos del sistema a la partición sdb2
sudo tar -xjv -C /media/Angstrom -f
/home/biblioman/Distribucion_Angstrom/Angstrom-Beagleboard-demo-image-glibc-
ipk-2011.1-beagleboard.rootfs.tar.bz2
Cuando todos los archivos se hayan copiado sincronizamos los archivos y desmontamos
la partición.
sync
sudo umount /dev/sdb2
Gobernar un Microcontrolador desde la BeagleBoard-XM
www.aquihayapuntes.com Biblioman Página 13
19. Ahora copiamos los archivos en boot para el arranque en este orden:
para ello abrimos una terminal donde están los archivos a copiar y
escribimos lo siguiente:
sudo cp MLO /media/boot
sudo cp u-boot.bin /media/boot
sudo cp uImage /media/boot
Al igual que antes una vez copiados los archivos sincronizamos y desmontamos la
partición:
sync
sudo umount /dev/sdb1
Con estos pasos ya tenemos nuestra tarjeta preparada, ahora solo queda conectarla a la
Beagleboard.
La conexión del monitor viene por defecto para HDMI a través de un cable convertidor
de DVI-D (BeagleBoard) a HDMI (Monitor).
Nota: conectar el cable primero antes de dar alimentación a la tarjeta.
Luego solo queda conectar el cable Ethernet al conector RJ-45, y el teclado y el ratón a
los puertos USB, si dejamos conectado el cable serie podremos monitorizar el arranque
desde otro ordenador con el hyperterminal u otro programa similar.
Gobernar un Microcontrolador desde la BeagleBoard-XM
www.aquihayapuntes.com Biblioman Página 14
Un pequeño vídeo de Angstrom corriendo sobre la BeagleBoard-XM:
http://www.youtube.com/watch?v=DbrxwbrCtm0
Ubuntu: El siguiente operativo que vamos a instalar es Ubuntu 10.10 Maverick
en su versión para ARM. Su instalación es muy sencilla ya que viene pre
instalado en una imagen a la que podemos acceder para su descarga desde la
wiki de Ubuntu:
https://wiki.ubuntu.com/ARM/OMAPMaverickInstall
Nos descargamos la versión Maverick -> release-> Texas Instruments OMAP3
preinstalled netbook image
Para restaurar la imagen sobre la tarjeta micro-SD simplemente seguimos los
siguientes pasos:
1) Conectamos la tarjeta al PC
2) Comprobamos que la tarjeta de memoria no se monte (utilizar el comando
umount para desmontarla si es necesario).
3) Identificar correctamente el dispositivo antes de seguir adelante (en mi
caso /dev/sdb).Ejecutamos el siguiente comando en la terminal:
sudo sh -c 'zcat ./ubuntu-netbook-10.10-preinstalled-netbook-armel+<omap
image>.img.gz >/dev/<device name>'
Y listo!!. Ya podemos conectar la tarjeta a la BeagleBoard-XM y probarlo.
Gobernar un Microcontrolador desde la BeagleBoard-XM
www.aquihayapuntes.com Biblioman Página 15
http://www.youtube.com/watch?v=PSX94u223gg
Windows Embedded Compact 7
Para poder desarrollar y crear tus propias aplicaciones sobre esta plataforma se
necesitan las siguientes herramientas de Microsoft:
Visual Studio 2008 Professional, no vale la versión express aunque la versión trial dura 90 días.
Microsoft Expression Blend 3 + SketchFlow, para poder crear componentes gráficos para nuestras aplicaciones como botones.
Windows Embedded
Los enlaces y los pasos para instalar los diferentes componentes están aquí:
http://www.microsoft.com/windowsembedded/en-us/downloads/download-
windows-embedded-compact-ce.aspx
Varias empresas facilitan imágenes demo para probar gratuitamente, yo he utilizado la
que nos facilita la empresa Adeneo
Te tienes que registrar y te envían por e-mail la dirección de un servidor FTP desde
donde se puede descargar la imagen así como la documentación necesaria para
restaurar la imagen sobre la tarjeta micro-SD.
Gobernar un Microcontrolador desde la BeagleBoard-XM
www.aquihayapuntes.com Biblioman Página 16
http://www.youtube.com/watch?v=mVs9t1YyK4U
Android: Un Sistema Operativo que se utiliza mucho en dispositivos móviles es
sin duda Android basado en Linux y que también hay varios proyectos que lo
han portado a dispositivos embebidos basados en ARM como rowbot
Gobernar un Microcontrolador desde la BeagleBoard-XM
www.aquihayapuntes.com Biblioman Página 17
La instalación también es sencilla:
1) Nos bajamos la imagen del sistema operativo desde la página de Texas
Instruments.
http://software-
dl.ti.com/dsps/dsps_public_sw/sdo_tii/TI_Android_DevKit/02_00_00/index_FDS.html
Concretamente la imagen pre-compilada para la BeagleBoard-XM
2) Como en los casos anteriores conectamos la micro-SD al PC y averiguamos
el nombre que el sistema operativo le ha dado al dispositivo utilizando el
comando:
sudo fdisk -l
3) Descomprimimos el archivo con la imagen descargada que incluye un script
que al ejecutarse crea tres particiones en la tarjeta llamadas: boot, rootfs y
data. El script también se encarga de copiar los archivos necesarios en cada
una de las particiones creadas.
4) Ejecutamos el script para ello tenemos tres formas de hacerlo (mirar el
archivo Readme.txt que se incluye en la documentación), una de ellas es
ejecutar en la terminal el siguiente comando:
sudo ./mkmmc-android.sh <device> Ejemplo: sudo ./mkmmc-android.sh /dev/sdb
5) Nos aseguramos que las particiones creadas están desmontadas. 6) Insertamos la tarjeta en la BeagleBoard y probamos..
Gobernar un Microcontrolador desde la BeagleBoard-XM
www.aquihayapuntes.com Biblioman Página 18
http://www.youtube.com/watch?v=EeAglb22LL4
Las posibilidades de desarrollo que nos ofrece la BeagleBoard-XM son muy amplias y
limitada en la mayoría de los casos solo por la imaginación del que la usa. Mi idea
principal era utilizarla junto a los microcontroladores como herramienta de desarrollo.
De los diferentes sistemas operativos probados me he decidido por Ubuntu (cuestión
de gustos, los demás son igualmente válidos).
La siguiente cuestión a determinar es elegir el lenguaje y entorno de programación en
el que desarrollaremos la aplicación que una vez cargada en la BeagleBoard se pueda
comunicar con el microcontrolador a través de alguna interfaz como por ejemplo el
puerto serie RS-232. El ejecutable creado desde un PC con arquitectura x86 no
funciona en la BeagleBoard con arquitectura ARM, para solucionar este problema
tenemos dos opciones la primera es utilizar un compilador cruzado
Esta opción es perfectamente válida, pero se requiere un PC para crear y compilar el
código, mi idea era prescindir por completo del PC y hacerlo todo desde la
BeagleBoard, por tanto no queda otra que compilar el código desde la propia placa,
entre los compiladores disponibles para esta plataforma he decidido utilizar C++ bajo
el IDE QtCreator
http://qt.nokia.com/products/developer-tools/
La ventaja que le veo es que ya lo he utilizado anteriormente en un PC y al ser
multiplataforma puedo reutilizar el código, además está incluido en los repositorios de
Ubuntu para Netbook por lo que su instalación es sencilla.
Gobernar un Microcontrolador desde la BeagleBoard-XM
www.aquihayapuntes.com Biblioman Página 19
sudo apt-get install qtcreator
Nota: En Linux cada aplicación que se instala se integra y utiliza librerías y
componentes ya instalados y que utilizan otras aplicaciones (el equivalente a las dll en
Windows) la ventaja que tiene esto es que los programas no tienen un tamaño
excesivamente grande ya que muchas de las librería que necesita el programa ya están
instaladas y por tanto no se vuelven a instalar, como desventaja tenemos los
problemas de dependencias, es decir, puede que instalemos qtcreator y alguna librería
necesaria para su funcionamiento no esté instalada, esto se agrava más en los sistemas
operativos embebidos donde todo se intenta reducir a la mínima expresión para que el
total ocupe poco espacio. Si tenéis problemas al compilar comprobar la ventana de
mensajes de salida del compilador, si hay algún error de dependencias nos aparecerá
allí, en ese caso deberemos buscar la librería que falta e instalarla. Hace tiempo el
problema de las dependencias era una autentica pesadilla pero hoy en día los gestores
de paquetes suelen resolver bastante bien este problema, por lo que cualquier
instalación que esté incluida en los repositorios oficiales se instala completamente y de
forma transparente para el usuario.
Como ejemplo de aplicación utilizaremos un programa que se comunique con el PIC
(16F628) a través del puerto serie.
Gobernar un Microcontrolador desde la BeagleBoard-XM
www.aquihayapuntes.com Biblioman Página 20
Un par de fotos del circuito montado:
Gobernar un Microcontrolador desde la BeagleBoard-XM
www.aquihayapuntes.com Biblioman Página 21
Consideraciones:
El puerto serie en la BeagleBoard utiliza la USART Nº3 por tanto en la aplicación
de escritorio habrá que conectarse al puero ttyS2.
Para adaptar los niveles de tensión a TTL requeridos por el PIC se utiliza el
clásico MAX232
Importante: anteriormente se ha comentado que para conectar la BeagleBoard
al PC a través del puerto serie hay que utilizar un cable directo ya que la
BeagleBoard hacía de equipo de comunicación de datos (DCE) y el PC de equipo
terminal de datos (DTE). En este caso estamos conectando la BeagleBoard al
convertidor de niveles que hace de equipo de comunicación de datos (DCE)
también, por lo que el cable tiene que ser un cable cruzado (Null módem)
¡Ojo! Si nos equivocamos y ponemos un cable directo nos podemos ”freír” el
convertidor de niveles.
Gobernar un Microcontrolador desde la BeagleBoard-XM
www.aquihayapuntes.com Biblioman Página 22
Un vídeo del ejemplo funcionando:
http://www.youtube.com/watch?v=9F5yuSu0rmU
Este es un primer ejemplo de comunicación entre la BeagleBoard-XM y un
Microcontrolador PIC a través del puerto serie, mi intención es crear otras
aplicaciones que se comuniquen con el PIC a través de las otras interfaces de las que
dispone la placa, como USB, I2C, SPI, etc. Puedes seguir todo el desarrollo de este
proyecto en este hilo del foro de AquiHayApuntes.com
Fuentes de Información
http://beagleboard.org/hardware-xM
http://groups.google.com/group/beagleboard
http://processors.wiki.ti.com/index.php/MMC_Boot_Format
http://www.angstrom-distribution.org/node?page=1
https://wiki.ubuntu.com/ARM/OMAPMaverickInstall
http://www.adeneo-embedded.com/en/Products/Board-Support-Packages/BeagleBoard
+ Los enlaces a los que se hace referencia a lo largo del artículo.
Gobernar un Microcontrolador desde la BeagleBoard-XM
www.aquihayapuntes.com Biblioman Página 23
Marcas registradas
Las marcas citadas en este artículo así como las imágenes procedentes de capturas de
pantallas pertenecen a sus respectivos propietarios su utilización en este artículo es con fines
divulgativos y sin ánimo de lucro.
Licencia
Autor de este artículo: Biblioman
Versión: 1.0.0
Página Web: http:\\www.aquihayapuntes.com
Email: [email protected]
Este artículo esta bajo una licencia Creative Commons: Reconocimiento-No Comercial-
Compartir bajo la misma licencia.