毕业论文论文范文课程设计实践报告法律论文英语论文教学论文医学论文农学论文艺术论文行政论文管理论文计算机安全
您现在的位置: 毕业论文 >> 论文 >> 正文

单片机电子密码锁 第7页

更新时间:2010-1-31:  来源:毕业论文
单片机电子密码锁 第7页
主程序:
#include "PWLock.h"
/* 键消抖延时函数 */
void delay(void)
{
 uchar i;
 for (i=300;i>0;i--);
}

/* 键扫描函数 */
uchar keyscan(void)
{
 uchar scancode,tmpcode;
 P1 = 0xf0;         // 发全0行扫描码
 if ((P1&0xf0)!=0xf0)     // 若有键按下
 {
  delay();       // 延时去抖动
  if ((P1&0xf0)!=0xf0)    // 延时后再判断一次,去除抖动影响
  {
   scancode = 0xfe;
   while((scancode&0x10)!=0)  // 逐行扫描
   {
    P1 = scancode;    // 输出行扫描码
    if ((P1&0xf0)!=0xf0)  // 本行有键按下
    {
     tmpcode = (P1&0xf0)|0x0f;

     /* 返回特征字节码,为1的位即对应于行和列 */
     return((~scancode)+(~tmpcode));
    }
    else scancode = (scancode<<1)|0x01; // 行扫描码左移一位
   }
  }
 }
 return(0);        // 无键按下,返回值为0  
}

/* 定时器0中断服务子程序,2ms定时动态扫描显示 */
void time0_int(void) interrupt 1
{
 /* 重置2ms定时 */
 TH0 = -2000/256;
 TL0 = -2000%256;

 if (showflag==1)
  display();    // 调用显示函数
}

/* 定时器1中断服务子程序,50ms*/
void time1_int(void) interrupt 3
{
www.youerw.com
  t1count++;
 }
 else      // 计时到1s
 {
  TR1 = 0;    // 关闭计数器1
  t1count = 0; 
  green = 1;    // 绿灯不亮
  red = 1;    // 红灯不亮
  showflag = 1;   // 打开数码管显示
  digbit = 0x01;   // 从数码管第1位开始动态显示
  for (k=0;k<6;k++)  // 显示888888
   wordbuf[k] = 8;
 }
}

/* 根据共阴极字型编码表获取0~9,A~B字型代码 */
uchar getcode(uchar i)
{
 uchar p;
 switch (i)
 {
  case 0:  p=0x3f; break;   /* 0 */
  case 1:  p=0x06; break;   /* 1 */
  case 2:  p=0x5B; break;   /* 2 */
  case 3:  p=0x4F; break;   /* 3 */
  case 4:  p=0x66; break;   /* 4 */
  case 5:  p=0x6D; break;   /* 5 */
  case 6:  p=0x7D; break;   /* 6 */
  case 7:  p=0x07; break;   /* 7 */
  case 8:  p=0x7F; break;   /* 8 */
  case 9:  p=0x67; break;   /* 9 */
  case 10:    p=0x77; break;   /* A */
  case 11:    p=0x7C; break;   /* B */
  case 12:    p=0x39; break;   /* C */
  case 13:    p=0x5E; break;   /* D */
  case 14:    p=0x79; break;   /* E */
  case 15:    p=0x71; break;   /* F */
  default:    break;
 }
 return(p);
}/* 显示函数 */

上一页  [1] [2] [3] [4] [5] [6] [7] [8] [9] 下一页

单片机电子密码锁 第7页下载如图片无法显示或论文不完整,请联系qq752018766
设为首页 | 联系站长 | 友情链接 | 网站地图 |

copyright©youerw.com 优文论文网 严禁转载
如果本毕业论文网损害了您的利益或者侵犯了您的权利,请及时联系,我们一定会及时改正。