6位7段LED数码管显示(15)
时间:2025-04-20
时间:2025-04-20
附录 设计程序汇总
Main.c
#include "SPCE061A.h" #include "Dig.h"
#define C_IRQ5_2Hz 0x0004
unsigned int g_uiFirst = 0x0000; //用于控制1s延时 unsigned int g_uiFlag; //用于控制数码管 unsigned int g_Data[11] = {0x0000,0x003f,0x0006,0x005b,0x004f,0x0066,0x006d,0x007d,0x0007,0x007f,0x006f};
//0, 1, 2, 3, 4, 5, 6, 7, 8, 9
unsigned int g_uiSeg; //段码指针
//======================================================== // 语法格式: int main(void) // 实现功能: 数码管显示 // 参数: 无 // 返回值: 无
//======================================================== int main(void) {
unsigned int Dis1[6] = {0x003f,0x003f,0x003f,0x003f}; unsigned int uiIntStatus;
uiIntStatus = *P_INT_Ctrl_New; //开2Hz中断 uiIntStatus |= C_IRQ5_2Hz; *P_INT_Ctrl = uiIntStatus;
g_uiFlag = 0x0000; //该变量在2Hz中断当中会被修改
g_uiSeg = 0; //该变量在2Hz中断当中会被修改,以便及时刷新显示
DIG_Init(); //显示初始化,同时会打开IRQ4的4KHz中断 while(1) {
if(g_uiFlag == 0x0000) {
DIG_SetAll(Dis1); //设置数码管全部显示0