Tänker utanför IDE för att göra en snabb räkning Arduino

[Udo Klein] tog svårigheten att räkna så snabbt som möjligt med hjälp av en Arduino-styrelse. Quest involverar en sökning efter kortskärningar som låter honom köra en 20-bitars räknare så snabbt som möjligt med hjälp av lagerhårdvaran. Men fångsten är att Arduino-atmosfären har lite överliggande i bakgrunden som kommer att sakta ner saker. Han tittar på var och en av dessa vägstötar, visar sedan ett sätt att komma runt dem.

Koden använder ett kommando som vi brukar inte se i modern C-inbäddad programmering; GOTO-satsen. Han använder detta för att kringgå de ytterligare cykler som används av Arduinos inbyggda slinga (). Det enda kommandot som körs inom hans hackade slinga är en djupt nestad uppsättning makron. De växlar utgångspinnar med hjälp av hårdvaru XOR inbyggd i AVR-chipet. Detta behandlar direkt register samt därigenom dumpar nedgången som läggs till av den digitalwrite () -funktionen.

Resultatet är en mjukvaruräknare som växlar utloppslamporna (se klippet efter pausen) vid ca 98,9% av hårdvaruklockhastigheten. Ganska imponerande, men [udo] siffror kan han göra det bara lite snabbare än.

Leave a Reply

Your email address will not be published.

Related Post

Ögonfi-tömningÖgonfi-tömning

[Les Robots] hade ett felaktigt ögonfi-kort på hans händer och när en ersättare skickades fick han veta att det skulle förstöra originalet. Vilket bättre sätt att “förstöra” något än att

Hackaday LinksHackaday Links

Gör: Blog har publicerat bilder från deras faire på Euro Oscon. Ta en titt så bra som du ser min samkonspirator Fabienne samt rutinmässig kommentar [Markie]. Jag förstår [LED] planerar