mirror of
https://github.com/DigitalDevices/dddvb.git
synced 2023-10-10 13:37:43 +02:00
Added modulation2text and fec2text
This commit is contained in:
parent
ccc7069122
commit
f1348429b3
156
apps/modcod.c
156
apps/modcod.c
@ -12,6 +12,143 @@
|
||||
|
||||
#include <linux/dvb/mod.h>
|
||||
|
||||
char* modulation2text(const enum fe_modulation mod)
|
||||
{
|
||||
switch(mod)
|
||||
{
|
||||
case QPSK:
|
||||
return "QPSK";
|
||||
case QAM_16:
|
||||
return "16QAM";
|
||||
case QAM_32:
|
||||
return "32QAM";
|
||||
case QAM_64:
|
||||
return "64QAM";
|
||||
case QAM_128:
|
||||
return "128QAM";
|
||||
case QAM_256:
|
||||
return "256QAM";
|
||||
case QAM_AUTO:
|
||||
return "QAM_AUTO";
|
||||
case VSB_8:
|
||||
return "8VSB";
|
||||
case VSB_16:
|
||||
return "16VSB";
|
||||
case PSK_8:
|
||||
return "8PSK";
|
||||
case APSK_16:
|
||||
return "16APSK";
|
||||
case APSK_32:
|
||||
return "32APSK";
|
||||
case DQPSK:
|
||||
return "DQPSK";
|
||||
case QAM_4_NR:
|
||||
return "QAM_4_NR";
|
||||
case APSK_64:
|
||||
return "64APSK";
|
||||
case APSK_128:
|
||||
return "128APSK";
|
||||
case APSK_256:
|
||||
return "256APSK";
|
||||
case APSK_8:
|
||||
return "8APSK";
|
||||
default:
|
||||
return "MODULATION_NONE";
|
||||
};
|
||||
}
|
||||
|
||||
char* fec2text(const enum fe_code_rate fec)
|
||||
{
|
||||
switch(fec)
|
||||
{
|
||||
case FEC_1_2:
|
||||
return "1/2";
|
||||
case FEC_2_3:
|
||||
return "2/3";
|
||||
case FEC_3_4:
|
||||
return "3/4";
|
||||
case FEC_4_5:
|
||||
return "4/5";
|
||||
case FEC_5_6:
|
||||
return "5/6";
|
||||
case FEC_6_7:
|
||||
return "6/7";
|
||||
case FEC_7_8:
|
||||
return "7/8";
|
||||
case FEC_8_9:
|
||||
return "8/9";
|
||||
case FEC_AUTO:
|
||||
return "FEC_AUTO";
|
||||
case FEC_3_5:
|
||||
return "3/5";
|
||||
case FEC_9_10:
|
||||
return "9/10";
|
||||
case FEC_2_5:
|
||||
return "2/5";
|
||||
case FEC_1_4:
|
||||
return "1/4";
|
||||
case FEC_1_3:
|
||||
return "1/3";
|
||||
case FEC_13_45:
|
||||
return "13/45";
|
||||
case FEC_9_20:
|
||||
return "9/20";
|
||||
case FEC_11_20:
|
||||
return "11/20";
|
||||
case FEC_5_9_L:
|
||||
return "5/9-L";
|
||||
case FEC_26_45_L:
|
||||
return "26/45-L";
|
||||
case FEC_23_36:
|
||||
return "23/36";
|
||||
case FEC_25_36:
|
||||
return "25/36";
|
||||
case FEC_13_18:
|
||||
return "13/18";
|
||||
case FEC_1_2_L:
|
||||
return "1/2-L";
|
||||
case FEC_8_15_L:
|
||||
return "8/15-L";
|
||||
case FEC_26_45:
|
||||
return "26/45";
|
||||
case FEC_3_5_L:
|
||||
return "3/5-L";
|
||||
case FEC_28_45:
|
||||
return "28/45";
|
||||
case FEC_2_3_L:
|
||||
return "2/3-L";
|
||||
case FEC_7_9:
|
||||
return "7/9";
|
||||
case FEC_32_45_L:
|
||||
return "32/45-L";
|
||||
case FEC_77_90:
|
||||
return "77/90";
|
||||
case FEC_32_45:
|
||||
return "32/45";
|
||||
case FEC_11_15:
|
||||
return "11/15";
|
||||
case FEC_29_45_L:
|
||||
return "29/45-L";
|
||||
case FEC_31_45_L:
|
||||
return "31/45-L";
|
||||
case FEC_11_15_L:
|
||||
return "11/15-L";
|
||||
case FEC_11_45:
|
||||
return "11/45";
|
||||
case FEC_4_15:
|
||||
return "4/15";
|
||||
case FEC_14_45:
|
||||
return "14/45";
|
||||
case FEC_7_15:
|
||||
return "7/15";
|
||||
case FEC_8_15:
|
||||
return "8/15";
|
||||
default:
|
||||
return "FEC_NONE";
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
int main()
|
||||
{
|
||||
const enum fe_modulation modcod2modS2X[0x3D] = {
|
||||
@ -42,20 +179,27 @@ int main()
|
||||
FEC_8_15,FEC_26_45,FEC_3_5,FEC_32_45,FEC_2_3,FEC_32_45,
|
||||
};
|
||||
|
||||
|
||||
|
||||
uint8_t modcod;
|
||||
modcod = 248;
|
||||
if(modcod2modS2X[((modcod & 0x7F) >> 1)] == APSK_32)
|
||||
printf("modcod2modS2X OK\r\n");
|
||||
printf("modcod2modS2X OK APSK_32=%s \r\n", modulation2text(modcod2modS2X[((modcod & 0x7F) >> 1)] ) );
|
||||
if(modcod2fecS2X[((modcod & 0x7F) >> 1)] == FEC_32_45)
|
||||
printf("modcod2modS2X OK\r\n");
|
||||
printf("modcod2modS2X OK FEC_32_45=%s\r\n", fec2text(modcod2fecS2X[((modcod & 0x7F) >> 1)]));
|
||||
|
||||
|
||||
modcod = 132;
|
||||
if(modcod2modS2X[((modcod & 0x7F) >> 1)] == QPSK)
|
||||
printf("modcod2modS2X OK\r\n");
|
||||
printf("modcod2modS2X OK QPSK=%s \r\n", modulation2text(modcod2modS2X[((modcod & 0x7F) >> 1)] ) );
|
||||
if(modcod2fecS2X[((modcod & 0x7F) >> 1)] == FEC_13_45)
|
||||
printf("modcod2modS2X OK\r\n");
|
||||
//printf("test mod=%u value= %d APSK_32=%d \n",mod, modcod2modS2X[((mod & 0x7F) >> 1)], APSK_32);
|
||||
//printf("test mod=%u value= %d FEC_32_45=%d \n",mod, modcod2fecS2X[((mod & 0x7F) >> 1)], FEC_32_45);
|
||||
printf("modcod2modS2X OK FEC_13_45=%s\r\n", fec2text(modcod2fecS2X[((modcod & 0x7F) >> 1)]));
|
||||
|
||||
modcod = 184;
|
||||
if(modcod2modS2X[((modcod & 0x7F) >> 1)] == APSK_64)
|
||||
printf("modcod2modS2X OK 64APSK=%s \r\n", modulation2text(modcod2modS2X[((modcod & 0x7F) >> 1)] ) );
|
||||
if(modcod2fecS2X[((modcod & 0x7F) >> 1)] == FEC_32_45_L)
|
||||
printf("modcod2modS2X OK FEC_32_45_L=%s\r\n", fec2text(modcod2fecS2X[((modcod & 0x7F) >> 1)]));
|
||||
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user