Qualquer coisa que eles fabriquem, nós conseguimos desbloquear! Desbloqueio profissional e extração de firmware para STM8, STM32, ST62, ST72, ST92, PSD e todas as famílias de microcontroladores STMicroelectronics.
Apoiamos o desbloqueio e a extração de firmware para as seguintes séries STM8, STM32, ST62, ST72, ST92, PSD e GAL. Se a sua peça exata não estiver listada, contacte-nos – estamos constantemente a investigar novos tipos.
É impossível listar todos os números de peça que conseguimos desbloquear. Se o seu chip não estiver listado, por favor contacte-nos – podemos investigar novos tipos para satisfazer a sua necessidade.
STMicroelectronics é uma empresa global independente de semicondutores e líder no desenvolvimento e fornecimento de soluções de semicondutores em todo o espectro de aplicações de microeletrónica. Uma combinação inigualável de experiência em silício e sistemas, capacidade de fabrico, portefólio de Propriedade Intelectual (IP) e posições de parceiros estratégicos coloca a STMicroelectronics na vanguarda da tecnologia System-on-Chip (SoC), e os seus produtos desempenham um papel fundamental na viabilização das tendências de convergência atuais. A engenharia reversa do IP proprietário da ST é uma tarefa desafiante.
Os microcontroladores STM8 são microcontroladores de 8 bits de uso geral da STMicroelectronics (STM). A STM é famosa principalmente pela sua linha de microcontroladores ARM Cortex de 32 bits – os STM32. Os microcontroladores STM8 raramente são discutidos nesse contexto. No entanto, os MCUs STM8 são robustos e, mais importante, vêm repletos de muitas funcionalidades de hardware. Exceto pelo núcleo ARM, arquitetura de 32 bits, desempenho e algumas diferenças menores, os STM8 têm muitas semelhanças periféricas com os STM32. Na minha opinião, os STM8 são igualmente ou por vezes até mais competentes do que os populares PICs e AVRs em todas as áreas. Ao contrário dos PICs e AVRs, no entanto, vi STM8 principalmente em vários encapsulamentos SMD. Apenas um punhado de chips STM8 está disponível em encapsulamentos Plastic Dual-Inline Package (PDIP)/through-hole. Penso que é uma grande razão pela qual a maioria das pequenas indústrias e hobistas não os utiliza tanto como outras famílias de 8 bits. As pessoas gostam de montar os seus projetos de teste em breadboards, PCBs de ensaio ou strip-boards primeiro, criar protótipos e depois desenvolver para produção. Para lidar com esta questão, a STM forneceu várias placas STM8 Discovery (Disco) acessíveis para começar. Além disso, existem muitos breakout-boards STM8 baratos da China. Alguns hobistas tentam hackear o bootloader para aplicações personalizadas. Desbloquear periféricos adicionais requer definições específicas de registos.
Série STM8S Mainstream – A série STM8S de microcontroladores de 8 bits mainstream da ST cobre uma grande variedade de aplicações nos mercados industrial, de consumo e de computadores, particularmente onde estão em causa grandes volumes. Baseada no núcleo proprietário STM8, a série STM8S beneficia da tecnologia de 130 nm da ST e de uma arquitetura de núcleo avançada que executa até 20 MIPS a 24 MHz. Um dump de memória da flash pode ser obtido através da interface SWIM.
Embora os desenvolvedores de firmware embutido a tempo inteiro possam ter sempre uma coisa ou outra contra o Arduino IDE, a verdade é que o IDE continua a ser uma das plataformas de desenvolvimento embutido mais versáteis e amplamente utilizadas no mundo atual. O sucesso das placas Arduino e dos microcontroladores relacionados, como o Atmega328p, pode ser atribuído à versatilidade e facilidade de programação que traz, e pode-se facilmente ligar o sucesso de mais de 70% dos microcontroladores/placas de desenvolvimento que atingiram um nível de popularidade semelhante ao Arduino à sua compatibilidade com o Arduino IDE. No entanto, um ataque externo poderia explorar a interface USB.
Para beneficiar da facilidade de programação oferecida pelo Arduino IDE, as comunidades em torno de diferentes microcontroladores constroem ferramentas de compatibilidade, e uma das mais recentes é a ferramenta Sduino desenvolvida por Michael Mayor para facilitar a programação de microcontroladores STM8 usando o Arduino IDE. A família de microcontroladores STM8 compreende as séries de microcontroladores STM8S, STM8L e STM8AF, implementadas em torno de um núcleo de 8 bits de alto desempenho e que vêm com um conjunto de periféricos de última geração. São fabricados com a tecnologia proprietária de memória não volátil embutida de 130 nm da ST e suportam desenvolvimento rápido e seguro através de operações melhoradas de stack pointer, modos de endereçamento avançados e novas instruções. A extração de firmware é frequentemente necessária para suporte de legados.
A ferramenta Sduino permite que estes microcontroladores sejam programados usando o Arduino-C e também suporta a Standard Peripheral Library (SPL), o que significa que o mesmo código escrito no Arduino IDE pode ser compilado com pouca ou nenhuma modificação no IDE oficial ST Visual Develop. Um dump completo de memória da flash pode ser analisado com esta ferramenta.
MCUs STM32 de 32 bits Arm Cortex-M da STMicroelectronics – Os MCUs STM32 de 32 bits ARM Cortex-M são baseados no processador Arm Cortex-M e projetados para oferecer novos graus de liberdade aos utilizadores de MCUs. Os MCUs oferecem uma gama de produtos de 32 bits que combina desempenho muito elevado, capacidades de tempo real, processamento digital de sinal e operação de baixo consumo e baixa tensão. Isto é alcançado mantendo a integração total e a facilidade de desenvolvimento. A gama inigualável e extensa de dispositivos STM32, baseada num núcleo padrão da indústria e acompanhada por uma vasta escolha de ferramentas e software, torna esta família de produtos a escolha ideal, tanto para pequenos projetos como para decisões de plataforma inteira. O portefólio STM32 apresenta uma variedade de opções, agora incluindo núcleos Arm Cortex-M (M0, M0+, M3, M4 e M7). Isto dá aos desenvolvedores flexibilidade para encontrar o STM32 perfeito para as aplicações. É dada particular atenção à acomodação da portabilidade de aplicações de um dispositivo para outro. A compatibilidade binária, combinada com a atribuição de pinos semelhante, a proliferação de IP de hardware e a linguagem de programação de nível superior, torna o trabalho de desenvolvimento muito mais conveniente ao lidar com as famílias STM32. Os desenvolvedores por vezes quebram os security bits para ativar a depuração. A engenharia reversa do código binário é por vezes necessária para compatibilidade.
Placa de Desenvolvimento STM8S103F3 – O Sduino ainda está em desenvolvimento e atualmente não suporta um bom número de bibliotecas Arduino populares, mas suporta o suficiente para ser útil. Assim, para o tutorial de hoje, vou examinar o processo envolvido na configuração do seu Arduino IDE para programar um microcontrolador baseado em STM8. Para fins de demonstração, utilizaremos a Placa de Desenvolvimento STM8S103F, e o nosso objetivo será carregar o exemplo de piscar LED (blink) para a placa. Para quebrar a proteção, é necessário usar uma sonda física.
COMPONENTES NECESSÁRIOS – A Placa de Desenvolvimento STM8S103F, o programador ST link V2, uma breadboard, fios de ligação (jumper wires). Todos estes componentes podem ser comprados na sua loja de componentes eletrónicos favorita. Utilizaremos o LED integrado na placa de desenvolvimento STM8S103F, mas se preferir usar um LED normal, pode adicionar um LED e um resistor de limitação de corrente de 220 ohms à lista de componentes. Para desbloquear todo o potencial do STM8, é necessário usar o programador correto.
ESQUEMÁTICOS – Uma vez que iremos implementar o exemplo de blink usando o LED integrado no STM8S103F, não há muito a fazer em termos de esquemáticos. No entanto, para aqueles que possam não estar familiarizados com o processo de ligação do programador ST link à placa STM8S103F, a ligação é descrita: ST-Link V2 CSTM8S103F3 – 1(3.3v) para 3v3, 2(SWIM) para SWIM, 3(GND) para GND, 4(RST) para NRST. Revise as ligações novamente para garantir que tudo está como deveria. Se estiver a usar o ST-Link pela primeira vez, será necessário instalar o driver e configurar tudo. Na maioria das situações, as instalações de drivers começam automaticamente assim que ligar o programador ST-Link ao seu computador. A extração de firmware pode ser feita através do pino SWIM.
Além da EEPROM embutida e dos osciladores RC, o rico número de E/S oferecido e o desempenho dos seus periféricos embutidos são reconhecidos como pontos-chave de diferenciação face à concorrência. A série STM8S faz parte do programa de compromisso de longevidade de produto de 10 anos da ST para microcontroladores STM32 e STM8, garantindo uma solução robusta e fiável para os designers. A cadeia de ferramentas de desenvolvimento associada, desde kits de discovery acessíveis até kits de avaliação mais complexos e ferramentas de terceiros, facilita o desenvolvimento com microcontroladores STM8S. A série STM8S consiste em 4 linhas, cada uma com diferentes funcionalidades, mas com compatibilidade total e capacidade de atualização para simplificar futuras alterações de design. Um hack malicioso poderia modificar a calibração do oscilador RC.
IA EM MICROCONTROLADORES STM32 – A Inteligência Artificial (IA) pode ser definida como a capacidade de uma máquina de realizar análise lógica, adquirir conhecimento e adaptar-se a um ambiente que varia ao longo do tempo ou num determinado contexto. No futuro, quase qualquer dispositivo com um microcontrolador de 32 bits poderá usar técnicas de IA. Mais concretamente, poderão executar DNN (Deep Neural Networks – redes neuronais profundas) que foram treinadas para realizar tarefas específicas. Embora a maioria dos microcontroladores hoje não tenha memória e poder de processamento para executar os algoritmos de aprendizagem necessários para criar DNNs, podem executar as próprias DNNs – desde que as redes sejam otimizadas para microcontroladores. A ST criou ferramentas para fazer essa otimização de DNNs para um microcontrolador e desenvolveu um demonstrador avançado de System-on-Chip que permite o processamento DCNN ultra eficiente em termos energéticos. Um ataque aos parâmetros da rede neuronal poderia causar classificações incorretas.
CONFIGURAÇÃO DO ARDUINO IDE – Para facilitar o processo de integração de placas de código aberto com o Arduino IDE, o IDE vem com uma funcionalidade chamada board manager (gestor de placas). Através do board manager, novas placas (essencialmente componentes baseados em software necessários para que o Arduino IDE possa carregar código num MCU específico) podem ser adicionadas ao IDE. Estes componentes baseados em software, frequentemente chamados de cores, são geralmente desenvolvidos pelos fabricantes da placa (como a Sparkfun faz para as suas placas) ou por um grupo de utilizadores com o desejo de ver a sua placa funcionar com o Arduino IDE. O Sduino representa o core para as placas STM8s e iremos instalá-lo no Arduino IDE usando o board manager. Siga os passos: Abra a janela de preferências a partir do Arduino IDE. Vá a File > Preferences. Na janela de preferências, localize a caixa de texto Additional Board Manager URLs e introduza este link: https://github.com/tenbaht/sduino/raw/master/package_sduino_stm8_index.json no campo. Como pode já ter outros URLs lá, separe os URLs uns dos outros usando uma vírgula ( , ) e clique em OK quando terminar. Em seguida, abra o board manager do Arduino. Vá a tools>Boards>Boards manager. Quando o board manager abrir, introduza Sduino na barra de pesquisa. Deverá ver o core Sduino aparecer. Clique no botão de instalação para instalar o core.
Se não encontrar o seu número de peça exato na nossa lista, ainda podemos ajudar. A nossa equipa de investigação expande continuamente a base de dados de dispositivos suportados.
Contacte-nos para um orçamento