初入单片机遇到一些问题

蓝兔先生 2016-07-29 01:03:57
废物先不说, 上图上代码才能有图有真相

#include <reg51.h>
#include "../time/Delay.h"

// 定义矩阵键盘I/O P2 口控制矩阵键盘
#define GPIO_KEY P2

// 定义静态数码管变量
#define GPIO_DIG P0
unsigned char code GPIO_S[6] = {0x3F, 0x06, 0x59, 0x4F, 0x67, 0x6D};
// ~ 0 1 2 3 4 5


void main()
{
unsigned char KeyValue;
GPIO_KEY = 0x0F;
while (1)
{
if (GPIO_KEY != 0x0F)
{
DelayMs_24M(10);
if (GPIO_KEY != 0x0F)
{
// 测试列
switch(GPIO_KEY)
{
case 0x07 : KeyValue = 0; break;
case 0x0B : KeyValue = 1; break;
case 0x0D : KeyValue = 2; break;
case 0x0E : KeyValue = 3; break;
}

// 测试行
GPIO_KEY = 0xF0;
switch(GPIO_KEY)
{
case 0x70 : break;
case 0xB0 : KeyValue = KeyValue + 4; break;
case 0xD0 : KeyValue = KeyValue + 8; break;
case 0xE0 : KeyValue = KeyValue + 12; break;
}

// 根据按下的按钮在静态数码管中显示对应数字
switch(KeyValue)
{
case 0x07 : GPIO_DIG = ~GPIO_S[0]; break;
}
}
}
}
}
--------------------------------------------------------------------------------------------------------------------------------------------------------------------
下面是板子的接线图




--------------------------------------------------------------------------------------------------------------------------------------------------------------------

--------------------------------------------------------------------------------------------------------------------------------------------------------------------
下面是电路原理图



--------------------------------------------------------------------------------------------------------------------------------------------------------------------



整个实验效果:按下矩阵键盘中的一个键然后静态数码管中显示一个数字
目前程序状况:按下矩阵键盘中的任意一个键,然后,然后就没有然后了



看在新手和上帝的份上, 各路大神帮我解答下吧
...全文
776 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
phangbob 2016-09-07
  • 打赏
  • 举报
回复
GPIO_KEY = 0x0F; while (1) 上面那句应该在while(1)里面。。。 然后数码管亮加个延时。。。 其他的需要下载调试看看。能力有限。。哈哈
qq_29559327 2016-08-01
  • 打赏
  • 举报
回复
普中单片机板子,和我的一模一样
dceacho 2016-07-30
  • 打赏
  • 举报
回复
switch(KeyValue)
 {
 case 0x07 : GPIO_DIG = ~GPIO_S[0]; break;
 }
你按对了按键?把P0赋个初始值

27,374

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 单片机/工控
社区管理员
  • 单片机/工控社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧