¹ã¶«Ê¯ÓÍ»¯¹¤Ñ§Ôº
DSP×ÛºÏʵÑ鱨¸æ
¿Î³ÌÃû³Æ£ºDSPϵͳ¿ª·¢ÓëÉè¼Æ ʵÑéÌâÄ¿£ºº¯ÊýÐźŷ¢ÉúÆ÷ ѧºÅ£º ÐÕÃû£º °à¼¶£º Ö¸µ¼ÀÏʦ£º
ʵÑéÈÕÆÚ£º2012-6-11ÖÁ2012-6-15
»ùÓÚTMS320C54xDSPµÄº¯Êý·¢ÉúÆ÷µÄÉè¼Æ
Ò»¡¢ Éè¼ÆÄ¿µÄ£º
1¡¢ Á˽âÊý×Ö²¨ÐβúÉúµÄÔÀí£»
2¡¢ ѧϰÓÃDSP²úÉú¸÷ÖÖ²¨ÐεĻù±¾·½·¨ºÍ²½Ö裻 3¡¢ ÕÆÎÕDSPÓëD/Aת»»Æ÷½Ó¿ÚµÄʹÓá£
¶þ¡¢ Éè¼ÆÉ豸
¼ÆËã»ú¡¢DSP·ÂÕæÆ÷¡¢ZYE1801BʵÑéÏä¡¢20Mʾ²¨Æ÷
Èý¡¢ Éè¼ÆÔÀí
²¨ÐβúÉúÊÇDSPµÄÖØÒªÓ¦ÓÃÖ®Ò»¡£¶øÕýÏÒÐźŷ¢ÉúÆ÷µÄÉè¼ÆÔòÊDz¨ÐβúÉúÓ¦ÓõÄÒ»¸öÖØÒª·½Ã棬ËüÔÚͨÐÅÁìÓòÓÐ׏㷺µÄÓ¦Óá£
ͨ³£ÓÐÁ½ÖÖ·½·¨¿ÉÒÔ²úÉúÕýÏÒ²¨£¬·Ö±ðΪ²é±í·¨ºÍÌ©ÀÕ¼¶ÊýÕ¹¿ª·¨¡£
²é±í·¨ÊÇͨ¹ý²é±íµÄ·½Ê½À´ÊµÏÖÕýÏÒ²¨£¬Ö÷ÒªÓÃÓÚ¶Ô¾«¶ÈÒªÇ󲻺ܸߵij¡ºÏ¡£
Ì©ÀÕ¼¶ÊýÕ¹¿ª·¨ÊǸù¾ÝÌ©ÀÕÕ¹¿ªÊ½½øÐмÆËãÀ´ÊµÏÖÕýÏÒÐźţ¬ËüÄܾ«È·µØ¼ÆËã³öÒ»¸ö½Ç¶ÈµÄÕýÏÒºÍÓàÏÒÖµ£¬ÇÒÖ»ÐèÒª½ÏСµÄ´æ´¢¿Õ¼ä¡£
±¾´ÎÖ÷ÒªÓÃÌ©ÀÕ¼¶ÊýÕ¹¿ª·¨À´ÊµÏÖÕýÏÒ²¨Ðźš£ ²úÉúÕýÏÒ²¨µÄËã·¨
ÕýÏÒº¯ÊýºÍÓàÏÒº¯Êý¿ÉÒÔÕ¹¿ª³ÉÌ©ÀÕ¼¶Êý£¬Æä±í´ïʽ£º
È¡Ì©ÀÕ¼¶ÊýµÄÇ°5ÏµÃ½üËƼÆËãʽ£º µÝÍƹ«Ê½£º
sin(nx)=2cos(x)sin[(n-1)x]-sin[(n-2)x] cos(nx)=2cos(x)sin[(n-1)x]-cos[(n-2)x]
ÓɵÝÍƹ«Ê½¿ÉÒÔ¿´³ö£¬ÔÚ¼ÆËãÕýÏÒºÍÓàÏÒֵʱ,ÐèÒªÒÑÖªcos(x)¡¢sin(n-1)x¡¢sin(n-2)xºÍcos(n-2)x¡£
ΪÁ˼õÉÙʹÓõĴ洢Æ÷£¬¿ÉÒÔ²ÉÓÃÕýÏÒÐźŵĶԳÆÐÔ£¬¸´ÖÆ90¡«180¶ÈµÄÕýÏÒÖµºÍ180¡«360¶ÈµÄÕýÏÒÖµ¡£
ÓàÏÒÐźŵIJúÉúͬÑù¿ÉÒÔ²ÉÓöàÖÖ·½·¨²úÉú¡£Ò»ÊDzÉÓù«Ê½¼ÆËãµÃµ½£¬¶þÊDzÉÓÃÕýÏÒÐźű任µÃµ½¡£ ·½²¨ÐźŲúÉú¿ÉÒÔͨ¹ýÂÖÁ÷Êä³öÁ½¸ö²»Í¬´óСµÄÊýֵͨ¹ýA/Dת»»µÃµ½¡£
ËÄ¡¢ Éè¼ÆÄÚÈÝ
±¾Éè¼ÆÌâÄ¿ÒÔTMS320C54xDSPΪĿ±êÆ÷¼þ£¬Éè¼Æ²¢ÊµÏÖ»ùÓÚµü´ú·¨µÄ¡°ÕýÏÒÐòÁÐÉú³É¡±Ëã·¨¼°ÆäDSP³ÌÐò¡£ Éè¼Æ²½Ö裺
1¡¢ ÊìϤÕýÏÒÐźŷ¢ÉúÆ÷µÄËã·¨ÒÔ¼°ÔÚDSPϵͳµÄʵÏÖ 2¡¢ ÊìϤA/Dת»»µÄÔÀí¼°ÊµÑéÏäµÄÁ´½Ó 3¡¢ ÕÆÎÕA/Dת»»µÄ³ÌÐòµÄ±àд 4¡¢ ±àдDSPµÄÕýÏÒÐźŷ¢ÉúÆ÷µÄ³ÌÐò
5¡¢ ±àд¶¨Ê±³ÌÐò²úÉú100HZ¡¢1KHZ¡¢10KHZµÄÕýÏÒ¡¢ÓàÏÒÒÔ¼°100K¡¢1MµÄ·½²¨Ðźţ¬Ã¿ÖÖÀàÐ͵Ä
²¨Ðε¥ÖÜÆÚ360¸öµã¡£
6¡¢ ±àд°´¼ü³ÌÐò£¬¿ØÖÆÊä³ö¡£ÓÃÈý¸ö²¦Â뿪¹Ø¶ÔDSP½øÐÐÊäÈ룬ÊäÈëµÄ0¡«7¶ÔÓ¦µÄ8ÖÖ²»Í¬µÄ²¨ÐΡ£ 7¡¢ ÓÃʾ²¨Æ÷¹Û²ì¸÷¸ö²¨ÐÎ 8¡¢ ·ÖÎö²¨ÐÎʧÕæµÄÔÒò¡£
Îå¡¢ ʵÑé²½Öè
1.ÊìϤ±¾ÊµÑéÔÀí¡£ 2.ÔĶÁ±¾ÊµÑéÑùÀý³ÌÐò¡£
3.ÒÀ´ÎÁ¬½ÓÖ÷°åÉϵÄPC10¡¢PC11¡¢TP32µ½PC15¡¢PC16¡¢GND£»ÒÀ´ÎÁ¬½ÓÖ÷°åÉϵÄPC13¡¢PC14¡¢
M58µ½²å°åÉϵÄDJ0¡¢DJ1¡¢S12¡£
4.½«¼ÆËã»úÓëZYE1801CʵÑéÏäͨ¹ý²¢¿ÚP1ÏàÁ¬¡£
5.ÔËÐÐCCSÈí¼þ¿Í»§Èí¼þ\\DSP³ÌÐò\\test19£¬Í¨¹ý²å°åÉϵÄJP1£¬JP2£¬JP3À´Ñ¡Ôñ²»Í¬µÄ²¨ÐΡ£ 6.ÓÃʾ²¨Æ÷¹Û²ìDA0µÄÊä³ö²¨ÐΡ£
Áù¡¢Éè¼ÆµÄÓ²¼þ½á¹¹¿òͼ
3λÊý×ÖÁ¿ÊäÈë12λÊý×ÖÁ¿Êä³öÄ£ÄâÁ¿Êä³ö Æß¡¢ ʵÑé´úÂë DSPоƬ D/Aת»»Æ÷ ÏȼÆËã0¡«45¡ã£¨¼ä¸ôΪ0.5¡ã£©µÄsinºÍcosÖµ£¬ÔÚÀûÓÃsin2a=2sina*cosaÇó³ösinÖµ£¨¼ä¸ôΪ1¡ã£©¡£È»ºó£¬Í¨¹ý¸´ÖÆ£¬»ñµÃ0¡«359¡ãµÄÕýÏÒÖµ¡£Öظ´ÏòPA¿ÚÊä³ö£¬±ã¿ÉµÃµ½ÕýÏÒ²¨¡£.title \.mmregs .globalmain .defstart
.refd_xs,d_sinx,d_xc,d_cosx,sinx,cosx sin_x:.usect cos_x:.usect
\\
fangbo:.usect \STACK:.usect \k_theta:.set286 TIM0.set0024H PRD0.set0025H TCR0.set0026H PA.set0100H .text
start:;²úÉúÕýÏÒ²¨Êý¾Ý STM
k_theta,AR0
STM#0,AR1 STM#sin_x,AR6 STM#90,BRC RPTBloop1-1 LDMAR1,A LD#d_xs,DP STLA,@d_xs STLA,@d_xc CALLsinx CALLcosx LD#d_sinx,DP LD@d_sinx,16,A MPYA@d_cosx STHB,1,*AR6+ MAR*AR1+0
loop1:STM#sin_x+89,AR7