subcalc.c
来自「日立单片机H8S2144例程.包括AD,DA等程序(用于光源)但对于H8S214」· C语言 代码 · 共 49 行
C
49 行
#include "H8S2144.h"
#include "Global.h"
#include "Data.h"
#include "Extern.h"
#define IF_DA_SET 1
#define IF_DA_SET_MAX 0x8fff
short get_da_if(short ch, short pixel, short *ifdat )
{
long data, aa, bb, ifda ;
if (ch < 1 || ch > MAX_CH) {
return ERR_DATA;
}
if (pixel < 1 || pixel > MAX_PIXEL) {
return ERR_DATA;
}
data = g_SetIf[ch-1][pixel-1];
switch(g_Range[ch-1])
{
case 1:
aa = g_CalIfaR1[ch-1][pixel-1];
bb = g_CalIfbR1[ch-1][pixel-1];
break;
case 2:
aa = g_CalIfaR2[ch-1][pixel-1];
bb = g_CalIfbR2[ch-1][pixel-1];
break;
case 3:
aa = g_CalIfaR3[ch-1][pixel-1];
bb = g_CalIfbR3[ch-1][pixel-1];
break;
default:
aa = g_CalIfaR1[ch-1][pixel-1];
bb = g_CalIfbR1[ch-1][pixel-1];
break;
}
ifda = (aa * data)/1000 + bb;
ifda = ifda / IF_DA_SET ;
if (ifda > IF_DA_SET_MAX) {
ifda = IF_DA_SET_MAX;
}
*ifdat = (short)ifda;
return NO_ERR;
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?