📄 main.c
字号:
//#define P_TimerA_Data (volatile int*)0x7000
unsigned char g_ucIntFlag=0;
unsigned int g_uisum=0;
#include "spce061a.h"
#include "dig.h"
unsigned int g_Data[11] = {0x003f,0x0006,0x005b,0x004f,0x0066,0x006d,0x007d,0x0007,0x007f,0x006f,0x0077};
unsigned int iData[6]={3,0,0,0,0,0}; //0, 1, 2, 3, 4, 5, 6, 7, 8, 9
int main(void)
{
unsigned int key,i,j,k;
unsigned int g_uifx=0;
unsigned int fx=0;
DIG_Init();
DIG_Set(1,g_Data[iData[0]]); //第一位数码管显示
DIG_Set(2,g_Data[iData[1]]); //第二位数码管显示
DIG_Set(3,g_Data[iData[2]]); //第三位数码管显示
DIG_Set(4,g_Data[iData[3]]); //第四位数码管显示
DIG_Set(5,g_Data[iData[4]]); //第五位数码管显示
DIG_Set(6,g_Data[iData[5]]); //第六位数码管显示
key_init();
Init_IOB();
RunTime2Hz(); //开中断
TmbCount(); //开始计数
while(1)
{
while(g_ucIntFlag) //定时2秒后读计数值
{
g_uifx=*(P_TimerA_Data);
g_ucIntFlag = 0;
*(P_TimerA_Data)=0;
fx= g_uifx; //计算出外部时钟源的频率
}
i=fx/10000;
iData[4]=i;
j=fx%10000;
i=j/1000;
iData[3]=i;
j=j%1000;
i=j/100;
iData[2]=i;
j=j%100;
i=j/10;
iData[1]=i;
j=j%10;
iData[0]=j;
DIG_Set(1,g_Data[iData[0]]); //第一位数码管显示
DIG_Set(2,g_Data[iData[1]]); //第二位数码管显示
DIG_Set(3,g_Data[iData[2]]); //第三位数码管显示
DIG_Set(4,g_Data[iData[3]]); //第四位数码管显示
DIG_Set(5,g_Data[iData[4]]); //第五位数码管显示
DIG_Set(6,g_Data[iData[5]]); //第六位数码管显示
*P_Watchdog_Clear=0x0001;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -