Sou um iniciante em sistemas embarcados, mas estou ansioso para aprender mais. Eu usei um Arduino anteriormente e recentemente comprei um Raspberry Pi (mas não o usei tanto). Eu tenho inúmeras perguntas que eu não encontrei respostas ao usar o Google, assim, o post! Eu apreciaria qualquer insight (desculpas antecipadamente se minhas perguntas parecerem ingênuas!).
Recentemente, tenho trabalhado em algum código de processamento de imagem usando algumas bibliotecas de processamento de imagem. Meu código é escrito usando C ++ no Visual Studio no Windows XP. Meu programa usa recursos multi-threading em vários estágios principalmente porque algumas das tarefas de processamento consomem muito tempo. Minha intenção é transferir esse código de trabalho e instalar as bibliotecas de back-end (OpenCV, Boost etc.) em um sistema embarcado que é meramente conectado a uma câmera.
- Da minha pesquisa, parece que o sistema embarcado de topo da linha tem um máximo de 500 Mhz ( link ). Isso realmente me surpreende, nós temos PCs i7 Quadcore rodando a 2.5 Ghz disponíveis bastante comumente para Laptops / Desktops. Por que os sistemas embarcados não foram atingidos por esse aumento? Também a memória máxima que eu vi é de 500 MB. Novamente, os desktops têm em média pelo menos 4 a 8 GB. Nós temos sistemas embarcados dual / quad-core? Qual é o sistema top de linha atualmente disponível?
- Para permitir uma transição inicial fácil, ouvi dizer que o XP Embedded ou o Windows Embedded 7 Standard (variante incorporada do Win 7) são alternativas. Aqui está um gráfico de diferenças. No entanto, eu li em alguns lugares que o Windows Embedded 7 tem mais suporte a RAM e, portanto, estou inclinado a isso apenas por esse motivo. Alguém pode adicionar a isso por favor? Eu sei que eu poderia usar o Linux Embedded ou o VxWorks também, mas neste momento eu acredito que eu iria me deparar com vários problemas relacionados ao SO com meu código se eu continuasse e talvez as bibliotecas não fossem suportadas ...
- Encontrei os sistemas PC-104 algumas vezes nas minhas pesquisas. Lendo sobre isso, parece ser padrão. Existem alternativas melhores? Estou um pouco confuso com os processadores ARM top de linha que eu encontrei desde que eu não acho que eles satisfazem o mínimo requisitos de hardware para executar o sistema operacional (processador x86 ou amd64 de 1 GHz).
- Meu principal motivo para fazer a transição para isso é aprender algo interessante no processo e ter uma solução dedicada sem cabeça e projetada para executar apenas uma tarefa específica (esperamos que seja em tempo real).