Перейти к содержанию
    

AntonSor

Участник
  • Постов

    31
  • Зарегистрирован

  • Посещение

Весь контент AntonSor


  1. Я все-таки его поборол. Разогнал усиление, добавив ещё сдвоенный операционник, поборолся с самовозбужением, наводками, помехами по питанию и получил размах отраженного сигнала в 200 мВ во весь диапазон АЦП. Вторая четверка диодов не нужна - главное, чтобы АЦП начал преобразование в тот момент, пока разряжается емкость на выходе стробоскопического преобразователя. Вот только шума на графике многовато. Придется заморочиться усреднением и медианной фильтрацией. Но работает, видно четко. Можно делать стробоскопические осциллографы и георадары на STM32Discovery :)
  2. Продолжаю мучать эту схему. Добавил формирователь короткого импульса по схеме Павла Противы. SRD диод взял 2Д524Б. Потом симметрирующий трансформатор и на диодную четверку. Что-то начало срабатывать. Диоды открываются, ток течет. Сразу же выяснилось, что преобразователь надо балансировать: подбирать закрывающее напряжение на обеих плечах диодов, пока на входе не будет ноль. Иначе на входе присутствует некоторое постоянное напряжение. Положительный и отрицательный импульсы, оказывается, чуть-чуть не одинаковы.Второе, если на вход стробоскопическому преобразователю подать один вольт напряжения, то на выходе преобразователя будут импульсы по 120 милливольт. И это ещё без делителя на 10! Выходит, преобразователь сильно ослабляет сигнал. Отраженный сигнал с кабеля у меня полвольта, и на выходе этой стробоскопической фигни будет 800 микровольт. Для полного размаха АЦП 1,5 вольта где-то раз в 2000 надо будет усиливать. Это так и должно быть? Неужели и в заводских стробоскопических осциллографах требуется такое усиление?
  3. Подниму старую тему. Пытаюсь повторить схему стробоскопического преобразователя, упомянутой в сообщении 2 https://electronix.ru/forum/index.php?showt...st&p=190880 . Для использования в кабельном рефлектометре (TDR). Собрал её на плате, добавил формирователь зондирующего импульса на 74LVC14. Вместо компаратора MAX961 использовал AD8561. У него тоже есть вход защелки LE. И увидел, что импульсы на выходе компаратора совершенно не похожи на те, что ожидались! Вместо короткого импульса, открывающего диоды, здесь длинный, чуть ли не по 1 мкс. Я правильно понимаю, что с таким импульсом на выходе компаратора стробоскопический преобразователь работать не будет? Глупый вопрос: что я сделал не так? И как сделать правильно? Желтый - на выходе формирователя импульса (выход Pulce Out), синий - выход компаратора 7 и 8. Спасибо!
  4. Спасибо! Похоже, что конкретно эти разъемы - фирмы Hirschmann, и называются они MAS7100S и MAB7100S. Логотип похож. Резьба же у американского Ампфенола и немецкого Хиршмана разная, в одном случае М16х0,75, в другом - явно дюймовая.
  5. Помогите, пожалуйста, найти правильное название этого разъема для заказа. Мне нужны и вилка, и розетка. Это вариация разъема DIN с 7 контактами, но разъем стопорится от выдергивания накидной гайкой (см. фото). Резьба мелкая. И в розетке тоже резьба по наружной поверхности. Вариант с байонетным соединением Tuchel я нашел, он здесь не подходит, нужно именно с резьбой. В каталогах Маузера такого разъема не нашел - может быть, плохо искал? Маркировка на вилке - буква h или Y, как посмотреть. Что это может быть за производитель? Прибор, от которого эта вилка и розетка - итальянского производства. С обычным DIN он стыкуется нормально (если не считать, что ключ утоплен и контакт экрана плохо достает до ключа). На ВРТП этот разъем опознать не смогли. Спасибо!
  6. Написано, там есть таблица фазы S21 от частоты, и там -180 на 2G
  7. Потому что обычно уровень на выходе в сотни тысяч раз превышает уровень шумов усилителя. Шум не мешает собственному приемнику, потому что усилитель мощности на время приема можно и выключить или отсоединить переключателем прием/передача. А если на выходе усилителя транзисторы в режиме B или C, то без сигнала они вообще закрыты и не шумят.
  8. Он тогда у вас не на 50 Ом получается. Пересчитайте фильтр на 300 Ом, может быть, больше понравится. И не забудьте про реальную добротность этих покупных элементов и про допуски, это сильно ухудшит вам картину.
  9. Нормально. Обычно там ставят как раз около 1 килоома.
  10. Генератор радиочастотной накачки лазера Synrad Firestar f400. Рабочая частота 40 МГц, потребляемая мощность около 1 кВт (напряжение питания 96 вольт). Пробитый конденсатор видно на фото.
  11. Прочитал тему и задумался. Скажите, пожалуйста, а в Foxconn'е так же? И вообще в тайваньских компаниях. Есть знакомые, которые туда,в фоксконн, зовут.
  12. Зашел ради интереса на упоминаемый тут сайт "зарплатомер". И вот какой вопрос был в их тесте: --- http://www.zarplatomer.ru/payment.html?pay...10&coeff=11 Вы выбрали должность: Промышленность / Производство => Радиотехника / Электроника / Нанотехнологии => Инженер-конструктор Вопрос №3 Наличие связей в бизнес кругах: Нет Есть Есть на высоком уровне --- Представил себе объявление "Требуется инженер-конструктор со связями в бизнес-кругах на высоком уровне" и хотел было улыбнуться, но вовремя одумался.
  13. Спас от металлистов два ЖИГ генератора из какого-то прибора, 1-2 ГГц и 2-4 ГГц. Подскажите, пожалуйста, где можно посмотреть схему их включения? Какое им нужно напряжение питания? Будет ли генерация, если на обмотку электромагнита не подавать напряжения, т.е. без магнитного поля? Можно ли их разбирать, не нарушится ли работа, если я случайно смещу электромагнит? От какого прибора они могут быть? Где можно почитать про работу с такими генераторами? Спасибо!
  14. Спасибо, изучу и этот документ и ещё раз проверю подключение.
  15. Очень жаль, значит, индикатор - в морг :-(
  16. По столбцам - номер шага, строки - название сигнала, так, как на схеме. Т.е. на шаге номер один включены выходы VH и WL, выключены все остальные. На шаге номер два включены UH и WL и т.д.
  17. Как-то у вас неправильно таблица задана... Конечно, лучше бы было, если бы обмотки двигателя были бы соединены "звездой" с общей точкой, тогда бы можно было подвесить общую точку на "плюс" и обойтись всего тремя "нижними" ключами, и включать их поочередно. Здесь же нужно сделать три сигнала, сдвинутые на 120 градусов. Предлагаю такую таблицу (в файле). Дальше. Так, как вы делаете - установкой и сбросом отдельных битов - есть вероятность, что забудете сбросить поднятый бит и спалить выходные транзисторы. Лучше сформировать 6 констант, по количеству шагов, и отсылать их. const step1:=001001b; step2:=100100b; ... while true do begin motor:=step1; delay_us(antispeed); motor:=step2; delay_us(antispeed); ... end; .
  18. Проверил разводку проводов - не ошибся! Скажите, а можно как-нибудь ещё этот индикатор проверить? Скажем, модуль на KS0066 можно подключить к порту LPT компьютера и, запустив специальную программу, что-нибудь вывести. А для графических индикаторов есть такое? Спасибо.
  19. Некоторое время :-) спустя опять дошли руки до этого индикатора. Взял я этот "самый внятный документ" и проделал все описанные в нем действия: ресетнул индикатор; проверил статус, и проверял далее - два последних бита всегда были =1! т.е. STA0 и STA1 =1, готов к получению новых данных и команд; послал graphics home address = 0800h; послал graphics area set = 1eh; послал text home adress = 0; послал text area set = 1eh; послал mode set = 81h (XOR); послал display mode = 9f (все, включая blink, включено). В руководстве написано: если вы выполнили шаги, указанные выше, вы должны видеть дисплей, полный мусора. Мусор не вижу :-( Вижу чистый экран. Наконец, послал Address pointer =0, записал в память командой c4h байт 21h и попробовал считать его обратно командой c5h. На линии данных вижу не 21h, а c5h! С ума сойти! :-) Что я делаю не так? В программе повставлял вывод статуса на дисплей, имеющийся в отладочной плате, и добавлял (вернее, раскомментировал) процедуры отправки данных по одной. Статус выдается "хороший" - STA0 и STA1 =1, после посылки команд с4h и STA3 =1, после c5h STA2 = 1. Что мне следует проверить и каким образом? "Обширные исходники" прилагаю. Спасибо! program t240x128test; { Declarations section } uses __Lib_T6963C_Consts, __Lib_T6963C; // T6963C module connections var T6963C_ctrlPort : byte at PORTE; // CONTROL port var T6963C_dataPort : byte at PORTD; // DATA port var T6963C_ctrlPort_Direction : byte at DDRE; // CONTROL direction register var T6963C_dataPort_Direction : byte at DDRD; // DATA direction register var T6963C_ctrlwr : sbit at PORTE.B0; // WR write signal var T6963C_ctrlrd : sbit at PORTE.B1; // RD read signal var T6963C_ctrlcd : sbit at PORTE.B3; // CD command/data signal var T6963C_ctrlrst : sbit at PORTE.B4; // RST reset signal var T6963C_ctrlwr_Direction : sbit at DDRE.B0; // WR write signal direction var T6963C_ctrlrd_Direction : sbit at DDRE.B1; // RD read signal direction var T6963C_ctrlcd_Direction : sbit at DDRE.B3; // CD command/data signal direction var T6963C_ctrlrst_Direction : sbit at DDRE.B4; // RST reset signal direction // Signals not used by library, they are set in main function var T6963C_ctrlce : sbit at PORTE.B2; // CE signal var T6963C_ctrlfs : sbit at PORTE.B5; // FS signal var T6963C_ctrlmd : sbit at PORTE.B6; // MD signal var T6963C_ctrlce_Direction : sbit at DDRE.B2; // CE signal direction var T6963C_ctrlfs_Direction : sbit at DDRE.B5; // FS signal direction var T6963C_ctrlmd_Direction : sbit at DDRE.B6; // MD signal direction // End T6963C module connections var LCD_RS : sbit at PORTC.B2; var LCD_EN : sbit at PORTC.B3; var LCD_D4 : sbit at PORTC.B4; var LCD_D5 : sbit at PORTC.B5; var LCD_D6 : sbit at PORTC.B6; var LCD_D7 : sbit at PORTC.B7; var LCD_RS_Direction : sbit at DDRC.B2; var LCD_EN_Direction : sbit at DDRC.B3; var LCD_D4_Direction : sbit at DDRC.B4; var LCD_D5_Direction : sbit at DDRC.B5; var LCD_D6_Direction : sbit at DDRC.B6; var LCD_D7_Direction : sbit at DDRC.B7; Procedure Status(var txtx:string[15]); var ttt:byte; txt:string[7]; begin //читаем статус и пишем его на дисплей T6963C_dataPort_Direction:=0; T6963C_ctrlwr:=1; T6963C_ctrlcd:=1; T6963C_ctrlrd:=0; T6963C_ctrlce:=0; delay_us(1); lcd_out(1,1,txtx); ttt:=PIND; inttostr(ttt,txt); //процiдурка для разгребания статусных бит if(ttt and 1) then lcd_out(2,8,'1') else lcd_out(2,8,'0'); if(ttt and 2) then lcd_out(2,7,'1') else lcd_out(2,7,'0'); if(ttt and 4) then lcd_out(2,6,'1') else lcd_out(2,6,'0'); if(ttt and 8) then lcd_out(2,5,'1') else lcd_out(2,5,'0'); if(ttt and 16) then lcd_out(2,4,'1') else lcd_out(2,4,'0'); if(ttt and 32) then lcd_out(2,3,'1') else lcd_out(2,3,'0'); if(ttt and 64) then lcd_out(2,2,'1') else lcd_out(2,2,'0'); if(ttt and 128) then lcd_out(2,1,'1') else lcd_out(2,1,'0'); lcd_out(2,9,txt); T6963C_ctrlce:=1; end; Procedure WriteData(Datas:byte); begin T6963C_dataPort_Direction:=255; T6963C_dataPort:=Datas; T6963C_ctrlcd:=0; T6963C_ctrlrd:=1; T6963C_ctrlwr:=0; delay_us(1); T6963C_ctrlce:=0; delay_us(1); T6963C_ctrlce:=1; T6963C_dataPort_Direction:=0; end; Procedure WriteCommand(Datas:byte); begin T6963C_dataPort_Direction:=255; T6963C_dataPort:=Datas; T6963C_ctrlcd:=1; T6963C_ctrlrd:=1; T6963C_ctrlwr:=0; delay_us(1); T6963C_ctrlce:=0; delay_us(1); T6963C_ctrlce:=1; T6963C_dataPort_Direction:=0; end; Function ReadData():byte; begin T6963C_dataPort_Direction:=0; T6963C_ctrlcd:=0; T6963C_ctrlwr:=1; T6963C_ctrlrd:=0; T6963C_ctrlce:=0; delay_us(1); ReadData:=T6963C_dataPort; T6963C_ctrlce:=1; end; Procedure Init(); begin //по-своему //ресетим контроллер T6963C_ctrlrst:=0; delay_us(10); T6963C_ctrlrst:=1; delay_us(10); T6963C_ctrlce:=1; Status('s'); //теперь шлем graphics home address //data WriteData(0); //статус Status('s gha 1'); WriteData(0x08); Status('s gha 2'); WriteCommand(0x42); // проверяем... Status('s '); //теперь шлем graphics area set //data WriteData(0x1e); //статус Status('s gas 1'); WriteData(0); Status('s gas 2'); WriteCommand(0x43); // проверяем... Status('s '); //теперь шлем text home adress //data WriteData(0x00); //статус Status('s tha 1'); WriteData(0x00); Status('s tha 2'); WriteCommand(0x40); // проверяем... Status('s '); //теперь шлем text area set //data WriteData(0x1e); //статус Status('s tas 1'); WriteData(0x00); Status('s tas 2'); WriteCommand(0x41); // проверяем... Status('s '); //теперь шлем mode set WriteCommand(0x81); //xor // проверяем... Status('s ms '); //теперь шлем display mode WriteCommand(0x9f); //все включено // проверяем... Status('s dm '); end; var {panel : byte; // current panel i : word; // general purpose register curs : byte; // cursor visibility cposx, cposy : word; // cursor x-y position txtcols : byte; // number of text coloms } txt, txt1 : string[16]; ttt:byte; begin Lcd_Init(); // Initialize LCD Lcd_Cmd(LCD_CLEAR); // Clear display Lcd_Cmd(LCD_CURSOR_OFF); // Cursor off T6963C_ctrlce_Direction := 1; T6963C_ctrlce := 0; // Enable T6963C T6963C_ctrlfs_Direction := 1; T6963C_ctrlfs := 0; // Font Select 8x8 T6963C_ctrlmd_Direction := 1; T6963C_ctrlmd := 0; // Column number select T6963C_ctrlcd_Direction := 1; T6963C_ctrlcd := 0; // Cd T6963C_ctrlrst_Direction := 1; T6963C_ctrlrst := 0; // reset T6963C_ctrlwr_Direction:=1; T6963C_ctrlrd_Direction:=1; //начнем Init(); //теперь шлем address pointer //data WriteData(0x0); //статус Status('s tap 1'); WriteData(0x00); Status('s tap 2'); WriteCommand(0x24); // проверяем... Status('s '); WriteData(0x21); Status('s 21 '); WriteCommand(0xc4); //записали Status('s c4 '); //считываем то, что записали WriteCommand(0xc5); Status('s c5 '); ByteToStr(ReadData,txt); lcd_out(2,1,txt); repeat lcd_out(1,16,'x'); //признак конца until false; end.
  20. Спасибо! Я отложил пока этот индикатор, сначала сделаю с тем, с которым все получается (128х64), отлажу управление LMX2326. Синтезаторы и смесители уже пришли, делаю общую плату - но эта тема для другой ветки, RF. А потом уже буду запускать LM240128TCC. И делать по "документу" все равно придется :-) И не пользоваться ни той библиотекой, ни функцией T6963C_init.
  21. Может быть, этот переход был просто бракованный? Или у него разрушили как-то (или потеряли при разборке) "правильную" шайбу, и сделали замену из первого попавшегося под руку материала?
  22. Как запустить T6963C

    Имею индикатор LM240128TCC производства Topway. Собираюсь использовать его для вот этого прибора: http://electronix.ru/forum/index.php?showtopic=62661 в качестве дисплея. Подключил я этот индикатор к плате BIGAVR2 (atmega128) и загрузил пример с диска платы (паскалевского компилятора). Включаю - на индикаторе вместо фигур из примера одна горизонтальная линия. Читаю внимательно даташит индикатора и вижу пометку: Logical Display Size in not equal Physical Display Size и указание вместо размера 240х128 инициализировать его как 320х64. Странно - ведь 320*64 меньше, чем 240*128! Часть точек не будет показываться. Но на 320 точек этот "микропаскаль" не может инициализировать индикатор - у него размер в процедуре инициализации T6963C_init имеет тип byte, т.е. до 255 точек. --- procedure T6963C_init(width, height, fntW : byte); width: width of the GLCD panel height: height of the GLCD panel fntW: font width --- Кто-нибудь сталкивался с таким индикатором? Как его запускали - как 240х128 или как 320х64? Что посоветуете мне сделать? Исходник для MicroPascal 1.25 прилагаю. Кварц 10 МГц. Спасибо!
  23. По формуле Томпсона частота резонанса контура F = 1/(2*pi*корень(L*C)) . L в генри, C в фарадах, F в герцах. Выразите отсюда L. Точность большая не нужна, 10% максимум. Точно настроите уже в фильтре, сердечником катушки, наблюдая картинку на анализаторе спектра.
×
×
  • Создать...