Esse artigo tem o objetivo de explicar como é feito a conexão pelo terminal serial. Este artigo também é continuação do MIC113 (Passos Iniciais), MIC114 (Parte I), MIC117 (Parte II), MIC120 (Parte III).

 

Procedimento

É necessário para conectar a BeagleBone Black um conversor Serial de 3,3V. Muitos conversores prontos com USB ? Serial para Arduino podem ser utilizados para essa tarefa. O conversor utilizado aqui foi um semelhante ao abaixo:

 

Figura 1 – Conversor USB ? Serial para 3,3V ou 5V
Figura 1 – Conversor USB ? Serial para 3,3V ou 5V

 

Para a operação em si utilizaremos 3 pinos apenas: o pino de terra, o TX(transmissor) e o RX(receptor). Você terá que conectar os três pinos na BeagleBone no conector J1 conforme a figura abaixo:

 

Figura 2 – Conector J1 – Conexão Serial
Figura 2 – Conector J1 – Conexão Serial

 

O pino 1 é o Terra(GND – ground), o pino 4 é o pino RX(receiver – receptor) e o pino 5 é o TX(transmitter – transmissor).

Ao conetar o adaptador, caso dê tudo certo, você deverá ver a tela abaixo:

 

Figura 3 – Tela inicial
Figura 3 – Tela inicial

 

 

Se o leitor apertar o botão de reset, o boot introdutório da BeagleBone poderá ser visto. Abaixo um exemplo simples, em texto do boot da placa que temos em mãos instalado com a distribuição Linux Angström:

 

U-Boot 2013.04-dirty (Jul 10 2013 - 14:02:53)
I2C:   ready
DRAM:  512 MiB
WARNING: Caches not enabled
NAND:  No NAND device found!!!
0 MiB
MMC:   OMAP SD/MMC: 0, OMAP SD/MMC: 1
*** Warning - readenv() failed, using default environment
musb-hdrc: ConfigData=0xde (UTMI-8, dyn FIFOs, HB-ISO Rx, HB-ISO Tx, SoftConn)
musb-hdrc: MHDRC RTL version 2.0 
musb-hdrc: setup fifo_mode 4
musb-hdrc: 28/31 max ep, 16384/16384 memory
USB Peripheral mode controller at 47401000 using PIO, IRQ 0
musb-hdrc: ConfigData=0xde (UTMI-8, dyn FIFOs, HB-ISO Rx, HB-ISO Tx, SoftConn)
musb-hdrc: MHDRC RTL version 2.0 
musb-hdrc: setup fifo_mode 4
musb-hdrc: 28/31 max ep, 16384/16384 memory
USB Host mode controller at 47401800 using PIO, IRQ 0
Net:   <ethaddr> not set. Validating first E-fuse MAC
cpsw, usb_ether
Hit any key to stop autoboot:  0 
gpio: pin 53 (gpio 53) value is 1
mmc_send_cmd : timeout: No status update
Card did not respond to voltage select!
mmc0(part 0) is current device
Card did not respond to voltage select!
No micro SD card found, setting mmcdev to 1
mmc1(part 0) is current device
mmc_send_cmd : timeout: No status update
gpio: pin 54 (gpio 54) value is 1
SD/MMC found on device 1
reading uEnv.txt
26 bytes read in 4 ms (5.9 KiB/s)
Loaded environment from uEnv.txt
Importing environment from mmc ...
gpio: pin 55 (gpio 55) value is 1
4392800 bytes read in 776 ms (5.4 MiB/s)
gpio: pin 56 (gpio 56) value is 1
24808 bytes read in 59 ms (410.2 KiB/s)
Booting from mmc ...
## Booting kernel from Legacy Image at 80007fc0 ...
   Image Name:   Angstrom/3.8.13/beaglebone
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    4392736 Bytes = 4.2 MiB
   Load Address: 80008000
   Entry Point:  80008000
   Verifying Checksum ... OK
## Flattened Device Tree blob at 80f80000
   Booting using the fdt blob at 0x80f80000
   XIP Kernel Image ... OK
OK
   Using Device Tree in place at 80f80000, end 80f890e7
Starting kernel ...
Uncompressing Linux... done, booting the kernel.
[    0.195604] omap2_mbox_probe: platform not supported
[    0.206348] tps65217-bl tps65217-bl: no platform data provided
[    0.282813] bone-capemgr bone_capemgr.8: slot #0: No cape found
[    0.319918] bone-capemgr bone_capemgr.8: slot #1: No cape found
[    0.357026] bone-capemgr bone_capemgr.8: slot #2: No cape found
[    0.394135] bone-capemgr bone_capemgr.8: slot #3: No cape found
[    0.413931] bone-capemgr bone_capemgr.8: slot #6: BB-BONELT-HDMIN conflict P8.45 (#5:BB-BONELT-HDMI)
[    0.423548] bone-capemgr bone_capemgr.8: slot #6: Failed verification
[    0.444027] omap_hsmmc mmc.4: of_parse_phandle_with_args of 'reset' failed
[    0.451329] bone-capemgr bone_capemgr.8: loader: failed to load slot-6 BB-BONELT-HDMIN:00A0 (prio 2)
[    0.517698] pinctrl-single 44e10800.pinmux: pin 44e10854 already requested by 44e10800.pinmux; cannot claim for gpio-leds.7
[    0.529437] pinctrl-single 44e10800.pinmux: pin-21 (gpio-leds.7) status -22
[    0.536765] pinctrl-single 44e10800.pinmux: could not request pin 21 on device pinctrl-single
[    5.557434] libphy: PHY 4a101000.mdio:01 not found
[    5.562538] net eth0: phy 4a101000.mdio:01 not found on slave 1
systemd-fsck[85]: Angstrom: clean, 51003/112672 files, 314812/449820 blocks
.---O---.                                           
|       |                  .-.           o o        
|   |   |-----.-----.-----.| |   .----..-----.-----.
|       |     | __  |  ---'| '--.|  .-'|     |     |
|   |   |  |  |     |---  ||  --'|  |  |  '  | | | |
'---'---'--'--'--.  |-----''----''--'  '-----'-'-'-'
                -'  |
                '---'
The Angstrom Distribution beaglebone ttyO0
Angstrom v2012.12 - Kernel 3.8.13
beaglebone login:

 

O Login é root e a senha em branco.

O link http://elinux.org/Beagleboard:BeagleBone_Black_Serial  provê as configurações do lado dos diversos adaptadores USB? seriais que existem disponíveis no mercado.

É possível acessar o uBoot através da Serial, o que dá ao usuário a possibilidade de entender como funciona toda a parte de inicialização do sistema. O manual completo do uBoot está disponível no link http://www.denx.de/wiki/DULG/Manual 

 

Conclusão

Aqui foi demonstrado uma conexão com o terminal serial utilizando um adaptador USB ? Serial TTL de 3,3V para acessar o console da BeagleBone.

Até o próximo artigo.