鸿翔dsp开发板学习笔记(1)

在成都永腾电子买了块鸿翔dsp学习板,和仿真器xds100,这块开发板可以不用仿真器直接把程序下载到单片机中,单片机作为5402的外存。

不过这样比较麻烦,而且最烦的是,这块开发板单片机程序下载需要接计算机串口。

现在有几台笔记本还有串口呢?

我用了一根usb转串口来试了一下,结果单片机下载程序时计算机蓝屏。

 

看来我花180元买个仿真器也还是明智的。

不过这个仿真器支持ccs 4.0以上,ccs 3.3竟然不支持。

而我前一阵只是熟悉了ccs3.3。ccs4.2还不大明白。

增加了难度呀。

 

不过经过一番折腾,倒是仿真成功。

虽然简单得很,不过成功的喜悦还是很不错的。

我首先把学习板和仿真器连接好,并打开学习班电源。

 

首先打开ccs 4.2

然后在project菜单的import legacy ccs3.3 project来导入一个ccs3.3项目:Cputimer

然后在Project中编译项目Buile Active Project.//也可以不编译,直接debug,系统自己会编译

最后在Target中Debug Active Project.

 

点击run运行时,学习板上的led会不断闪烁。

 

图上最亮的那个灯是电源指示灯,旁边的小灯就是程序控制的闪烁的led灯

分析一下程序main.c:

 

#include "cpu_reg.h"


int ms,f;

void main()
{
     asm("  STM #0000h,CLKMD "); 
     while(*CLKMD & 0x01 );
     asm("  STM #40C7h,CLKMD ");  //设置CPU运行频率=100M
/*  40C7h:5*clkin  =100M
    30c7h:4*clkin  =80M
    20c7h:3*clkin  =60M
    10C7h:2*clkin  =40M
*/
     asm("  stm   #4240h, SWWSR ");
     //2 wait except for on-chip program 1
     asm("  stm   #00a0h, PMST  "); //MP/MC = 0, IPTR = 001,ovly=0 
     asm("  stm   #0802h, BSCR  ");
     asm("  STM #0h,IMR ");
    
     asm("  STM #0010h,TCR  "); //关定时器
     asm("  STM #0186ah,PRD  ");//1ms
     asm("  STM #0C2fh,TCR  "); //TCR=最后四位
     asm("  STM #0008h,IFR  ");
     asm("  ORM #0008h,*(IMR) ");/*开时间中断*/
 
     asm("  RSBX  INTM ");      /*开中断*/

    
     f=2;
     ms=0;
     while(1)
     {
       while(ms<500/f);     //LED_flash
       ms=0;
       asm("  RSBX  XF ");      
       while(ms<20/f);
       ms=0;
       asm("  SSBX  XF ");      
     }

}
  
interrupt void  timer0()
{
     ms++;
}

 

 CLKMD:时钟模式寄存器。这里有详细说明:http://blog.sina.com.cn/s/blog_492ff82b0100r2hh.html

 

 

 

posted @ 2012-01-17 20:35  proteus学习  阅读(956)  评论(1编辑  收藏  举报