📄 timer.lst
字号:
695 {
696 1 unsigned char idata temp[3]=0;
697 1 unsigned char idata temp2=0;
698 1 unsigned char idata i;
699 1 struct TIME *currrret_time;
700 1 currrret_time=time;
701 1 temp2=temp1;
702 1 switch(temp2)
703 1 {
704 2 case 1:
705 2 shi_sub_read1(0x66, 0x02, &temp);//read current time 2
706 2 i=((temp[0]&0x30)>>4)*10+(temp[0]&0x0f);//zl.d 2006.1.3
707 2 (*currrret_time).hour=i;
708 2 i=((temp[1]&0x70)>>4)*10+(temp[1]&0x0f);
709 2 (*currrret_time).minute=i;
710 2 i=((temp[2]&0x70)>>4)*10+(temp[2]&0x0f);
711 2 (*currrret_time).second=i;
712 2 break;
713 2 case 2:
714 2 shi_sub_read1(0x68, 0x02, &temp);//read int1
715 2 i=((temp[1]&0x30)>>4)*10+(temp[1]&0x0f);//zl.d 2006.1.3
716 2 (*currrret_time).hour=i;
717 2 i=((temp[2]&0x70)>>4)*10+(temp[2]&0x0f);
718 2 (*currrret_time).minute=i;
719 2 break;
720 2 case 3:
721 2 shi_sub_read1(0x6a, 0x02, &temp);//read int2
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 default:
728 2 break;
729 2
730 2 }
731 1 //delay_nop();
732 1 DelayXms(0x3A);
733 1
734 1 //time=&curr_time;
735 1 }
736 /////////////////////////////////////////////////////////////////
C51 COMPILER V7.50 TIMER 01/14/2006 15:30:04 PAGE 13
737
738 void write_timer(char temp1,struct TIME *time)
739 {
740 1 unsigned char idata temp[3]=0;
741 1 unsigned char idata i;
742 1 unsigned char idata temp2=0;
743 1 unsigned char idata temp3=0;
744 1 struct TIME *currrret_time;
745 1 temp2=temp1;
746 1 currrret_time=time;
747 1 temp3=0;
748 1 switch(temp2)
749 1 {
750 2 case 1:
751 2 temp[0] = (*currrret_time).hour/10;
752 2 i=(*currrret_time).hour%10;
753 2 temp[0]=(temp[0]<<4)+i;
754 2 //printf("temp%bx",temp[0]);
755 2 //printf("currrret_time).minute%bx\n",(*currrret_time).minute);
756 2 temp[1]=(*currrret_time).minute/10;
757 2 i= (*currrret_time).minute%10;
758 2 temp[1]=(temp[1]<<4)+i;
759 2 //printf("write4==%bx%bx%bx\n",temp[0],temp[1],temp[2]);
760 2 temp[2]=(*currrret_time).second/10;
761 2 i= (*currrret_time).second%10;
762 2 temp[2]=(temp[2]<<4)+i;
763 2 shi_sub_write1(0x66, 0x02, &temp);
764 2 break;
765 2 case 2:
766 2 if((*currrret_time).hour>12){temp3=12;}
767 2 else temp3=8;
768 2
769 2 temp[1] = (*currrret_time).hour/10;
770 2 temp[1]+=temp3;
771 2 i=(*currrret_time).hour%10;
772 2 temp[1]=(temp[1]<<4)+i;
773 2
774 2 temp[2]=(*currrret_time).minute/10;
775 2 temp[2]+=8;
776 2 i= (*currrret_time).minute%10;
777 2 temp[2]=(temp[2]<<4)+i;
778 2
779 2 temp[0]=0;
780 2
781 2 shi_sub_write1(0x68, 0x02, &temp);
782 2 break;
783 2 case 3:
784 2
785 2 if((*currrret_time).hour>12){temp3=12;}
786 2 else temp3=8;
787 2
788 2 temp[1] = (*currrret_time).hour/10;
789 2 temp[1]+=temp3;
790 2 i=(*currrret_time).hour%10;
791 2 temp[1]=(temp[1]<<4)+i;
792 2
793 2 temp[2]=(*currrret_time).minute/10;
794 2 temp[2]+=8;
795 2 i= (*currrret_time).minute%10;
796 2 temp[2]=(temp[2]<<4)+i;
797 2
798 2 temp[0]=0;
C51 COMPILER V7.50 TIMER 01/14/2006 15:30:04 PAGE 14
799 2 shi_sub_write1(0x6a, 0x02, &temp);
800 2 break;
801 2 default:
802 2 break;
803 2
804 2 }
805 1
806 1 /*
807 1 curr_time.hour=temp1[0];
808 1 temp1[0] = curr_time.hour/10;
809 1 i= curr_time.hour%10;
810 1 temp1[0]=(temp[0]<<4)+i;
811 1 printf("temp1[0]%bx",temp1[0]);
812 1 curr_time.minute=temp1[1];
813 1 temp1[1] = curr_time.minute/10;
814 1 i= curr_time.minute%10;
815 1 temp1[1]=(temp1[1])<<4+i;
816 1 printf("temp1[1]%bx\n",temp1[1]);
817 1 */
818 1 }
819 ////////////////////////////////////////////////////////////////////
820 void init_s35390()//init s3539 zl.d 2005.12.26
821 {
822 1 char device ;
823 1 char tmp2,tmp,tmp3[7]={0};
824 1
825 1
826 1 device=S3539+0x00;//powner reset s35390A zl.d 2005.26
827 1 tmp=4;
828 1 shi_sub_read1( device, 0x00, &tmp);DelayXms(0x3A);
829 1 printf("ini_tstate0==%bx\n",tmp);
830 1 if (tmp&0x80 | tmp&0x40)
831 1 {
832 2 tmp2=0x01;
833 2 device=S3539+0x00;
834 2 shi_sub_write1(device, 0x00, &tmp2);
835 2 DelayXms(0x3A); DelayXms(0x3A);
836 2
837 2 tmp2=0x02;
838 2
839 2
840 2 shi_sub_read1( device, 0x00, &tmp);DelayXms(0x3A);
841 2 printf("dzl4==%bx\n",tmp);
842 2 }
843 1 tmp2=0x02;
844 1 device=S3539+0x00;
845 1 shi_sub_write1(0x60, 0x00, &tmp2);
846 1 //tmp2=0x44;
847 1 //shi_sub_write1(0x62, 0x00, &tmp2);
848 1 tmp2=0x44;
849 1 shi_sub_write1(0x62, 0x00, &tmp2);
850 1
851 1 /*
852 1 shi_sub_read1( 0x60, 0x00, &tmp);
853 1 printf("state1==%bx\n",tmp);
854 1 shi_sub_read1( 0x62, 0x00, &tmp);
855 1 printf("state2==%bx\n",tmp);
856 1 shi_sub_read1( 0x64, 0x00, &tmp);
857 1 printf("state3==%bx\n",tmp);
858 1
859 1 shi_sub_read1( 0x66, 0x02, &tmp3);
860 1 printf("state4==%bx%bx%bx\n",tmp3[0],tmp3[1],tmp3[2]);
C51 COMPILER V7.50 TIMER 01/14/2006 15:30:04 PAGE 15
861 1 tmp3[0]=0;tmp3[1]=0;tmp3[2]=0;
862 1 shi_sub_read1( 0x66, 0x02, &tmp3);
863 1 printf("state4==%bx%bx%bx\n",tmp3[0],tmp3[1],tmp3[2]);
864 1 tmp3[0]=0;tmp3[1]=0;tmp3[2]=0;
865 1 shi_sub_read1( 0x66, 0x02, &tmp3);
866 1 printf("state4==%bx%bx%bx\n",tmp3[0],tmp3[1],tmp3[2]);
867 1 tmp3[0]=0;tmp3[1]=0;tmp3[2]=0;
868 1
869 1
870 1 tmp3[0]=1;tmp3[1]=2;tmp3[2]=3;
871 1 shi_sub_write1(0x66, 0x02, &tmp3);
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]=4;tmp3[1]=5;tmp3[2]=6;
875 1 shi_sub_write1(0x66, 0x02, &tmp3);
876 1 shi_sub_read1( 0x66, 0x02, &tmp3);
877 1 printf("state4==%bx%bx%bx\n",tmp3[0],tmp3[1],tmp3[2]);
878 1 tmp3[0]=7;tmp3[1]=7;tmp3[2]=9;
879 1 shi_sub_write1(0x66, 0x02, &tmp3);
880 1 shi_sub_read1( 0x66, 0x02, &tmp3);
881 1 printf("state4==%bx%bx%bx\n",tmp3[0],tmp3[1],tmp3[2]);
882 1
883 1
884 1
885 1 shi_sub_read1( 0x68, 0x00, &tmp);
886 1 printf("state5==%bx\n",tmp);
887 1 shi_sub_read1( 0x6a, 0x00, &tmp);
888 1 printf("state6==%bx\n",tmp);
889 1 shi_sub_read1( 0x6c, 0x00, &tmp);
890 1 printf("state7==%bx\n",tmp);
891 1 shi_sub_read1( 0x6e, 0x00, &tmp);
892 1 printf("state8==%bx\n",tmp);
893 1 */
894 1
895 1 /* tmp2=0x0a;
896 1 device=S3539+0x00;
897 1 shi_sub_write1(device, 0x00, &tmp2);
898 1 shi_sub_read1( device, 0x00, &tmp);DelayXms(0x3A);
899 1 printf("write%bx",tmp);*/
900 1
901 1 /* device=S3539+0x04;
902 1 shi_sub_read1( device, 0x06, &tmp3);DelayXms(0x3A);
903 1 printf("dzl5==%bx\n",tmp3[0]);
904 1 printf("dzl5==%bx\n",tmp3[1]);
905 1 printf("dzl5==%bx\n",tmp3[2]);
906 1 printf("dzl5==%bx\n",tmp3[3]);
907 1 printf("dzl5==%bx\n",tmp3[4]);
908 1 printf("dzl5==%bx\n",tmp3[5]);printf("dzl5==%bx\n",tmp3[6]);*/
909 1
910 1
911 1 }
912 //////////////////////////////////////////////////////////////////////
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 3752 ----
CONSTANT SIZE = 242 ----
XDATA SIZE = 11 25
PDATA SIZE = ---- ----
DATA SIZE = ---- ----
IDATA SIZE = ---- 47
BIT SIZE = 1 ----
C51 COMPILER V7.50 TIMER 01/14/2006 15:30:04 PAGE 16
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -