1.1 DMAµÄ¼ò½é DMA£ºÖ±½Ó´æ´¢Æ÷´æÈ¡£¨direct memory access£©¡£×÷ÓãºÖ÷ÒªÊÇʵÏÖÊý¾ÝµÄ¸ßËÙ°áÔË£¬ÎªCPUÍê³É¼òµ¥ÐÔÖظ´ÐÔÊý¾Ý°áÔ˹¤×÷¡£Õâ¸ö¹ý³ÌÎÞÐèCPU¸ÉÔ¤¡£µ±Êý¾Ý°áÔËÍê³Éºó£¬»áÓÐÏàÓ¦µÄ״̬±êʶλÀ´¸æÖªCPU¡£ DMAÊý¾Ý°áÔË·½Ïò¿ÉÒÔÁé»îÉèÖ㬿ÉÒÔʵÏÖÈýÖÖÊý¾Ý°áÔË£º 1) ´ÓоƬÄÚ²¿°áÔ˵½¡úоƬÍⲿ 2) ´ÓоƬÍⲿ°áÔ˵½¡úоƬÄÚ²¿ 3) ´ÓоƬÄÚ²¿°áµ½Ð¾Æ¬ÄÚ²¿ DMAÓëÉú»îÖеÄÇé¾°½øÐбȽϣº ´®¿ÚÖжϽÓÊÕÊý¾ÝµÄ±×¶Ë·ÖÎöÈçÏ£º ´®¿Ú½ÓÊÕÊý¾Ý¾ÍÊÇÊôÓÚ¡°Êý¾Ý°áÔË¡±Ò»ÖÖ£¨Ð¾Æ¬Íⲿ¡ú°áµ½¡úоƬÄÚ²¿£©¡£±×¶Ë£ºÈç¹ûÐèÒª½ÓÊÕ´óÁ¿µÄÊý¾Ýʱ£¬ÐèҪƵ·±´¥·¢Öжϣ¬¶øÇÒÕâ¸ö¹ý³ÌÐèÒªCPU²ÎÓë¡£ 1) 8¸öÊý¾ÝÁ÷¾ÍÏñÊÇ£º¸ßËÙÊÕ·ÑÕ¾ÓÐ8¸öÊÕ·ÑͨµÀ£¬Ã¿¸öͨµÀ¿ÉÒÔͨ¹ýÌض¨µÄ³µ¡£Ã¿¸öÊý¾ÝÁ÷ÄÜͨ¹ýÄÄЩÊý¾ÝÊÇÈ·¶¨µÄ¡£ 2) ÖÙ²ÃÆ÷¾ÍÏñÊÇ¡°¸ßËÙÊÕ·ÑÕ¾¼ìƱԱ¡±£¬¡°¸ßËÙÊÕ·ÑÕ¾¼ìƱԱ¡±Ö÷ÒªÊǸºÔðºË²é³µÁ¾ÄÜ·ñͨÐУ¬ÖÙ²ÃÆ÷Ö÷ÒªÊǾö¶¨Êý¾ÝÁ÷µÄÁ÷ÏòµÈºËÐŤ×÷ 3) ÿ¸öÊý¾ÝÁ÷ÓÐ8¸öÇëÇóͨµÀ¡£ÕâºÃ±ÈÓ÷£¬¡°¸ßËÙÊÕ·ÑÕ¾µÄÿ¸öÊÕ·ÑͨµÀ¡±ÐèÒªÇëÇó²ÅÄÜͨ¹ý¡£ 4) ¡°´æ´¢Æ÷¡±µÄ¸ÅÄ×Ô¶¨ÒåµÄÊý×é¿ÉÒÔÀí½âΪ¡°´æ´¢Æ÷¡±£¬ÒòΪÕâ¸öÊý×éµÄÊý¾Ý´æ´¢¿Õ¼äÊÇÔÚоƬÄÚ²¿µÄ´æ´¢Æ÷£¨ROM/RAM£©¡£ 5) ÍâÉè¶Ë¿Ú£º¿ÉÒÔ¼òµ¥Àí½âΪƬÉÏÍâÉèµÄÊý¾Ý¼Ä´æÆ÷£¬ÀýÈ磺USART1_DR£¬USART2_DR£¬SPI1_DR 6) DMAÖ»ÐèÒªÖªµÀ¡°´æ´¢Æ÷µÄÊ×µØÖ·¡±ÒÔ¼°¡°ÍâÉè¶Ë¿ÚµÄµØÖ·¡±£¬¾Í¿ÉÒÔʵÏÖÊý¾Ý°áÔË¡££¨²¹³ä£ºÒÔǰѧϰµÄ´®¿Ú·¢ËÍÊý¾Ý£¬ÐèҪд´úÂëÀ´ÊµÏÖ¸³Öµ£¬¾ÙÀý£ºUSART1->DR = 0x25;£© 1.3 DMAÇëÇóͨµÀÓ³Éä±íÿ¸öÍâÉ蹦ÄÜ£¬ÀýÈçUSART1_RXºÍUSART1_TX¶¼¿ÉÒÔÀí½âΪ¡°Ò»Ì¨³µ¡±£¬³µÐèҪˢ¿¨²Å¿Éͨ¹ý¹Ø¿¨£¬Êý¾ÝÐèÒªÇëÇó²Å¿ÉʵÏÖÊý¾Ý°áÔË¡£ |