📄 sdio.lst
字号:
936 3 case 0x2e: //GET CIS SDIO EXTENSION LINK DATA
937 3 if((CMD_R[1]&0x70)==0x00)
938 3 {
939 4 Buffer_send[0]=0x34; //command index
940 4 Buffer_send[1]=0x00;
941 4 Buffer_send[2]=0x00;
942 4 Buffer_send[3]=0x20;
943 4 Buffer_send[4]=0x02;
944 4 Buffer_send[5]=0x85;
945 4 Timing_Sync();
946 4 Write_Res_SD(Buffer_send[0]);
947 4 Write_Res_SD(Buffer_send[1]);
948 4 Write_Res_SD(Buffer_send[2]);
949 4 Write_Res_SD(Buffer_send[3]);
950 4 Write_Res_SD(Buffer_send[4]);
951 4 Write_Res_SD(Buffer_send[5]);
C51 COMPILER V7.05 SDIO 06/14/2007 16:16:46 PAGE 17
952 4 while(SD_CLK_PIN==0);
953 4 SD_CMD_PIN=1;
954 4 }
955 3 break;
956 3 case 0x34: //GET CIS SDIO EXTENSION LINK DATA
957 3 if((CMD_R[1]&0x70)==0x00)
958 3 {
959 4 Buffer_send[0]=0x34; //command index
960 4 Buffer_send[1]=0x00;
961 4 Buffer_send[2]=0x00;
962 4 Buffer_send[3]=0x20;
963 4 Buffer_send[4]=0xff;
964 4 Buffer_send[5]=0x53;
965 4 Timing_Sync();
966 4 Write_Res_SD(Buffer_send[0]);
967 4 Write_Res_SD(Buffer_send[1]);
968 4 Write_Res_SD(Buffer_send[2]);
969 4 Write_Res_SD(Buffer_send[3]);
970 4 Write_Res_SD(Buffer_send[4]);
971 4 Write_Res_SD(Buffer_send[5]);
972 4 while(SD_CLK_PIN==0);
973 4 SD_CMD_PIN=1;
974 4 }
975 3 break;
976 3 case 0x18: //0X02+0X16,GET FBR CIS BYTE 3
977 3 if((CMD_R[1]&0x70)==0x00)
978 3 {
979 4 Buffer_send[0]=0x34; //command index
980 4 Buffer_send[1]=0x00;
981 4 Buffer_send[2]=0x00;
982 4 Buffer_send[3]=0x20;
983 4 Buffer_send[4]=0x00;
984 4 Buffer_send[5]=0xa1;
985 4 Timing_Sync();
986 4 Write_Res_SD(Buffer_send[0]);
987 4 Write_Res_SD(Buffer_send[1]);
988 4 Write_Res_SD(Buffer_send[2]);
989 4 Write_Res_SD(Buffer_send[3]);
990 4 Write_Res_SD(Buffer_send[4]);
991 4 Write_Res_SD(Buffer_send[5]);
992 4 while(SD_CLK_PIN==0);
993 4 SD_CMD_PIN=1;
994 4 }
995 3 break;
996 3 case 0x1A: //0X02+0X18,GET CSA POINTER BYTE1
997 3 if((CMD_R[1]&0x70)==0x00)
998 3 {
999 4 Buffer_send[0]=0x34; //command index
1000 4 Buffer_send[1]=0x00;
1001 4 Buffer_send[2]=0x00;
1002 4 Buffer_send[3]=0x20;
1003 4 Buffer_send[4]=0x01;
1004 4 Buffer_send[5]=0xb3;
1005 4 Timing_Sync();
1006 4 Write_Res_SD(Buffer_send[0]);
1007 4 Write_Res_SD(Buffer_send[1]);
1008 4 Write_Res_SD(Buffer_send[2]);
1009 4 Write_Res_SD(Buffer_send[3]);
1010 4 Write_Res_SD(Buffer_send[4]);
1011 4 Write_Res_SD(Buffer_send[5]);
1012 4 while(SD_CLK_PIN==0);
1013 4 SD_CMD_PIN=1;
C51 COMPILER V7.05 SDIO 06/14/2007 16:16:46 PAGE 18
1014 4 }
1015 3 break;
1016 3 case 0x1C: //0X1A+0X02,GET CSA POINTER BYTE2
1017 3 if((CMD_R[1]&0x70)==0x00)
1018 3 {
1019 4 if(timer_index==1)
1020 4 debug_info=24;
1021 4 Buffer_send[0]=0x34; //command index
1022 4 Buffer_send[1]=0x00;
1023 4 Buffer_send[2]=0x00;
1024 4 Buffer_send[3]=0x20;
1025 4 Buffer_send[4]=0x80;
1026 4 Buffer_send[5]=0x23;
1027 4 Timing_Sync();
1028 4 Write_Res_SD(Buffer_send[0]);
1029 4 Write_Res_SD(Buffer_send[1]);
1030 4 Write_Res_SD(Buffer_send[2]);
1031 4 Write_Res_SD(Buffer_send[3]);
1032 4 Write_Res_SD(Buffer_send[4]);
1033 4 Write_Res_SD(Buffer_send[5]);
1034 4 while(SD_CLK_PIN==0);
1035 4 SD_CMD_PIN=1;
1036 4 }
1037 3 break;
1038 3 case 0x1E: //0X1C+0X02,GET CSA POINTER BYTE3
1039 3 if((CMD_R[1]&0x70)==0x00)
1040 3 {
1041 4 Buffer_send[0]=0x34; //command index
1042 4 Buffer_send[1]=0x00;
1043 4 Buffer_send[2]=0x00;
1044 4 Buffer_send[3]=0x20;
1045 4 Buffer_send[4]=0x1f;
1046 4 Buffer_send[5]=0x6b;
1047 4 Timing_Sync();
1048 4 Write_Res_SD(Buffer_send[0]);
1049 4 Write_Res_SD(Buffer_send[1]);
1050 4 Write_Res_SD(Buffer_send[2]);
1051 4 Write_Res_SD(Buffer_send[3]);
1052 4 Write_Res_SD(Buffer_send[4]);
1053 4 Write_Res_SD(Buffer_send[5]);
1054 4 while(SD_CLK_PIN==0);
1055 4 SD_CMD_PIN=1;
1056 4 }
1057 3 break;
1058 3 case 0x06: //0X00+0X06,test IO ready
1059 3 if((CMD_R[1]&0x70)==0x00)
1060 3 {
1061 4 Buffer_send[0]=0x34; //command index
1062 4 Buffer_send[1]=0x00;
1063 4 Buffer_send[2]=0x00;
1064 4 Buffer_send[3]=0x20;
1065 4 Buffer_send[4]=0x02;
1066 4 Buffer_send[5]=0x85;
1067 4 Timing_Sync();
1068 4 Write_Res_SD(Buffer_send[0]);
1069 4 Write_Res_SD(Buffer_send[1]);
1070 4 Write_Res_SD(Buffer_send[2]);
1071 4 Write_Res_SD(Buffer_send[3]);
1072 4 Write_Res_SD(Buffer_send[4]);
1073 4 Write_Res_SD(Buffer_send[5]);
1074 4 while(SD_CLK_PIN==0);
1075 4 SD_CMD_PIN=1;
C51 COMPILER V7.05 SDIO 06/14/2007 16:16:46 PAGE 19
1076 4 }
1077 3 else //function 1,0x06(Open_Com)
1078 3 {
1079 4 Buffer_send[0]=0x34; //command index
1080 4 Buffer_send[1]=0x00;
1081 4 Buffer_send[2]=0x00;
1082 4 Buffer_send[3]=0x20;
1083 4 Buffer_send[4]=0x03;
1084 4 Buffer_send[5]=0x97;
1085 4 Timing_Sync();
1086 4 Write_Res_SD(Buffer_send[0]);
1087 4 Write_Res_SD(Buffer_send[1]);
1088 4 Write_Res_SD(Buffer_send[2]);
1089 4 Write_Res_SD(Buffer_send[3]);
1090 4 Write_Res_SD(Buffer_send[4]);
1091 4 Write_Res_SD(Buffer_send[5]);
1092 4 while(SD_CLK_PIN==0);
1093 4 SD_CMD_PIN=1;
1094 4 }
1095 3 break;
1096 3 case 0x08: //Read 0x04 of function 1
1097 3 if((CMD_R[1]&0x70)==0x10)
1098 3 {
1099 4 Buffer_send[0]=0x34; //command index
1100 4 Buffer_send[1]=0x00;
1101 4 Buffer_send[2]=0x00;
1102 4 Buffer_send[3]=0x20;
1103 4 Buffer_send[4]=0x03;
1104 4 Buffer_send[5]=0x97;
1105 4 //Buffer_send[4]=Uart_Reg_MCR;
1106 4 //Buffer_send[5]=crc7_CMD52[Uart_Reg_MCR];
1107 4 Timing_Sync();
1108 4 Write_Res_SD(Buffer_send[0]);
1109 4 Write_Res_SD(Buffer_send[1]);
1110 4 Write_Res_SD(Buffer_send[2]);
1111 4 Write_Res_SD(Buffer_send[3]);
1112 4 Write_Res_SD(Buffer_send[4]);
1113 4 Write_Res_SD(Buffer_send[5]);
1114 4 while(SD_CLK_PIN==0);
1115 4 SD_CMD_PIN=1;
1116 4 }// end if
1117 3 break;
1118 3 case 0x0a: //Read 0x05 of function 0,int pending bit
1119 3 if((CMD_R[1]&0x70)==0x00)
1120 3 {
1121 4 Buffer_send[0]=0x34; //command index
1122 4 Buffer_send[1]=0x00;
1123 4 Buffer_send[2]=0x00;
1124 4 Buffer_send[3]=0x20;
1125 4 Buffer_send[4]=Int_Pending;
1126 4 Buffer_send[5]=crc7_CMD52[Int_Pending];
1127 4 Int_Pending=0;
1128 4 Timing_Sync();
1129 4 Write_Res_SD(Buffer_send[0]);
1130 4 Write_Res_SD(Buffer_send[1]);
1131 4 Write_Res_SD(Buffer_send[2]);
1132 4 Write_Res_SD(Buffer_send[3]);
1133 4 Write_Res_SD(Buffer_send[4]);
1134 4 Write_Res_SD(Buffer_send[5]);
1135 4 while(SD_CLK_PIN==0);
1136 4 SD_CMD_PIN=1;
1137 4 //
C51 COMPILER V7.05 SDIO 06/14/2007 16:16:46 PAGE 20
1138 4 }// end if
1139 3 break;
1140 3 case 0x04: //Read 0x02 of function 1,IIR REG
1141 3 if((CMD_R[1]&0x70)==0x10)
1142 3 {
1143 4 Buffer_send[0]=0x34; //command index
1144 4 Buffer_send[1]=0x00;
1145 4 Buffer_send[2]=0x00;
1146 4 Buffer_send[3]=0x20;
1147 4 //Buffer_send[4]=0xc4;
1148 4 //Buffer_send[5]=0xa3;
1149 4 Buffer_send[4]=Uart_Reg_IIR;
1150 4 Buffer_send[5]=crc7_CMD52[Uart_Reg_IIR];
1151 4 Uart_Reg_IIR=0;
1152 4 Timing_Sync();
1153 4 Write_Res_SD(Buffer_send[0]);
1154 4 Write_Res_SD(Buffer_send[1]);
1155 4 Write_Res_SD(Buffer_send[2]);
1156 4 Write_Res_SD(Buffer_send[3]);
1157 4 Write_Res_SD(Buffer_send[4]);
1158 4 Write_Res_SD(Buffer_send[5]);
1159 4 while(SD_CLK_PIN==0);
1160 4 SD_CMD_PIN=1;
1161 4 //SD_DATA1_PIN=1;
1162 4 }// end if
1163 3 break;
1164 3 default:
1165 3 break;
1166 3 }//end switch
1167 2 }// endif
1168 1 else //Data Write Command
1169 1 {
1170 2 switch (Reg_address)
1171 2 {
1172 3 case 0x0E: //0x00+0x0e,write ox07 bus width
1173 3 if((CMD_R[1]&0x70)==0x00)
1174 3 {
1175 4 Buffer_send[0]=0x34; //command index
1176 4 Buffer_send[1]=0x00;
1177 4 Buffer_send[2]=0x00;
1178 4 Buffer_send[3]=0x20;
1179 4 Buf
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -