[Udo Klein] assumiu a dificuldade de contar o mais rápido possível usando um quadro de arduino. A missão envolve uma pesquisa por cortes curtos que o permitirão dirigir um contador de 20 bits o mais rápido possível usando o hardware de estoque. No entanto, a captura é que a atmosfera de arduino tem alguma sobrecarga em segundo plano que vai desacelerar as coisas. Ele olha para cada uma dessas trilhas, então mostra uma maneira de contorná-los.
O código usa um comando que geralmente não vemos na programação moderna incorporada C; a instrução goto. Ele está usando isso para ignorar os ciclos adicionais usados pela função Loop () do Arduino. O único comando que é executado dentro de seu loop hackeado é um conjunto profundamente aninhado de macros. Eles estão alternando os pinos de saída usando o hardware XOR embutido no chip AVR. Isso está diretamente abordando os registros, bem como despeja, assim, a desaceleração acrescida pela função DigitalWrite ().
O resultado é um contador de software que alterna as luzes de saída (veja o clipe após a ruptura) em cerca de 98,9% da velocidade do relógio de hardware. Muito impressionante, no entanto [Udo] figuras que ele pode torná-lo apenas um pouco mais rápido ainda.