📄 main.c
字号:
//============================================================
// 数码管驱动程序应用示例
// 1. 数码管驱动程序一般用法
// DIG_Init -> DIG_Set/DIG_SetAll
// 2. 示例程序实现功能:使4个数码管分别显示数字'3'、'4'、'5'、'6'
// 3. 数码管驱动函数用法参见"SPGT62C19B电机控制模组使用说明书.pdf"
// 4. 硬件连接:
// 模组J1 - 61板J8
// 模组J2 - 61板J9
//============================================================
#include "DIG.h" // 数码管显示驱动头文件
#define CLR_WDT() *(unsigned*)0x7012=1 // 清看门狗
const unsigned DigNum[]={ // 0~9十个数字对应的数码管显示编码
0x3f,0x06,0x5b,0x4f,0x66,
0x6d,0x7d,0x27,0x7f,0x6f
};
main()
{
DIG_Init(); // 显示初始化
DIG_Set(1,DigNum[3]); // 第一位显示'3'
DIG_Set(2,DigNum[4]); // 第二位显示'4'
DIG_Set(3,DigNum[5]); // 第三位显示'5'
DIG_Set(4,DigNum[6]); // 第四位显示'6'
while(1)CLR_WDT(); // 等待4KHz中断来临
}
#define P_INT_Ctrl (unsigned int*)0x7010 // 硬件端口定义
#define P_INT_Clear (unsigned int*)0x7011 // 硬件端口定义
#define C_IRQ4_4KHz 0x0040 // 常数助记符定义
void IRQ4(void)__attribute__((ISR)); // 将IRQ4函数声明为中断服务函数
void IRQ4(void) // IRQ4函数体
{
if((*P_INT_Ctrl&C_IRQ4_4KHz)!=0x0000) // 如果是4KHz中断
{
*P_INT_Clear = C_IRQ4_4KHz; // 清中断标志位
DIG_Drive(); // 调用数码管驱动函数
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -