⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 liushuideng.c

📁 DSP程序,主要是对DSP的入门程序,用于点亮发光官,这里的是8个发光官,循环点亮,俗称流水灯
💻 C
字号:
/**************************************************
*   
*   程序说明:1.使用定时器产生间隔70ms的闪烁。
*             2.等待外部中断产生闪烁中断或启动程序。
***************************************************/
#define IMR*(int*)0x0             /*定义要访问的MMR*/
#define IFR*(int*)0x01
#define PRD*(int*)0x25
#define TCR*(int*)0x26
#define SWWSR*(int*)0x28

volatile ioport unsigned int port8028;  /*定义要访问的I/O单元*/
#define Light port8028//流水灯

unsigned int LED,flag;
void main(void)
{
	
	IMR=0;
	SWWSR=0;//不插入等待周期
	TCR=0x10;//TSS=1关定时器	
	PRD=0x0ffff;//加载周期寄存器值
	TCR=0X0C2F;//TDDR分频系数=16;TSS=0启动定时器;TRB=1,从新加载PRD,
	IMR=(0X08|0x02);//开放定时器中断及外部中断2		
	IFR=0xFFFF;//清除尚未处理完的所有中断
	asm(" RSBX INTM ");//开放中断
	
LED=1;
flag=1;
while (1)
 {;}
}

interrupt void INT_2(void)
{
	if(flag==1)
	{
		flag=0;
		TCR=0x0C3F;//关闭定时器
	}
	else
	{
		flag=1;
		TCR=0x0C2F;//开启定时器	
	}

}
interrupt void timer(void)
{
	Light=LED;
	if(LED>8){LED=1;}
	LED*=2;		
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -