打印

本人刚学编程自己编了一程序但不能正常工作求指导

[复制链接]
1627|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
399921302|  楼主 | 2012-10-28 13:15 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本人看了郭天祥的书,看了他的4*4按键电路编程,然后自己想了想就编了这个自己觉得比较简化的程序,能写进单片机,但是就是实现不了功能!求指导!
#include<reg52.h>
#define uchar unsigned char
#define uint unsigned int
sbit duan=P2^6;
sbit wei=P2^7;
uchar code table[]={
0xc0,0xf9,0xa4,0xb0,
0x99,0x92,0x82,0xf8,
0x80,0x90,0x88,0x83,
0xc6,0xa1,0x86,0x8e};
void yanshi(uint xms)
{
uint i,j;
for(i=xms;i>0;i--)
  for(j=110;j>0;j--);
}
void xian(uchar num)
{
  P0=table[num];
  duan=1;
  duan=0;
}
void matrixkeyscan()
{
  uchar key,kan;
  P3=0xf0;
  yanshi(10);
  if(P3!=0xf0)
    {
    yanshi(10);
    if(P3!=0xf0)
    {
    key=P3;
    switch(key)
    {
      case 0xee:
    kan=0;
    break;
    case 0xde:
    kan=1;
    break;
    case 0xbe:
    kan=2;
    break;
    case 0x7e:
    kan=3;
    break;
    case 0xed:
    kan=4;
    break;
    case 0xdd:
    kan=5;
    break;
    case 0xbd:
    kan=6;
    break;
    case 0x7d:
    kan=7;
    break;
    case 0xeb:
    kan=8;
    break;
    case 0xdb:
    kan=9;
    break;
    case 0xbb:
    kan=10;
    break;
    case 0x7b:
    kan=11;
    break;
    case 0xe7:
    kan=12;
    break;
    case 0xd7:
    kan=13;
    break;
    case 0xb7:
    kan=14;
    break;
    case 0x77:
    kan=15;
    break;
    }
    while(P3!=0xf0)
    {
    yanshi(10);
    P3=0xf0;
    yanshi(5);
    }
    xian(kan);
  }
  }
}
void main()
{
  P0=0xff;
  duan=1;
  duan=0;
  P0=0xc0;
  wei=1;
  wei=0;
  while(1)
  {
  matrixkeyscan();
  }
}

相关帖子

沙发
wangyy608| | 2012-10-28 13:52 | 只看该作者
你的程序要实现的功能描述更清楚一些;
你现在的程序是什么现象;
原理图;

使用特权

评论回复
板凳
399921302|  楼主 | 2012-10-28 14:02 | 只看该作者
我的程序就是根据矩阵按键按下的键来由数码管显示,一共16个键就是0~F的在数码管上显示出来。
原理图发不了。不过行线是P3.0~3.3口,列线是P3.4~P3.7口

使用特权

评论回复
地板
399921302|  楼主 | 2012-10-28 14:05 | 只看该作者
我的程序现象是,通电,数码管不亮,然后按下任何一个键后只显示0.不能根据按键的编程改变数码管的显示

使用特权

评论回复
5
xuyaqi| | 2012-10-28 14:46 | 只看该作者
发图片点右上角“高级回复”

使用特权

评论回复
6
399921302|  楼主 | 2012-10-28 14:51 | 只看该作者
我自己已经开出问题了,谢谢

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

0

主题

4

帖子

0

粉丝