Re: [請益] 4X4的 keyboard 寫法
※ 引述《kinkipikachu (提琴手的無弦之聲)》之銘言:
對不起...我想再補充一下圖...
P0.4 P0.5 P0.6 P0.7
| | | |
B| B| B| B|
P0.3 -------------------------------------------R-------VCC
B| B| B| B|
P0.2 -------------------------------------------R-------VCC
B| B| B| B|
P0.1 -------------------------------------------R-------VCC
B| B| B| B|
P0.0 -------------------------------------------R-------VCC
我是採用書本上的高態動做...
P0.4 ~ P0.7 是做 SCAN...
P0.3 ~ P0.0 是做 接收....
課本我是可以做的出來...
但是換成我自己的想法所打的程式..
卻不能執行.....但是我不知道我的觀念錯在那裡 ???
如果是 P0.4 送出 0 而且 P0.3 接收到0
所以就想 P0 = 0xe7 送出 key=3
但是好像不是我所想的容易 ????
煩請有經驗的大大 解答我的疑惑 謝謝....
: 小弟知道網路上跟書上有很多,我自己試寫了一個
: 用 keil c 寫的 keypad 程式,但是七段就是不會亮,
: 請大大指點一下我錯誤的觀念,我不知錯再哪裡?
: 硬體架構:
: OUTPUT 接收
: 89S51 P0.0 P0.1 P0.2 P0.3 P0.4 P0.5 P0.6 P0.7
: 採用低態驅動
: P2 接 7段顯示器
: 程式:
: #include <AT89X51.H>
: char keypad(void);
: code char
: table[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,
: 0x83,0xc6,0xa1,0x86,0x8e,0xff};
: main()
: {
: char n;
: while(1)
: {
: n=table[keypad()];
: P2=~n;
: }
: }
: char keypad(void)
: {
: char key=16;
: if (P0==0x77)
: {
: key=0;
: return key;
: }
: else if (P0==0x7b)
: {
: key=1;
: return key;
: }
: else if (P0==0x7c)
: {
: key=2;
: return key;
: }
: else if (P0==0x7e)
: {
: key=3;
: return key;
: }
: else if (P0==0xb7)
: {
: key=4;
: return key;
: }
: else if (P0==0xbb)
: {
: key=5;
: return key;
: }
: else if (P0==0xbc)
: {
: key=6;
: return key;
: }
: else if (P0==0xbe)
: {
: key=7;
: return key;
: }
: else if (P0==0xc7)
: {
: key=8;
: return key;
: }
: else if (P0==0xcb)
: {
: key=9;
: return key;
: }
: else if (P0==0xce)
: {
: key=10;
: return key;
: }
: else if (P0==0xc7)
: {
: key=11;
: return key;
: }
: else if (P0==0xe7)
: {
: key=12;
: return key;
: }
: else if (P0==0xeb)
: {
: key=13;
: return key;
: }
: else if (P0==0xec)
: {
: key=14;
: return key;
: }
: else if (P0==0xee)
: {
: key=15;
: return key;
: }
: }
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 59.104.150.236
推
02/13 21:32, , 1F
02/13 21:32, 1F
推
02/13 21:44, , 2F
02/13 21:44, 2F
推
02/13 23:02, , 3F
02/13 23:02, 3F
→
02/13 23:03, , 4F
02/13 23:03, 4F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 3 之 3 篇):
ASM 近期熱門文章
PTT數位生活區 即時熱門文章