主題:etr186鍵盤問題 共有57828人關注過本帖 |
---|
dust |
1樓 |
etr186鍵盤問題 Post By:2004-8-15 8:30:00 [只看該作者]
我自制了個鍵盤,4*4的,用的是IRQ6中斷,而我想在中斷子程序里添加代碼來讀出鍵碼,程序編譯可以通過,但是在make的時候卻說GPIORead()等etr186.h里的函數未定義,請問在IRQ6中斷程序里添加代碼有沒有例子呢?為什么make會出問題?
|
|
單帖管理 | 引用 | 回復 |
dust |
2樓 |
Post By:2004-8-15 18:18:00 [只看該作者]
這個問題已經解決,現在又發現我如果同時想用COM3串口實時接受數據,同時又要打開IRQ6來接收外部中斷的話,必須在project里同時加載isr.cpp和rs232x2.cpp,但這二個函數中都有定義到InstallISR()這個函數,所以make的時候會有錯誤,請問這個怎么解決呢?
|
|
單帖管理 | 引用 | 回復 |
zhl |
3樓 |
Post By:2004-8-16 14:43:00 [只看該作者]
兩個不要采用相同的函數名稱,可以修改其中的一個。
|
|
單帖管理 | 引用 | 回復 |
dust |
4樓 |
Post By:2004-8-16 15:02:00 [只看該作者]
哦,知道啦,多謝!還有,如果我把GPIO9.8.0.1.2.3設置為輸出,4.5.6.7為輸入,那么使用GPIORead()讀到的值應該是幾位的呢?
如果4567設為1111,那么GPIORead的返回值是四位,還是0x00f0? 急,在線等答復!多謝!! |
|
單帖管理 | 引用 | 回復 |
zhl |
5樓 |
Post By:2004-8-16 16:19:00 [只看該作者]
GPIORead()返回的是一個char,一個字節,其中高4位有效。如果GPIO 4 5 6 7 均為1,則其返回值為0xf0。
|
|
單帖管理 | 引用 | 回復 |
dust |
6樓 |
Post By:2004-8-16 16:56:00 [只看該作者]
謝謝3q
|
|
單帖管理 | 引用 | 回復 |
dust |
7樓 |
Post By:2004-8-16 19:56:00 [只看該作者]
那么GPIORead是不是讀不出來GPIO 8和GPIO 9的值.
如果執行GPIOWrite(0x0e)是不是就只對GPIO 0-GPIO 7寫入了呢? |
|
單帖管理 | 引用 | 回復 |
zhl |
8樓 |
Post By:2004-8-16 21:43:00 [只看該作者]
很抱歉,剛才解釋錯了。
GPIORead( )讀取GPIO的輸入狀態,對于ETR186來說,10位GPIO是從D[0]到D[9],其返回值是一個字,如果GPIO 4 5 6 7 均為1,則其返回值為0x00f0。 |
|
單帖管理 | 引用 | 回復 |