📄 main.c
字号:
//-----------------------------------------------------------------
// 名称: TIMER0定时器控制数码管扫描显示
//-----------------------------------------------------------------
// 说明: 8个只数码管分两组动态显示年月日与时分秒,本例的位显示延时
// 用定时器实现,未使用前面案例中常用的延时函数.
// 掌握3-8译码器应用方法后可重新设计本例,在PORTC端口仅使用
// 3只引脚驱动位码.
//
//-----------------------------------------------------------------
#include <pic.h>
#define INT8U unsigned char
#define INT16U unsigned int
#define _XTAL_FREQ 1000000UL
//0-9的数码管段码,最后一位是"-"的段码,索引为10
const INT8U SEG_CODE[] =
{ 0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90,0xBF};
//待显示数据(20)10-07-30与21-56-39(分为两组显示)
const INT8U Table_OF_Digits[][8] =
{
{1,0,10,0,7,10,3,0},
{2,1,10,5,6,10,3,9}
};
INT8U i = 0,j = 0;
INT16U Keep_Time = 0; //保持显示时长
//------------------------------------------------------------------
// 主程序
//------------------------------------------------------------------
void main()
{
}
//-----------------------------------------------------------------
// TMR0定时器溢出中断控制数码管显示
//-----------------------------------------------------------------
void interrupt TMR0_Interrupt_Refresh_DSY( )
{
if (T0IF)
{
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -