Hur man drar på ett oscilloskop med Arduino! (7 / 9 steg)
Steg 7: Ritning vektorer
Vi vill uppmärksamma vektorer på displayen, så att vi kan skapa en bild av poäng sammankopplade med linjer. I grund och botten en connect the dots typ av bild.
Eftersom vi har DAC innehåller 256 diskreta steg, göra vi inte tekniskt någon "jämn" linje. Ett sätt att arbeta inom dessa begränsningar är vanligt i datorn grafikprogram, som bildpunkter (diskreta steg på en skärm) behöver ofta att representera vektorgrafik. Jag använder koden använder Bresenhams linjeritning algoritm för att skapa en linje mellan två givna punkter med funktionen line() som har ingångar för x1, y1, x 2 och y2, som start- och slutpunkterna för vektorn.
Bilden ovan visar hur den effektivt drar pixlar i lämpliga platser att Visa vektorer inom en pixel grid. Och det är den bärande tanken i koden. Med koordinaterna för varje hörn av en bild, koden rinner genom varje punkt och drar vektorer mellan varje punkt.