display.c
来自「M8+1302+18b20+8位数码管的sch和gcc源程序」· C语言 代码 · 共 43 行
C
43 行
#define display_c
#include "main.h"
/*
共阴4位一体数码管
上 1 2 3 4 5 6
s1 a f s2 s3 b
下 1 2 3 4 5 6
e d dp c g s4
msb=p,lsb=a.顺序为pgfedcba
*/
SIGNAL (SIG_OVERFLOW0)
{
uchar i=0;
uchar data_seg=display_buffer[display_count];
uchar data_bit=~(1<<display_count);
if((1<<display_count)==flash_control) data_bit|=flash_var;
display_count++;
if(8==display_count) display_count=0;
//送位选
for(i=0;i<8;i++)
{
if(data_bit&0x80) set_hc595_ser();
else clr_hc595_ser();
clr_hc595_srclk();
set_hc595_srclk();
data_bit<<=1;
}
//送段码
for(i=0;i<8;i++)
{
if(data_seg&0x80) set_hc595_ser();
else clr_hc595_ser();
clr_hc595_srclk();
set_hc595_srclk();
data_seg<<=1;
}
clr_hc595_srclk();
clr_hc595_rclk();
set_hc595_rclk();
clr_hc595_rclk();
TCNT0=t0_tcnt;//定时10ms
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?