⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 timer.lst

📁 lcd驱动程序:用于au
💻 LST
📖 第 1 页 / 共 4 页
字号:
 701          void read_timer(char temp1,struct TIME *time)//read timer  zl.d
 702          {
 703   1              unsigned char data temp[3]=0;
 704   1              unsigned char data temp2=0;
 705   1              unsigned char data i;
 706   1              struct TIME *currrret_time;
 707   1              currrret_time=time;
 708   1              temp2=temp1;
 709   1              switch(temp2)
 710   1                      {
 711   2                      case  1:
 712   2                              shi_sub_read1(0x66, 0x02, &temp);//read current time 2
 713   2                              i=((temp[0]&0x30)>>4)*10+(temp[0]&0x0f);//zl.d 2006.1.3
 714   2                              (*currrret_time).hour=i;
 715   2                              i=((temp[1]&0x70)>>4)*10+(temp[1]&0x0f);
 716   2                              (*currrret_time).minute=i;
 717   2                              i=((temp[2]&0x70)>>4)*10+(temp[2]&0x0f);
 718   2                              (*currrret_time).second=i;
 719   2                              break;
 720   2                      case  2:
 721   2                              shi_sub_read1(0x68, 0x02, &temp);//read  int1 
 722   2                              i=((temp[1]&0x30)>>4)*10+(temp[1]&0x0f);//zl.d 2006.1.3
 723   2                              (*currrret_time).hour=i;
 724   2                              i=((temp[2]&0x70)>>4)*10+(temp[2]&0x0f);
 725   2                              (*currrret_time).minute=i;
 726   2                              break;
 727   2                      case  3:
 728   2                              shi_sub_read1(0x6a, 0x02, &temp);//read int2 
 729   2                              i=((temp[1]&0x30)>>4)*10+(temp[1]&0x0f);//zl.d 2006.1.3
 730   2                              (*currrret_time).hour=i;
 731   2                              i=((temp[2]&0x70)>>4)*10+(temp[2]&0x0f);
 732   2                              (*currrret_time).minute=i;
 733   2                              break;
 734   2                      default:
 735   2                                      break;
 736   2                                              
C51 COMPILER V7.50   TIMER                                                                 01/17/2006 21:30:47 PAGE 13  

 737   2                      }
 738   1              //delay_nop();
 739   1              DelayXms(0x3A); 
 740   1              
 741   1              //time=&curr_time;
 742   1      }
 743          /////////////////////////////////////////////////////////////////
 744          
 745          void write_timer(char temp1,struct TIME *time)
 746          {
 747   1              unsigned char data temp[3]=0;
 748   1              unsigned char data i;
 749   1              unsigned char data temp2=0;
 750   1              unsigned char data temp3=0;
 751   1              struct TIME *currrret_time;
 752   1              temp2=temp1;
 753   1              currrret_time=time;
 754   1              temp3=0;
 755   1              switch(temp2)
 756   1                      {
 757   2                      case 1:
 758   2                              temp[0] = (*currrret_time).hour/10;
 759   2                              i=(*currrret_time).hour%10;
 760   2                              temp[0]=(temp[0]<<4)+i;
 761   2                              //printf("temp%bx",temp[0]);
 762   2                              //printf("currrret_time).minute%bx\n",(*currrret_time).minute);
 763   2                              temp[1]=(*currrret_time).minute/10;
 764   2                              i= (*currrret_time).minute%10;
 765   2                              temp[1]=(temp[1]<<4)+i;
 766   2                              //printf("write4==%bx%bx%bx\n",temp[0],temp[1],temp[2]);
 767   2                              temp[2]=(*currrret_time).second/10;
 768   2                              i= (*currrret_time).second%10;
 769   2                              temp[2]=(temp[2]<<4)+i;
 770   2                              shi_sub_write1(0x66, 0x02, &temp);
 771   2                              break;
 772   2                      case 2:
 773   2                              if((*currrret_time).hour>12){temp3=12;}
 774   2                              else temp3=8;
 775   2                                              
 776   2                              temp[1] = (*currrret_time).hour/10;
 777   2                              temp[1]+=temp3;
 778   2                              i=(*currrret_time).hour%10;
 779   2                              temp[1]=(temp[1]<<4)+i;
 780   2                              
 781   2                              temp[2]=(*currrret_time).minute/10;
 782   2                              temp[2]+=8;
 783   2                              i= (*currrret_time).minute%10;
 784   2                              temp[2]=(temp[2]<<4)+i;
 785   2                              
 786   2                              temp[0]=0;
 787   2                              
 788   2                              shi_sub_write1(0x68, 0x02, &temp);
 789   2                              break;
 790   2                      case 3:
 791   2      
 792   2                              if((*currrret_time).hour>12){temp3=12;}
 793   2                              else temp3=8;
 794   2                              
 795   2                              temp[1] = (*currrret_time).hour/10;
 796   2                              temp[1]+=temp3;
 797   2                              i=(*currrret_time).hour%10;
 798   2                              temp[1]=(temp[1]<<4)+i;
C51 COMPILER V7.50   TIMER                                                                 01/17/2006 21:30:47 PAGE 14  

 799   2                              
 800   2                              temp[2]=(*currrret_time).minute/10;
 801   2                              temp[2]+=8;
 802   2                              i= (*currrret_time).minute%10;
 803   2                              temp[2]=(temp[2]<<4)+i;
 804   2                              
 805   2                              temp[0]=0;
 806   2                              shi_sub_write1(0x6a, 0x02, &temp);
 807   2                              break;
 808   2                      default:
 809   2                                      break;
 810   2                      
 811   2                      }
 812   1                                      
 813   1                                      /*
 814   1                                      curr_time.hour=temp1[0];
 815   1                                      temp1[0] = curr_time.hour/10;
 816   1                                      i= curr_time.hour%10;
 817   1                                      temp1[0]=(temp[0]<<4)+i;
 818   1                                      printf("temp1[0]%bx",temp1[0]);
 819   1                                      curr_time.minute=temp1[1];
 820   1                                      temp1[1] = curr_time.minute/10;
 821   1                                      i= curr_time.minute%10;
 822   1                                      temp1[1]=(temp1[1])<<4+i;
 823   1                                      printf("temp1[1]%bx\n",temp1[1]);
 824   1                                      */
 825   1      }
 826          ////////////////////////////////////////////////////////////////////
 827          void init_s35390()//init s3539 zl.d 2005.12.26
 828                  {
 829   1                      char  device ;
 830   1                      char tmp2,tmp,tmp3[7]={0};
 831   1                              
 832   1                              
 833   1                      device=S3539+0x00;//powner reset s35390A zl.d 2005.26 
 834   1                      tmp=4;
 835   1                      shi_sub_read1( device, 0x00, &tmp);DelayXms(0x3A); 
 836   1                      printf("ini_tstate0==%bx\n",tmp);
 837   1                      if (tmp&0x80 | tmp&0x40)
 838   1                              {
 839   2                                      tmp2=0x01;
 840   2                                      device=S3539+0x00;
 841   2                                      shi_sub_write1(device, 0x00, &tmp2);
 842   2                                      DelayXms(0x3A); DelayXms(0x3A); 
 843   2                                      
 844   2                                      tmp2=0x02;
 845   2                      
 846   2                      
 847   2                                      shi_sub_read1( device, 0x00, &tmp);DelayXms(0x3A); 
 848   2                                      printf("dzl4==%bx\n",tmp);
 849   2                              }
 850   1                      tmp2=0x02;
 851   1                      device=S3539+0x00;
 852   1                      shi_sub_write1(0x60, 0x00, &tmp2);
 853   1                      //tmp2=0x44;
 854   1                      //shi_sub_write1(0x62, 0x00, &tmp2);
 855   1                      tmp2=0x44;
 856   1                      shi_sub_write1(0x62, 0x00, &tmp2);
 857   1                      
 858   1                      /*
 859   1                      shi_sub_read1( 0x60, 0x00, &tmp);
 860   1                      printf("state1==%bx\n",tmp);
C51 COMPILER V7.50   TIMER                                                                 01/17/2006 21:30:47 PAGE 15  

 861   1                      shi_sub_read1( 0x62, 0x00, &tmp);
 862   1                      printf("state2==%bx\n",tmp);
 863   1                      shi_sub_read1( 0x64, 0x00, &tmp);
 864   1                      printf("state3==%bx\n",tmp);
 865   1                      
 866   1                      shi_sub_read1( 0x66, 0x02, &tmp3);
 867   1                      printf("state4==%bx%bx%bx\n",tmp3[0],tmp3[1],tmp3[2]);
 868   1                      tmp3[0]=0;tmp3[1]=0;tmp3[2]=0;
 869   1                      shi_sub_read1( 0x66, 0x02, &tmp3);
 870   1                      printf("state4==%bx%bx%bx\n",tmp3[0],tmp3[1],tmp3[2]);
 871   1                      tmp3[0]=0;tmp3[1]=0;tmp3[2]=0;
 872   1                      shi_sub_read1( 0x66, 0x02, &tmp3);
 873   1                      printf("state4==%bx%bx%bx\n",tmp3[0],tmp3[1],tmp3[2]);
 874   1                      tmp3[0]=0;tmp3[1]=0;tmp3[2]=0;
 875   1      
 876   1                      
 877   1                      tmp3[0]=1;tmp3[1]=2;tmp3[2]=3;
 878   1                      shi_sub_write1(0x66, 0x02, &tmp3);
 879   1                      shi_sub_read1( 0x66, 0x02, &tmp3);
 880   1                      printf("state4==%bx%bx%bx\n",tmp3[0],tmp3[1],tmp3[2]);
 881   1                      tmp3[0]=4;tmp3[1]=5;tmp3[2]=6;
 882   1                      shi_sub_write1(0x66, 0x02, &tmp3);
 883   1                      shi_sub_read1( 0x66, 0x02, &tmp3);
 884   1                      printf("state4==%bx%bx%bx\n",tmp3[0],tmp3[1],tmp3[2]);
 885   1                      tmp3[0]=7;tmp3[1]=7;tmp3[2]=9;
 886   1                      shi_sub_write1(0x66, 0x02, &tmp3);
 887   1                      shi_sub_read1( 0x66, 0x02, &tmp3);
 888   1                      printf("state4==%bx%bx%bx\n",tmp3[0],tmp3[1],tmp3[2]);
 889   1      
 890   1                      
 891   1                      
 892   1                      shi_sub_read1( 0x68, 0x00, &tmp);
 893   1                      printf("state5==%bx\n",tmp);
 894   1                      shi_sub_read1( 0x6a, 0x00, &tmp);
 895   1                      printf("state6==%bx\n",tmp);
 896   1                      shi_sub_read1( 0x6c, 0x00, &tmp);
 897   1                      printf("state7==%bx\n",tmp);
 898   1                      shi_sub_read1( 0x6e, 0x00, &tmp);
 899   1                      printf("state8==%bx\n",tmp);
 900   1                      */
 901   1                      
 902   1                   /* tmp2=0x0a;
 903   1                      device=S3539+0x00;
 904   1                      shi_sub_write1(device, 0x00, &tmp2);
 905   1                      shi_sub_read1( device, 0x00, &tmp);DelayXms(0x3A); 
 906   1                      printf("write%bx",tmp);*/
 907   1                      
 908   1                      /*      device=S3539+0x04;
 909   1                                      shi_sub_read1( device, 0x06, &tmp3);DelayXms(0x3A); 
 910   1                                      printf("dzl5==%bx\n",tmp3[0]);
 911   1      printf("dzl5==%bx\n",tmp3[1]);
 912   1      printf("dzl5==%bx\n",tmp3[2]);
 913   1      printf("dzl5==%bx\n",tmp3[3]);
 914   1      printf("dzl5==%bx\n",tmp3[4]);
 915   1      printf("dzl5==%bx\n",tmp3[5]);printf("dzl5==%bx\n",tmp3[6]);*/
 916   1      
 917   1                      
 918   1              }
 919          //////////////////////////////////////////////////////////////////////


MODULE INFORMATION:   STATIC OVERLAYABLE
C51 COMPILER V7.50   TIMER                                                                 01/17/2006 21:30:47 PAGE 16  

   CODE SIZE        =   3702    ----
   CONSTANT SIZE    =    208    ----
   XDATA SIZE       =     11      25
   PDATA SIZE       =   ----    ----
   DATA SIZE        =      2      32
   IDATA SIZE       =   ----      15
   BIT SIZE         =      1    ----
END OF MODULE INFORMATION.


C51 COMPILATION COMPLETE.  0 WARNING(S),  0 ERROR(S)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -