ÑÇÐÇÓÎÏ·¹ÙÍø-www.yaxin868.com

ɽ¶«ÑÇÐÇÓÎÏ·¹ÙÍø»ú´²ÓÐÏÞ¹«Ë¾Ï³´²¹Ù·½ÍøÕ¾½ñÌìÊÇ£º2025-04-17Çл»³ÇÊÐ[È«¹ú]-ÍøÕ¾µØÍ¼
ÍÆ¼ö²úÆ· :
ÍÆ¼öÐÂÎÅ
¼¼ÊõÎÄÕµ±Ç°Î»ÖÃ:¼¼ÊõÎÄÕÂ>

»ùÓÚfpgaµÄÁ¸Ê³Æ·ÖÊÔÚÏß¼ì²â×°Öü°·½·¨

ʱ¼ä:2025-04-16    ×÷Õß: ¹ÜÀíÔ±

רÀûÃû³Æ£º»ùÓÚfpgaµÄÁ¸Ê³Æ·ÖÊÔÚÏß¼ì²â×°Öü°·½·¨
¼¼ÊõÁìÓò£º
±¾·¢Ã÷Éæ¼°Ò»ÖÖÁ¸Ê³Æ·ÖÊÔÚÏß¼ì²â×°Öü°·½·¨£¬ÓÈÆäÊÇÉæ¼°Ò»ÖÖ»ùÓÚFPGAµÄÁ¸Ê³Æ·ÖÊÔÚÏß¼ì²â×°Öü°·½·¨¡£
±³¾°¼¼Êõ£º
ÎÒ¹úÊÇÊÀ½çµÚÒ»²úÁ¸´ó¹ú£¬Ã¿ÄêÉú²ú5ÒÚ¶à¶ÖÁ¸Ê³£¬Õ¼ÊÀ½ç×ܲúÁ¿µÄ22%¡£µ«ÊÇÓëÎÒ¹úÁ¸Ê³Éú²ú´ó¹úµØÎ»¼«²»Ïà³ÆµÄÊÇÎÒ¹úÁ¸Ê³¼ì²â¼Ó¹¤×Ô¶¯»¯Ë®Æ½µÄÏà¶ÔÂäºó¡£¹úÄÚÁ¸Ê³¼ì²âµÄÒ»°ã·½·¨£¬»¹Í£ÁôÔÚÍêÈ«ÊÖ¹¤½×¶Î£¬¼´±ãÓв¿·ÖÁ¸Ê³Æ·ÖʲÎÊý¿ÉÒÔͨ¹ý¼òµ¥µÄÒÇÆ÷É豸½øÐмì²â£¬Æä½á¹ûµÄ׼ȷÐÔ»¹Ô¶²»ÄÜÁîÈËÂúÒâ¡£´ó¶àÊýÁ¸Ê³¼ì²â¼Ó¹¤×°±¸ÖÆÔìÆóÒµ¹æÄ£Ð¡¡¢¼¼Êõ·ÖÉ¢¡¢¿ª·¢ÄÜÁ¦Èõ¡¢²úÆ·µ¥Ò»¡¢³ÉÌ×ÄÜÁ¦²î£¬Ð§ÂʵÍ¡£µ±Ç°¹úÄÚÊг¡ÉÏ£¬ÓÃÓÚÁ¸Ê³¿ÅÁ£Æ·Öʼì²âºÍ·Ö¼¶µÄ¹âµçɫѡ»ú£¬¹úÍâÆ·ÅÆµÄÕ¼¾Ý×ÅÖ÷Òª·Ý¶î¡£Ä¿Ç°¶ÔÁ¸Ê³Æ·ÖʽøÐзּ¶µÄÖ÷ÒªÖ¸±ê°üÀ¨ÈÝÁ¿¡¢²»ÍêÉÆÁ£¡¢ÔÓÖÊ¡¢Ë®·Ö¡¢É«ÔóºÍÆøÎ¶£¬¶ø²»ÍêÉÆÁ£ºÍÔÓÖʺ¬Á¿ÊÇ¿ÉÒÔͨ¹ýͼÏñµÄ·½·¨½øÐмì²âµÄ¡£ÒÔÍùµÄ¼ì²â·Ö¼¶¹¤×÷Ö÷ÒªÊÇÓÉÈ˹¤Íê³É£¬¼ì²â½á¹ûÈÝÒ×ÊÜÖ÷¹ÛÒòËØµÄÓ°Ï죬¾«¶ÈµÍ¡¢ËÙ¶ÈÂý£¬ÇÒ¶Ô¼ì²âÔ±¶øÑÔ£¬ÈÝÒ×Ôì³ÉÊÓ¾õÆ£ÀÍ¡£´«Í³»ùÓÚPC»úµÄ»úÆ÷ÊÓ¾õ¼¼Êõ£¬¿ÉÒÔʵÏÖ¶ÔÁ¸Ê³Æ·Öʿ͹Û¡¢×¼È·µÄ¼ì²â£¬µ«È´´æÔÚϵͳÌå»ýÅӴ󡢳ɱ¾¸ßºÍʵʱÐÔ²îµÄÎÊÌ⡣ǶÈëʽ»úÆ÷ÊÓ¾õ¼¼Êõ×÷ΪһÖÖÐÂÐË·¢Õ¹ÆðÀ´µÄÎÞËð¼ì²â¼¼Êõ£¬¼«´óµÄ¿Ë·þÁËÈ˹¤¼ì²âºÍ´«Í³»úÆ÷ÊÓ¾õ¼¼ÊõµÄ²»×㣬¾ßÓÐʵʱÐԺᢳɱ¾µÍ¡¢¹¦ºÄСºÍ½á¹¹½ô´ÕµÄÌØµã£¬ÒѾ­±»¹ã·ºµØÓ¦ÓÃÓÚ¸÷ÖÖ¼ì²âºÍ¼à¿ØÐÐÒµµ±ÖС£ÔÚÁ¸Ê³Æ·ÖÊ×Ô¶¯¼ì²â·½Ã棬ÒÑÍê³ÉµÄ¹¤×÷Ö÷ÒªÓÐ
Y N Wan µÈ(Y N Wan, C M Lin, J F Chiou. Rice Quality Classification Using an Automatic Grain Quality Inspection System. Transactions of the ASAE,2002,45(2) 379-387)ÑÐÖÆÁ˹ÈÎï×Ô¶¯¼ì²âϵͳ£¬Á¸Á£Í¨¹ýËÍÁÏ»ú¹¹ÖеľØÕó¸ñ×ÓÈöµ½Í¸Ã÷Ƥ´øÉÏ£¬¶øºó½øÈëÊÓ³¡£»ÏµÍ³°üº¬Ò»¸ö²ÊÉ«Ïà»úºÍÒ»¸öºÚ°×Ïà»ú£¬²ÊÉ«Ïà»ú²ÉÓÃÈëÉä¹âÕÕÃ÷·½Ê½£¬ÓÃÀ´¼ì²â·ÇÆÆËðÁ£µÄÑÕÉ«ÌØÕ÷£¬ºÚ°×Ïà»ú²ÉÓñ³¹âÕÕÃ÷·½Ê½£¬ÓÃÀ´¼ì²âÆÆËðÁ££»Æø¶¯·§¿ÉÒÔ½«¹ÈÎï´µÈ뼯ÁÏÏäÄÚ£»ÏµÍ³¶ÔÕý³£Á£¡¢°×ÛÑÁ£ºÍÆÆËðÁ£µÄ¼ì²â¾«¶È·Ö±ðΪ95%¡¢92%ºÍ87%£¬¼ì²âËÙ¶ÈΪÿ·ÖÖÓ1200Á£¡£Kawamura µÈ(Kawamura S, Natsuga M, Takekura K, Itoh K. Development of anautomatic rice-quality inspection system. Computers and Electronics in Agriculture, 2003,40 :115-126)ÑÐÖÆÁ˵¾Ãׯ·ÖÊ×Ô¶¯¼ì²âϵͳ£¬¸Ãϵͳ·ÖΪÁ½²¿·Ö£¬Ò»²¿·ÖÀûÓýüºìÍâ͸ÉäÒÇÅжϵ¾Ã×µÄË®·ÖºÍµ°°×Öʺ¬Á¿£¬ÁíÒ»²¿·ÖÀûÓÃ͸Éä´«¸ÐÆ÷ºÍ·´Éä´«¸ÐÆ÷Åжϵ¾Ã×µÄÄÚÍâ²¿ÌØÕ÷£¬¸Ãϵͳÿ40Ãë´¦Àí1000Á££¬²¢´ïµ½Á˽ϸߵļì²â¾«¶È¡£³É·¼(³É·¼.µ¾ÖÖÖÊÁ¿µÄ»úÆ÷ÊÓ¾õÎÞËð¼ì²âÑо¿[D].º¼ÖÝÕã½­´óѧ£¬2005.)¿ª·¢ÁË»ùÓÚMatlabƽ̨µÄµ¾ÖÖͼÏñ·ÖÎöϵͳ£»Ìá³öÁË»ùÓÚK-Wµ¥ÌØÕ÷·ÖÎöµÄ×îÓÅÌØÕ÷¼¯Ñ¡È¡·½·¨£»¶ÔÓÚµ¾ÖÖ³£¼ûȱÏÝÈçÑ¿¹È¡¢Ã¹±äºÍÁÑÓ±£¬¿ª·¢Á˸߾«¶ÈµÄʶ±ðËã·¨¡£ÁèÔÆµÈ(ÁèÔÆ£¬ÍõÒ»Ãù£¬ËïÃ÷£¬Ëïºì£¬ÕÅС³¬.»ùÓÚ»úÆ÷ÊÓ¾õµÄ´óÃ×Íâ¹ÛÆ·Öʼì²â×°ÖÃ.ũҵ»úеѧ±¨£¬2005£¬36 (6) :89-9 ÑÐÖÆÁËÒ»Ì×»ùÓÚ»úÆ÷ÊÓ¾õµÄ´óÃ×Íâ¹ÛÆ·ÖʲÎÊý¼ì²â×°Ö㬸Ã×°ÖÃÓÉǶÈëʽ¹¤¿Ø»ú×÷Ϊ´¦ÀíÆ½Ì¨£¬ÀûÓÃCCDÏà»úÅÄÉãÍÐÅÌÉϵľ²Ì¬Í¼Ïñ£»ÏµÍ³²ÉÓøĽøµÄÁ÷Óò·Ö¸îË㷨ʵÏÖÁËÏàÁ¬×ÑÁ£µÄ·Ö¸î£¬²¢ÊµÏÖÁËÔÚ¾²Ì¬µÄÇé¿öÏÂ¶Ô 100Á£Ã×Ñù±¾µÄ°×ÛѶÈ¡¢°×ÛÑÂÊ¡¢»ÆÃ×Á£ºÍÁ£Ð͵ļì²â£¬¼ì²â¾«¶È·Ö±ðΪʿ2%¡¢Ê¿ 1%¡¢Ê¿5%ºÍÊ¿ 4%¡£ËÕÒäéª(ËÕÒäéª.»ùÓÚ»úÆ÷ÊÓ¾õºÍ¸ß¹âÆ×ͼÏñ¼¼ÊõµÄÁ¸Ê³Ë®·Ö¼ì²â¼°ÔÓÖÊÓë²»ÍêÉÆÁ£Ê¶±ð·½·¨Ñо¿[D].º¼ÖÝÕã½­´óѧ£¬2011.)²É¼¯6400·ùÁ¸Á£Í¼Ïñ£¬ÌáÈ¡ÁËͼÏñµÄÐÎ×´¡¢ÑÕÉ«¡¢²»±ä¾ØµÈËĸöÌØÕ÷£¬Í¨¹ýÒÔµ¥ÌØÕ÷ʶ±ðΪÖ÷£¬Èý²ãBPÈ˹¤Éñ¾­ÍøÂçΪ¸¨µÄ·½·¨£¬ ¹¹½¨ÁËÁ¸Á£ÓëÔÓÖÊʶ±ðµÄ»úÆ÷ÊÓ¾õ¾²Ì¬¼ì²âÓ²¼þϵͳºÍʶ±ðÄ£ÐÍ¡£½á¹ûÏÔʾ¸Ãʶ±ðÄ£Ð͵Ä×ÜÌåʶ±ðÕýÈ·ÂÊÔÚ90%ÒÔÉÏ¡£ÔÚʵ¼ÊÔÚÏß¼ì²âÖУ¬ÕâЩ·½·¨Ö»Äܼì²âµ½Á¸Á£Õû¸ö±íÃæµÄÒ»°ë£¬²»ÄÜÍê³É¶ÔÕû¸ö±íÃæÑÕÉ«ÌØÕ÷µÄ¼ì²â£»ÇÒͼÏñ´¦Àí¶¼ÊÇÒÀÀµÓÚPC»ú»òÊÇ»ùÓÚ´®ÐÐÖ¸ÁîÌåϵ´¦ÀíÆ÷µÄǶÈëʽϵͳ£¬ÕâʹµÃϵͳÈôÏëʵÏÖÔÚÏß¼ì²â£¬¾Í±ØÐëʹÊý¾ÝÔËËãµÄʱÖÓÆµÂÊÊÇÊý¾Ý²É¼¯Ê±ÖÓÆµÂʵÄÊý±¶£¬ÏµÍ³µÄ´¦ÀíËÙ¶ÈÊܵ½¼«´óÏÞÖÆ¡£

·¢Ã÷ÄÚÈÝ
±¾·¢Ã÷µÄÄ¿µÄÔÚÓÚÌṩһÖÖ»ùÓÚFPGAµÄÁ¸Ê³Æ·ÖÊÔÚÏß¼ì²â×°Öü°·½·¨£¬Äܰ´Á¸Ê³¿ÅÁ£ÐÎÌ¬ÌØÕ÷ºÍºÍÕû¸ö¿ÅÁ£±íÃæµÄÑÕÉ«ÌØÕ÷£¬²ÉÓÃÁ½¸öÏßɨÃèÏà»úºÍFPGA²¢Ðд¦Àí·½Ê½µÄÁ¸Ê³Æ·ÖÊÔÚÏß¼ì²â×°Öü°·½·¨£¬ÄܶÔÁ¸Ê³Æ·ÖʽøÐÐÈ«ÃæÆÀ¶¨µÄ»úÆ÷ÊÓ¾õϵͳ
±¾·¢Ã÷½â¾öÆä¼¼ÊõÎÊÌâËù²ÉÓõļ¼Êõ·½°¸ÊÇ Ò»¡¢»ùÓÚFPGAµÄÁ¸Ê³Æ·ÖÊÔÚÏß¼ì²â×°ÖÃ
Ëü°üÀ¨Ö÷¶¯¹öͲ£¬µ÷ËÙµç»ú£¬µÚÒ»´Ó¶¯¹öͲ£¬¶àÐÐʽÅÅÖÖÆ÷£¬Í¸Ã÷Ƥ´ø£¬µÚÒ»ÏßɨÃèÏà»ú£¬µÚÒ»¹âÕÕÏ䣬µÚÒ»Ïß¹âÔ´£¬µÚÒ»±³¾°°å£¬UÐλú¼Ü£¬µÚ¶þ±³¾°°å£¬FPGAͼÏñ´¦Àí°å£¬ARM°å£¬ µÚ¶þÏß¹âÔ´£¬µÚ¶þÏßɨÃèÏà»ú£¬µÚ¶þ¹âÕÕÏ䣬µÚ¶þ´Ó¶¯¹öͲ£¬±àÂëÆ÷ºÍµÚÈý´Ó¶¯¹öͲ£»ÆäÖÐ
ÔÚUÐλú¼ÜÁ½²àµÄµ×²¿·Ö±ð°²×°ÓÐÓɵ÷ËÙµç»ú´ø¶¯µÄÖ÷¶¯¹öͲºÍµÚ¶þ´Ó¶¯¹öͲ£¬ÔÚU Ðλú¼ÜÁ½²àµÄÉϲ¿·Ö±ð°²×°µÚÒ»´Ó¶¯¹öͲºÍµÚÈý´Ó¶¯¹öͲ£»ÔÚUÐλú¼ÜµÄÖв¿·Ö±ð°²×°ÓеÚÒ»¹âÕÕÏäºÍµÚ¶þ¹âÕÕÏ䣬͸Ã÷Ƥ´ø´©¹ýµÚÒ»¹âÕÕÏäºÍµÚ¶þ¹âÕÕÏäºó£¬»·ÈÆÔÚµÚÈý´Ó¹öͲ¡¢ µÚ¶þ´Ó¶¯¹öͲ¡¢Ö÷¶¯¹öͲºÍµÚÒ»´Ó¶¯¹öͲÉÏ£»µÚÒ»±³¾°°å°²×°ÔÚµÚÒ»¹âÕÕÏäµÄ͸Ã÷Ƥ´øÏ·½£¬µÚÒ»¹âÕÕÏäµÄ͸Ã÷Ƥ´øÉÏ·½£¬´ÓÏÂÖÁÉÏÒÀ´Î°²×°µÚÒ»Ïß¹âÔ´ºÍµÚÒ»ÏßɨÃèÏà»ú£¬µÚ¶þ±³¾°°å°²×°ÔÚµÚ¶þ¹âÕÕÏäµÄ͸Ã÷Ƥ´øÉÏ·½£¬µÚ¶þ¹âÕÕÏäµÄ͸Ã÷Ƥ´øÏ·½£¬´ÓÉÏÖÁÏÂÒÀ´Î°²×°µÚ¶þÏß¹âÔ´ºÍµÚ¶þÏßɨÃèÏà»ú£»¶àÐÐʽÅÅÖÖÆ÷°²×°ÔÚµÚÒ»´Ó¶¯¹öͲ²àµÄ͸Ã÷Ƥ´øµÄÉÏ·½£» FPGAͼÏñ´¦Àí°åͨ¹ýCameraLinkÁ¬½Ó¿Ú·Ö±ðÓëµÚÒ»ÏßɨÃèÏà»úºÍµÚ¶þÏßɨÃèÏà»úÏàÁ¬£¬ FPGAͼÏñ´¦Àí°åͨ¹ý10/100 Ethernet ¿ÚºÍDVIÊÓÆµ¿ÚÓëARM°åÏàÁ¬£¬°²×°ÔÚµÚÈý´Ó¶¯¹öͲÖáÉϵıàÂëÆ÷ÓëFPGAͼÏñ´¦Àí°åÏàÁ¬¡£¶þ¡¢»ùÓÚFPGAµÄÁ¸Ê³Æ·ÖÊÔÚÏß¼ì²â·½·¨
ÔÚÆ¤´øÉÏÔËÐеĿÅÁ£ÏȾ­¹ýµÚÒ»ÏßɨÃèÏà»ú£¬ºó¾­¹ýµÚ¶þÏßɨÃèÏà»ú£¬¿ÅÁ£µÄÐÎÌ¬ÌØÕ÷ºÍÉϱíÃæÑÕÉ«ÌØÕ÷µÄ¼ì²â¹ý³ÌÊÇÀûÓõÚÒ»ÏßɨÃèÏà»úÅÄÉãµÄͼÏñÍê³ÉµÄ£¬¿ÅÁ£µÄÐÎÌ¬ÌØÕ÷ºÍÉϱíÃæÑÕÉ«ÌØÕ÷¶¨ÒåΪµÚÒ»ÌØÕ÷¼¯£»¿ÅÁ£Ãæ»ýºÍ¿ÅÁ£Ï±íÃæÑÕÉ«ÌØÕ÷µÄ¼ì²â¹ý³ÌÊÇÀûÓõڶþÏßɨÃèÏà»úÅÄÉãµÄͼÏñÍê³ÉµÄ£¬¿ÅÁ£Ãæ»ýºÍ¿ÅÁ£Ï±íÃæÑÕÉ«ÌØÕ÷¶¨ÒåΪµÚ¶þÌØÕ÷¼¯¡£µÚÒ»ÌØÕ÷¼¯ºÍµÚ¶þÌØÕ÷¼¯Öеĸ÷ÌØÕ÷µÄÌáÈ¡·½·¨½è¼øËÕÒäéªÔÚ»ùÓÚ»úÆ÷ÊÓ¾õºÍ¸ß¹âÆ×ͼÏñ¼¼ÊõµÄÁ¸Ê³Ë®·Ö¼ì²â¼°ÔÓÖÊÓë²»ÍêÉÆÁ£Ê¶±ð·½·¨Ñо¿ÖÐËù²ÉÓõķ½·¨¡£¿ÅÁ£¾­¶àÐÐʽÅÅÖÖÆ÷ÈöÔÚ͸Ã÷Ƥ´øÉÏ£¬²âÁ¿µÚÒ»Ïß¹âÔ´ÔÚ͸Ã÷Ƥ´øÉϵÄÕÕÉäλÖÃÓëµÚ¶þÏß¹âÔ´ÔÚ͸Ã÷Ƥ´øÉϵÄÕÕÉäλÖÃÖ®¼äµÄ¾àÀëD£¬²âÁ¿¿ÅÁ£ÖеÄ×îС¿ÅÁ£¿í¶ÈW£¬ÓÃD ³ýÒÔWÈ¡ÕûºóµÃµ½µÚÒ»ÏßɨÃèÏà»úºÍµÚ¶þÏßɨÃèÏà»úÖ®¼ä×î¶àÄܰڷŵĿÅÁ£ÊýÁ¿M_Col £»
¶¨Òå³£Á¿1_ RowΪ¶àÐÐʽÅÅÖÖÆ÷µÄÐÐÊý£» ¶¨ÒåÒÔϱäÁ¿
//µÚiÐÐÉϵĿÅÁ£¾­µÚÒ»ÏßɨÃèÏà»ú¼ì²âµÄ½á¹ûtrue±íʾ¿ÅÁ£µÄµÚÒ»ÌØÕ÷¼¯Âú×ãÕý³£Á¸Ê³¿ÅÁ£±ê×¼£¬false±íʾ¿ÅÁ£µÄµÚÒ»ÌØÕ÷¼¯²»Âú×ãÕý³£Á¸Ê³¿ÅÁ£±ê×¼¡£bool UpIsffheat ¢Å£»
IlµÚiÐÐÉϵĿÅÁ£¾­µÚ¶þÏßɨÃèÏà»ú¼ì²âµÄ½á¹ûtrue±íʾ¿ÅÁ£µÄµÚ¶þÌØÕ÷¼¯Âú×ãÕý³£Á¸Ê³¿ÅÁ£±ê×¼£¬false±íʾ¿ÅÁ£µÄµÚ¶þÌØÕ÷¼¯²»Âú×ãÕý³£Á¸Ê³¿ÅÁ£±ê×¼¡£bool DownIsffheat ¢Å£»
Il´Ó¶ÓÁÐÖÐÈ¡³öµÄµÚiÐÐÉϵĿÅÁ£¾­µÚÒ»ÏßɨÃèÏà»ú¼ì²âµÄ½á¹û¡£bool UpIsffheatNow (i)£»
IlµÚiÐÐÉϵĿÅÁ£¾­µÚÒ»ÏßɨÃèÏà»úºÍµÚ¶þÏßɨÃèÏà»ú×ۺϼì²âºóµÄ½á¹ûtrue±íʾÕý³£Á¸Ê³¿ÅÁ££¬false±íʾÆäËü¿ÅÁ£¡£bool IsffheatNow ¢Å£» ¶¨Òå¶ÓÁнṹ
Struct WheatQueueStruct
{
bool IsWheat[¦¬¡ªCol]£» int Head £» int Rear £»
¦É £»
Il¶¨Òå¶àÐÐʽÅÅÖÖÆ÷ÔÚ¸÷ÐÐÅųöµÄ¿ÅÁ£¶ÓÁÐ WheatQueueStruct WheatQueueArray[M¡ªRow]£»
µ±¶àÐÐʽÅÅÖÖÆ÷ÔÚµÚiÐÐÅųöµÄ¿ÅÁ£¾­¹ýµÚÒ»ÏßɨÃèÏà»úʱ£¬²ÉÓÃÏÖÓеķ½·¨ÅжϿÅÁ£µÄµÚÒ»ÌØÕ÷¼¯ÊÇ·ñÂú×ãÕý³£Á¸Ê³¿ÅÁ£±ê×¼£¬ÅжϽá¹ûÓɱäÁ¿UpIsWheat (i)¼Ç¼£¬²¢Ö´ÐÐÈçÏÂÓï¾ä
WheatQueueArray[i]. Isffheat[Rear] = UpIsffheat (i)£» WheatQueueArray[i]. Rear = (WheatQueueArray[i]. Rear + 1) % M_Col £» µ±¶àÐÐʽÅÅÖÖÆ÷ÅųöµÄµÚiÐпÅÁ£¾­¹ýµÚ¶þÏßɨÃèÏà»úʱ£¬ÈÔ²ÉÓÃËÕÒäéªÂÛÎĵķ½·¨ÅжϿÅÁ£µÄµÚ¶þÌØÕ÷¼¯ºÏÊÇ·ñÂú×ãÕý³£Á¸Ê³¿ÅÁ£±ê×¼£¬ÅжϽá¹ûÓɱäÁ¿DownlsWheat (i) ¼Ç¼£¬²¢Ö´ÐÐÈçÏÂÓï¾ä
UpIsffheatNow (i) = WheatQueueArray[i]. Isffheat[Head]£» WheatQueueArray[i]. Head = (WheatQueueArray[i]. Head + 1) % M_Col £» IsffheatNow (i)= UpIsffheatNow (i)* DownIsffheat (i)£»
Èç¹ûIsWheatNow (i)µÄֵΪtrue£¬ÔòÊä³ö½á¹û±íʾ¸Ã¿ÅÁ£ÎªÕý³£Á¸Ê³¿ÅÁ££¬·ñÔòΪÆäËü¿ÅÁ££¬ÆäËü¿ÅÁ£°üÀ¨ÔÓÖÊÁ¸Ê³¿ÅÁ£ºÍ²»ÍêÉÆÁ¸Ê³¿ÅÁ££¬½«Õý³£Á¸Ê³¿ÅÁ£ºÍÆäËü¿ÅÁ£·Ö±ð¼ÆÊý£¬×îÖյóöÕý³£Á¸Á£ºÍÔÓÖʵÄÊýÁ¿¡£±¾·¢Ã÷¾ßÓеÄÓÐÒæµÄЧ¹ûÊÇ
¿Ë·þÁËÔÚ¼ì²âÁ¸Ê³Æ·ÖÊʱ£¬´«Í³·½·¨Ö»Äܼì²âµ½Á¸Á£Õû¸ö±íÃæÒ»°ëµÄ²»×㣬ÄÜ׼ȷ¿ìËÙµØÍ¨¹ý¼ì²â¿ÅÁ£µÄÐÎÌ¬ÌØÕ÷ºÍÕû¸ö¿ÅÁ£±íÃæµÄÑÕÉ«ÌØÕ÷£¬ÅжÏÁ¸Ê³Ñù±¾ÖÐÕý³£Á¸Ê³¿ÅÁ£ºÍÔÓÖÊ¿ÅÁ£µÄÊýÁ¿£»×°Öõļì²âÐÔÄÜÓÅÓÚ´«Í³»ùÓÚPCµÄ»úÆ÷ÊÓ¾õϵͳµÄ¼ì²â×°Öá£


¸½Í¼ÊDZ¾·¢Ã÷µÄ×°ÖýṹԭÀíʾÒâͼ¡£¸½Í¼ÖÐ1¡¢Ö÷¶¯¹öͲ£¬2¡¢µ÷ËÙµç»ú£¬3¡¢µÚÒ»´Ó¶¯¹öͲ£¬4¡¢¶àÐÐʽÅÅÖÖÆ÷£¬5¡¢Í¸Ã÷Ƥ´ø£¬6¡¢µÚÒ»ÏßɨÃèÏà»ú£¬7¡¢µÚÒ»¹âÕÕÏ䣬8¡¢µÚÒ»Ïß¹âÔ´£¬9¡¢µÚÒ»±³¾°°å£¬10¡¢»ú¼Ü£¬11¡¢µÚ¶þ±³¾°°å£¬12¡¢FPGAͼÏñ´¦Àí°å£¬13¡¢ARM°å£¬14¡¢µÚ¶þÏß¹âÔ´£¬15¡¢µÚ¶þÏßɨÃèÏà»ú£¬16¡¢µÚ¶þ¹âÕÕÏ䣬17¡¢µÚ¶þ´Ó¶¯¹öͲ£¬18¡¢±àÂëÆ÷£¬19¡¢µÚÈý´Ó¶¯¹öͲ¡£
¾ßÌåʵʩÀý·½Ê½Ò»¡¢»ùÓÚFPGAµÄÁ¸Ê³Æ·ÖÊÔÚÏß¼ì²â×°ÖÃ
È總ͼËùʾ£¬±¾·¢Ã÷°üÀ¨Ö÷¶¯¹öͲ1£¬µ÷ËÙµç»ú2£¬µÚÒ»´Ó¶¯¹öͲ(3)£¬¶àÐÐʽÅÅÖÖÆ÷4£¬ ͸Ã÷Ƥ´ø5£¬µÚÒ»ÏßɨÃèÏà»ú6£¬µÚÒ»¹âÕÕÏä7£¬µÚÒ»Ïß¹âÔ´8£¬µÚÒ»±³¾°°å9£¬UÐλú¼Ü10£¬µÚ¶þ±³¾°°å11£¬FPGAͼÏñ´¦Àí°å12£¬ARM°å13£¬µÚ¶þÏß¹âÔ´14£¬µÚ¶þÏßɨÃèÏà»ú15£¬µÚ¶þ¹âÕÕÏä16£¬µÚ¶þ´Ó¶¯¹öͲ17£¬±àÂëÆ÷18ºÍµÚÈý´Ó¶¯¹öͲ19 £»ÆäÖÐ
ÔÚUÐλú¼Ü11Á½²àµÄµ×²¿·Ö±ð°²×°ÓÐÓɵ÷ËÙµç»ú2´ø¶¯µÄÖ÷¶¯¹öͲ1ºÍµÚ¶þ´Ó¶¯¹öͲ17£¬ÔÚUÐλú¼Ü10Á½²àµÄÉϲ¿·Ö±ð°²×°µÚÒ»´Ó¶¯¹öͲ3ºÍµÚÈý´Ó¶¯¹öͲ19 £»ÔÚUÐλú¼Ü 10µÄÖв¿·Ö±ð°²×°ÓеÚÒ»¹âÕÕÏä7ºÍµÚ¶þ¹âÕÕÏä16£¬Í¸Ã÷Ƥ´ø5´©¹ýµÚÒ»¹âÕÕÏä7ºÍµÚ¶þ¹âÕÕÏä16ºó£¬»·ÈÆÔÚµÚÈý´Ó¹öͲ19¡¢µÚ¶þ´Ó¶¯¹öͲ17¡¢Ö÷¶¯¹öͲ1ºÍµÚÒ»´Ó¶¯¹öͲ3ÉÏ£»µÚÒ»±³¾°°å9°²×°ÔÚµÚÒ»¹âÕÕÏä7µÄ͸Ã÷Ƥ´øÏ·½£¬µÚÒ»¹âÕÕÏä7µÄ͸Ã÷Ƥ´øÉÏ·½£¬´ÓÏÂÖÁÉÏÒÀ´Î°²×°µÚÒ»Ïß¹âÔ´8ºÍµÚÒ»ÏßɨÃèÏà»ú6£¬µÚ¶þ±³¾°°å11°²×°ÔÚµÚ¶þ¹âÕÕÏä16µÄ͸Ã÷Ƥ´øÉÏ·½£¬µÚ¶þ¹âÕÕÏä16µÄ͸Ã÷Ƥ´øÏ·½£¬´ÓÉÏÖÁÏÂÒÀ´Î°²×°µÚ¶þÏß¹âÔ´14ºÍµÚ¶þÏßɨÃèÏà»ú15 £»¶àÐÐʽÅÅÖÖÆ÷4°²×°ÔÚµÚÒ»´Ó¶¯¹öͲ3²àµÄ͸Ã÷Ƥ´ø5µÄÉÏ·½£»FPGAͼÏñ´¦Àí°å12 ͨ¹ýCameraLinkÁ¬½Ó¿Ú·Ö±ðÓëµÚÒ»ÏßɨÃèÏà»ú8ºÍµÚ¶þÏßɨÃèÏà»ú15ÏàÁ¬£¬FPGAͼÏñ´¦Àí°å12ͨ¹ý10/100 Ethernet ¿ÚºÍDVIÊÓÆµ¿ÚÓëARM°å13ÏàÁ¬£¬°²×°ÔÚµÚÈý´Ó¶¯¹öͲ19 ÖáÉϵıàÂëÆ÷18ÓëFPGAͼÏñ´¦Àí°å12ÏàÁ¬¡£ËùÊöµÄFPGA (³¡¿É±à³ÌÃÅÕóÁÐ)ͼÏñ´¦Àí°å12ÐͺÅΪTB-5V-LX110-DDR2£¬Á½¸öÏßɨÃèÏà»úÐͺÅΪAViiVA SC2 CL0¶þ¡¢»ùÓÚFPGAµÄÁ¸Ê³Æ·ÖÊÔÚÏß¼ì²â·½·¨
ÔÚÆ¤´ø5ÉÏÔËÐеĿÅÁ£ÏȾ­¹ýµÚÒ»ÏßɨÃèÏà»ú6£¬ºó¾­¹ýµÚ¶þÏßɨÃèÏà»ú15£¬¿ÅÁ£µÄÐÎÌ¬ÌØÕ÷ºÍÉϱíÃæÑÕÉ«ÌØÕ÷µÄ¼ì²â¹ý³ÌÊÇÀûÓõÚÒ»ÏßɨÃèÏà»ú6ÅÄÉãµÄͼÏñÍê³ÉµÄ£¬¿ÅÁ£µÄÐÎÌ¬ÌØÕ÷ºÍÉϱíÃæÑÕÉ«ÌØÕ÷¶¨ÒåΪµÚÒ»ÌØÕ÷¼¯£»¿ÅÁ£Ãæ»ýºÍ¿ÅÁ£Ï±íÃæÑÕÉ«ÌØÕ÷µÄ¼ì²â¹ý³ÌÊÇÀûÓõڶþÏßɨÃèÏà»ú15ÅÄÉãµÄͼÏñÍê³ÉµÄ£¬¿ÅÁ£Ãæ»ýºÍ¿ÅÁ£Ï±íÃæÑÕÉ«ÌØÕ÷¶¨ÒåΪµÚ¶þÌØÕ÷¼¯¡£µÚÒ»ÌØÕ÷¼¯ºÍµÚ¶þÌØÕ÷¼¯Öеĸ÷ÌØÕ÷µÄÌáÈ¡·½·¨½è¼øËÕÒäéªÔÚ»ùÓÚ»úÆ÷ÊÓ¾õºÍ¸ß¹âÆ×ͼÏñ¼¼ÊõµÄÁ¸Ê³Ë®·Ö¼ì²â¼°ÔÓÖÊÓë²»ÍêÉÆÁ£Ê¶±ð·½·¨Ñо¿ÖÐËù²ÉÓõķ½·¨¡£
¿ÅÁ£¾­¶àÐÐʽÅÅÖÖÆ÷4ÈöÔÚ͸Ã÷Ƥ´ø5ÉÏ£¬²âÁ¿µÚÒ»Ïß¹âÔ´8ÔÚ͸Ã÷Ƥ´ø5ÉϵÄÕÕÉäλÖÃÓëµÚ¶þÏß¹âÔ´14ÔÚ͸Ã÷Ƥ´ø5ÉϵÄÕÕÉäλÖÃÖ®¼äµÄ¾àÀëD£¬²âÁ¿¿ÅÁ£ÖеÄ×îС¿ÅÁ£¿í¶ÈW£¬ÓÃD³ýÒÔWÈ¡ÕûºóµÃµ½µÚÒ»ÏßɨÃèÏà»ú6ºÍµÚ¶þÏßɨÃèÏà»ú15Ö®¼ä×î¶àÄܰڷŵĿÅÁ£ÊýÁ¿M_Col £»
¶¨Òå³£Á¿M_ RowΪ¶àÐÐʽÅÅÖÖÆ÷4µÄÐÐÊý¡£¶¨ÒåÒÔϱäÁ¿
//´ý²âÁ¸Ê³Ñù±¾ÖÐÕý³£Á¸Ê³¿ÅÁ£ÊýÁ¿£» Cn £»
Il´ý²âÁ¸Ê³Ñù±¾ÖÐÆäËü¿ÅÁ£ÊýÁ¿£»
ca£»
Ilͨ¹ýµÚiÐеÄÁ¸Ê³Ñù±¾ÖÐÕý³£Á¸Ê³¿ÅÁ£ÊýÁ¿£» Cn¢Å£»
Ilͨ¹ýµÚiÐеÄÁ¸Ê³Ñù±¾ÖÐÆäËü¿ÅÁ£ÊýÁ¿£» Ca¢Å£»
³õʼÇé¿öÏ cn = ca = cn (i) = ca(i) = ¦Ï £»
//µÚiÐÐÉϵĿÅÁ£¾­µÚÒ»ÏßɨÃèÏà»ú6¼ì²âµÄ½á¹ûtrue±íʾ¿ÅÁ£µÄµÚÒ»ÌØÕ÷¼¯Âú×ãÕý³£Á¸Ê³¿ÅÁ£±ê×¼£¬false±íʾ¿ÅÁ£µÄµÚÒ»ÌØÕ÷¼¯²»Âú×ãÕý³£Á¸Ê³¿ÅÁ£±ê×¼£» bool UpIsffheat ¢Å£»
IlµÚiÐÐÉϵĿÅÁ£¾­µÚ¶þÏßɨÃèÏà»ú15¼ì²âµÄ½á¹ûtrue±íʾ¿ÅÁ£µÄµÚ¶þÌØÕ÷¼¯Âú×ãÕý³£Á¸Ê³¿ÅÁ£±ê×¼£¬false±íʾ¿ÅÁ£µÄµÚ¶þÌØÕ÷¼¯²»Âú×ãÕý³£Á¸Ê³¿ÅÁ£±ê×¼£» bool DownIsWheat (i)£»
Il´Ó¶ÓÁÐÖÐÈ¡³öµÄµÚiÐÐÉϵĿÅÁ£¾­µÚÒ»ÏßɨÃèÏà»ú6¼ì²âµÄ½á¹û£» bool UpIsffheatNow ¢Å£»
IlµÚiÐÐÉϵĿÅÁ£¾­µÚÒ»ÏßɨÃèÏà»ú6ºÍµÚ¶þÏßɨÃèÏà»ú15×ۺϼì²âºóµÄ½á¹û true±íʾÕý³£Á¸Ê³¿ÅÁ££¬false±íʾÆäËü¿ÅÁ£¡£bool IsffheatNow (i );ÔÚFPGAµÄRAM´æ´¢Æ÷ÄÚ£¬¿ª±ÙM_ Row¸ö´æ´¢µ¥Ôª£¬´æ´¢Éî¶ÈΪM_Col£¬Ã¿¸ö´æ´¢µ¥ÔªÓÃÀ´´æ·ÅÒ»¸öÑ­»·¶ÓÁУ¬ÃüÃûΪWheatQueueArray [i] (i = 1,2, 3"'M_Col)£¬Ñ­»·¶ÓÁеĶÔÍ·ºÍ¶Óβ·Ö±ðΪHeadºÍRear¡£¶¨Òå¶ÓÁнṹ
Struct WheatQueueStruct
{
bool IsWheat[¦¬¡ªCol]£» int Head £» int Rear £»
¦É £»
Il¶¨Òå¶àÐÐʽÅÅÖÖÆ÷4ÔÚ¸÷ÐÐÅųöµÄ¿ÅÁ£¶ÓÁÐ WheatQueueStruct WheatQueueArray[M¡ªRow]£»
µ±¶àÐÐʽÅÅÖÖÆ÷4ÔÚµÚiÐÐÅųöµÄ¿ÅÁ£¾­¹ýµÚÒ»ÏßɨÃèÏà»ú7ʱ£¬²ÉÓÃÏÖÓеķ½·¨ (ÈçËÕÒäéª.»ùÓÚ»úÆ÷ÊÓ¾õºÍ¸ß¹âÆ×ͼÏñ¼¼ÊõµÄÁ¸Ê³Ë®·Ö¼ì²â¼°ÔÓÖÊÓë²»ÍêÉÆÁ£Ê¶±ð·½·¨Ñо¿[D].º¼ÖÝÕã½­´óѧ£¬2011.)ÅжϿÅÁ£µÚÒ»ÌØÕ÷¼¯ÊÇ·ñÂú×ãÕý³£Á¸Ê³¿ÅÁ£±ê×¼£¬ÅжϽá¹ûÓɱäÁ¿UpIsWheat (i )¼Ç¼£¬²¢Ö´ÐÐÈçÏÂÓï¾ä
WheatQueueArray[i]. Isffheat[Rear] = UpIsffheat (i)£» WheatQueueArray[i]. Rear = (WheatQueueArray[i]. Rear + 1) % M_Col £» µ±¶àÐÐʽÅÅÖÖÆ÷4ÅųöµÄµÚiÐпÅÁ£¾­¹ýµÚ¶þÏßɨÃèÏà»ú15ʱ£¬ÈÔ²ÉÓÃËÕÒäéªÂÛÎĵķ½·¨ÅжϿÅÁ£µÄµÚ¶þÌØÕ÷¼¯ÊÇ·ñÂú×ãÕý³£Á¸Ê³¿ÅÁ£±ê×¼£¬ÅжϽá¹ûÓɱäÁ¿DownlsWheatG) ¼Ç¼£¬²¢Ö´ÐÐÈçÏÂÓï¾ä
UpIsffheatNow (i) = WheatQueueArray[i]. Isffheat[Head]£» WheatQueueArray[i]. Head = (WheatQueueArray[i]. Head + 1) % M_Col £» IsffheatNow (i)= UpIsffheatNow (i)* DownIsffheat (i)£»
Èç¹ûIsWheatNow (i)µÄֵΪtrue£¬ÔòÊä³ö½á¹û±íʾ¸Ã¿ÅÁ£ÎªÕý³£Á¸Ê³¿ÅÁ££¬·ñÔòΪÆäËü¿ÅÁ£¡£Ö®ºóÖ´ÐÐÈçÏÂÓï¾ä
ȨÀûÒªÇó
1.Ò»ÖÖ»ùÓÚFPGAµÄÁ¸Ê³Æ·ÖÊÔÚÏß¼ì²â×°Öã¬ÆäÌØÕ÷ÔÚÓÚ°üÀ¨Ö÷¶¯¹öͲ(1)£¬µ÷ËÙµç»ú O)£¬µÚÒ»´Ó¶¯¹öͲ(3)£¬¶àÐÐʽÅÅÖÖÆ÷0)£¬Í¸Ã÷Ƥ´ø(5)£¬µÚÒ»ÏßɨÃèÏà»ú(6)£¬µÚÒ»¹âÕÕÏä (7)£¬µÚÒ»Ïß¹âÔ´(8)£¬µÚÒ»±³¾°°å(9)£¬UÐλú¼Ü(10)£¬µÚ¶þ±³¾°°å(11)£¬FPGAͼÏñ´¦Àí°å (12)£¬ARM°å(13)£¬µÚ¶þÏß¹âÔ´(14)£¬µÚ¶þÏßɨÃèÏà»ú(15)£¬µÚ¶þ¹âÕÕÏä(16)£¬µÚ¶þ´Ó¶¯¹öͲ(17)£¬±àÂëÆ÷(18)ºÍµÚÈý´Ó¶¯¹öͲ(19)£»ÆäÖÐÔÚUÐλú¼Ü(11)Á½²àµÄµ×²¿·Ö±ð°²×°ÓÐÓɵ÷ËÙµç»ú( ´ø¶¯µÄÖ÷¶¯¹öͲ(1)ºÍµÚ¶þ´Ó¶¯¹öͲ(17)£¬ÔÚUÐλú¼Ü(10)Á½²àµÄÉϲ¿·Ö±ð°²×°µÚÒ»´Ó¶¯¹öͲC3)ºÍµÚÈý´Ó¶¯¹öͲ (19)£»ÔÚUÐλú¼Ü(10)µÄÖв¿·Ö±ð°²×°ÓеÚÒ»¹âÕÕÏä(7)ºÍµÚ¶þ¹âÕÕÏä(16)£¬Í¸Ã÷Ƥ´ø(5) ´©¹ýµÚÒ»¹âÕÕÏä(7)ºÍµÚ¶þ¹âÕÕÏä(16)ºó£¬»·ÈÆÔÚµÚÈý´Ó¹öͲ(19)¡¢µÚ¶þ´Ó¶¯¹öͲ(17)¡¢ Ö÷¶¯¹öͲ(1)ºÍµÚÒ»´Ó¶¯¹öͲC3)ÉÏ£»µÚÒ»±³¾°°å(9)°²×°ÔÚµÚÒ»¹âÕÕÏä(7)µÄ͸Ã÷Ƥ´øÏ·½£¬µÚÒ»¹âÕÕÏä(7)µÄ͸Ã÷Ƥ´øÉÏ·½£¬´ÓÏÂÖÁÉÏÒÀ´Î°²×°µÚÒ»Ïß¹âÔ´(8)ºÍµÚÒ»ÏßɨÃèÏà»ú (6)£¬µÚ¶þ±³¾°°å(11)°²×°ÔÚµÚ¶þ¹âÕÕÏä(16)µÄ͸Ã÷Ƥ´øÉÏ·½£¬µÚ¶þ¹âÕÕÏä(16)µÄ͸Ã÷Ƥ´øÏ·½£¬´ÓÉÏÖÁÏÂÒÀ´Î°²×°µÚ¶þÏß¹âÔ´(14)ºÍµÚ¶þÏßɨÃèÏà»ú(15)£»¶àÐÐʽÅÅÖÖÆ÷(4)°²×°ÔÚµÚÒ»´Ó¶¯¹öͲ¢Ç²àµÄ͸Ã÷Ƥ´ø(5)µÄÉÏ·½£»FPGAͼÏñ´¦Àí°å(12)ͨ¹ýCameraLink Á¬½Ó¿Ú·Ö±ðÓëµÚÒ»ÏßɨÃèÏà»ú(8)ºÍµÚ¶þÏßɨÃèÏà»ú(15)ÏàÁ¬£¬FPGAͼÏñ´¦Àí°å(12)ͨ¹ý10/100 Ethernet ¿ÚºÍDVIÊÓÆµ¿ÚÓëARM°å(13)ÏàÁ¬£¬°²×°ÔÚµÚÈý´Ó¶¯¹öͲ(19)ÖáÉϵıàÂëÆ÷(18)ÓëFPGAͼÏñ´¦Àí°å(12)ÏàÁ¬¡£
2.ÓÃÓÚȨÀûÒªÇó1ËùÊö×°ÖõÄÒ»ÖÖ»ùÓÚFPGAµÄÁ¸Ê³Æ·ÖÊÔÚÏß¼ì²â·½·¨£¬ÆäÌØÕ÷ÔÚÓڸ÷½·¨µÄ²½ÖèÈçÏÂÔÚÆ¤´ø(5)ÉÏÔËÐеĿÅÁ£ÏȾ­¹ýµÚÒ»ÏßɨÃèÏà»ú(6)£¬ºó¾­¹ýµÚ¶þÏßɨÃèÏà»ú(15)£¬¿ÅÁ£µÄÐÎÌ¬ÌØÕ÷ºÍÉϱíÃæÑÕÉ«ÌØÕ÷µÄ¼ì²â¹ý³ÌÊÇÀûÓõÚÒ»ÏßɨÃèÏà»ú(6)ÅÄÉãµÄͼÏñÍê³ÉµÄ£¬¿ÅÁ£µÄÐÎÌ¬ÌØÕ÷ºÍÉϱíÃæÑÕÉ«ÌØÕ÷¶¨ÒåΪµÚÒ»ÌØÕ÷¼¯£»¿ÅÁ£Ãæ»ýºÍ¿ÅÁ£Ï±íÃæÑÕÉ«ÌØÕ÷µÄ¼ì²â¹ý³ÌÊÇÀûÓõڶþÏßɨÃèÏà»ú(1 ÅÄÉãµÄͼÏñÍê³ÉµÄ£¬¿ÅÁ£Ãæ»ýºÍ¿ÅÁ£Ï±íÃæÑÕÉ«ÌØÕ÷¶¨ÒåΪµÚ¶þÌØÕ÷¼¯£¬µÚÒ»ÌØÕ÷¼¯ºÍµÚ¶þÌØÕ÷¼¯Öеĸ÷ÌØÕ÷µÄÌáÈ¡·½·¨½è¼øËÕÒäéªÔÚ»ùÓÚ»úÆ÷ÊÓ¾õºÍ¸ß¹âÆ×ͼÏñ¼¼ÊõµÄÁ¸Ê³Ë®·Ö¼ì²â¼°ÔÓÖÊÓë²»ÍêÉÆÁ£Ê¶±ð·½·¨Ñо¿ÖÐËù²ÉÓõķ½·¨£»¿ÅÁ£¾­¶àÐÐʽÅÅÖÖÆ÷(4)ÈöÔÚ͸Ã÷Ƥ´ø( ÉÏ£¬²âÁ¿µÚÒ»Ïß¹âÔ´(8)ÔÚ͸Ã÷Ƥ´ø(5) ÉϵÄÕÕÉäλÖÃÓëµÚ¶þÏß¹âÔ´(14)ÔÚ͸Ã÷Ƥ´ø(5)ÉϵÄÕÕÉäλÖÃÖ®¼äµÄ¾àÀëD£¬²âÁ¿¿ÅÁ£ÖеÄ×îС¿ÅÁ£¿í¶ÈW£¬ÓÃD³ýÒÔWÈ¡ÕûºóµÃµ½µÚÒ»ÏßɨÃèÏà»ú(6)ºÍµÚ¶þÏßɨÃèÏà»ú(15)Ö®¼ä×î¶àÄܰڷŵĿÅÁ£ÊýÁ¿M_Col £»¶¨Òå³£Á¿1_ RowΪ¶àÐÐʽÅÅÖÖÆ÷µÄÐÐÊý£»¶¨ÒåÒÔϱäÁ¿//µÚiÐÐÉϵĿÅÁ£¾­µÚÒ»ÏßɨÃèÏà»ú(6)¼ì²âµÄ½á¹ûtrUe±íʾ¿ÅÁ£µÄµÚÒ»ÌØÕ÷¼¯Âú×ãÕý³£Á¸Ê³¿ÅÁ£±ê×¼£¬false±íʾ¿ÅÁ£µÄµÚÒ»ÌØÕ÷¼¯²»Âú×ãÕý³£Á¸Ê³¿ÅÁ£±ê×¼£»bool UpIsffheat ¢Å£»IlµÚiÐÐÉϵĿÅÁ£¾­µÚ¶þÏßɨÃèÏà»ú(ÇÉ)¼ì²âµÄ½á¹ûtrue±íʾ¿ÅÁ£µÄµÚ¶þÌØÕ÷¼¯Âú×ãÕý³£Á¸Ê³¿ÅÁ£±ê×¼£¬false±íʾ¿ÅÁ£µÄµÚ¶þÌØÕ÷¼¯²»Âú×ãÕý³£Á¸Ê³¿ÅÁ£±ê×¼£»bool DownIsWheat (i)£»Il´Ó¶ÓÁÐÖÐÈ¡³öµÄµÚiÐÐÉϵĿÅÁ£¾­µÚÒ»ÏßɨÃèÏà»ú(6)¼ì²âµÄ½á¹û£»bool UpIsffheatNow ¢Å£»IlµÚiÐÐÉϵĿÅÁ£¾­µÚÒ»ÏßɨÃèÏà»ú(6)ºÍµÚ¶þÏßɨÃèÏà»ú(15)×ۺϼì²âºóµÄ½á¹ûtrue±íʾÕý³£Á¸Ê³¿ÅÁ££¬false±íʾÆäËü¿ÅÁ££» bool IsffheatNow (i)£» ¶¨Òå¶ÓÁнṹStruct WheatQueueStruct{bool IsWheat[¦¬¡ªCol]£» int Head £» int Rear £»¦É £»Il¶¨Òå¶àÐÐʽÅÅÖÖÆ÷(4)ÔÚ¸÷ÐÐÅųöµÄ¿ÅÁ£¶ÓÁÐ WheatQueueStruct WheatQueueArray[M¡ªRow]£»µ±¶àÐÐʽÅÅÖÖÆ÷(4)ÔÚµÚiÐÐÅųöµÄ¿ÅÁ£¾­¹ýµÚÒ»ÏßɨÃèÏà»ú(6)ʱ£¬²ÉÓÃÏÖÓеķ½·¨ÅжϿÅÁ£µÄµÚÒ»ÌØÕ÷¼¯ÊÇ·ñÂú×ãÕý³£Á¸Ê³¿ÅÁ£±ê×¼£¬ÅжϽá¹ûÓɱäÁ¿UpIsWheat (i)¼Ç¼£¬²¢Ö´ÐÐÈçÏÂÓï¾äWheatQueueArray[i]¡¤ IsWheat[Rear] = UpIsWheat (i)£» WheatQueueArray[i]. Rear = (WheatQueueArray[i]. Rear + 1) % ¦¬¡ªCol £» µ±¶àÐÐʽÅÅÖÖÆ÷(4)ÅųöµÄµÚiÐпÅÁ£¾­¹ýµÚ¶þÏßɨÃèÏà»ú(15)ʱ£¬ÈÔ²ÉÓÃËÕÒäéªÂÛÎĵķ½·¨ÅжϿÅÁ£µÄµÚ¶þÌØÕ÷¼¯ºÏÊÇ·ñÂú×ãÕý³£Á¸Ê³¿ÅÁ£±ê×¼£¬ÅжϽá¹ûÓɱäÁ¿ DownIsffheat (i)¼Ç¼£¬²¢Ö´ÐÐÈçÏÂÓï¾äUpIsffheatNow (i) = WheatQueueArray[i]. Isffheat[Head]£» WheatQueueArray[i]. Head = (WheatQueueArray[i]. Head + 1) % M_Col £» IsffheatNow (i)= UpIsffheatNow (i)* DownIsffheat (i)£»Èç¹ûIsWheatNow (i)µÄֵΪtrue£¬ÔòÊä³ö½á¹û±íʾ¸Ã¿ÅÁ£ÎªÕý³£Á¸Ê³¿ÅÁ££¬·ñÔòΪÆäËü¿ÅÁ££¬ÆäËü¿ÅÁ£°üÀ¨ÔÓÖÊÁ¸Ê³¿ÅÁ£ºÍ²»ÍêÉÆÁ¸Ê³¿ÅÁ££¬½«Õý³£Á¸Ê³¿ÅÁ£ºÍÆäËü¿ÅÁ£·Ö±ð¼ÆÊý£¬×îÖյóöÕý³£Á¸Á£ºÍÔÓÖʵÄÊýÁ¿¡£
È«ÎÄÕªÒª
±¾·¢Ã÷¹«¿ªÁËÒ»ÖÖ»ùÓÚFPGAµÄÁ¸Ê³Æ·ÖÊÔÚÏß¼ì²â×°Öü°·½·¨¡£¶àÐÐʽÅÅÖÖÆ÷°²ÖÃÔÚ͸Ã÷Ƥ´øµÄ×ó²à£»±àÂëÆ÷°²×°ÔÚ´Ó¶¯¹öͲÉÏ£¬Á½Ì¨¹âÕÕÏä·Ö±ð°²×°ÔÚ͸Ã÷Ƥ´øµÄÉÏ·½ºÍÏ·½£¬¹âÕÕÏäÄÚ¸÷ÅäÏß¹âÔ´ºÍ±³¾°°å¼°ÏßɨÃèÏà»ú£¬Í¸Ã÷Ƥ´ø´ÓÏß¹âÔ´ºÍ±³¾°°åÖ®¼ä´©¹ý£»ÏßɨÃèÏà»úͨ¹ýCameraLinkÏßÀÂÓëFPGAͼÏñ´¦Àí°åÏàÁ¬£»¶¯Á¦Óɵ÷ËÙµç»ú´«Ë͵½Í¸Ã÷Ƥ´øÉÏ£»±¾·¢Ã÷¿Ë·þÁËÔÚ¼ì²âÁ¸Ê³Æ·ÖÊʱ,´«Í³·½·¨Ö»Äܼì²âµ½¿ÅÁ£Õû¸ö±íÃæÒ»°ëµÄ²»×㣬ÄÜ׼ȷ¿ìËÙµØÍ¨¹ý¼ì²â¿ÅÁ£µÄÐÎÌ¬ÌØÕ÷ºÍÕû¸ö¿ÅÁ£±íÃæµÄÑÕÉ«ÌØÕ÷£¬ÅжÏÁ¸Ê³Ñù±¾ÖÐÕý³£Á¸Ê³¿ÅÁ£ºÍÆäËü¿ÅÁ£µÄÊýÁ¿£»×°Öõļì²âÐÔÄÜÓÅÓÚ´«Í³»ùÓÚPCµÄ»úÆ÷ÊÓ¾õϵͳµÄ¼ì²â×°Öá£
Îĵµ±àºÅG01N21/89GK102253052SQ20111011388
¹«¿ªÈÕ2011Äê11ÔÂ23ÈÕ ÉêÇëÈÕÆÚ2011Äê5ÔÂ4ÈÕ ÓÅÏÈȨÈÕ2011Äê5ÔÂ4ÈÕ
·¢Ã÷ÕßÓ¦Òå±ó, Íõ¾¸Óî, ÈÄÐãÇÚ ÉêÇëÈË:Õã½­´óѧ

  • רÀûÃû³Æ£ºÒ»ÖÖÈ«ÍÑÖµ²âÁ¿×ê¾®ÒºÍÑÆøÐ§Âʵķ½·¨¼¼ÊõÁìÓò£º±¾·¢Ã÷ÊôÓÚʯÓÍ¿±Ì½¿ª·¢ÁìÓò£¬ÓÈÆäÉæ¼°Ò»ÖÖÈ«ÍÑÖµ·¨²âÁ¿×ê¾®ÒºÍÑÆøÐ§Âʵķ½·¨¡£±³¾°¼¼Êõ£ºÔÚʯÓÍ¿±Ì½×ۺϼ¾®ÖУ¬½èÖúÓÚ×ê¾®ÒºÍÑÆøÆ÷¡¢É«Æ×ÒǵÈÉ豸£¬¿ÉÔÚÏß²âÁ¿×ê¾®ÒºÄÚÌþÀàÆøÌåµÄº¬Á¿£¬ÓÃÀ´·¢ÏÖ¡¢½â
  • רÀûÃû³Æ£ºÒ»ÖÖ³¤¶È¼ì²â×°ÖõÄÖÆ×÷·½·¨¼¼ÊõÁìÓò£º±¾ÊµÓÃÐÂÐÍÉæ¼°Á¿¼ì¾ß¼ì²â¼¼ÊõÁìÓò£¬¾ßÌåÉæ¼°Ò»ÖÖ³¤¶È¼ì²â×°Öᣱ³¾°¼¼Êõ£ºÔÚһЩ»úе¼Ó¹¤ÆóÒµÖУ¬ÐèҪʹÓÃÁ¿¼ì¾ß¶Ô»úеÉ豸µÄÁã¼þ½øÐмì²â£¬ÎªÁ˱£Ö¤Á¿¼ì¾ß¶ÔÁã¼þ¼ì²âµÄ׼ȷÐÔ£¬¶ÔÓÚÄÇЩÐÂÈë¿âµÄÁ¿¼ì¾ßÐèÒª½ø
  • רÀûÃû³Æ£ºÒ»ÖÖÓøßЧҺÏàÉ«Æ×²â¶¨°×ÉÖÓúÉË×éÖ¯Öа×ÉÖË«Üյķ½·¨¼¼ÊõÁìÓò£º±¾·¢Ã÷Éæ¼°·ÖÎö»¯Ñ§·½·¨ÁìÓò£¬ÌرðÉæ¼°Ò»ÖÖÓÃÒºÏàÉ«Æ×·¨Í¬²½¼ì²â°×ÉÖÓúÉË×éÖ¯Öа×ÉÖË«ÜÕ¸÷×Ôº¬Á¿µÄ·½·¨¡£±³¾°¼¼Êõ£º°×ÉÖΪëݢ¿ÆÖ²ÎïÉÖÒ©µÄ¸ÉÔï¸ù£¬Êdz£ÓÃÖÐÒ©²ÄÖ®Ò»£¬¾ßÓÐÊÕÁ²Ö¹Ñª¡¢
  • רÀûÃû³Æ£ºÇÅÁº¶¥½øÊý×ÖÊÓÆµ¼à¿Ø×°ÖõÄÖÆ×÷·½·¨¼¼ÊõÁìÓò£º±¾·¢Ã÷Éæ¼°Ò»ÖÖÇÅÁº¶¥½øÊý×ÖÊÓÆµ¼à¿Ø×°Öᣱ³¾°¼¼Êõ£ºÔÚÌú·ÇÅÁº½¨Ôì¹ý³ÌÖУ¬ÐèÒª½«×é³ÉÇÅÁºµÄ¶ÀÁ¢ÇżÜÒ»Ò»Á¬½ÓÆðÀ´£¬Í¨¹ýÇżÜÍÏҷϵͳ½«Á¬½ÓÆðÀ´µÄÇżÜ×é´îÔÚÇŶÕÉÏ¡£Ä¿Ç°ÔÚ¶ÀÁ¢ÇżÜÁ¬½ÓºÍÍÏÒ·¹ý³ÌÖÐ
  • רÀûÃû³Æ£º¿É׼ȷ×÷½Ç¶È»®Ïß¼°²ÃÇеÄÁ¿¾ßµÄÖÆ×÷·½·¨¼¼ÊõÁìÓò£º¿É׼ȷ×÷½Ç¶È»®Ïß¼°²ÃÇеÄÁ¿¾ß¼¼ÊõÁìÓò£º±¾ÊµÓÃÐÂÐÍÊǹØÓÚÒ»ÖÖÁ¿¾ß£¬ÌرðÊǹØÓÚÒ»ÖÖ¿É׼ȷ×÷½Ç¶È»®Ïß¼° ²ÃÇеÄÁ¿¾ß£¬ÆäÊôÓÚ²âÁ¿Æ÷²ÄµÄ¼¼ÊõÁìÓò¡£±³¾°¼¼Êõ£ºÒ»°ãÏÖÓеÄÁ¿¾ßÖ÷ÒªÊÇÓÉÒ»¶à±ßÐεİåÌå
  • רÀûÃû³Æ£º»ùÓÚ¼¤¹â×éºÏÄ£¿éͼµÄ¹âѧ¼ì²âϵͳ¼°Æä¼ì²â·½·¨¼¼ÊõÁìÓò£º±¾·¢Ã÷Éæ¼°Ò»ÖÖ»ùÓÚ¼¤¹â×éºÏÄ£¿éͼµÄ¹âѧ¼ì²âϵͳ¼°Æä¼ì²â·½·¨¡£ ±³¾°¼¼Êõ£º²ÉÓóÉÐ͹¤ÒÕÉú²úµÄÁã¼þ£¬ÈçËÜÁÏÁã¼þ¡¢½ðÊôîÓ½ðÁã¼þµÄ³ß´ç¾«¶È¼ì²âÐè ºÏÊʵļì²âϵͳ¶ÔÆä½øÐмì²â£¬ÌرðÊǶÔÓÚ
ɽ¶«ÑÇÐÇÓÎÏ·¹ÙÍø»ú´²ÓÐÏÞ¹«Ë¾
È«¹ú·þÎñÈÈÏߣº13062023238
µç»°£º13062023238
µØÖ·£ºëøÖÝÊÐÁúȪ¹¤ÒµÔ°68ºÅ
¹Ø¼ü´Ê£ºÏ³´²£¬Êý¿ØÏ³´²£¬ÁúÃÅϳ´²
¹«Ë¾¶þάÂë
Copyright 2010-2024 °æÈ¨ËùÓÐ All rights reserved ³ICP±¸19044495ºÅ-12
¡¾ÍøÕ¾µØÍ¼¡¿¡¾sitemap¡¿