[an error occurred while processing this directive]
|
dhz=dhz+delta_f;
if (dhz>98) {dhz=0; hz=hz+1;};
if (dhz<0) {dhz=98; hz=hz-1;};
if (hz>999) {hz=0; khz=khz+1;};
if (hz<0) {hz=999; khz=khz-1;};
if (khz>999) {khz=0; mhz=mhz+1;};
if (khz<0) {khz=999; mhz=mhz-1;};
if (mhz>99) {mhz=0;};
if (mhz<0) {mhz=99;};
lcd_gotoxy(0,0);
sprintf(buf, "%02d %03d %03d,%02d Hz", mhz, khz, hz, dhz );
lcd_puts(buf);
lcd_gotoxy(0,1);
dds=(mhz*1000000)+(khz*1000)+hz;
sprintf(buf, "%lu", dds);
mhz , khz, hz - типа signed int
dds - long int
На второй строке ЖКИ (вывод dds)- бред , а не значения. Допустим mhz=99 khz=999 hz=99 - а на экране вместо 99999999 - 99456457 ??? Почему ????
E-mail: info@telesys.ru