Escolar Documentos
Profissional Documentos
Cultura Documentos
CÓDIGO-FONTE
https://bitbucket.org/patacongo/nuttx
http://sourceforge.net/projects/nuttx/files/
SITE DO PROJETO
http://www.nuttx.org/doku.php?id=nuttx
USER GUIDE
http://www.nuttx.org/doku.php?id=documentation:userguide
O toolchain para compilar o nuttx pode ser obtido do projeto GCC ARM Embedded neste
link https://launchpad.net/gcc-arm-embedded.
Para testar:
$ arm-none-eabi-gcc -v
No caso do ubuntu o toolchain baixado não funcionou, mas isto não é o problema o arm-gcc
pode ser baixado pelo apt-get como neste link:
https://launchpad.net/~terry.guo/+archive/ubuntu/gcc-arm-embedded
no mesmo diretorio em que o nuttx foi clonado (não dentro do fonte) clone também as
aplicacoes adicionais para o nuttx:
Agora entre no source do nuttx e digite os seguintes comandos para atualizar o repositorio
Para configurar o nuttx é preciso utilizar o make menuconfig. Entretanto ele não é um
pacote padrao do sistema operacional no caso o UBUNTU.
As ferramentas de desenvolvimetno padrão eu não testei se funcionão, mas eu o kconfig
disponivel no site do nuttx: https://github.com/projectara/nuttx/tree/master/misc/tools
. Lá é possível encontrar também informaçoes sobre como compilar a ferramenta.
Aqui também é possível obter informações relevantes:
http://www.nuttx.org/doku.php?id=wiki:howtos:convertconfig
$ ./configure
$ make
$ sudo make install
Após isto a ferramenta estará disponivel para ser utilizada, caso não seja possivel utiliza-la
instale suas bibliotecas estaticamente.
O nuttx está disponicel para uma grande quantidade de plataformas como pode ser visto
dentro do diretorio configs/ dentro do src do nuttx:
$ ls configs/
amber lm3s8962-ek olimex-stm32-p207 stm3210e-eval
arduino-due lm4f120-launchpad olimex-strp711 stm3220g-eval
avr32dev1 lpc4330-xplorer open1788 stm3240g-eval
boardctl.c lpc4357-evb p112 stm32f3discovery
c5471evm lpcxpresso-lpc1115 pcblogic-pic32mx stm32f429i-disco
cc3200-launchpad lpcxpresso-lpc1768 pcduino-a10 stm32f4discovery
cloudctrl Make.dep pic32mx7mmb stm32f746g-disco
compal_e86 Makefile pic32mx-starterkit stm32ldiscovery
compal_e88 maple pic32mz-starterkit stm32_tiny
compal_e99 mbed pirelli_dpl10 stm32vldiscovery
demo9s12ne64 mcu123-lpc214x qemu-i486 sure-pic32mx
dk-tm4c129x micropendous3 README.txt teensy-2.0
ea3131 mikroe-stm32f4 rgmp teensy-3.x
ea3152 mirtoo sam3u-ek teensy-lc
eagle100 moteino-mega sam4e-ek tm4c123g-launchpad
efm32-g8xx-stk mt-db-x3 sam4l-xplained tm4c1294-launchpad
efm32gg-stk3700 mx1ads sam4s-xplained twr-k60n512
ekk-lm3s9b96 ne64badge sam4s-xplained-pro ubw32
ez80f910200kitg ntosd-dm320 sama5d3x-ek us7032evb1
ez80f910200zco nucleo-f4x1re sama5d3-xplained
viewtool-stm32f107
fire-stm32v2 nucleus2g sama5d4-ek vsn
freedom-kl25z nutiny-nuc120 samd20-xplained xtrs
freedom-kl26z olimex-efm32g880f128-stk samd21-xplained
z16f2800100zcog
hymini-stm32v olimexino-stm32 saml21-xplained z80sim
Kconfig olimex-lpc1766stk samv71-xult z8encore000zco
kwikstik-k40 olimex-lpc2378 shenzhou z8f64200100kit
lincoln60 olimex-lpc-h3131 sim zkit-arm-1769
lm3s6432-s2e olimex-stm32-h405 skp16c26 zp214xpa
lm3s6965-ek olimex-stm32-p107 spark
Para configurar o Nuttx para uma plataforma de hardware, basta entrar no diretorio tools e
executar o script configure.sh para a plataforma desejada.
$ cd tools/
$ ./configure.sh stm32f4discovery/usbnsh
$ cat .config
$ make
$ ls -l nuttx*
-rwxrwxr-x 1 sprado sprado 75682 Jul 21 17:29 nuttx
-rwxrwxr-x 1 sprado sprado 39264 Jul 21 17:29 nuttx.bin
-rwxrwxr-x 1 sprado sprado 105738 Jul 21 17:29 nuttx.srec
Para testar o código pode ser utilizado o ckermit para conectar na porta ttyACM0
enumerada pela discorvery quando o nuttx está rodado.
depois deste ultimo comando o programa kermit estaraá em execução então é só digitar a
letra ‘c’ e depois pressionar enter para escutar a porta:
Posteriormente o c kermit abre uma interface para escutar a porta que foi aberta:
(/home/fadriano/embedded/OS/nuttx/src/nuttx/) C-Kermit>c
Connecting to /dev/ttyACM0, speed 9600
Escape character: Ctrl-\ (ASCII 28, FS): enabled
Type the escape character followed by C to get back,
or followed by ? to see other options.
----------------------------------------------------
NuttShell (NSH)
nsh>
nsh> ls
/:
dev/
nsh>
nsh> help
help usage: help [-v] [<cmd>]
Builtin Apps:
adc
buttons
hello
REFERENCIAS
http://sergioprado.org/o-sistema-operacional-de-tempo-real-nuttx/