用数组方式存储常用的电阻、电容和电感值,方便程序查找使用。
国家标准规定了电阻的阻值按其精度分为两大系列,分别是 E-24 系列和 E-96 系列,E-24 系列精度为 5%,E-96 系列精度为 1%。
精度为 5% 的碳膜电阻,以 Ω 为单位的阻值表如下所示。
//常用阻值表,E-24 系列,单位 Ω
static const double s_arrE24Value[] =
{
1.0, 1.1, 1.2, 1.3, 1.5, 1.6, 1.8, 2.0, 2.2, 2.4, 2.7, 3.0, 3.3, 3.6, 3.9, 4.3, 4.7, 5.1, 5.6, 6.2, 6.8, 7.5, 8.2, 9.1,
10, 11, 12, 13, 15, 16, 18, 20, 22, 24, 27, 30, 33, 36, 39, 43, 47, 51, 56, 62, 68, 75, 82, 91,
100, 110, 120, 130, 150, 160, 180, 200, 220, 240, 270, 300, 330, 360, 390, 430, 470, 510, 560, 620, 680, 750, 820, 910,
1000, 1100, 1200, 1300, 1500, 1600, 1800, 2000, 2200, 2400, 2700, 3000, 3300, 3600, 3900, 4300, 4700, 5100, 5600, 6200, 6600, 7500, 8200, 9100,
10000, 11000, 12000, 13000, 15000, 16000, 18000, 20000, 22000, 24000, 27000, 30000, 33000, 36000, 39000, 43000, 47000, 51000, 56000, 62000, 68000, 75000, 82000, 91000,
100000, 110000, 120000, 130000, 150000, 160000, 180000, 200000, 220000, 240000, 270000, 300000, 330000, 360000, 390000, 430000, 470000, 510000, 560000, 620000, 680000, 750000, 820000, 910000,
1000000, 1100000, 1200000, 1300000, 1500000, 1600000, 1800000, 2000000,2200000,2400000,2700000,3000000,3300000,3600000,3900000,4300000,4700000,5100000,5600000,6200000,6800000,7500000,8200000,9100000,
10000000,11000000,12000000,13000000,15000000,18000000,20000000,
};
假设现在一个可调 DC-DC 电源输出公式为:Vo = (RH-RL)*0.8 + 0.8,那么可以下列代码快速筛选出想要的电阻。
#include "stdio.h"
#include "math.h"
int main(void)
{
unsigned int i, j;
double volt, rh, rl;
for (i = 0; i < (sizeof(s_arrE24Value) / sizeof(s_arrE24Value[0])); i++)
{
for (j = 0; j < (sizeof(s_arrE24Value) / sizeof(s_arrE24Value[0])); j++)
{
rh = s_arrE24Value[i];
rl = s_arrE24Value[j];
volt = ((rh / rl) * 0.8) + 0.8;
if (fabs(volt - 5.0) <= 0.05)
{
printf("RH: %.1f, RL: %.1f, volt: %.3f\r\n", rh, rl, volt);
}
}
}
return 0;
}
精度为 1% 的金属膜电阻,以 Ω 为单位的阻值表如下所示。
//常用阻值表,E-96 系列,单位 Ω
static const double s_arrE96Value[] =
{
10.0, 10.2, 10.5, 10.7, 11.0, 11.3, 11.5, 11.8, 12.1, 12.4, 12.7, 13.0, 13.3,
13.7, 14.0, 14.3, 14.7, 15.0, 15.4, 15.8, 16.2, 16.5, 16.9, 17.4, 17.8, 18.2,
18.7, 19.1, 19.6, 20.0, 20.5, 21.0, 21.5, 22.1, 22.6, 23.2, 23.7, 24.3, 24.9,
25.5, 26.1, 26.7, 27.4, 28.0, 28.7, 29.4, 30.1, 30.9, 31.6, 32.4, 33.2, 34.0,
34.8, 35.7, 36.5, 37.4, 38.3, 39.2, 40.2, 41.2, 42.2, 43.2, 44.2, 45.3, 46.4,
47.5, 48.7, 49.9, 51.1, 52.3, 53.6, 54.9, 56.2, 57.6, 59.0, 60.4, 61.9, 63.4,
64.9, 66.5, 68.1, 69.8, 71.5, 73.2, 75.0, 76.8, 78.7, 80.6, 82.5, 84.5, 86.6,
88.7, 90.9, 93.1, 95.3, 97.6, 100, 102, 105, 107, 110, 113, 115, 118,
121, 124, 127, 130, 133, 137, 140, 143, 147, 150, 154, 158, 162,
165, 169, 174, 178, 182, 187, 191, 196, 200, 205, 210, 215, 221,
226, 232, 237, 243, 249, 255, 261, 267, 274, 280, 287, 294, 301,
309, 316, 324, 332, 340, 348, 357, 365, 374, 383, 392, 402, 412,
422, 432, 442, 453, 464, 475, 487, 499, 511, 523, 536, 549, 562,
576, 590, 604, 619, 634, 649, 665, 681, 698, 715, 732, 750, 768,
787, 806, 825, 845, 866, 887, 909, 931, 953, 976, 1000, 1020, 1050,
1070, 1100, 1130, 1150, 1180, 1210, 1240, 1270, 1300, 1330, 1370, 1400, 1430,
1470, 1500, 1540, 1580, 1620, 1650, 1690, 1740, 1780, 1820, 1870, 1910, 1960,
2000, 2050, 2100, 2150, 2210, 2260, 2320, 2370, 2430, 2490, 2550, 2610, 2670,
2740, 2800, 2870, 2940, 3010, 3090, 3160, 3240, 3320, 3400, 3480, 3570, 3650,
3740, 3830, 3920, 4020, 4120, 4220, 4320, 4420, 4530, 4640, 4750, 4870, 4990,
5110, 5230, 5360, 5490, 5620, 5760, 5900, 6040, 6190, 6340, 6490, 6650, 6810,
6980, 7150, 7320, 7500, 7680, 7870, 8060, 8250, 8450, 8660, 8870, 9090, 9310,
9530, 9760, 10000, 10200, 10500, 10700, 11000, 11300, 11500, 11800, 12100, 12400, 12700,
13000, 13300, 13700, 14000, 14300, 14700, 15000, 15400, 15800, 16200, 16500, 16900, 17400,
17800, 18200, 18700, 19100, 19600, 20000, 20500, 21000, 21500, 22100, 22600, 23200, 23700,
24300, 24900, 25500, 26100, 26700, 27400, 28000, 28700, 29400, 30100, 30900, 31600, 32400,
33200, 34000, 34800, 35700, 36500, 37400, 38300, 39200, 40200, 41200, 42200, 43200, 44200,
45300, 46400, 47500, 48700, 49900, 51100, 52300, 53600, 54900, 56200, 57600, 59000, 60400,
61900, 63400, 64900, 66500, 68100, 69800, 71500, 73200, 75000, 76800, 78700, 80600, 82500,
84500, 86600, 88700, 90900, 93100, 95300, 97600, 100000, 102000, 105000, 107000, 110000, 113000,
115000, 118000, 121000, 124000, 127000, 130000, 133000, 137000, 140000, 143000, 147000, 150000, 154000,
158000, 162000, 165000, 169000, 174000, 178000, 182000, 187000, 191000, 196000, 200000, 205000, 210000,
215000, 221000, 226000, 232000, 237000, 243000, 249000, 255000, 261000, 267000, 274000, 280000, 287000,
294000, 301000, 309000, 316000, 324000, 332000, 340000, 348000, 357000, 365000, 374000, 383000, 392000,
402000, 412000, 422000, 432000, 442000, 453000, 464000, 475000, 487000, 499000, 511000, 523000, 536000,
549000, 562000, 576000, 590000, 604000, 619000, 634000, 649000, 665000, 681000, 698000, 715000, 732000,
750000, 768000, 787000, 806000, 825000, 845000, 866000, 887000, 909000, 931000, 953000, 976000, 1000000,
};
将两张表结合到一起,先存储 E-24 标准阻值表,再存储 E-96 标准阻值表,如下所示。
//常用阻值表,单位 Ω
static const double s_arrResistanceValue[] =
{
//E-24 部分
1.0, 1.1, 1.2, 1.3, 1.5, 1.6, 1.8, 2.0, 2.2, 2.4, 2.7, 3.0, 3.3,
3.6, 3.9, 4.3, 4.7, 5.1, 5.6, 6.2, 6.8, 7.5, 8.2, 9.1, 10.0, 11.0,
12.0, 13.0, 15.0, 16.0, 18.0, 20.0, 22.0, 24.0, 27.0, 30.0, 33.0, 36.0, 39.0,
43.0, 47.0, 51.0, 56.0, 62.0, 68.0, 75.0, 82.0, 91.0, 100, 110, 120, 130,
150, 160, 180, 200, 220, 240, 270, 300, 330, 360, 390, 430, 470,
510, 560, 620, 680, 750, 820, 910, 1000, 1100, 1200, 1300, 1500, 1600,
1800, 2000, 2200, 2400, 2700, 3000, 3200, 3300, 3600, 3900, 4300, 4700, 5100,
5600, 6200, 6600, 7500, 8200, 9100, 10000, 11000, 12000, 13000, 15000, 16000, 18000,
20000, 22000, 24000, 27000, 30000, 33000, 36000, 39000, 43000, 47000, 51000, 56000, 62000,
68000, 75000, 82000, 91000, 100000, 110000, 120000, 130000, 150000, 160000, 180000, 200000, 220000,
240000, 270000, 300000, 330000, 360000, 390000, 430000, 470000, 510000, 560000, 620000, 680000, 750000,
820000, 910000, 1000000, 1100000, 1200000, 1300000, 1500000, 1600000, 1800000, 2000000, 2200000,
2400000, 2700000, 3000000, 3300000, 3600000, 3900000, 4300000, 4700000, 5100000, 5600000, 6200000,
6800000, 7500000, 8200000, 9100000, 10000000, 11000000, 12000000, 13000000, 15000000, 18000000, 20000000,
//E-96 部分
10.0, 10.2, 10.5, 10.7, 11.0, 11.3, 11.5, 11.8, 12.1, 12.4,
12.7, 13.0, 13.3, 13.7, 14.0, 14.3, 14.7, 15.0, 15.4, 15.8, 16.2, 16.5, 16.9,
17.4, 17.8, 18.2, 18.7, 19.1, 19.6, 20.0, 20.5, 21.0, 21.5, 22.1, 22.6, 23.2,
23.7, 24.3, 24.9, 25.5, 26.1, 26.7, 27.4, 28.0, 28.7, 29.4, 30.1, 30.9, 31.6,
32.4, 33.2, 34.0, 34.8, 35.7, 36.5, 37.4, 38.3, 39.2, 40.2, 41.2, 42.2, 43.2,
44.2, 45.3, 46.4, 47.5, 48.7, 49.9, 51.1, 52.3, 53.6, 54.9, 56.2, 57.6, 59.0,
60.4, 61.9, 63.4, 64.9, 66.5, 68.1, 69.8, 71.5, 73.2, 75.0, 76.8, 78.7, 80.6,
82.5, 84.5, 86.6, 88.7, 90.9, 93.1, 95.3, 97.6, 100, 102, 105, 107, 110,
113, 115, 118, 121, 124, 127, 130, 133, 137, 140, 143, 147, 150,
154, 158, 162, 165, 169, 174, 178, 182, 187, 191, 196, 200, 205,
210, 215, 221, 226, 232, 237, 243, 249, 255, 261, 267, 274, 280,
287, 294, 301, 309, 316, 324, 332, 340, 348, 357, 365, 374, 383,
392, 402, 412, 422, 432, 442, 453, 464, 475, 487, 499, 511, 523,
536, 549, 562, 576, 590, 604, 619, 634, 649, 665, 681, 698, 715,
732, 750, 768, 787, 806, 825, 845, 866, 887, 909, 931, 953, 976,
1000, 1020, 1050, 1070, 1100, 1130, 1150, 1180, 1210, 1240, 1270, 1300, 1330,
1370, 1400, 1430, 1470, 1500, 1540, 1580, 1620, 1650, 1690, 1740, 1780, 1820,
1870, 1910, 1960, 2000, 2050, 2100, 2150, 2210, 2260, 2320, 2370, 2430, 2490,
2550, 2610, 2670, 2740, 2800, 2870, 2940, 3010, 3090, 3160, 3240, 3320, 3400,
3480, 3570, 3650, 3740, 3830, 3920, 4020, 4120, 4220, 4320, 4420, 4530, 4640,
4750, 4870, 4990, 5110, 5230, 5360, 5490, 5620, 5760, 5900, 6040, 6190, 6340,
6490, 6650, 6810, 6980, 7150, 7320, 7500, 7680, 7870, 8060, 8250, 8450, 8660,
8870, 9090, 9310, 9530, 9760, 10000, 10200, 10500, 10700, 11000, 11300, 11500, 11800,
12100, 12400, 12700, 13000, 13300, 13700, 14000, 14300, 14700, 15000, 15400, 15800, 16200,
16500, 16900, 17400, 17800, 18200, 18700, 19100, 19600, 20000, 20500, 21000, 21500, 22100,
22600, 23200, 23700, 24300, 24900, 25500, 26100, 26700, 27400, 28000, 28700, 29400, 30100,
30900, 31600, 32400, 33200, 34000, 34800, 35700, 36500, 37400, 38300, 39200, 40200, 41200,
42200, 43200, 44200, 45300, 46400, 47500, 48700, 49900, 51100, 52300, 53600, 54900, 56200,
57600, 59000, 60400, 61900, 63400, 64900, 66500, 68100, 69800, 71500, 73200, 75000, 76800,
78700, 80600, 82500, 84500, 86600, 88700, 90900, 93100, 95300, 97600, 100000, 102000, 105000,
107000, 110000, 113000, 115000, 118000, 121000, 124000, 127000, 130000, 133000, 137000, 140000, 143000,
147000, 150000, 154000, 158000, 162000, 165000, 169000, 174000, 178000, 182000, 187000, 191000, 196000,
200000, 205000, 210000, 215000, 221000, 226000, 232000, 237000, 243000, 249000, 255000, 261000, 267000,
274000, 280000, 287000, 294000, 301000, 309000, 316000, 324000, 332000, 340000, 348000, 357000, 365000,
374000, 383000, 392000, 402000, 412000, 422000, 432000, 442000, 453000, 464000, 475000, 487000, 499000,
511000, 523000, 536000, 549000, 562000, 576000, 590000, 604000, 619000, 634000, 649000, 665000, 681000,
698000, 715000, 732000, 750000, 768000, 787000, 806000, 825000, 845000, 866000, 887000, 909000, 931000,
953000, 976000, 1000000,
};
常用电容表如下所示。
//常用容值表,单位是 pF
static const double s_arrCapacitanceTable[] =
{
//pF
5, 10, 12, 15, 18, 20, 22, 27, 30, 33, 39, 43, 47, 50, 51, 56, 62, 68, 75, 82, 91,
100, 120, 150, 180, 200, 220, 240, 270, 300, 330, 360, 390, 470, 560, 620, 680, 750, 820,
//nF
1000, 1200, 1500, 1800, 2000, 2200, 2700, 3300, 3900, 4700, 5600, 6800, 10000, 15000,
18000, 20000, 22000, 27000, 33000, 39000, 40000, 47000, 56000, 68000, 82000,
100000, 220000, 330000, 470000,
//uF
1000000, 2200000, 3300000, 4700000, 10000000, 22000000, 33000000,
47000000, 100000000, 220000000, 330000000, 470000000, 680000000,
1000000000, 2200000000, 3300000000, 4700000000,
};
常用电感表如下所示。
//常用电感表,单位是 uH
static const double s_arrInductanceTable[] =
{
1.0, 1.5, 2.2, 3.3,
4.7, 5.6, 6.8, 8.2,
10, 12, 15, 18,
22, 27, 33, 47,
56, 68, 82, 100,
120, 150, 180, 220,
270, 330, 390, 470,
560, 680, 820, 1000,
1500, 2200, 3300, 4700,
};