您当前所在位置:首页医学论文单片机与嵌入式系统应用,是什么期刊?

单片机与嵌入式系统应用,是什么期刊?

发布时间:2023-09-25 12:49:13编辑:小编归类:医学论文

单片机与嵌入式系统应用,是什么期刊?

《单片机与嵌入式系统应用》2010年入选中国科技核心期刊,中国科技论文统计源期刊。

而且不收取版面费

51单片机关于密码锁的毕业设计,论文

程序设计内容 

(1). 密码的设定,在此程序中密码是固定在程序存储器ROM中,假设预设的密码为“12345”共5位密码。

(2). 密码的输入问题:  由于采用两个按键来完成密码的输入,那么其中一个按键为功能键,另一个按键为数字键。在输入过程中,首先输入密码的长度,接着根据密码的长度输入密码的位数,直到所有长度的密码都已经输入完毕;或者输入确认功能键之后,才能完成密码的输入过程。进入密码的判断比较处理状态并给出相应的处理过程。

(3).按键禁止功能:初始化时,是允许按键输入密码,当有按键按下并开启慎始进入按键识别状态时,按键禁止功能被激活,但启动的状态在3次密码输入不正确的情况下发生的。

C语言源程序

#include unsigned char code ps[]={1,2,3,4,5}; 

unsigned char code dispcode[]={0x3f,0x06,0x5b,0x4f,0x66,                    &晌旁让nbsp;          

0x6d,0x7d,0x07,0x7f,0x6f,0x00,0x40}; 

unsigned char pslen=9; unsigned char templen;

 unsigned char digit; unsigned char funcount; 

unsigned char digitcount; 

unsigned char psbuf[9];

 bit cmpflag; 

bit hibitflag;

 bit errorflag;

 bit rightflag; 

unsigned int second3;

 unsigned int aa; 

unsigned int bb;

 bit alarmflag; 

bit exchangeflag; 

unsigned int cc;

 unsigned int dd; 

bit okflag;

 unsigned char oka;

 unsigned char okb; 

void main(void) 

{   

unsigned char 宴局i,j;   

P2=dispcode[digitcount];   

TMOD=0x01;   

TH0=(65536-500)/256;  

 TL0=(65536-500)%6;  

 TR0=1;   

ET0=1;  

 EA=1;  

 while(1)   

  {       

  if(cmpflag==0)        

    {          

       if(P3_6==0) //function key           

        {              

         for(i=10;i>0;i--)              

         for(j=248;j>0;j--);      

         if(P3_6==0)                 

           {                

           if(hibitflag==0)       

              {     

                  funcount++;  

                     if(funcount==pslen+2) 

                        {  

                         funcount=0; 

                          cmpflag=1; 

                         } 

                       P1=dispcode[funcount]; 

                    } 

                    else

                       { 

                         second3=0;

                       }  

                 while(P3_6==0);

                 } 

            }

           if(P3_7==0) //digit key 

            {

               for(i=10;i>0;i--) 

              for(j=248;j>0;j--); 

              if(P3_7==0) 

                { 

                  if(hibitflag==0)

                     { 

                      digitcount++; 

                  if(digitcount==10) 

                        { 

                          digitcount=0; 

                        } 

                      P2=dispcode[digitcount]; 

                      if(funcount==1)

                         {

                           pslen=digitcount;                                                                                 

                           templen=pslen;

                         }

                         else if(funcount>1) 

                          {  

                           psbuf[funcount-2]=digitcount; 

                          }

                     } 

                    else 

                      { 

                        second3=0;

                       } 

                  while(P3_7==0);

                 } 

            } 

        }  

       else 

          { 

            cmpflag=0;

             for(i=0;i 

              {  

               if(ps[i]!=psbuf[i]) 

                  { 

                    hibitflag=1; 

                    i=pslen;

                     errorflag=1; 

                    rightflag=0; 

                    cmpflag=0; 

                    second3=0; 

                    goto a;  

                 } 

              }   

          cc=0;  

           errorflag=0;  

           rightflag=1; 

            hibitflag=0; 

         a:   cmpflag=0; 

          } 

         }  

       } 

void t0(void) 

interrupt 1 using 0 {   TH0=(65536-500)/256;  

 TL0=(65536-500)%6;  

 if((errorflag==1) && (rightflag==0))  

      bb++;

       if(bb==800) 

        { 

          bb=0; 

          alarmflag=~alarmflag;

         }

       if(alarmflag==1)

         {

           P0_0=~P0_0;

         }

       aa++; 

      if(aa==800) 

        { 

          aa=0; 

          P0_1=~P0_1;

         } 

      second3++;

       if(second3==6400) 

        { 

          second3=0;

           hibitflag=0; 

          errorflag=0; 

          rightflag=0;

           cmpflag=0;

           P0_1=1;  

         alarmflag=0; 

          bb=0;  

         aa=0;  

       } 

    } 

  if((errorflag==0) && (rightflag==1)) 

    {

       P0_1=0; 

      cc++; 

      if(cc

论文的字数是指字数还是字符数? 工厂配电如何设计?