DSP实验按键所在键二极管发光和数码管显示.docVIP

  • 110
  • 0
  • 约3.78千字
  • 约 3页
  • 2017-06-08 发布于重庆
  • 举报

DSP实验按键所在键二极管发光和数码管显示.doc

DSP实验按键所在键二极管发光和数码管显示

#pragma CODE_SECTION vect,vect unsigned int *pmem 0; #define IMR * pmem+0x0000 #define IFR * pmem+0x0001 #define PMST * pmem+0x001d #define SWCR * pmem+0x002b #define SWWSR * pmem+0x0028 #define CLKMD * pmem+0x0058 #define ST1 * pmem+0x007 #define PRD0 * pmem+0x0025 /* timer0 period register */ #define TCR0 * pmem+0x0026 /* timer0 control register */ ioport unsigned portc002; //键盘地址 ioport unsigned portc001; //指示灯地址 ioport unsigned portc000; //数码显示地址 //数据线的高8位是位码,低8位是段码 void cpu_init /*初始化DSP*/ asm ssbx intm ; asm ssbx xf ; //总清零 PMST 0xe8; SWWSR 0x7fff; SWCR 0x0001; IMR 0x010c; IFR 0xffff; CLKMD 0x1000; asm rsbx xf ; //打开数据口 asm rsbx intm ; void delay10ms int i,j,k; for i 0;i 2;i++ for j 0;j 2;j++ for k 0;k 2;k++ ; //主测试程序 void main cpu_init ; for ;; ; interrupt void keyint0 //键盘测试 int a; a portc001; a a0xff00; if a! 0xff00 delay10ms ; a portc001; a a0xff00; switch a case 0xfe00: portc000 0x0106;//显示1 portc002 0xFE00; asm nop ; break; case 0xfd00: portc000 0x025b;//显示2 portc002 0xFD00; asm nop ; break; case 0xfb00: portc000 0x044f;//显示3 portc002 0xFB00; asm nop ; break; case 0xf700: portc000 0x0866;//显示4 portc002 0xF700; asm nop ; break; case 0xef00: portc000 0x106d;//显示5 portc002 0xef00; asm nop ; break; case 0xdf00: portc000 0x207d;//显示6 portc002 0xdf00; asm nop ; break; case 0xbf00: portc000 0x4007;//显示7 portc002 0xbf00; asm nop ; break; case 0x7f00: portc000 0x807f;//显示8 portc002 0x7f00; break; void vect asm .ref _c_int00 ; asm .ref _keyint0 ; asm b _c_int00 ; /* reset */ asm nop ; asm nop ; asm rete ; /* nmi */ asm nop ; asm nop ; asm nop ; asm rete ; // asm nop ; asm nop ; asm nop ; asm rete ; asm nop ; asm nop ; asm nop ; asm rete ; asm nop ; asm nop ; asm nop ; asm rete ; asm nop ; asm nop ; asm nop ; asm rete ; asm nop ; asm nop ; asm nop ; asm rete ; asm nop ; asm nop ; asm nop ; asm rete ; asm nop ; asm nop ; asm nop ; asm rete ; a

文档评论(0)

1亿VIP精品文档

相关文档