C的icom电压to波段
void icom(void)
{
uint16_t u_icom;
uint8_t band;
/*
#define IcomPin PINA2
#define IcomPort PORTA
#define IcomPortDDR DDRA
*/
//uint8_t PortBand;
// icom ADC
//1,8 - 7.5v 2.5v 1000
//3.5 - 6.1v 2.0v 813
//7 - 5.1v 1.7v 680
//10 - 0v 0v 0
//14 - 4.1v 1.36v 546
//18/21 - 3.2v 1.0v 427
//24/28 - 2.25v 0.75v 300
//
/*
enum
{
_160metr,
_80metr,
_40metr,
_20metr,
_30metr,
_15metr,
_10metr
};
*/
u_icom=ADC_READ(IcomPin);
//.........................
/*
#ifdef DEBUGGING
if (u_icom<120)
band=_30metr;
else
if (u_icom<300)
band=_10metr;
else
if (u_icom<490)
band=_15metr;
else
if (u_icom<670)
band=_20metr;
else
if (u_icom<760)
band=_40metr;
else
if (u_icom<900)
band=_80metr;
else
band=_160metr;
//...........................
#else
*/
if (u_icom<100)
band=_30metr;
else
if (u_icom<350)
band=_10metr;
else
if (u_icom<490)
band=_15metr;
else
if (u_icom<610)
band=_20metr;
else
if (u_icom<745)
band=_40metr;
else
if (u_icom<900)
band=_80metr;
else
band=_160metr;
//#endif
//...................................
SelectBand(band);
}