var num_of_channels = Channels; //Получаем количество каналов var freq = Frequency; //Получаем частоту оцифровки var samp = NumberOfSamples; //Получаем длину осциллограммы var dType = DataType; //Получаем тип данных var zoom = GetCurZoom(); //Получаем текущий зум var sWidth = GetScreenWidth(); //Получаем ширину экрана var sPos = GetScreenPos(); //Получаем текущую позицию экрана var language = GetCurLanguage(); //Получаем язык программного интерфейса var scl_dots = GetScaleDots() //Получить количество точек измерительной сетки var Apos = GetTMarkerPos(0); //Получаем позицию маркера А var Bpos = GetTMarkerPos(1); //Получаем позицию маркера В var rec_time = samp / freq; ReportOut("----------------Общая информация----------------\n"); ReportOut("Частота оцифровки: "+freq+" Гц\n"); if (dType == "ANA") ReportOut("Данные записанные аналоговым осциллографом\n"); else ReportOut("Данные записанные цифровым анализатором\n"); ReportOut("Длина файла осциллограммы: "+samp+" сэмплов\n"); ReportOut("Время записи: "+rec_time+" секунд\n"); ReportOut("----------------Параметры каналов----------------\n"); ReportOut("Количество каналов: "+num_of_channels+"\n"); for (var i=1; i<=num_of_channels; i++) //Цикл перебора каналов { var Visible = GetChannelParam(i, "Visible"); var Inversion = GetChannelParam(i, "Inversion"); var Average = GetChannelParam(i, "Average"); var Vdiv = GetChannelParam(i, "Vdiv"); var VOffs = GetChannelParam(i, "VOffs"); var Color = GetChannelParam(i, "Color"); var Scale = GetFullScale(i); var Name = GetChannelName(i); ReportOut("------------ Канал № "+i+ " ------------\n"); ReportOut("Имя: "+Name+"\n"); ReportOut("Отображен на экране: "); if (Visible) ReportOut("Да\n"); else ReportOut("Нет\n"); ReportOut("Данные инвертированы : "); if (Inversion) ReportOut("Да\n"); else ReportOut("Нет\n"); ReportOut("Режим отображения данных : "); if (Average) ReportOut("Сред.\n"); else ReportOut("Пик-пик\n"); ReportOut("Вертикальная развертка: "+Vdiv+" Вольт/дел.\n"); ReportOut("Максимальное значение амплитуды: "+Scale+" Вольт\n"); ReportOut("Вертикальное смещение: "+VOffs+" Вольт\n"); ReportOut("Цвет отображения: 0x"+Color.toString(16)+"\n"); } ReportOut("-----------------------------------------------------------\n"); ReportOut("-------Параметры области отображения------\n"); ReportOut("Ширина области отображения: "+sWidth+" пикселей\n"); ReportOut("Масштабирование осциллограммы: 1:"+zoom+" \n"); ReportOut("Размер измерительной масштабной ячейки: "+scl_dots+" пикселей\n"); ReportOut("Начальная позиция области отображения:"+sPos+" сэмпл\n"); var last_sample = sPos+sWidth*zoom; if (last_sample > samp) last_sample = samp; ReportOut("Конечная позиция области отображения:"+last_sample+" сэмпл\n"); ReportOut("-----------------------------------------------------------\n"); ReportOut("Позиция измерительного маркера А:"+Apos+" сэмпл\n"); for (var i=1; i<=num_of_channels; i++) //Цикл перебора каналов { var voltage = ValueAt(i, Apos); // Получаем напряжение для канала в позиции маркера А ReportOut("Канал "+i+" | Напряжение: "+voltage+" Вольт\n") } ReportOut("--------------------\n"); ReportOut("Позиция измерительного маркера В:"+Bpos+" сэмпл\n"); for (var i=1; i<=num_of_channels; i++) //Цикл перебора каналов { var voltage = ValueAt(i, Bpos); // Получаем напряжение для канала в позиции маркера В ReportOut("Канал "+i+" | Напряжение: "+voltage+" Вольт\n") } ReportOut("-----------------------------------------------------------\n"); ReportOut("Язык программного интерфейса: "); switch (language) { case 0x409: ReportOut("English\n"); break; case 0x419: ReportOut("Русский\n"); break; default: ReportOut("ID = 0x"+language.toString(16)+"\n"); break; }