close
此範例主要進行 GPIO Input輸入測試,其動作為,當按下按鈕後LED ON,否則 LED OFF。
電路:
以下介紹 GPIO PINxn、 DDxn、PORTxn Register 使用方法,以PA接腳為例。
DDRA:
DDRA 為 8 bit的 Register,其對應到 PA0 到 PA7,當DDRA當中的 Bit 設為 1 時該接腳為 Output ,設為 0 時該接腳為 Input
PORTA:
PORTA 為 8 bit的 Register,其對應到 PA0 到 PA7,當該接腳 DDRA Register 設為 1 (該接腳為 Output),寫入 1 時,該接腳為 High ,寫入0 時該接腳為 Low
PINA:
PINA為 8 bit的 Register,其對應到 PA0 到 PA7,當該接腳 DDRA Register 設為 0 (該接腳為 Input),讀取為 1 時,該接腳為 High ,讀取為0 時該接腳為 Low
程式:
#include <avr/io.h> int main(void){
DDRA=0x1; //設定 PA0 為 OUTPUT DDRC=0x00;//設定 PC0 為 INPUT ,此行程式碼可以省略 while(1){ if(PINC & 1) //當PINC AND 1 等於 False 時,按鈕按下 PORTA = 1<<PA0; //LED OFF else PORTA = 0<<PA0; //LED ON } return 0; } |
全站熱搜
留言列表