Arquivo
Como usar git subtree com o BRTOS
Com a mudança de repositório do BRTOS do SVN no Googlecode para o GIT no Github percebemos a falta no GIT de uma funcionalidade muito interessante do SVN e que é a possibilidade de fazer “SVN checkout/commit” de alguns diretórios selecionados do repositório ao invés do repositório inteiro. Assim, por exemplo, o usuário podia ter um subdiretório do BRTOS dentro do seu projeto principal, e podia mantê-lo sempre atualizado com o repositório principal do BRTOS e, até mesmo, submeter correções e atualizações a partir deste subdiretório.
Com o Git, embora seja possível se ter um subdiretório sempre atualizado, usando o “git subdmodules” ou o “git checkout”, as alterações feitas no subdiretório não podem ser diretamente enviadas ao repositório principal. Mas nem tudo está perdido, pois o Git oferece uma alternativa chamada “git subtree” que permite ter uma funcionalidade similar àquela do SVN, embora com um pouco mais de trabalho. A seguir vamos explicar como usar o “git subtree” em um projeto que utiliza o BRTOS.
BRTOS Reference manual available for download
Novo serviço do BRTOS: “soft timers”
Mais uma novidade do BRTOS… agora o BRTOS conta com um novo serviço: os timers em software (ou “soft timers”, ou apenas “timers”). Um “soft timer” permite executar uma função em um determinado tempo no futuro. Ainda, ele pode ser configurado para funcionar periodicamente, com período variável ou apenas uma única vez (“one shot”).
Muitas vezes em um projeto precisamos executar alguma função periodicamente (por exemplo, incrementar um contador de tempo ou gerar eventos temporizados). Leia mais…
Melhora do desempenho do BRTOS com a versão 1.76
Em uma postagem anterior utilizamos a ferramenta de benchmark neutra e de código aberto Thread-Metric para analisar o desempenho do BRTOS em um determinado mcirocontrolador, neste caso, o Coldfire V1. Passado um ano, o BRTOS sofreu correções, modificações e melhorias. Para verificar o impacto destas modificações no desempenho do BRTOS resolvemos aplicar os testes do Thread-Metric nas diferentes versões do sistema. O BRTOS encontra-se atualmente na versão 1.76 e é comparado neste artigo com a versão 1.45.
BRTOS para o TI Stellaris LM4F120 (EK-LM4F120XL)
Mais uma novidade da equipe do BRTOS está disponível, o port para o novo microcontrolador da Texas, o LM4F120, baseado no core ARM Cortex-M4F. O port foi desenvolvido para o compilador do Code Composer e possui suporte para o salvamento condicional do contexto de ponto flutuante e interrupções aninhadas. O demo é composto por algumas tarefas, onde uma delas é responsável pela troca de cores do LED RGB do kit e outra implementa um terminal através de uma porta serial virtual (USB / classe CDC). Esse demo utiliza a biblioteca stellaris, ou seja, você pode aumentar as funcionalidades agregando funções implementadas na StellarisWare. O kit utilizado foi o EK-LM4F120XL.
Faça o download do demo no google code do BRTOS e experimente !!!
LwIP integrado ao demo do STM32F4
Gostaríamos de anunciar mais uma novidade da equipe do BRTOS, o demo do stack TCP/IP LwIP integrado ao BRTOS para os microcontroladores STM32F4. A grande vantagem deste port é a utilização do compilador GNU GCC (integrado ao CoIDE)… ou seja, não há limitações de tamanho de código para o compilador. O kit utilizado foi novamente o STM32F4DISCOVERY, sendo que o módulo PHY ethernet utilizado (DP83848) e as conexões estão disponíveis aqui.
Faça o download do demo no google code do BRTOS e experimente !!!
Port do BRTOS 1.7x para o ST STM32F4x, um microcontrolador ARM Cortex-M4F com unidade de ponto flutuante
É com grande satisfação que anunciamos um novo port para o BRTOS, o port para a linha de microcontroladores STM32F4x, da ST Microelectronics. Esse microcontrolador é baseado no core ARM Cortex-M4F de alto desempenho, que atinge 210 DMIPS/469 CodeMark executando o código da memória FLASH com 168MHz de frequência de operação. As instrução de DSP e a unidade de ponto flutuante aumentam muito a gama de aplicações para este microcontrolador.
BRTOS 1.75 + LwIP, a pilha de protocolos TCP/IP mais famosa do código open source
Após um longo período sem grandes novidades temos o prazer de anunciar o porte do BRTOS para o LwIP !!! A muito tempo vinhamos pensando em disponibilizar este porte do BRTOS para um dos mais famosos stacks TCP/IP existentes para sistemas embarcados. Essa idéia saiu do papel quando nosso grande amigo e colaborador, Sérgio Prado do blog http://sergioprado.org/, anunciou um curso de FreeRTOS que, entre outros assuntos, iria abordar o porte do FreeRTOS para o LwIP. Apesar de ser um ótimo curso, o que mais nos chamou a atenção era o kit utilizado no curso, pois possuíamos este kit para testes do BRTOS. Assim, poderíamos testar o porte com os mesmos drivers. Não perdi tempo e contatei o Sérgio pedindo o projeto de demonstração para ter acesso aos drivers e prontamente, como sempre, recebi sua ajuda.
BRTOS tocando arquivos MP3 no KwikStick!
Para todos aqueles que já estavam esperando anunciamos o primeiro demo do BRTOS tocando arquivos MP3 para o KwikStik. Afinal quem nunca olhou para o KwikStik e viu um MP3 player? Pois bem, agora todo mundo pode converter seu KwikStik em um. Para isso, é só fazer download do demo no site do BRTOS.
O decodificador MP3 utilizado no projeto é o Helix MP3 Decoder (disponível aqui ). Este decodificador é uma implementação de ponto fixo em 32 bits otimizada para processadores ARM e com suporte total a arquivos MP3. Entretanto, no demo estamos suportando inicialmente arquivos MP3 de até 64kbps com taxa de amostragem de até 22.05kHz, devido ao menor consumo de memória. Porém, o projeto pode ser facilmente estendido para arquivos MP3 de maior taxa de bits e amostragem.
Como importar o projeto do colduino no CodeWarrior 10.2
No início do colduino tivemos dúvidas de qual IDE seria a oficial do projeto, ou seja, com qual IDE os demos seriam desenvolvidos. Com o lançamento da versão 10.2 do Freescale CodeWarrior esta dúvida não existe mais. A IDE está mais rápida e estável, resolvendo uma série de problemas existentes nas versões anteriores. Recomendamos a versão Special, que é gratuita até 64KB de código. Existem versão para download do CodeWarrior 10.2 para windows e linux.
Os demos para o colduino de 128KB e de 256KB de FLASH já estão disponíveis para download no google code do colduino. Vale lembrar que a diferença de FLASH não é o principal ponto, visto que a versão gratuita do CodeWarrior somente irá compilar o código até 64KB. A principal diferença é que o colduino com 128KB de FLASH possui 16KB de RAM e o colduino com 256KB de FLASH possui 32KB de RAM.