Академический Документы
Профессиональный Документы
Культура Документы
UBERLNDIA
FACULDADE DE ENGENHARIA
ELTRICA - FEELT
LASEC
AULA PRTICA 01 OI MUNDO!!!
FEELT
Sumrio
Introduo ................................................................................................................................... 3
Caractersticas de Hardware do .................................................................................................. 5
Microprocessador ARM Cortex-A8 AM335x............................................................................ 5
BeagleBone Black ..................................................................................................................... 6
Acessando o Prompt de Comando da BeagleBone Black .......................................................... 6
Instalando e Configurando o PuTTY no Windows 7 ............................................................. 6
Instalando e Configurando o PuTTY no Windows 8 ............................................................. 8
Usando Mquina Virtual Linux ............................................................................................ 23
Oi Mundo!!! (Hello World!!!) .................................................................................................. 25
Prompt de Comando: ............................................................................................................ 25
Programa em Linguagem C++:............................................................................................. 27
Arduno .................................................................................................................................... 29
Instalao do Software Arduno: .......................................................................................... 31
Modificaes no Software Arduno para que ele aceite o Padro ANSI C: ..................... 38
Programando o Arduno com o Software Arduno no Windows.......................................... 39
Programando o Arduno com o Software Ino no Linux (Debian) ........................................ 43
Exemplo Oi Mundo!: ....................................................................................................... 44
Instalando o GEDIT no Debian do Kit BeagleBone Black a partir de um Sistema Operacional
Linux......................................................................................................................................... 49
Introduo
O Microprocessador (P) ARM Cortex-A8 AM335x foi escolhido dentre muitos outros por
apresentar as seguintes caractersticas:
de baixo custo pode ser adquirido por menos de cinco dlares (US$5,00), quando
adquirido em larga escala;
Foi projetado de modo a reduzir em 30% o custo dos dispositivos industriais. Isto
acontece porque o AM335x traz internamente grande parte do hardware que deve ser
implementado externamente caso a escolha do projeto seja outro microcontrolador ou
microprocessador;
Haskell), Lua (lqt, QtLua), Dao (DaoQt), Tcl (qtcl), Common Lisp (CommonQt),
D (QtD);
Executa o Sistema Operacional de Tempo Real QNX e FreeBSD. Vale ressaltar que
o Sistema Operacional QNX utilizado no desenvolvimento de controle para
sistemas crticos em avies, usinas termonucleares, equipamentos mdicos,
automveis, usinas hidreltricas, dentre outros;
Alm disso, muitos alunos ao longo do curso de Controle e Automao, Engenharia Eltrica,
Mecatrnica, Eletrnica e Telecomunicaes e Cincia da Computao, desenvolvem IC,
projetos interdisciplinares, participam de campeonatos onde precisam desenvolver o
acionamento e controle de drones, automodelos e humanides. Muitas destas aplicaes
necessitam realizar processamento de imagem, executar novos algoritmos de controles,
processamento de sinais, dentre outras tarefas que exigem muito processamento.
Neste sentido, para que os alunos tenham condies de aplicar seus conhecimentos e expandir
seus horizontes na rea de engenharia eltrica, optou-se por utilizar um microcprocessador que
possusse recursos compatveis com as diversas atividades atualmente praticadas por eles.
Isto posto, vale salientar que em se tratando de sistema operacional, a BeagleBone Black conta
com vrias opes: Angstrom ( que uma distribuio de Sistema Operacional Linux para
sistemas embarcados), Ubuntu, Debian, Android, QNX, dentre outros.
Nos exemplos apresentados neste documento, o sistema operacional que ser utilizado o
Angstrom. No entanto, os conceitos e exemplos apresentados, no so restritos ao
processador am335x ou ao sistema operacional Angstrom. O processador e o sistema
operacional servem apenas como ferramentas didticas para:
Caractersticas de Hardware do
Microprocessador ARM Cortex-A8 AM335x
BeagleBone Black
OBS: Para instalar o PuTTY, prossiga a partir do Passo 7: Realizar o download e instalar
o PuTTY que se encontra no prximo item: Instalando e Configurando o PuTTY no
Windows 8
Passo 4: Clique em Atualizao e recuperao. On screen that shows up, select the General
option from the sidebar then scroll down the page that appears.
O Xming pode ser usado com implementaes de Secure Shell (SSH) para transmitir de forma
segura X11 sesses de outros computadores. Ele suporta PuTTY e ssh.exe, e vem com uma
verso do PuTTY plink.exe. O projeto Xming tambm oferece uma verso porttil do PuTTY.
http://sourceforge.net/projects/xming/
Na sequncia, clique em Save para salvar a seo com o nome BeagleBone Black.
Em seguida, d um clique duplo no nome BeagleBone que foi criado e, caso a mensagem
PuTTY Security Alert aparea, clique em Sim
No entanto, at este ponto, a conexo somente ocorre entre o kit BBB e o PC. Para que o kit
tenha acesso a internet e aos programas que devem ser instalados, so necessrias mais algumas
configuraes, conforme especificado a seguir:
No entanto, at este ponto, a conexo somente ocorre entre o kit BeagleBone Black e o PC.
Para que o kit tenha acesso a internet e aos programas que devem ser instalados, so necessrias
mais algumas configuraes.
Neste caso, a conexo utilizada para acessar a internet a Wi-Fi. Para permitir que o kit utilize
esta conexo para acessar a internet, clique com o boto direito do mouse sobre esta conexo
e clique em Propriedades.
Ainda na janela Conexes de Rede, clique com o boto direito do mouse sobre o cone Conexo
Local 3 (Que neste exemplo a conexo da BeableBone Black), opte por propriedades,
conforme indicado na figura abaixo:
Quando a janela Propriedades de Conexo Local surgir, escolha a opo Protocolo TCP/IP
Verso 4 (TCP/IPv4) e clique em Propriedades, como mostrado a seguir:
OBS: Seu firewall pode impeder a conexo. Por isso, caso a conexo no ocorra, tente
desabilitar seu firewall.
Para acessar a internet utilizando os nomes DNS execute os seguintes comandos na linha de
comando:
root@beaglebone:~# cd /etc
Disciplina de Sistemas Embarcados Faculdade de Engenharia Eltrica UFU Pgina 21
1 Edio 09/2014
Para salvar o arquivo pressione as teclas (Ctrl + o), depois <Entrer> e por fim (Ctrl + x).
OBS: Quando for criar ou editar um arquivo na BeagleBone Black a partir do Windows, no utilize os editores
do Windows, tipo Wordpad. Instale e utilize editores que so compatveis com com o Sistema Operacional
Unix, como o Notepad++, por exemplo
O formato de arquivos de texto Windows e Unix so um pouco diferentes. No Windows, as linhas terminam
com caracteres ASCII tanto o avano de linha e retorno de carro, mas Unix utiliza apenas uma linha de
alimentao. Como consequncia, alguns aplicativos do Windows no vo mostrar as quebras de linha em
arquivos formato Unix. Da mesma forma, programas Unix podem exibir os retornos de carro em arquivos de
texto do Windows com (^ H) caracteres no final de cada linha.
Notepad ++ um software livre, open source, editor de cdigo fonte e substituio ao Notepad que suporta
vrias lnguas. Segue o link para download do software Notepad++:
https://notepad-plus-plus.org/
O Software Ino pode substituir a IDE do Arduno se voc preferir trabalhar com o prompt de
comando e um editor de sua preferncia ou se preferir integrar o processo de compilao com
uma interface grfica adequada e de sua preferncia.
As informaes para a instalao do Ino no Ubuntu (mas tambm vale para o Debian), podem
ser encontradas em:
http://playground.arduino.cc/Linux/Ubuntu
http://unix.stackexchange.com/questions/110014/how-to-install-the-latest-python-version-on-
debian-separately-or-upgrade
https://pip.pypa.io/en/latest/installing.html
http://developer.ridgerun.com/wiki/index.php/Setting_up_Picocom_-_Ubuntu
https://pypi.python.org/pypi/ino/
No entanto a mquina virtual disponibilizada, j possui a ferramenta Ino instalada. Para fazer o
download da mquina virtual pronta ou para montar uma, acesse o seguinte link:
https://mega.nz/#F!Mt8UBbpD!Vt7fsRptFnDBrnP8Uic4kQ
Se a aba mostrar Disconnect (Connect to host) significa que a USB da BeagleBone Black foi
capturada pelo VMware.
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that a host key has just been changed.
The fingerprint for the RSA key sent by the remote host is
45:79:10:4a:2c:3c:ff:be:92:d5:18:f7:e2:41:80:8e.
Please contact your system administrator.
Add correct host key in /home/ufu/.ssh/known_hosts to get rid of this message.
Offending RSA key in /home/ufu/.ssh/known_hosts:1
remove with: ssh-keygen -f "/home/ufu/.ssh/known_hosts" -R 192.168.7.2
RSA host key for 192.168.7.2 has changed and you have requested strict checking.
Host key verification failed.
Prompt de Comando:
root@beaglebone:~# mkdir Oi
root@beaglebone:~# cd Oi
ou
Em seguida copie o programa (Ctrl + C) na caixa amarela e cole no editor GEDIT (Ctrl + V).
#include <stdio.h>
int main()
{
printf("Oi Mundo!!! \n");
}
root@beaglebone:~/Oi# ls -l
total 12
-rwxr-xr-x 1 root root 5041 May 15 03:44 Oi
-rw-r--r-- 1 root root 64 May 15 03:43 Oi.c
root@beaglebone:~/Oi#
root@beaglebone:~/Oi# ./Oi
Oi Mundo!!!
Em seguida copie o programa (Ctrl + C) na caixa amarela e cole no editor gedit (Ctrl + V).
#include<iostream>
using namespace std;
int main(void)
{
cout << "Oi Mundo!!!" << endl;
}
root@beaglebone:~/Oi# ls -al
total 32
drwxr-xr-x 2 root root 4096 May 15 02:29 .
drwx------ 8 root root 4096 May 15 02:21 ..
-rwxr-xr-x 1 root root 5041 May 15 02:24 Oi
-rw-r--r-- 1 root root 65 May 15 02:23 Oi.c
-rw-r--r-- 1 root root 95 May 15 02:29 Oi.cpp
root@beaglebone:~/Oi# ./Oi++
Oi Mundo!!!
root@beaglebone:~/Oi#
Arduno
Arduno uma plataforma de prototipagem eletrnica de hardware livre e de placa nica
projetada com um microcontrolador Atmel AVR com suporte de entrada/sada embutido,
utiliza a linguagem de programao padro C/C++. No entanto, a programao do Arduno no
utiliza a mesma anatomia de programao utilizada na programao ANSI C padro.
//program constants
#define TRUE 1
#define FALSE 0
#define ON 1
#define OFF 0
//interrupt handler definitions Used to link the software to hardware interrupt features
//global variables Listing of variables used throughout the program
//main program
void main(void)
{
body of the main program
}
void setup () {
The setup() function is called when a sketch starts. Use it to initialize variables,
pin modes, start using libraries, etc. The setup function will only run once, after
each powerup or reset of the Arduino board.
}
void loop () {
After creating a setup() function, which initializes and sets the initial values,
the loop() function does precisely what its name suggests, and loops consecutively,
allowing your program to change and respond. Use it to actively control the
Arduino board.
}
Alm disso, o Arduno disponibiliza muitas funes que abstraem o hardware e facilitam para
o leigo o desenvolvimento do algoritmo. Assim sendo, o Arduno torna-se esquematizado para
introduzir a programao a artistas e a pessoas no familiarizadas com o desenvolvimento de
software.
Por isso, algumas alteraes sero realizadas no Software Arduno para que permita a
programao com a anatomia ANSI C padro.
Pasta no Mega com o Software Arduno Modificado (Pode no ser a verso mais recente):
https://mega.nz/#F!01VhlARK!9YOoen5s-nQ-C6q0xybUqQ
Utilize um dos links abaixo para fazer o download e instalar o Software Arduno.
Clique em Download e depois em Windows ZIP file for non admin install
Quando a janela Contribute to the Arduno Software surgir, opte por JUST DOWNLOAD,
caso prefira realizar o download gratuitamente ou CONTRIBUTE & DOWNLOAD se desejar
doar dinheiro para o projeto Arduno e realizar o download posteriormente.
Em seguida, necessrio instalar o driver do Arduno. Para realizar esta tarefa, acesse o painel
OBS: Para instalar o driver, necessrio que o kit Arduno esteja devidamente conectado
na USB do notebook ou PC.
C:\arduino-1.6.5-r5\hardware\arduino\avr\cores\arduino
Para abrir a IDE do Software Arduno, acesse a pasta de instalao, localize o programa
executvel denominado arduino.exe e clique duas vezes sobre ele.
Para criar um atalho na rea de trabalho, clique com o boto direito do mouse sobre o nome do
arquivo arduino.exe e opte por Enviar para -> rea de trabalho (criar atalho), como
mostrado a seguir:
Oi Mundo!!!
#include <stdint.h>
#include <avr/io.h>
#include <util/delay.h>
//-----------------------------------------------------------------------------------------
//---- Direcionando o fluxo de dados de printf para a Serial (UART) ----
static int uart_putchar (char c, FILE *stream)
{
Serial.write(c) ;
return 0 ;
}
//-----------------------------------------------------------------------------------------
int main(void)
{
// create a FILE structure to reference our UART output function
static FILE uartout = {0} ;
while(1)
{
printf("Oi Mundo!!!\n");
_delay_ms(1000); // espera 1 segundo (1000 milissegundos).
}
}
Com o kit Arduno conectado ao Notebook ou PC, verifique se em Ferramentas -> Placa: o
kit adequado est selecionado.
Em Ferramentas -> Porta: verifique se a porta adequada est selecionada, como mostrado
abaixo:
Para salvar, compilar e realizar o upload do cdigo para o kit Arduno, clique em
O kit do Arduno UNO possui uma interface serial, conforme indicado na figura abaixo:
Esta interface est ligada aos pinos digitais 0 (RX) e 1 (TX) do microcontrolador
ATMEGA328P-PU e esses mesmos pinos esto ligados a interface serial do ao
microcontrolador ATMEGA16U2, responsvel pela traduo do sinal para comunicao USB
com o computador (PC).
Esta configurao permite que um programa rodando no microcontrolador ATMEGA328P-PU
receba e envie dados para o PC.
Por outro lado, no PC, o software Arduno, possui uma interface denominada Serial Monitor
especfica para enviar e receber os dados enviados pelo ATMEGA328P-PU.
Porm, para que as funes printf(), puts() e getchar() possam ser utilizadas para enviar os
dados para o Serial Monitor, necessrio utilizar a biblioteca uart.h. Ela ir direcionar o fluxo
de dados para a porta serial do microcontrolador ATMEGA328P-PU.
Exemplo Oi Mundo!:
main.c
#include <stdio.h>
#include <util/delay.h>
#include "uart.h"
int main(void) {
uart_init();
stdout = &uart_output;
stdin = &uart_input;
char input;
while(1) {
printf("Oi ");
puts("Mundo!");
_delay_ms(1000);
}
return 0;
}
O exemplo mostra que tanto o comando printf() quanto o comando puts() podem ser utilizados
para enviar dados.
Apostilas: https://mega.co.nz/#F!VhsRBSAY!ql-q02nfmc9GKtEctZf8Bg
Faa download do arquivo Oi.zip. Em seguida, crie uma pasta dentro da pasta
/home/ufu/Arduino. Exemplo:
ufu@SE:~/Arduino/Ana$ cd Oi/
ufu@SE:~/Arduino/Ana/Oi$ ino build
ufu@SE:~/Arduino/Ana/Oi$ ino upload
OBS: Para sair do modo ino serial, pressione < Ctrl + a > < Ctrl + x >
ufu@SE:~$ arduino
Para abrir a janela do Serial Monitor, pressione (Ctrl + Shift + M) ou utilize o menu, como
indicado a seguir:
O resultado esperado :
Support/FAQ: http://elinux.org/Beagleboard:BeagleBoneBlack_Debian
root@beaglebone:~#
Configurando um Proxy
www.omegaflix.com