µÚÒ»·¶ÎÄÍø - רҵÎÄÕ·¶ÀýÎĵµ×ÊÁÏ·ÖÏíÆ½Ì¨

FPGA¿Î³ÌÉè¼Æ--»ùÓÚVHDLµÄ2FSKµÄÐźŷ¢ÉúÆ÷

À´Ô´£ºÓû§·ÖÏí ʱ¼ä£º2025/12/2 15:00:52 ±¾ÎÄÓÉloading ·ÖÏí ÏÂÔØÕâÆªÎĵµÊÖ»ú°æ
˵Ã÷£ºÎÄÕÂÄÚÈݽö¹©Ô¤ÀÀ£¬²¿·ÖÄÚÈÝ¿ÉÄܲ»È«£¬ÐèÒªÍêÕûÎĵµ»òÕßÐèÒª¸´ÖÆÄÚÈÝ£¬ÇëÏÂÔØwordºóʹÓá£ÏÂÔØwordÓÐÎÊÌâÇëÌí¼Ó΢ÐźÅ:xxxxxxx»òQQ£ºxxxxxx ´¦Àí£¨¾¡¿ÉÄܸøÄúÌṩÍêÕûÎĵµ£©£¬¸ÐлÄúµÄÖ§³ÖÓëÁ½⡣

COUNT<=COUNT+1;

CLK240 <= NOT CLK240;--Êä³öʱÖÓ·­×ªÒ»´Î ELSE COUNT<=COUNT+1; END IF; END IF; END PROCESS;

PROCESS(CLK240) --·ÖƵΪ120KHzµÄCLK120ÐźŠBEGIN

IF (CLK240'EVENT AND CLK240 = '1') THEN CLK120<=NOT CLK120; END IF; END PROCESS;

PROCESS(CLK120) --LOAD_CLK1 100·ÖƵµÃµ½CODERATEÂëÔªËÙÂÊ1.2KHz BEGIN

IF (CLK120'EVENT AND CLK120= '1') THEN IF(COUNT50=49) THEN COUNT50<=0;

CODERATE<=NOT CODERATE; ELSE COUNT50<=COUNT50+1; END IF; END IF; END PROCESS;

M_SEQUENCE_FORM: --²úÉú\ÐòÁÐ PROCESS(CODERATE) BEGIN

IF(CODERATE'EVENT AND CODERATE= '1') THEN M(0)<=M(1); --ʵÏÖÒÆÎ»¹¦ÄÜ M(1)<=M(2); END IF;

END PROCESS;

PROCESS(CODERATE) BEGIN

IF(CODERATE'EVENT AND CODERATE= '1') THEN

M(2)<=(M(1) XOR M(0)) OR (NOT (M(0) OR M(1) OR M(2))); --Âß¼­±í´ïʽ¸úÉÏÃæµÄÒÆÎ»¹¦ÄܲúÉúmµÄËæ»úÐòÁС°1110010¡± END IF; END PROCESS;

M_CODE<=M(0);

PROCESS(MODE,CLK240,CLK120,M_CODE) BEGIN

IF (MODE='0' AND M_CODE='0') THEN SINCLK<=CLK120;

ELSE SINCLK<=CLK240; --Ñ¡ÔñÕýÏÒÐźŲ¨²úÉúÆ÷µÄʱÖÓÆµÂÊ END IF; END PROCESS;

JUMP_HIGH<=(NOT TEMP) AND M_CODE; --0µ½1Ìø±ä JUMP_LOW<=(NOT M_CODE) AND TEMP; --1µ½0Ìø±ä

PROCESS(SINCLK) --2FSKÓë2PSK¶ÔÌø±äµÄ²»Í¬´¦Àí BEGIN

IF(SINCLK'EVENT AND SINCLK= '1') THEN TEMP<=M_CODE;

IF((COUNT100=99) OR (JUMP_HIGH='1')) THEN COUNT100<=0; --²¨ÐÎÊä³ö ELSIF((JUMP_LOW='1') AND (MODE='1')) THEN COUNT100<=50; ELSE COUNT100<=COUNT100+1; END IF;

END IF; END PROCESS;

PROCESS(COUNT100) --²úÉúsinÖÜÆÚ²¨ÐεÄ1¸öÖÜÆÚÄÚµÄ100¸öÑùµãÖµ BEGIN

CASE COUNT100 IS

when 0=>value<=\ when 1=>value<=\ when 2=>value<=\ when 3=>value<=\ when 4=>value<=\ when 5=>value<=\ when 6=>value<=\ when 7=>value<=\ when 8=>value<=\ when 9=>value<=\ when 10=>value<=\ when 11=>value<=\ when 12=>value<=\ when 13=>value<=\ when 14=>value<=\ when 15=>value<=\ when 16=>value<=\ when 17=>value<=\ when 18=>value<=\ when 19=>value<=\ when 20=>value<=\ when 21=>value<=\ when 22=>value<=\ when 23=>value<=\

when 24=>value<=\ when 25=>value<=\ when 26=>value<=\ when 27=>value<=\ when 28=>value<=\ when 29=>value<=\ when 30=>value<=\ when 31=>value<=\ when 32=>value<=\ when 33=>value<=\ when 34=>value<=\ when 35=>value<=\ when 36=>value<=\ when 37=>value<=\ when 38=>value<=\ when 39=>value<=\ when 40=>value<=\ when 41=>value<=\ when 42=>value<=\ when 43=>value<=\ when 44=>value<=\ when 45=>value<=\ when 46=>value<=\ when 47=>value<=\ when 48=>value<=\ when 49=>value<=\ when 50=>value<=\ when 51=>value<=\ when 52=>value<=\ when 53=>value<=\

FPGA¿Î³ÌÉè¼Æ--»ùÓÚVHDLµÄ2FSKµÄÐźŷ¢ÉúÆ÷.doc ½«±¾ÎĵÄWordÎĵµÏÂÔØµ½µçÄÔ£¬·½±ã¸´ÖÆ¡¢±à¼­¡¢ÊղغʹòÓ¡
±¾ÎÄÁ´½Ó£ºhttps://www.diyifanwen.net/c8fe491bny57u3cm9al7t_3.html£¨×ªÔØÇë×¢Ã÷ÎÄÕÂÀ´Ô´£©
ÈÈÃÅÍÆ¼ö
Copyright © 2012-2023 µÚÒ»·¶ÎÄÍø °æÈ¨ËùÓÐ ÃâÔðÉùÃ÷ | ÁªÏµÎÒÃÇ
ÉùÃ÷ :±¾ÍøÕ¾×ðÖØ²¢±£»¤ÖªÊ¶²úȨ£¬¸ù¾Ý¡¶ÐÅÏ¢ÍøÂç´«²¥È¨±£»¤ÌõÀý¡·£¬Èç¹ûÎÒÃÇ×ªÔØµÄ×÷Æ·ÇÖ·¸ÁËÄúµÄȨÀû,ÇëÔÚÒ»¸öÔÂÄÚ֪ͨÎÒÃÇ£¬ÎÒÃǻἰʱɾ³ý¡£
¿Í·þQQ£ºxxxxxx ÓÊÏ䣺xxxxxx@qq.com
ÓåICP±¸2023013149ºÅ
Top