首先檢視tq210的底板原理圖
這次程式設計只操作key1和key2,在tq210核心板原理圖中搜尋xeint0
可以看出key1和key2分別接在s5pv210的gph0_0和gph0_1引腳。
這次程式設計使用查詢法,需要設定這兩個引腳為輸入模式,然後迴圈讀取引腳狀態,當使用者按下按鍵時,對應引腳為低電平,同時改變led狀態。
檢視s5pv210晶元手冊
.global _start @宣告乙個全域性的標號
_start:
bl main @跳轉到c函式去執行
halt:
b halt @死迴圈
key.c
#define gpc0con *((volatile unsigned int *)0xe0200060)
#define gpc0dat *((volatile unsigned int *)0xe0200064)
#define gph0con *((volatile unsigned int *)0xe0200c00)
#define gph0dat *((volatile unsigned int *)0xe0200c04)
void delay(volatile unsigned int t)
int main()
} }return 0;
}
makefile
key.bin: start.o key.o
arm-linux-ld -ttext 0x20000000 -o key.elf $^
arm-linux-objcopy -o binary key.elf $@
arm-linux-objdump -d key.elf > key.dis
key.o : key.c
arm-linux-gcc -c $< -o $@
start.o : start.s
arm-linux-gcc -c $< -o $@
clean:
rm *.o *.elf *.bin *.dis
按下key1,led1點亮,再次按下key1,led1熄滅
按下key2,led2點亮,再次按下key2,led2熄滅
TQ210裸機程式設計 3 按鍵(查詢法)
首先檢視tq210的底板原理圖 這次程式設計只操作key1和key2,在tq210核心板原理圖中搜尋xeint0 可以看出key1和key2分別接在s5pv210的gph0 0和gph0 1引腳。這次程式設計使用查詢法,需要設定這兩個引腳為輸入模式,然後迴圈讀取引腳狀態,當使用者按下按鍵時,對應引腳...
TQ210裸機程式設計 4 按鍵(中斷法)
s5pv210有4個向量中斷控制器 vic 每個向量中斷控制器包含32個中斷源。當某個中斷源產生中斷時,cpu會自動的將vicxvectaddry x 0,1,2,3,y 0 31 暫存器的值賦給vicxaddress x 0,1,2,3 因此我們可以把我們的中斷處理函式的位址賦給vicxvecta...
TQ210裸機程式設計 4 按鍵(中斷法)
s5pv210有4個向量中斷控制器 vic 每個向量中斷控制器包含32個中斷源。當某個中斷源產生中斷時,cpu會自動的將vicxvectaddry x 0,1,2,3,y 0 31 暫存器的值賦給vicxaddress x 0,1,2,3 因此我們可以把我們的中斷處理函式的位址賦給vicxvecta...