سؤال

مرحبا لمحاكاة OQPSK كتبت أدناه

    values = [0;1;0;0;1;0;1;0];
    h = modem.oqpskmod; 
    y = modulate(h, values); 
    g = modem.oqpskdemod(h); 
    z = logical(demodulate(g,y)); 
    BER = sum(values(:)-z(:))/numel(values);

أسئلتي هي كما يلي: 1) كيف يمكنني التحقق من أنه يفعل ما أتوقع القيام به (عملية وزارة الدفاع OQPSK / Demod)؟ 2) كيف يمكنني إدخال الضوضاء؟

هل كانت مفيدة؟

المحلول

الإجابة 1: اكتب عبارة مثل هذا:

assert(output == expectedOutput)

إذا تحقق هذا صحيحا، فقد تحققت من التعليمات البرمجية الخاصة بك لحالة واحدة. كرر لعدد كاف وتغطية حالات الاختبار لإرضاء نفسك. على محمل الجد: اكتب قائمة من حالات الاختبار ومدخلاتها والمخرجات المتوقعة، والتحقق من أن رمزك ينتج النواتج المتوقعة.

الإجابة 2: إضافة ضوضاء مثل هذا:

noisyValues = values .* noiseVector;

قم بإنشاء ضجة مع خصائص الضوضاء التي تريدها.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top