רÀûÃû³Æ£ºSpi½Ó¿ÚÒì³£¼ì²â·½·¨Óë×°ÖõÄÖÆ×÷·½·¨
¼¼ÊõÁìÓò£º
±¾·¢Ã÷Éæ¼°µç×ӵ緼¼ÊõÁìÓò£¬ÌرðÊÇÉæ¼°©`ÖÖSPI½Ó¥íÒì³£¼ì²â·½·¨Óë×°Öá£
±³¾°¼¼Êõ£º
SPI ½Ó ¥í µÄÈ«³ÆÊÇ¡¨ Serial Peripheral Interface ¡¨£¬ÒâΪ´®ÐÐÍâΧ½Ó ¥í£¬ÊÇMotorolaÊ×ÏÈÔÚÆäMC68HCXXϵÁд¦ÀíÆ÷É϶¨ÒåµÄ¡£¸Ã½Ó¥íÒ»°ãʹÓÃ4¸ùÐźÅÏß´®ÐÐʱÖÓÏßSCK¡¢Ö÷»úÊäÈë/´Ó»úÊä³öÊý¾ÝÏßMIS0¡¢Ö÷»úÊä³ö/´Ó»úÊäÈëÊý¾ÝÏßMOSIºÍµÍµçƽÓÐЧµÄ´Ó»úÑ¡ÔñÏßSS¡£¸Ã½Ó¥í¿ÉʵÏÖ¸ßËÙÂʵÄȫ˫¹¤Êý¾Ý´«Êä(×î¸ßËÙÂʿɴï50Mhz)£¬ÇÒ¼òµ¥¡¢Ò×Óã¬Ä¿Ç°ÒѾ¹ã·ºÓ¦ÓÃÔÚEEPROM¡¢FLASH¡¢ÊµÊ±Ê±ÖÓ¡¢ADת»»Æ÷¡¢Êý×ÖÐźŴ¦ÀíÆ÷ºÍÊý×ÖÐźŽâÂëÆ÷µÈ·½°¸ÉÏ¡£»ùÓÚSPI½Ó¥íµÄÊý¾Ý´«ÊäÊÇÖ÷´ÓʽµÄ£¬ËùÓеĶԻ°·¢Æð¾ùÓÉÖ÷»ú¿ØÖÆ¡£SCK¡¢SS¼°MOSIÓÉÖ÷»ú·¢³ö£¬´Ó»úͨ¹ýMOSIÐźÅÏßÏòÖ÷»ú»ØËÍÊý¾Ý¡£SPI½Ó¥í³£Ó¦ÓÃÓÚÖ÷¿ØÖÆÆ÷(MCU¡¢DSP»òFPGA)ÓëÍâΧоƬ֮¼ä½øÐÐÊý¾Ý´«Ê䣬Íê ³Éϵͳ…¢ÊýµÄÅäÖü°±£´æ¡£Ö÷¿ØÖÆÆ÷ͨ¹ýSPI½Ó¥í¶ÁÈ¡ÍâΧоƬËù±£´æµÄ…¢Êý²¢°´ÕÕÔ¤¶¨º¬Òå½øÐнâÎö£¬¼ÙÈçÍâΧоƬ¹¤×÷ʧЧÔòÆäSPI½Ó¥í½«´¦ÓÚÒ쳣״̬£¬Ö÷¿ØÖÆÆ÷²»ÄÜʶ±ð¸Ã״̬£¬»áÈç³£Ö´ÐÐͨ¹ýSPI½Ó¥í´ÓÍâΧÆ÷¼þ»Ø¶ÁµÄÊý¾Ý£¬Ôì³ÉÖ÷¿ØÖÆÆ÷Îó¶¯×÷Çé¿ö£¬µ¼ÖÂϵͳ¹¤×÷²»Õý³£¡£
·¢Ã÷ÄÚÈÝ
±¾·¢Ã÷Ìá³öÁË©`ÖÖSPI½Ó¿ÚÊý¾Ý´«ÊäÒì³£µÄ¼ì²â·½·¨£¬ÒÔ¼ì²âÍâΧоƬµÄSPI½Ó¥íÊÇ·ñ³öÏÖÒì³£¡£©`ÖÖSPI½Ó¥íÒì³£¼ì²â·½·¨£¬°üÀ¨²½ÖèÔÚÖ÷¿ØÖÆÆ÷µÄ»Ø¶ÁÊý¾ÝÖÜΧÄÚ£¬¶ÔÖ÷¿ØÖÆÆ÷·¢³öµÄSCKÂö³å½øÐмÆÊý£»Ö÷¿ØÖÆÆ÷µÄ»Ø¶ÁÊý¾ÝÖÜÆÚ½áÊøÊ±£¬½«ËùÊöSCKÂö³åµÄ¼ÆÊýÖµÓë±ê×¼Öµ±È½Ï£»ÈôËùÊöSCKÂö³åµÄ¼ÆÊýÖµÓë±ê×¼Öµ²»Í¬£¬ÔòÅж¨ÍâΧоƬµÄSPI½Ó¥íÒì³£¡£ÔÚÆäÖÐÒ»¸öʵʩÀýÖУ¬µ±ËùÊöÖ÷¿ØÖÆÆ÷ΪMCUʱ£¬ËùÊöMCUµÄÊäÈë²¶×½Òý½ÅÁ¬½ÓËùÊöMCUµÄSPI½Ó¥íµÄSCKÒý½Å£¬ËùÊöMCUÆô¶¯ÊäÈë²¶×½¹¦ÄÜ£¬ÔڻضÁÊý¾ÝÖÜÆÚÄÚ£¬Í¨¹ýËùÊöÊäÈë²¶×½Òý½Å²¶×½ËùÊöSCKÂö³åµÄÉÏÉýÑØ»òϽµÑØ£¬µÃµ½ËùÊöSCKÂö³åµÄ¸öÊý¡£ÔÚÆäÖÐÒ»¸öʵʩÀýÖУ¬µ±ËùÊöÖ÷¿ØÖÆÆ÷ΪFPGAʱ£¬ÔÚËùÊöFPGAÄÚ²¿Éú³É¼ì²âÄ£¿é£¬ËùÊö¼ì²âÄ£¿éÔÚ±¾FPGAµÄ»Ø¶ÁÊý¾ÝÖÜΧÄÚ£¬¶Ô±¾FPGAµÄSPI½Ó¥íµÄSCKÒý½ÅÉϵÄSCKÂö³å½øÐвÉÑù²¢¼ÆÊý¡£©`ÖÖSPI½Ó¥íÒì³£¼ì²â×°Ö㬰üÀ¨¼ÆÊýÄ£¿é£¬ÓÃÓÚÔÚÖ÷¿ØÖÆÆ÷µÄ»Ø¶ÁÊý¾ÝÖÜΧÄÚ£¬¶ÔÖ÷¿ØÖÆÆ÷·¢³öµÄSCKÂö³å½øÐмÆÊý£»±È½ÏÄ£¿é£¬ÓÃÓÚÔÚÖ÷¿ØÖÆÆ÷µÄ»Ø¶ÁÊý¾ÝÖÜÆÚ½áÊøÊ±£¬½«ËùÊöSCKÂö³åµÄ¼ÆÊýÖµÓë±ê×¼Öµ±È½Ï£»Åж¨Ä£¿é£¬ÓÃÓÚÔÚËùÊöSCKÂö³åµÄ¼ÆÊýÖµÓëËùÊö±ê×¼Öµ²»Í¬Ê±£¬Åж¨ÍâΧоƬµÄSPI½Ó¥íÒì³£¡£±¾·¢Ã÷SPI½Ó¥íÒì³£¼ì²â·½·¨Óë×°Ö㬶ÔÖ÷¿ØÖÆÆ÷·¢³öµÄSCKÂö³å½øÐмÆÊý£¬²¢½«¼ÆÊýÖµÓë±ê×¼Öµ±È½Ï£¬Èô¼ÆÊýֵСÓÚ±ê×¼ÖµÔòÅж¨ÍâΧоƬµÄSPI½Ó¥í³öÏÖÒì³£¡£µ±Ö÷¿ØÖÆÆ÷µÄ¾ßÌåÐÎʽΪMCU»òFPGAʱ£¬¿ÉÒÔ¸ù¾ÝMCU»òFPGAµÄÌØµãµ÷½ÚSCKÂö³åµÄ¼ÆÊý·½·¨¡£±¾¼ì²â·½·¨Óë×°Öüòµ¥ÓÐЧ£¬ÎªÖ÷¿ØÖÆÆ÷¶Ô»Ø¶ÁÊý¾ÝµÄÈ¡ÉáÌṩÁËÒÀ¾Ý¡£
ͼIΪ±¾·¢Ã÷SPI½Ó¥íÒì³£¼ì²â·½·¨µÄÁ÷³ÌʾÒâͼ£»Í¼2Ϊ»ùÓÚ±¾·¢Ã÷SPI½Ó¥íÒì³£¼ì²â·½·¨µÄMCUÓëÍâΧоƬSPI½Ó¥íµÄ½á¹¹Ê¾Òâͼ£»Í¼3Ϊ»ùÓÚ±¾·¢Ã÷SPI½Ó¥íÒì³£¼ì²â·½·¨µÄFPGAÓëÍâΧоƬSPI½Ó¥íµÄ½á¹¹Ê¾Òâͼ£» ͼ4Ϊ±¾·¢Ã÷SPI½Ó¥íÒì³£¼ì²â×°ÖõĽṹʾÒâͼ¡£
¾ßÌåʵʩÀý·½Ê½´Ó»ú»òÕß˵ÍâΧоƬµÄSPI½Ó¥íʧЧʱ£¬»á½«Ö÷»ú¿ØÖƵÄSCKÐźÅÏßÀΪ¹Ì¶¨µÄ¸ßµçƽ»òµÍµçƽ£¬±¾·¢Ã÷ÀûÓÃSCKÐźŵÄÕâ¸öÌØÕ÷£¬¶ÔÖ÷»ú»òÕß˵Ö÷¿ØÖÆÆ÷·¢Ë͵ÄSCKÂö³å½øÐмÆÊý£¬²¢½«¼ÆÊýÖµÓë±ê×¼Öµ±È½Ï£¬ÈôСÓÚ±ê×¼ÖµÔò˵Ã÷´Ó»úSPI½Ó¥íʧЧ¡£ÏÂÃæ½áºÏ¸½Í¼ÓëʵʩÀýÏêϸ½âÊͱ¾·¢Ã÷¡£±¾·¢Ã÷SPI½Ó¥íÒì³£¼ì²â·½·¨Óë×°Öã¬ÈçͼIËùʾ£¬°üÀ¨²½Öè²½ÖèSI¡¢ÔÚÖ÷¿ØÖÆÆ÷µÄ»Ø¶ÁÊý¾ÝÖÜΧÄÚ£¬¶ÔÖ÷¿ØÖÆÆ÷·¢³öµÄSCKÂö³å½øÐмÆÊý£»²½ÖèS2¡¢Ö÷¿ØÖÆÆ÷µÄ»Ø¶ÁÊý¾ÝÖÜÆÚ½áÊøÊ±£¬½«ËùÊöSCKÂö³åµÄ¼ÆÊýÖµÓë±ê×¼Öµ±È½Ï£»²½ÖèS3¡¢ÈôËùÊöSCKÂö³åµÄ¼ÆÊýÖµÓë±ê×¼Öµ²»Í¬£¬ÔòÅж¨ÍâΧоƬµÄSPI½Ó¥íÒì³£¡£Ö÷¿ØÖÆÆ÷»Ø¶ÁÊý¾Ýʱ£¬ÆäSPI½Ó¥íµÄSCKÒý½ÅÐèÒª·¢ËÍÓëSCKÂö³å£¬Õý³£Çé¿öÏ£¬SCKÂö³åµÄµçƽһ¸ßÒ»µÍ¼ä¸ô·Ö²¼£¬µ«ÈôÍâΧоƬµÄSPI½Ó¥íÒì³££¬ÔòSCKÂö³å³ÖÐø¸ßµçƽ»òµÍµçƽ£¬ÔòSCKÂö³å¼ÆÊýÖµ±ØÈ»²»µÈÓÚÇÒСÓÚ±ê×¼Öµ¡£±¾¼ì²â·½·¨ÕýÊǾݴËÅжÏÍâΧоƬµÄSPI½Ó¥íÊÇ·ñÒì³££¬ÈôÒì³££¬ÔòÖ÷¿ØÖÆÆ÷»Ø¶ÁµÄÊý¾Ý²»Õý³££¬Ó¦¶ªÆú²¢·¢³ö¸æ¾¯¡£Ö÷¿ØÖÆÆ÷¿ÉÄÜÊÇMCU£¬Ò²¿ÉÄÜÊÇFPGA£¬ÏÂÃæ·Ö±ð½øÐÐ˵Ã÷¡£UMCU×÷ΪÖ÷¿ØÖÆÆ÷£¬Ê¹Óö¨Ê±Æ÷µÄÊäÈë²¶×½¹¦ÄÜʵʱ¼ì²âSCKÐźš£MCUµÄͨÓö¨Ê±Æ÷¿ÉÅäÖÃΪÊäÈë²¶×½¹¦ÄÜ£¬Èçͼ2Ëùʾ£¬SCKÐźÅͨ¹ýÍⲿ×ßÏßÁ¬½ÓÊý¾ÝÖÁMCUµÄÊäÈë²¶×½Òý½Å£¬ÔÚMCUÈí¼þÖпÉÅäÖÃΪÉÏÉýÑØ²¶×½»òϽµÑز¶×½²¢¶ÔÆä½øÐмÆÊý£¬¶¨Òå¸Ã¼ÆÊý…¢ÊýΪPulseCnt²¢Óë±ê×¼ÖµStandCnt½øÐбȽϣ¬´Ó¶øÄÜÈ·¶¨ÍâΧоƬµÄSPI½Ó¥íÊÇ·ñÕý³£¡£¼Ù¶¨Êý¾ÝλΪ¦Ç룬Ҫ»Ø¶Á£¬ÔòMCUÐèÒª·¢¦Ç¸öSCKÂö³å£¬StandCnt=n¡£Ã¿·¢©`¸öSCKÂö³å£¬PulseCnt»áÀÛ¼Ó¼ÆÊý£¬»Ø¶Á½áÊøÊ±½«PulseCntÓëStandCnt½øÐбȽϼ´ÄÜÅж¨µ±´Î´«ÊäÊÇ·ñÕý³£¡£2¡¢FPGA×÷ΪÖ÷¿ØÖÆÆ÷£¬Ê¹ÓÃFPGAÄÚ²¿µÄ¸ßËÙʱÖÓ¶ÔSCKÐźŽøÐвÉÑù²¢ÔڻضÁÊý¾ÝÖÜÆÚÄÚ½øÐмÆÊý£¬»Ø¶ÁÊý¾Ý½áÊøºó½øÐбȶÔÒÔÅж¨´«ÊäÊÇ·ñÕý³£¼°»Ø¶ÁÊý¾ÝÊÇ·ñÓÐЧ¡£¼ì²âÔÀí¸úMCU×÷ΪÖ÷¿ØÖÆÆ÷ʱ©`Ñù£¬Ëù²»Í¬µÄÊÇÓ²¼þʵÏÖ·½Ê½¡£FPGA×÷ΪÖ÷¿ØÖÆÆ÷ʱ£¬Èçͼ3Ëùʾ£¬ÔÚFPGAÄÚ²¿ÓôúÂëÉú³É©`¼ì²âÄ£¿é¶ÔSCKÐźŽøÐвÉÑù£¬ÎÞÐèÍⲿÁ¬Ïß¡£±¾·¢Ã÷SPI½Ó¥íÒì³£¼ì²â×°Öã¬Èçͼ4Ëùʾ£¬°üÀ¨¼ÆÊýÄ£¿é£¬ÓÃÓÚÔÚÖ÷¿ØÖÆÆ÷µÄ»Ø¶ÁÊý¾ÝÖÜΧÄÚ£¬¶ÔÖ÷¿ØÖÆÆ÷·¢³öµÄSCKÂö³å½øÐмÆÊý£»±È½ÏÄ£¿é£¬ÓÃÓÚÔÚÖ÷¿ØÖÆÆ÷µÄ»Ø¶ÁÊý¾ÝÖÜÆÚ½áÊøÊ±£¬½«ËùÊöSCKÂö³åµÄ¼ÆÊýÖµÓë±ê×¼Öµ±È½Ï£»Åж¨Ä£¿é£¬ÓÃÓÚÔÚËùÊöSCKÂö³åµÄ¼ÆÊýÖµÓëËùÊö±ê×¼Öµ²»Í¬Ê±£¬Åж¨ÍâΧоƬµÄSPI½Ó¥íÒì³£¡£ÓÉÒÔÉÏÃèÊö¼°Í¼4¿ÉÖª£¬¼ÆÊýÄ£¿é¡¢±È½ÏÄ£¿éºÍÅж¨Ä£¿éÒÀ´ÎÏàÁ¬£¬¹¹³ÉÁ˱¾¼ì²â ×°Öᣱ¾¼ì²â×°ÖÃÊÇÓëÉÏÊö¼ì²â·½·¨¶ÔÓ¦µÄ×°Ö㬽«Á½Õß½áºÏʹÓ㬼´¿ÉʵÏÖ±¾·¢Ã÷µÄÄ¿µÄ¡£ÒÔÉÏËùÊöʵʩÀý½ö±í´ïÁ˱¾·¢Ã÷µÄ¼¸ÖÖʵʩ·½Ê½£¬ÆäÃèÊö½ÏΪ¾ßÌåºÍÏêϸ£¬µ«²¢²»ÄÜÒò´Ë¶øÀí½âΪ¶Ô±¾·¢Ã÷רÀû·¶Î§µÄÏÞÖÆ¡£Ó¦µ±Ö¸³öµÄÊÇ£¬¶ÔÓÚ±¾ÁìÓòµÄÆÕͨ¼¼ÊõÈËÔ±À´Ëµ£¬ÔÚ²»ÍÑÀë±¾·¢Ã÷¹¹Ë¼µÄǰÌáÏ£¬»¹¿ÉÒÔ×ö³öÈô¸É±äÐκ͸Ľø£¬ÕâЩ¶¼ÊôÓÚ±¾·¢Ã÷µÄ±£»¤·¶Î§¡£Òò´Ë£¬±¾·¢Ã÷רÀûµÄ±£»¤·¶Î§Ó¦ÒÔËù¸½È¨ÀûÒªÇóΪ׼¡£
ȨÀûÒªÇó
1.©`ÖÖSPI½Ó¥íÒì³£¼ì²â·½·¨£¬ÆäÌØÕ÷ÔÚÓÚ£¬°üÀ¨²½Öè ÔÚÖ÷¿ØÖÆÆ÷µÄ»Ø¶ÁÊý¾ÝÖÜΧÄÚ£¬¶ÔÖ÷¿ØÖÆÆ÷·¢³öµÄSCKÂö³å½øÐмÆÊý£» Ö÷¿ØÖÆÆ÷µÄ»Ø¶ÁÊý¾ÝÖÜÆÚ½áÊøÊ±£¬½«ËùÊöSCKÂö³åµÄ¼ÆÊýÖµÓë±ê×¼Öµ±È½Ï£» ÈôËùÊöSCKÂö³åµÄ¼ÆÊýÖµÓë±ê×¼Öµ²»Í¬£¬ÔòÅж¨ÍâΧоƬµÄSPI½Ó¥íÒì³£¡£
2.¸ù¾ÝȨÀûÒªÇóIËùÊöµÄSPI½Ó¥íÒì³£¼ì²â·½·¨£¬ÆäÌØÕ÷Ôڸɣ¬µ±ËùÊöÖ÷¿ØÖÆÆ÷ΪMCUʱ£¬ËùÊöMCUµÄÊäÈë²¶×½Òý½ÅÁ¬½ÓËùÊöMCUµÄSPI½Ó¥íµÄSCKÒý½Å£¬ËùÊöMCUÆô¶¯ÊäÈë²¶×½¹¦ÄÜ£¬ÔڻضÁÊý¾ÝÖÜÆÚÄÚ£¬Í¨¹ýËùÊöÊäÈë²¶×½Òý½Å²¶×½ËùÊöSCKÂö³åµÄÉÏÉýÑØ»òϽµÑØ£¬µÃµ½ËùÊöSCKÂö³åµÄ¸öÊý¡£
3.¸ù¾ÝȨÀûÒªÇóIËùÊöµÄSPI½Ó¥íÒì³£¼ì²â·½·¨£¬ÆäÌØÕ÷Ôڸɣ¬µ±ËùÊöÖ÷¿ØÖÆÆ÷ΪFPGAʱ£¬ÔÚËùÊöFPGAÄÚ²¿Éú³É¼ì²âÄ£¿é£¬ËùÊö¼ì²âÄ£¿éÔÚ±¾FPGAµÄ»Ø¶ÁÊý¾ÝÖÜΧÄÚ£¬¶Ô±¾FPGAµÄSPI½Ó¥íµÄSCKÒý½ÅÉϵÄSCKÂö³å½øÐвÉÑù²¢¼ÆÊý¡£
4.©`ÖÖSPI½Ó¥íÒì³£¼ì²â×°Öã¬ÆäÌØÕ÷ÔÚÓÚ£¬°üÀ¨ ¼ÆÊýÄ£¿é£¬ÓÃÓÚÔÚÖ÷¿ØÖÆÆ÷µÄ»Ø¶ÁÊý¾ÝÖÜΧÄÚ£¬¶ÔÖ÷¿ØÖÆÆ÷·¢³öµÄSCKÂö³å½øÐмÆÊý£»±È½ÏÄ£¿é£¬ÓÃÓÚÔÚÖ÷¿ØÖÆÆ÷µÄ»Ø¶ÁÊý¾ÝÖÜÆÚ½áÊøÊ±£¬½«ËùÊöSCKÂö³åµÄ¼ÆÊýÖµÓë±ê×¼Öµ±È½Ï£» Åж¨Ä£¿é£¬ÓÃÓÚÔÚËùÊöSCKÂö³åµÄ¼ÆÊýÖµÓëËùÊö±ê×¼Öµ²»Í¬Ê±£¬Åж¨ÍâΧоƬµÄSPI½Ó¥íÒì³£¡£
È«ÎÄÕªÒª
±¾·¢Ã÷¹«¿ªÁËÒ»ÖÖSPI½Ó¿ÚÒì³£¼ì²â·½·¨Óë×°Ö㬶ÔÖ÷¿ØÖÆÆ÷·¢³öµÄSCKÂö³å½øÐмÆÊý£¬²¢½«¼ÆÊýÖµÓë±ê×¼Öµ±È½Ï£¬Èô¼ÆÊýֵСÓÚ±ê×¼ÖµÔòÅж¨ÍâΧоƬµÄSPI½Ó¿Ú³öÏÖÒì³£¡£µ±Ö÷¿ØÖÆÆ÷µÄ¾ßÌåÐÎʽΪMCU»òFPGAʱ£¬¿ÉÒÔ¸ù¾ÝMCU»òFPGAµÄÌØµãµ÷½ÚSCKÂö³åµÄ¼ÆÊý·½·¨¡£±¾¼ì²â·½·¨Óë×°Öüòµ¥ÓÐЧ£¬ÎªÖ÷¿ØÖÆÆ÷¶Ô»Ø¶ÁÊý¾ÝµÄÈ¡ÉáÌṩÁËÒÀ¾Ý¡£
Îĵµ±àºÅG01R31/28GK102841303SQ201210287480
¹«¿ªÈÕ2012Äê12ÔÂ26ÈÕ ÉêÇëÈÕÆÚ2012Äê8ÔÂ10ÈÕ ÓÅÏÈȨÈÕ2012Äê8ÔÂ10ÈÕ
·¢Ã÷ÕßФΰȨ ÉêÇëÈË:¹ã¶«Íþ´´ÊÓѶ¿Æ¼¼¹É·ÝÓÐÏÞ¹«Ë¾