di2622l2.txt ;************************************************************************************************** ; LISTING 2 - TABLE GENERATION FOR DUAL-TONE PWM OUTPUTS ; ; "Generate CID/CIDCW analog signals," EDN, Dec 7, 2000, pg 188 ; http://www.ednmag.com/ednmag/reg/2000/12072000/designideas.htm#25di2 ; *************************************************************************************************** PI = 3.1415926# KM = 182 ' MAXIMUM RANGE OF PULSE WIDTH DT = 576 / 11059200 ' TIME FOR EACH SAMPLE DTI = DT F1 = 19200 / 7 ' F1 = 2742.9 (2750) F2 = 19200 / 9 ' F2 = 2133.3 (2130) DTI = DT FOR I = 1 TO 63 ' 63 SAMPLES THEN REPEAT A = SIN(2 * PI * F1 * DT) ' GENERATE F1 SINE WAVE B = SIN(2 * PI * F2 * DT) ' GENERATE F2 SINE WAVE V = KM / 2 + (KM / 4) * A + (KM / 4) * B 'GENERATE F1 + F2 SINE WAVE PRINT I, DT, V DT = DT + DTI ' NEXT SAMPLE NEXT I