DSP¼¼Êõ¼°¿Î³ÌÉè¼ÆÊµÑ鱨¸æÈý ÏÂÔØ±¾ÎÄ

¶«ÄÏ´óѧ×Ô¶¯»¯Ñ§Ôº

ʵ Ñé ±¨ ¸æ

¿Î³ÌÃû³Æ£º DSPÔ­Àí¼°C³ÌÐò¿ª·¢

µÚ Èý ´ÎʵÑé

ʵÑéÃû³Æ£º Òº¾§ÆÁ¡¢¼üÅÌÍâÉè¿ØÖÆÊµÑé Ôº £¨Ïµ£©£º ×Ô¶¯»¯ ר Òµ£º ×Ô¶¯»¯ ÐÕ Ãû£º ѧ ºÅ£º

ʵ Ñé ÊÒ£º ʵÑé×é±ð£º ͬ×éÈËÔ±£º ʵÑéʱ¼ä£º2012 Äê 4 Ô 25 ÈÕ ÆÀ¶¨³É¼¨£º ÉóÔĽÌʦ£º

ʵÑé3£º»ùÓÚDSPϵͳµÄʵÑé ¡ª¡ªÒº¾§ÆÁ¡¢¼üÅÌÍâÉè¿ØÖÆÊµÑé

Ò»£®ÊµÑéÄ¿µÄ

ͨ¹ýʵÑéѧϰʹÓÃ28335A DSPµÄÀ©Õ¹¶Ë¿Ú¿ØÖÆÍâΧÉ豸µÄ·½·¨£¬Á˽⣨1£©·¢¹â¶þ¼«¹ÜµÄ¿ØÖƱà³Ì·½·¨¡¢£¨2£©Òº¾§ÏÔʾÆ÷±à³Ì·½·¨¡¢£¨3£©¼üÅÌÍâÉè¿ØÖÆ±à³Ì·½·¨¡£

¶þ£®ÊµÑéÉ豸

¼ÆËã»ú£¬ICETEK-F28335-EDU ʵÑéÏ䣨»òICETEK ·ÂÕæÆ÷+ICETEK¨CF28335-A ϵͳ°å+Ïà¹ØÁ¬Ïß¼°µçÔ´£©¡£

Èý£®ÊµÑéÔ­Àí

1. ·¢¹â¶þ¼«¹ÜÏÔʾÕóÁУ¨½»Í¨µÆ£©¿ØÖÆ

TMS320F28335DSPµÄÀ©Õ¹´æ´¢Æ÷½Ó¿Ú(EMIF)ÓÃÀ´Óë´ó¶àÊýÍâΧÉ豸½øÐÐÁ¬½Ó£¬µäÐÍÓ¦ÓÃÈçÁ¬½ÓƬÍâÀ©Õ¹´æ´¢Æ÷µÈ¡£ÕâÒ»½Ó¿ÚÌṩµØÖ·Á¬Ïß¡¢Êý¾ÝÁ¬ÏߺÍÒ»×é¿ØÖÆÏß¡£ICETEK-F28335-A ½«ÕâЩÀ©Õ¹ÏßÒýµ½Á˰åÉϵÄÀ©Õ¹²å×ùÉϹ©À©Õ¹Ê¹Óá£

ʵÑéÏäÖÐICETEK-CTR°åÉϵķ¢¹â¶þ¼«¹ÜÏÔʾÕóÁУ¨½»Í¨µÆ£©µÄÏÔʾÊÇÓÉÀ©Õ¹¶Ë¿Ú¿ØÖÆ£¬À©Õ¹ÔÚEMIF ½Ó¿ÚµÄÁ½¸ö¼Ä´æÆ÷Ìṩ¾ßÌå¿ØÖÆ¡£

½»Í¨µÆÒ»¹²12¸ö£¬Ê¹Æä˳ÐòÁÁÃðµÄÀý³ÌÈçÏÂËùʾ£º

unsigned int uLedmy[12]={ 0x1,0x2,0x04,0x48,0x50,0x60, 0x8, 0x10, 0x20,0x41, 0x42,0x44}; void main(void) {

int nCount;

InitSysCtrl(); InitXintf16Gpio(); CTRGR=0x80; CTRGR=0x0; CTRGR=0x80; CTRLR=0; nCount=0; for (;;) {

*(int *)0x208007=uLedmy[nCount]; nCount++; nCount%=12;

// ÉèÖÃָʾµÆ×´Ì¬

// ¹Ø±Õ¶«Î÷·½ÏòµÄ½»Í¨µÆ // ¹Ø±ÕÄϱ±·½ÏòµÄ½»Í¨µÆ

CTRLR=0x40;

// ³õʼ»¯ICETEK-CTR

}

}

Delay(512);

2. Òº¾§ÏÔʾÆ÷¿ØÖÆÏÔʾ

Òº¾§ÏÔʾģ¿éµÄ·ÃÎÊ¡¢¿ØÖÆÊÇÓÉ28335A DSP ¶ÔÀ©Õ¹½Ó¿ÚµÄ²Ù×÷Íê³É¡£¿ØÖƿڵÄѰַ£ºÃüÁî¿ØÖÆ½Ó¿ÚµÄµØÖ·Îª0x208001£¬Êý¾Ý¿ØÖƽӿڵĵØÖ·Îª0x208003 ºÍ0x208004£¬¸¨Öú¿ØÖƽӿڵĵØÖ·Îª0x208002¡£

Òº¾§ÏÔʾģ¿éÖÐÓÐÁ½Æ¬ÏÔʾ»º³å´æ´¢Æ÷£¬·Ö±ð¶ÔÓ¦ÆÁÄ»ÏÔʾµÄÏóËØ£¬ÏòÆäÖÐдÈëÊýÖµ½«¸Ä±äÏÔʾ£¬Ð´Èë¡°1¡±ÔòÏÔʾһµã£¬Ð´Èë¡°0¡±Ôò²»ÏÔʾ¡£Òº¾§ÆÁÊÇ64*64µãÕóµÄ£¬Ò»¸ö»ù±¾×Ö·ûÕ¼ÓÃ8*8µãÕ󡣯䵨ַÓëÏóËØµÄ¶ÔÓ¦·½Ê½ÈçÏ£º

×ó²àÏÔʾÄÚ´æ 0 0 1 ¡­ 7 ÐÐ 8 9 ¡­ 15 ¡­ ¡­ 63 DB0 DB1 ¡­ DB7 DB0 DB1 ¡­ DB7 1 DB0 DB1 ¡­ DB7 DB0 DB1 ¡­ DB7 ¡­ 63 DB0 DB1 ¡­ DB7 DB0 DB1 ¡­ DB7 0 DB0 DB1 ¡­ DB7 DB0 DB1 ¡­ DB7 ÁÐ ÓÒ²àÏÔʾÄÚ´æ 1 DB0 DB1 ¡­ DB7 DB0 DB1 ¡­ DB7 ¡­ 63 DB0 DB1 ¡­ DB7 DB0 DB1 ¡­ DB7

·¢ËÍ¿ØÖÆÃüÁÏòÒº¾§ÏÔʾģ¿é·¢ËÍ¿ØÖÆÃüÁîµÄ·½·¨ÊÇͨ¹ýÏòÃüÁî¿ØÖÆ½Ó¿ÚдÈëÃüÁî¿ØÖÆ×Ö£¬È»ºóÔÙÏò¸¨Öú¿ØÖƽӿÚдÈë0¡£ÏÂÃæ¸ø³öµÄÊÇ»ù±¾ÃüÁî×Ö¡¢½âÊͺÍCÓïÑÔ¿ØÖÆÓï¾ä¾ÙÀý£º

? ÏÔʾ¿ª¹Ø£º0x3f ´ò¿ªÏÔʾ£»0x3e ¹Ø±ÕÏÔʾ£»

? ÉèÖÃÏÔʾÆðʼÐУº0x0c0+ÆðʼÐÐȡֵ£¬ÆäÖÐÆðʼÐÐȡֵΪ0ÖÁ63£» ? ÉèÖòÙ×÷Ò³£º0x0b8+Ò³ºÅ£¬ÆäÖÐÒ³ºÅȡֵΪ0-7£» ? ÉèÖòÙ×÷ÁУº0x40+Áкţ¬ÆäÖÐÁкÅΪȡֵΪ0-63£»

дÏÔʾÊý¾Ý£ºÔÚʹÓÃÃüÁî¿ØÖÆ×ÖÑ¡Ôñ²Ù×÷λÖÃ(Ò³Êý¡¢ÁÐÊý)Ö®ºó£¬¿ÉÒÔ½«´ýÏÔʾµÄÊý¾ÝдÈëÒº¾§ÏÔʾģ¿éµÄ»º´æ¡£½«Êý¾Ý·¢Ë͵½ÏàÓ¦Êý¾Ý¿ØÖÆI/O½Ó¿Ú¼´¿É¡£ 3. ¼üÅÌÊäÈë

¼üÅ̵ÄɨÃèÂëÓÉDSP µÄÀ©Õ¹µØÖ·0x208001 ¸ø³ö£¬µ±ÓмüÅÌÊäÈëʱ£¬¶Á´Ë¶Ë¿ÚµÃµ½É¨ÃèÂ룬µ±ÎÞ¼ü±»°´ÏÂʱ¶Á´Ë¶Ë¿ÚµÄ½á¹ûΪ0¡£¸÷°´¼üµÄɨÃèÂëÅÅÁÐÈçÏÂËùʾ£¨scancode.h£©¡£

#define SCANCODE_0 0x70 #define SCANCODE_1 0x69 #define SCANCODE_2 0x72 #define SCANCODE_3 0x7A #define SCANCODE_4 0x6B #define SCANCODE_5 0x73 #define SCANCODE_6 0x74 #define SCANCODE_7 0x6C #define SCANCODE_8 0x75 #define SCANCODE_9 0x7D #define SCANCODE_Del 0x49 #define SCANCODE_Enter 0x5A #define SCANCODE_Plus 0x79 #define SCANCODE_Minus 0x7B #define SCANCODE_Mult 0x7C define SCANCODE_Divid 0x4A