Visão geral do desenvolvimento¶
A seção Desenvolvimento ajuda você a transformar uma placa SF32 funcional em firmware de produto fácil de manter. Depois de executar hello_world com sucesso pela primeira vez, use este conteúdo para selecionar a configuração da placa, compilar e gravar o firmware de forma reproduzível, adaptar um exemplo próximo do seu caso, integrar os recursos do produto, diagnosticar falhas e planejar atualizações e recuperação.
Consulte Primeiros passos para a primeira execução da placa; Produtos SF32 para escolher o dispositivo e a placa de desenvolvimento; Hardware para esquemáticos e hardware de produção; e Aprender para entender os fundamentos da arquitetura. Use esta seção quando precisar de um fluxo de engenharia e de orientações de implementação para tarefas específicas.
SiFli-Solution
SiFli-Solution é outro pacote de software da SiFli que a μForge.io ainda não documenta. O conteúdo desta seção se limita ao SiFli-SDK e às alternativas da comunidade listadas abaixo. Se o produto precisar de uma solução mais completa para dispositivos com display, consulte a documentação oficial do SiFli Solution e entre em contato diretamente com a SiFli. Um produto complexo que siga esse caminho pode exigir envolvimento direto e aprofundado da SiFli.
Estabeleça uma base de referência com o SiFli-SDK¶
SiFli-SDK é o pacote oficial da SiFli baseado em RT-Thread e o caminho de desenvolvimento de referência para o firmware SF32. Comece por ele, a menos que exista um motivo concreto para avaliar outro ecossistema: é a base com a documentação mais abrangente para suporte a placas, Bluetooth, gráficos, áudio, armazenamento, gerenciamento de energia e desenvolvimento para produção.
Antes de implementar os recursos do produto, estabeleça e registre uma base reproduzível:
- Selecione a configuração exata da placa do SDK em Configuração da placa.
- Execute com sucesso o fluxo de Compilar, gravar e monitorar a saída serial.
- Registre a versão ou o commit do SDK, o nome da placa, os comandos de compilação e gravação, as configurações da porta serial e um log de inicialização.
- Comece pelo exemplo mais próximo, de preferência um que já exercite o subsistema mais complexo do produto.
Esse registro servirá de referência para futuras alterações na aplicação, adaptações para outras placas, análise de falhas em testes e recuperação em campo.
Encontre orientações por tarefa¶
| Tarefa | Comece por aqui | Em seguida, consulte |
|---|---|---|
| Compilar e gravar o firmware; verificar a saída serial | Compilar, gravar e monitorar a saída serial | Ferramentas para gravação automatizada, rastreamento e utilitários de análise de falhas. |
| Adaptar o firmware a uma placa de desenvolvimento, módulo ou hardware próprio | Configuração da placa | O guia de hardware correspondente e o exemplo mais próximo para essa placa. |
| Reutilizar um driver ou uma camada de middleware em vários projetos | Componentes e sf_pkg |
Um exemplo mínimo e os limites de configuração documentados. |
| Implementar um periférico ou subsistema específico | Notas de aplicação do SDK | O guia oficial do SDK vinculado, que especifica as APIs, os símbolos de configuração e os comandos. |
| Começar o desenvolvimento do produto com código que já funciona | Exemplos | A configuração correspondente da placa e testes após cada alteração. |
| Diagnosticar uma falha ou coletar evidências do produto | Depuração e diagnóstico | Logs e análise de falhas. |
| Alterar o layout de boot, o armazenamento, as atualizações, o USB ou o comportamento de energia | Tópicos de firmware | O tópico correspondente sobre partições, atualizações, USB, energia ou logs antes de alterar o código. |
Notas de aplicação do SiFli-SDK¶
As notas de aplicação são organizadas por tarefa de integração, não pela ordem do catálogo do SDK. Comece pelo subsistema de interesse. Antes de reutilizar uma configuração ou um comando, confira o escopo de famílias de chips, a configuração da placa, a versão do SDK e os pré-requisitos de hardware indicados.
| Área de engenharia | Ponto de partida nas notas de aplicação |
|---|---|
| Analógico e sensores | Amostragem com GPADC · Integrar e ler sensores |
| Armazenamento e recursos gráficos | Uso de Flash externa · Comprimir recursos gráficos com EZIP |
| Confiabilidade, energia e depuração | Configurar o watchdog · Configurar e medir o baixo consumo · Capturar logs e analisar falhas |
| Validação de RF e Bluetooth | Executar testes de RF com o SiFli-SDK · Executar testes de sinalização Bluetooth · Executar testes individuais de RF para Bluetooth |
Navegue pela seção Desenvolvimento¶
| Área | Finalidade |
|---|---|
| SiFli-SDK | Estabelecer o fluxo de referência com suporte: configuração, compilação, gravação, componentes reutilizáveis e diagnóstico. |
| Notas de aplicação do SDK | Aplicar o SDK a uma tarefa específica, como ADC, sensores, Flash externa, baixo consumo, diagnóstico ou testes de RF e Bluetooth. |
| Exemplos | Selecionar e adaptar uma implementação funcional para a placa exata e o subsistema mais complexo do produto. |
| Ferramentas | Escolher ferramentas de download, monitoramento, rastreamento, análise de falhas, recursos e produção. |
| Tópicos de firmware | Tomar decisões transversais sobre partições, OTA/DFU, USB, gerenciamento de energia e evidências de diagnóstico. |
| Experimental / comunidade | Avaliar Zephyr, Arduino, MicroPython ou Rust considerando o escopo e o nível de maturidade indicados em cada página. |
Avalie com critério as alternativas da comunidade¶
O grupo Experimental / comunidade é destinado a equipes que têm um motivo para ir além do caminho de referência do SDK. Isso não significa que essas alternativas tenham o mesmo nível de suporte para produção.
| Caminho | Considere quando | Entenda como |
|---|---|---|
| Zephyr | Você precisa das APIs do Zephyr, de devicetree, Kconfig ou de trabalho downstream com placas. | Um caminho de avaliação downstream, específico para cada placa. |
| Arduino | Você precisa de sketches ou de um protótipo rápido de periférico em uma placa compatível. | Um caminho beta limitado à placa compatível. |
| MicroPython | Você está avaliando o suporte futuro a scripts. | Uma página de status até existir um port público e reproduzível. |
| Rust | Você pode avaliar o trabalho de HAL/PAC e contribuir com correções upstream. | Um caminho da comunidade ainda em desenvolvimento. |
Antes de adotar um desses caminhos para um produto, valide na placa exata todos os periféricos necessários, o layout da Flash, o método de depuração e o procedimento de recuperação. Registre a revisão testada, a configuração, os comandos e os resultados junto ao código-fonte do produto.
Evidências de prontidão do firmware para o produto¶
Antes de considerar um caminho de firmware pronto para ser incorporado ao produto, confirme que você consegue responder:
- Qual chip, revisão da placa ou do hardware próprio e configuração foram testados?
- Qual SDK, pacote, branch ou commit gerou o firmware?
- Quais comandos de compilação, gravação, monitoramento e recuperação completa funcionam?
- Qual exemplo ou teste comprova cada periférico e subsistema necessário do produto?
- Qual layout de partições, comportamento de atualização, meta de consumo de energia e caminho de decodificação de falhas foram validados?
Se faltar alguma resposta, o trabalho ainda pode ser um protótipo útil, mas não constitui uma base de firmware reproduzível para o produto.
Última atualização: