2021年8月19日

picoboard變uno

 記錄一下,免得又忘了。

motoduino的picoboard 是用ATmega328晶片去做的。用志文老師的方法,可以把picoboard改韌體,變成一片uno。


 

找一塊uno,燒錄範例arduinoisp,把燒錄器改成arduino as ISP,再選擇工具/bootloader。燒錄bootloader前要把腳位接好,可以參考之前的文章。

https://wdpsestea.blogspot.com/2019/11/picoboarduno.html

燒好後,各感應器的腳位為:

1.J4-A1(D15),

2J3-A2(D16),

3J2-A4(D18),

4按鈕D2,

5.J1-A5(D19),

6光敏A6(D20),

7.聲音micA3(D17),

8滑桿(A0)]

但我使用digitalRead(2)一直讀不出按鈕的值。看了好多文章,都無解。

最後終於查到這個D2要額外啟動才行

在void setup()要加上

    DDRD  &= ~( 1 << PD2 );     // Clear the PD2 pin and set PD2 (PCINT0 pin) now as input
    PORTD |= (1 << PD2);        // Set PIN PD2 as INPUT with pull-up enabled

    EICRA |= (1 << ISC00);      // set INT0 to trigger on ANY logic change
    EIMSK |= (1 << INT0);       // Turns on INT0

按鈕未按時,D2的值是1,按下去D2的值是0

 


沒有留言: