📄 m7219tbl.c
字号:
/********************** 7 Segment Driver MAX7219 *************************************/
/* Definitions ****/
/* 1. Display type ****/
/* COMMON_ANODE ****/
/* LED arry ****/
/* L1(A PIN) L2(B) L3(C) L4(D) L5(E) ****/
/* XUNSHI ZHONJINLIULIANG DIWEI BAOJIN SHANGXIAN BAOJINXIAXIAN **/
/*************************************************************************************/
#include "math.h"
#include "reg52.h"
#include "typedef.h"
#include "function.h"
#include "define.h"
#include "varible.h"
//#define DISP_DECIMAL
/**************************************/
/**************************************/
void Moment_disp(void);
void P_count_disp(void);
void N_count_disp(void);
void Net_count_disp(void);
void Low_count_disp(void);
void Alarm_up_disp(void);
void Alarm_down_disp(void);
void Set_disp(void);
void Password_disp(void);
void Reset_count_disp(void);
void Range_disp(void);
void Pulse_disp(void);
void Filter_disp(void);
void Small_cut_disp(void);
void Ulimit_alarm_disp(void);
void Dlimit_alarm_disp(void);
void Sensor_k_disp(void);
void Set_4ma_refence(void);
void Set_zero_offset(void);
void Change_code_disp(void);
void Sys_mima_disp(void);
void Disp_prc( void );
void Led_prc(void);
void Dp_disp_set(unsigned char dp);
/**************************************/
/**************************************/
/**************************************/
/**************************************/
//extern void Get_dispdata(void);
//extern void Clear_disp_memory(void);
//extern void Conver_hnetdata(float temp_data);
//extern void Convert_lnetdata(float temp_data);
/**************************************/
/* disp data define */
/**************************************/
/*******************************/
/*******************************/
void (*const code para_disp[])(void)=
{
Moment_disp , //shun shi liu liang
P_count_disp, //zhen xiang lei ji
N_count_disp, //fan xiang lei ji
Net_count_disp , //jing lei ji
Low_count_disp , //di wei zhong liang
Alarm_up_disp , //bao jing shanxian
Alarm_down_disp, //bao jing xiaxian
Sys_mima_disp //disp system mima (1 2 3 4) only press left and mid key
};
/**************************************/
/**************************************/
void (*const code setpara_disp[])(void)=
{
Password_disp ,
Reset_count_disp,
Range_disp,
Pulse_disp,
Filter_disp,
Small_cut_disp,
Ulimit_alarm_disp,
Dlimit_alarm_disp,
Sensor_k_disp,
Set_4ma_refence,
Set_zero_offset,
Change_code_disp
};
/**************************************/
/**************************************/
void (*const *const code disp_tbl[])(void)=
{
para_disp,
setpara_disp
};
/**************************************/
/**************************************/
void Moment_disp(void)
{
if(disp_time != 0)
disp_time--;
else
{
disp_time = TM500MS;
Get_dispdata(moment_data);
if(liuxiang_F == REVERSE)
disp_memory[4] = 0x01; //disp_-
else
disp_memory[4] = disp_BLANK ;
disp_memory[5] = disp_A ;
}
return;
}
/**************************************/
/*zenxiang leiji */
/**************************************/
void P_count_disp(void)
{
if(disp_time != 0)
disp_time--;
else
{
if(disp_blink_time == 0)
{
disp_blink_time = TM4S;
}
if(disp_blink_time != 0)
disp_blink_time--;
if(disp_blink_time >= TM4S/2)
{
// high_p_count_data = Get_high_data(p_count_data);
// Convert_hdata(high_p_count_data);
Convert_hdata(Get_high_data(p_count_data));
// disp_memory[4] = disp_BLANK ;
disp_memory[5] = disp_C ;
}
else
{
// low_p_count_data = Get_low_data(p_count_data);
// Convert_ldata(low_p_count_data);
Convert_ldata(Get_low_data(p_count_data));
disp_memory[4] = disp_BLANK ;
disp_memory[5] = disp_BLANK ;
}
}
return;
}
/**************************************/
/**************************************/
void N_count_disp(void)
{
if(disp_time != 0)
disp_time--;
else
{
if(disp_blink_time == 0)
{
disp_blink_time = TM4S;
}
if(disp_blink_time != 0)
disp_blink_time--;
if(disp_blink_time >= TM4S/2)
{
// high_n_count_data = Get_high_data(n_count_data);
// Convert_hdata(high_n_count_data);
Convert_hdata(Get_high_data(n_count_data));
// disp_memory[4] = 0x01 ; //disp_-
disp_memory[5] = disp_E ;
}
else
{
// low_n_count_data = Get_low_data(n_count_data);
// Convert_ldata(low_n_count_data);
Convert_ldata(Get_low_data(n_count_data));
disp_memory[4] = disp_BLANK;
disp_memory[5] = disp_BLANK;
}
}
return;
}
/**************************************/
/**************************************/
void Net_count_disp(void)
{
if(disp_time != 0)
disp_time--;
else
{
if(disp_blink_time == 0)
{
disp_blink_time = TM4S;
}
if(disp_blink_time != 0)
disp_blink_time--;
if(disp_blink_time >= TM4S/2)
{
// high_net_count_data = Get_high_data(net_count_data);
// Convert_hdata(high_net_count_data);
Convert_hdata(Get_high_data(fabs(net_count_data)));
/* if( net_count_data< 0 )
disp_memory[4] = 0x01 ; //disp_-
else
disp_memory[4] = disp_BLANK ; */
disp_memory[5] = disp_H ;
}
else
{
// low_net_count_data = Get_low_data(net_count_data);
// Convert_ldata(low_net_count_data);
Convert_ldata(Get_low_data(fabs(net_count_data)));
if(net_count_data < 0)
disp_memory[4] = 0x01;
else
disp_memory[4] = disp_BLANK;
disp_memory[5] = disp_BLANK;
}
}
return;
}
/**************************************/
/**************************************/
void Low_count_disp(void)
{
if(disp_time != 0)
disp_time--;
else
{
disp_time = TM500MS ;
// low_net_count_data = Get_low_data(net_count_data);
// Convert_ldata(low_net_count_data);
Convert_ldata(Get_low_data(fabs(net_count_data)));
if(net_count_data < 0)
disp_memory[4] = 0x01 ;
else
disp_memory[4] = disp_BLANK;
disp_memory[5] = disp_F ;
}
return;
}
/**************************************/
/**************************************/
void Alarm_up_disp(void)
{
if(disp_time != 0)
disp_time--;
else
{
disp_time = TM500MS ;
#ifndef DISP_DECIMAL
disp_memory[5]=disp_P;
disp_memory[4]=disp_BLANK;
disp_memory[3]=disp_BLANK;
disp_memory[0]=disp_data[Read1B(0x12,0)];
disp_memory[1]=disp_data[Read1B(0x13,0)];
disp_memory[2]=disp_data[Read1B(0x14,0)];
#else
Get_dispdata(alarm_up_data);
disp_memory[3]= disp_BLANK;
disp_memory[4]=disp_BLANK;
disp_memory[5]=disp_P;
#endif
}
return;
}
/**************************************/
/**************************************/
void Alarm_down_disp(void)
{
if(disp_time != 0)
disp_time--;
else
{
disp_time = TM500MS;
#ifndef DISP_DECIMAL
disp_memory[5] = disp_U;
disp_memory[4] = disp_BLANK;
disp_memory[3] = disp_BLANK;
disp_memory[2] = disp_BLANK;
disp_memory[1] = disp_data[Read1B(0x16,0)];
disp_memory[0] = disp_data[Read1B(0x15,0)];
#else
Get_dispdata(alarm_dm_data);
disp_memory[5] = disp_U;
disp_memory[4] = disp_BLANK;
#endif
}
return;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -