arduino uno正在使用ATmegaxx8,并使用numer定義了端口,因此我們可以輕松地使用它
該散文存儲在Pin_arduino.h中
我們可以在以下路徑中找到該文件C: Program Files Arduino hardware arduino avr variants standard
打開Pin_arduino.h,我們將ee arduino如何轉換PORT和DDR
然后我們需要進行以下更改,才能在ATmega16上使用arduino。
數字引腳數
模擬引腳數
模擬引腳映射和const(模擬引腳)(A0,A1的實際值)
數字引腳到PCICR映射
Pin到端口(PORTA,PORTB等)的映射
引腳到定時器的映射
其中大多數是直接的,我們可以從目標AVR芯片數據表中獲取正確的值。
步驟2:Board.txt
要讓Arduino IDE知道我們的新產品微控制器,我們需要創建一個newboards.txt文件,其中包含有關微控制器的以下信息。
上傳協議
上傳速度(波特率)
最大閃存大小
要使用哪個變體(pins_arduino.h)文件
類似于pins_arduino.h文件
第3步:放手她
將pin_arduino.h放入C: Program Files Arduino hardware arduino avr variant mega16
并復制板.txt到C: Program Files Arduino hardware arduino avr
現在我們將board.txt和pin_arduino.h放入arduino安裝文件夾,并且我們已經將arduino代碼用于ATmega16
第4步:讓我們嘗試一下
現在我們可以使用眨眼LED之類的示例
我將led連接到引腳16 (PORTC.0)和地面,我使用USBASP上傳程序
我仍然不明白為什么延遲要花這么長時間,但我想是因為在Arduino UNO中使用12Mhz晶振時使用16Mhz
我附上我的Minimumsystem原理圖
對不起,我的英語不好
我通過在非Arduino AVR微控制器中使用Arduino代碼實現了這一點。 》非常感謝Sudar是hardwarefun的后寫作者,Raka Fahriza是Cameraman
責任編輯:wv
-
ATmega16
+關注
關注
5文章
154瀏覽量
45779 -
編程
+關注
關注
88文章
3595瀏覽量
93600 -
Arduino
+關注
關注
187文章
6464瀏覽量
186660
發布評論請先 登錄
相關推薦
評論