通過DMA通過DMA
更好的LED,而常規的Hackaday讀者已經知道如何用微控制器閃爍LED,並且已經移動到稍微更具挑戰性的項目,例如在6502個裝配中解決Navier-Stokes方程,這並不意味著沒有新手的空間。 [rik]發表了一個關於濫用DMA的完善的教程,為Blinkier發光。為什麼有人想了解DMA技術?當然,對於閃光發光的東西。 本教程承擔了LED多路復用和LED矩陣的知識,或基本上基本上一堆LED在XY網格上連接在一起。駕駛8×8格的幼稚路上是將八個陰極連接到微控制器上的GPIO引腳,將八個陽極連接到另一組GPIO引腳,並根據需要採購和沈降電流。銷釘數可以通過移位寄存器減小,LED調光可以用PWM實現。這是我們密集的八週的Arduino課程。 由於在20世紀80年代沒有被困的微控制器,可以使用新技術來驅動這些LED矩陣。大多數強大的手臂微控制器都配有DMA,用於直接內存訪問的外設。 DMA控制器可以簡單地將DMA控制器與CPU進行所有工作,而不是讓CPU進行內存和引腳之間的位。這意味著閃爍項目和光輝LED。 [RIK]用於DMAing LED的方法包括在代碼中設置一個大的’OL數組,正確地初始化DMA外圍設備,並將LED矩陣接線到幾個引腳。這種技術可以擴展到具有64個級別亮度的動畫,這將採用令人難以置信的處理能力(對於微控制器,至少是DMA控制器的亮度。 在這些實驗中使用的設置是STM32F103核心板以及OpenStm32 IDE。 [RIK]已在GitHub上發布了所有的代碼,當然,您就會鼓勵遊戲。