📄 mix.c
字号:
//******************************************************************************
// SJTU DSP Tech. Center
// Copyright (c) 2001 SJTU DSP Tech. Center. All Rights Reserved.
//
// Description:
// TMS320C54x Program for Students Experiment
//
// History:
// Date Authors
// 2003/07/23 Zheng Yigang
//******************************************************************************
#include <stdio.h>
#define PRD0 0x0025
#define TCR0 0x0026
#define PMST 0x001d
#define SWWSR 0x0028
#define IFR 0x0001
#define IMR 0x0000
#define ST1 0x0007
int i_var1,i_var2=0;
short s_var;
char c_var;
long l_var;
int *lp_var;
ioport unsigned port0;
int func_c(int var1, int var2)
{
int sum;
sum = var1 + var2;
return sum;
}
interrupt void Timer0_ISR()
{
i_var2++;
c_var = 1;
if(i_var2==10)
{
port0 = port0 ^ 1;
i_var2=0;
}
}
void main()
{
//register setting
asm(" ssbx INTM");
// *(int *)ST1 = 0x6900;
asm(" stm #0x7fff, SWWSR");
asm(" stm #0x00A0, PMST");
//set timer0
*(int *)IMR = 0x0008;
*(int *)IFR = 0xffff;
*(int *)TCR0 = 0x001f; //set time control register,and stop the timer
*(int *)PRD0 = 0x8000; // set time interrupt calling period
asm(" rsbx INTM ");
*(int *)TCR0 = 0x002f; //start timer
c_var = 0;
do
{
if(c_var == 1)
{
c_var =0;
s_var = 1;
i_var1 = 2;
s_var = func_c(s_var, i_var1);
printf("s_var = %d\n", s_var);
}
}while(1);
return;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -