Jump to content
Valimor

Управление Dds Синтезатором

Recommended Posts

Есть задача с помощью микроконтроллера семейства PIC запрограммировать DDS синтезатор AD9914 на синтез определенной частоты(1ГГц), опыта программирования синтезаторов у меня еще не было, так что если кто-нибудь общий принцип действий опишет или на книжку покажет был бы благодарен

Share this post


Link to post
Share on other sites

Он на инглише, а я хоть и читаю вполне свободно, но все-таки в голове лучше укладывается, когда на русском изучаю

Edited by Valimor

Share this post


Link to post
Share on other sites

Литиевые батарейки Fanso для систем телеметрии и дистанционного контроля

Системы телеметрии находят все более широкое применение во многих отраслях на промышленных и коммунальных объектах. Требования, предъявляемые к условиям эксплуатации приборов телеметрии и, как следствие, источников питания для них, могут быть довольно жесткими. Fanso предоставляет широкую линейку продукции, рассчитанной на различные условия эксплуатации, что позволяет подобрать батарейку для каждого конкретного применения, в том числе и для устройств телеметрии.

Подробнее

                     

Приглашаем на вебинар Решения для построения ультразвуковых счетчиков жидкостей и газов на базе MSP430

Компэл совместно с Texas Instruments 23 октября 2019 приглашают на вебинар, посвященный системам-на-кристалле для построения ультразвуковых расходомеров жидкостей и газов на базе ядра MSP430. Вебинар проводит Йоханн Ципперер – эксперт по ультразвуковым технологиям, непосредственно участвовавший в создании данного решения. На вебинаре компания Texas Instruments представит однокристальное решение, позволяющее создавать точные недорогие счетчики жидкостей и газов.

Подробнее...

Возвращаясь к теме: кто программировал эту ad-шку, написал программу на ассемблере на PIC18F458 для считывания значений регистров этого синтезатора, и вроде все правильно однако получить правильные данные никак не получается. Вот куму интересно программа:

list p=18f458
#include <p18f458.inc>
; CONFIG1H
 CONFIG  OSC = HS			  ; Oscillator Selection bits (HS oscillator)
 CONFIG  OSCS = OFF		    ; Oscillator System Clock Switch Enable bit (Oscillator system clock switch option is disabled (main oscillator is source))
; CONFIG2L
 CONFIG  PWRT = OFF		   ; Power-up Timer Enable bit (PWRT disabled)
 CONFIG  BOR = ON			 ; Brown-out Reset Enable bit (Brown-out Reset disabled)
 CONFIG  BORV = 25			 ; Brown-out Reset Voltage bits (VBOR set to 2.5V)
; CONFIG2H
 CONFIG  WDT = OFF			 ; Watchdog Timer Enable bit (WDT disabled (control is placed on the SWDTEN bit))
 CONFIG  WDTPS = 128		   ; Watchdog Timer Postscale Select bits (1:128)
; CONFIG4L
 CONFIG  STVR = ON			 ; Stack Full/Underflow Reset Enable bit (Stack Full/Underflow will cause Reset)
 CONFIG  LVP = off			  ; Low-Voltage ICSP Enable bit (Low-Voltage ICSP enabled)
; CONFIG5L
 CONFIG  CP0 = OFF			 ; Code Protection bit (Block 0 (000200-001FFFh) not code protected)
 CONFIG  CP1 = OFF			 ; Code Protection bit (Block 1 (002000-003FFFh) not code protected)
 CONFIG  CP2 = OFF			 ; Code Protection bit (Block 2 (004000-005FFFh) not code protected)
 CONFIG  CP3 = OFF			 ; Code Protection bit (Block 3 (006000-007FFFh) not code protected)
; CONFIG5H
 CONFIG  CPB = OFF			 ; Boot Block Code Protection bit (Boot Block (000000-0001FFh) not code protected)
 CONFIG  CPD = OFF			 ; Data EEPROM Code Protection bit (Data EEPROM not code protected)
; CONFIG6L
 CONFIG  WRT0 = OFF		    ; Write Protection bit (Block 0 (000200-001FFFh) not write protected)
 CONFIG  WRT1 = OFF		    ; Write Protection bit (Block 1 (002000-003FFFh) not write protected)
 CONFIG  WRT2 = OFF		    ; Write Protection bit (Block 2 (004000-005FFFh) not write protected)
 CONFIG  WRT3 = OFF		    ; Write Protection bit (Block 3 (006000-007FFFh) not write protected)
; CONFIG6H
 CONFIG  WRTC = OFF		    ; Configuration Register Write Protection bit (Configuration registers (300000-3000FFh) not write protected)
 CONFIG  WRTB = OFF		    ; Boot Block Write Protection bit (Boot Block (000000-0001FFh) not write protected)
 CONFIG  WRTD = OFF		    ; Data EEPROM Write Protection bit (Data EEPROM not write protected)
; CONFIG7L
 CONFIG  EBTR0 = OFF		   ; Table Read Protection bit (Block 0 (000200-001FFFh) not protected from Table Reads executed in other blocks)
 CONFIG  EBTR1 = OFF		   ; Table Read Protection bit (Block 1 (002000-003FFFh) not protected from Table Reads executed in other blocks)
 CONFIG  EBTR2 = OFF		   ; Table Read Protection bit (Block 2 (004000-005FFFh) not protected from Table Reads executed in other blocks)
 CONFIG  EBTR3 = OFF		   ; Table Read Protection bit (Block 3 (006000-007FFFh) not protected from Table Reads executed in other blocks)
; CONFIG7H
 CONFIG  EBTRB = OFF		   ; Boot Block Table Read Protection bit (Boot Block (000000-0001FFh) not protected from Table Reads executed in other blocks)
CBLOCK 20h
COUNTER :3
ADF_INF :3
TX_ADR :1
TX_INF :3
RX_ADR :1
RX_INF :4
TEST_REG :1
TEST_ADR :1
TEST_HRAN :7
endc
CBLOCK 90h
Data0 :1 ;здесь будем хранить адрес операнда Data2
Data1 :4
Data2 :4
Data3 :4
Data4 :4
endc
org 0
goto Main
Main ; - initialize AD9914
clrf LATA ; очищаем порт А
movlw b'01111100'
movwf TRISA ; ставим А0 А1 на выход, эти выходы подключаются к входа AD9914
  ; А0 = IO_UPDATE
  ; A1 = MASTER_RESET
clrf LATC  ; очищаем порт С
movlw b'11010000'  ;С0 = ??
 ;С1 = DDS_SYNCIO
 ;С2 = DDS_CS
 ;С3 = DDS_SCK
 ;С5 = DDS_SDIO
movwf TRISC
bsf PORTC,2; DDS_CS=1
bsf TRISE,2; stavim na rabotu na vhod
; - сброс в значению по умолчанию AD9914
bcf PORTA,1   ;MRST=0
bsf PORTA,1   ;MRST=1
bsf PORTA,1   ;MRST=1
bsf PORTA,1   ;MRST=1
bsf PORTA,1   ;MRST=1
bsf PORTA,1   ;MRST=1
bsf PORTA,1   ;MRST=1
bsf PORTA,1   ;MRST=1
bsf PORTA,1   ;MRST=1
bsf PORTA,1   ;MRST=1
bcf PORTA,1   ;MRST=0
bsf PORTC,2   ;DDS_CS=1
bcf PORTA,0   ;IO_UPD=0
bcf PORTC,1   ;DDS_SYNCIO=0
bcf PORTC,3   ;DDS_SCLK=0
; - сброс в значению по умолчанию AD9914
; -------- задержка на 100мс: 255*255*10*160нс = 100 мс
movlw .255
movwf COUNTER
movwf COUNTER+1
movlw .255
movwf COUNTER+2
Delay1 decfsz COUNTER,1
goto Delay1
movlw .255
movwf COUNTER
decfsz COUNTER+1,1
goto Delay1
movlw .10
movwf COUNTER
movwf COUNTER+1
decfsz COUNTER+2,1
goto Delay1
; -------- задержка на 100мс
movlw 0x02 ;хочу прочитать что в регистре CFR3
  ; по умолчанию после сброса значение в регистре должно быть 0x0000191С
movwf RX_ADR ;
movlw Data2 ; берем адрес регистра
  ;сюда будем 32 - бита которые получим от синтезатора
movwf Data0 ;и пишем его адрес сюда
  ;поскольку у нас 32 бита данных, что есть 4 байта
  ; используем косвенную адресация через регистр FSR0L
  ; на а начала массива мы поместили сюда, чтобы ссылаться с него
bcf PORTC,2; DDS_CS=0 выбираем синтезатор нулем
bsf PORTC,5 ;DDS_SDIO = 1  посылаем бит i7 равный 1,
  ; что значит мы будем проводить операцию чтения
bsf PORTC,3 ;DDS_SCLK = 1; бит записывается в буфер по подъему синхроимпульса SCLK
bcf PORTC,3 ;DDS_SCLK = 0 //ustanavlivaem bit I7
bsf PORTC,3 ;DDS_SCLK = 1
bcf PORTC,3 ;DDS_SCLK = 0 //ustanavlivaem bit I6
bsf PORTC,3 ;DDS_SCLK = 1
movlw .6  ; 2 бита послали осталось 6 бит адреса регистра
movwf COUNTER,1 ; pзаписали шестреку в счетчик
movlw b'00100000' ; для того чтобы побидно считать регистр RX_ADR где у меня записан
 ; адрес регистра будем сравнивать его с регистром TEST_REG последовательно
 ; сдвигая его значение вправо т.е. сначала 00100000 затем 00010000,
 ;потом 00001000 и т.д. сравнивая с помощью операции И
Read4
movwf TEST_REG,1 ;перетаскиваем зачение в регистр
andwf RX_ADR,0
btfss STATUS,2  ; если результат предыдущей операции 0 то делаем переход Null_READ_ADR
goto One_Read_ADR ; иначе One_Read_ADR
 ; вот так и проверяем все данные побитого
goto Null_Read_ADR
One_Read_ADR bsf PORTC,5; DDS_SDIO = 1 ;
goto Read_End_ADR
Null_Read_ADR bcf PORTC,5; DDS_SDIO = 0
Read_End_ADR bcf PORTC,3 ;DDS_SCLK = 0
bsf PORTC,3 ;DDS_SCLK = 0
bcf PORTC,3 ;DDS_SCLK = 1
movf TEST_REG,0 ;берем зачение из регистра TEST_REG
RRNCF WREG,0 ; смещаем вправо на 1 разрад
decf COUNTER ; декрементируем счетчик
btfss STATUS,2 ; счетчик равен 0 то пропускаем следующую строку и идем дальше
goto Read4
clrf PORTC ; очищаем порт С
bsf TRISC,5 ; устанавливаем С5 = DDS_SDIO на вход
movlw .32
movwf COUNTER,1
movlw 0x0
movwf TEST_ADR,1 ;//с помощью косвенной адресации и этого регистра будем переключать байт
movlw 0x80
movwf TEST_REG,1 ; сравниваем с ним
bsf PORTC,3;DDS_SCLK = 1 ; получаембит по падению синхроимпульса
Read5
bcf PORTC,3;DDS_SCLK = 0 по этому импульсу получили бит
  ;который пришул по DDS_SDIO то есть на порт С5
bsf PORTC,3;DDS_SCLK = 1
btfsc PORTC,5 ; проверем что получили единицу или ноль
goto One_Read
goto END_READ ; если ноль то идем сюда
One_Read
movf Data0,0; берем адрес операнда
addwf TEST_ADR,0 ; суммируем с TEST_ADR
movwf FSR0L ; kidaem v FSR0L
movf TEST_REG,0
iorwf INDF0,0 ; логическое ИЛИ
movwf INDF0,1 ; сохраем в адресу хранящемуся INDF0
END_READ RRCF TEST_REG,1; сдвигаем на разряд вправо
bcf TEST_REG,7; вообще не знаю почему, но при симуляции программы в MP_LAB_IDE
   ; первый сдвиг вправо дает не 0x40, а 0xC0, но потом работает нормально
btfsc STATUS,2; если TEST_REG равен нулю, т.е. мы просчитали 8 бит, то
bsf TEST_REG,7; ставим 8 бит в TEST_REG в единицу т.е. TEST_REG = 0x80
btfsc STATUS,2; флаг Z до сих пор стоит, предыдущаю инструкцию на него не влияет
incf TEST_ADR,1; переключаемся на следующий байт() инкрементирем смещение
decfsz COUNTER
goto Read5
bsf PORTC,2; DDS_CS = 1
clrf LATC
bcf TRISC,5; снова ставим на работу на выход
; - просто бесконечный цикл
ter bsf PORTC,2; DDS_CS = 1
nop
nop
goto ter
; - просто бесконечный цикл
return 0
;***************************Main

end

Share this post


Link to post
Share on other sites

блин, никак не удается решить проблему с этим синтезатором. Не удалось правильно его запрограммировать, пока пробую написать программу для чтения внутренних регистров, чтобы хотя бы знать что не так записалось, но тоже как то не ахти. Вообщем помощь бы не помешала.

Может кто подскажет правильный алгоритм считывания данных в синхронном режиме. Пока использую этот:

1. Сигналом MRST сбросил все значения регистров в дефолтные

2. Выбрал сигналом CS = 0 микросхему ad9914

3. Затем начал передачу байта инструкции:

I7 = 1 на чтение

I6 = x не важно

I5 - I0 - адрес регистра

Все по возрастающему фронту SCLK( 8 бит = 8 фронтов импульса SCLK)

4. Затем считываю данные по алгоритму:

SCLK = 1

SCLK = 0 ; здесь по идее должен отправиться 1 бит от ad-ешки, по даташиту отправляются по падающему фронту импульса

Считываю с выхода SDIO ;здесь я этот бит должен принять

Сохраняю этот бит в файловых регистрах и 4 пункт по кругу пока не получу все 32 бита.

Вроде все по даташиту, но проблема в том, что с выхода SDIO на микроконтроллер ничего не приходит.

Ну или алгоритм записи значений в во внутренние регистры если кто расспишет, тоже было бы неплохо

Edited by Valimor

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

  • Similar Content

    • By Максим123456789
      делаю диплом, в схеме у меня микроконтроллер PIC16F688 и мне нужно его заменить на ATmega. Не могу найти похожий
    • By Anton Bondarenko
      Всем привет
      Прошу не ругать, впервые подобный вопрос задаю.
      Хочу сделать прибор, который будет посылать сигнал, когда возле прибора будет проходить металлический предмет. 
      — угол отслеживания до 30° а лучше прямая линия, траектория
      — время реакции очень высокое до 100 мс
      — ширина проема в котором нужно сканировать от 10 до 20метров,
      — передача сигнала через вифи
      Может есть готовые решения, или отдельные компоненты.
      Подскажите пжл в каком направлении искать.
      Смотрел датчики движения, но главная проблема — время реакции.
      Спасибо
       
    • By Sofia Vin
      Предлагаем проектную работу в Москве:
      Микроконтроллер STM32F103.
        
      Есть встроенный код с использованием функций библиотеки FreeRTOS, код имеет описанный протокол для связи с внешним миром.
        
      Необходимо проводить доработку кода под задачи программиста верхнего уровня и его тестирование в составе оборудования. 
      Работа в лаборатории (м.Университет) и удаленно. 
      Оплата по договоренности.
      Если Вы обладаете опытом схемотехнического проектирования и программирования микроконтроллеров, и Вас заинтересовала данная возможность, ждем Ваши отклики по контактным данным:
      8 (925) 023-60-02   Алексей
      E-mail: nassa@marathon.ru
       
    • By Антон Плюшкин
      В общем есть небольшая тривиальная задача - сделать свитюльку. Контроллер управляет светодиодиками, цвета меняются, людишки довольны.
      Схема проста: Attiny44a -> 2n3904 x3 -> RGB-светодиод.
      Собрал, протестил, всё норм, но!
      Как только в коде я использую функцию задержки - _delay_ms (util/delay.h) - контроллер повисает!
      #define F_CPU 16000000UL #include <avr/io.h> #include <util/delay.h> int main(void) { // Input/Output Ports initialization // Port A initialization // Function: Bit7=Out Bit6=Out Bit5=In Bit4=In Bit3=In Bit2=In Bit1=In Bit0=In DDRA=(1<<DDA7) | (1<<DDA6) | (0<<DDA5) | (0<<DDA4) | (0<<DDA3) | (0<<DDA2) | (0<<DDA1) | (0<<DDA0); // State: Bit7=0 Bit6=0 Bit5=T Bit4=T Bit3=T Bit2=T Bit1=T Bit0=T PORTA=(0<<PORTA7) | (0<<PORTA6) | (0<<PORTA5) | (0<<PORTA4) | (0<<PORTA3) | (0<<PORTA2) | (0<<PORTA1) | (0<<PORTA0); // Port B initialization // Function: Bit3=In Bit2=Out Bit1=In Bit0=In DDRB=(0<<DDB3) | (1<<DDB2) | (0<<DDB1) | (0<<DDB0); // State: Bit3=T Bit2=0 Bit1=T Bit0=T PORTB=(0<<PORTB3) | (0<<PORTB2) | (0<<PORTB1) | (0<<PORTB0); // Timer/Counter 0 initialization // Clock source: System Clock // Clock value: 16000,000 kHz // Mode: Phase correct PWM top=0xFF // OC0A output: Non-Inverted PWM // OC0B output: Non-Inverted PWM // Timer Period: 0,031875 ms // Output Pulse(s): // OC0A Period: 0,031875 ms Width: 0 us // OC0B Period: 0,031875 ms Width: 0 us TCCR0A=(1<<COM0A1) | (0<<COM0A0) | (1<<COM0B1) | (0<<COM0B0) | (0<<WGM01) | (1<<WGM00); TCCR0B=(0<<WGM02) | (0<<CS02) | (0<<CS01) | (1<<CS00); TCNT0=0x00; OCR0A=0x00; OCR0B=0x00; // Timer/Counter 1 initialization // Clock source: System Clock // Clock value: 16000,000 kHz // Mode: Ph. correct PWM top=0x00FF // OC1A output: Non-Inverted PWM // OC1B output: Disconnected // Noise Canceler: Off // Input Capture on Falling Edge // Timer Period: 0,031875 ms // Output Pulse(s): // OC1A Period: 0,031875 ms Width: 0 us // Timer1 Overflow Interrupt: Off // Input Capture Interrupt: Off // Compare A Match Interrupt: Off // Compare B Match Interrupt: Off TCCR1A=(1<<COM1A1) | (0<<COM1A0) | (0<<COM1B1) | (0<<COM1B0) | (0<<WGM11) | (1<<WGM10); TCCR1B=(0<<ICNC1) | (0<<ICES1) | (0<<WGM13) | (0<<WGM12) | (0<<CS12) | (0<<CS11) | (1<<CS10); TCNT1H=0x00; TCNT1L=0x00; ICR1H=0x00; ICR1L=0x00; OCR1AH=0x00; OCR1AL=0x00; OCR1BH=0x00; OCR1BL=0x00; // Timer/Counter 0 Interrupt(s) initialization TIMSK0=(0<<OCIE0B) | (0<<OCIE0A) | (0<<TOIE0); // Timer/Counter 1 Interrupt(s) initialization TIMSK1=(0<<ICIE1) | (0<<OCIE1B) | (0<<OCIE1A) | (0<<TOIE1); // External Interrupt(s) initialization // INT0: Off // Interrupt on any change on pins PCINT0-7: Off // Interrupt on any change on pins PCINT8-11: Off MCUCR=(0<<ISC01) | (0<<ISC00); GIMSK=(0<<INT0) | (0<<PCIE1) | (0<<PCIE0); // USI initialization // Mode: Disabled // Clock source: Register & Counter=no clk. // USI Counter Overflow Interrupt: Off USICR=(0<<USISIE) | (0<<USIOIE) | (0<<USIWM1) | (0<<USIWM0) | (0<<USICS1) | (0<<USICS0) | (0<<USICLK) | (0<<USITC); // Analog Comparator initialization // Analog Comparator: Off // The Analog Comparator's positive input is // connected to the AIN0 pin // The Analog Comparator's negative input is // connected to the AIN1 pin ACSR=(1<<ACD) | (0<<ACBG) | (0<<ACO) | (0<<ACI) | (0<<ACIE) | (0<<ACIC) | (0<<ACIS1) | (0<<ACIS0); ADCSRB=(0<<ACME); // Digital input buffer on AIN0: On // Digital input buffer on AIN1: On DIDR0=(0<<ADC1D) | (0<<ADC2D); // ADC initialization // ADC disabled ADCSRA=(0<<ADEN) | (0<<ADSC) | (0<<ADATE) | (0<<ADIF) | (0<<ADIE) | (0<<ADPS2) | (0<<ADPS1) | (0<<ADPS0); unsigned char VL_OCR0A = 0, VL_OCR0B = 0, VL_OCR1A = 0; OCR0A = 0; OCR0B = 0; OCR1A = 0; while(1) { _delay_ms( 100 ); VL_OCR0A = VL_OCR0A + 1; VL_OCR0B = VL_OCR0B + 1; VL_OCR1A = VL_OCR1A + 1; if( VL_OCR0A >= 250 ){ VL_OCR0A = 0; } if( VL_OCR0B >= 250 ){ VL_OCR0B = 0; } if( VL_OCR1A >= 250 ){ VL_OCR1A = 0; } OCR0A = VL_OCR0A; OCR0B = VL_OCR0B; OCR1A = VL_OCR1A; } } Т.е. если указать задержку в начале цикла, то светодиод не светится вообще.
      Если задержку убрать - светодиод немного подсвечивает всеми цветами.
      while(1) { _delay_ms( 100 ); // <--- ЗАДЕРЖКА --- VL_OCR0A = VL_OCR0A + 1; VL_OCR0B = VL_OCR0B + 1; VL_OCR1A = VL_OCR1A + 1; if( VL_OCR0A >= 250 ){ VL_OCR0A = 0; } if( VL_OCR0B >= 250 ){ VL_OCR0B = 0; } if( VL_OCR1A >= 250 ){ VL_OCR1A = 0; } OCR0A = VL_OCR0A; OCR0B = VL_OCR0B; OCR1A = VL_OCR1A; } Где я накосячил?
      З.Ы.: Замечаний по поводу оптимизации кода, излишних переменных и п.р. прошу не писать - изощряюсь как могу ибо не пойму почему не работает
  • Сообщения

    • Транзисторы не паяные. Для коллекционеров. По 100р.
    • При уменьшении КУ увеличивается глубина ООС. Будет наверное неприкольно, если усилитель свистнет в АС из-за потери устойчивости. А с перегрузом борются с помощью лимитеров - например в буфере на ОУ который не боится снижения КУ до 1-цы.
    • https://pikabu.ru/story/uchenyie_obnaruzhili_koltso_vokrug_karlikovoy_planetyi_khaumea_5409514 Карликовая планета, это больше похоже на большой астероид, а они могут быть любой формы
    • сил.лит С103 - 560 х 450в - показания 490 X 0,07 . в норме . ставил разные - с нормальным еср - без изменений . дроссель апфс - L101 -  замер 0,5R L-0,49mH . не знаю норма или нет . сравнить не с чем . цвет бублика тёмный, ближе к чёрному . провод не подпаленный . плёнка - С102 - 2мкф 250в - 1952нФ  еср-0,00 Ом . D101 - ER506 - п.н.0,454. D102 - стоит на радиаторе - BYC10 600 - п.н.0,438. термистор - TR101 - NTC SCK-2R58 - замер 2,5ом . собрал блок . в апфс временно поставил один 11n60c3 .  предохранителем поставил  лампы  - общ.450вт . при сети 222в - на сил.лите +305в . при старте - на сил.лите +320в и медленно растёт до 360в . доходит до 360в и вольтаж  спадает вниз . при этом , в какой-то такт лампы медленно моргают . по шиму: при старте опорное(14нога) +7,5в есть , питание (13нога) +15в есть . копаю дальше .
    • не 2313 не пойдет, памяти мало, скорее уже mega8 или 16я, хотя данных об проценте использования ТС не озвучил
    • Возможно ли с помощью Ку задать ограничение выходной мощности УМ? Если мы знаем что клип УМ на уровне 29-30В.  Моя АС 8Ом, нужно ограничить на уровне 45Вт при входном сигнале 2В. Часть схемы ниже, естественно ОС идет на выход всей схемы. Сейчас Ку10, если я правильно понимаю то при таком Ку чтобы клип настал на 29-30В входной сигнал нужен 2,9-3В, соответственно нужно изменить R3 до 68кОм? Таким образом мы увеличим Ку до 13 и клип будет на уровне 27В что соответствует 45Вт выходной мощности на 8Ом? Прав ли я в своих расчетах?
    • А может наоборот? К примеру, my504 сейчас сидит в СИЗО будучи подозреваемым в групповом мошенничестве, возглавляемым тем самым генерал-полковником, который выдавал китайские поделки за российские разработки.  Высокопоставленному военному предъявлено обвинение по ч. 4 ст. 159 (мошенничество в особо крупном размере) УК России из-за причастности, по мнению следствия, к хищению не менее 2,2 млрд руб. Как сообщает «Коммерсант», хищения были выявлены в ходе расследования уголовного дела в отношении бывших топ-менеджеров АО «Воентелеком», которые в 2013—2017 годах занимались в рамках госконтракта оснащением российским войск цифровым телекоммуникационным оборудованием и его модернизацией. В рамках этого дела главное военное следственное управление Следственного комитета России (ГВСУ СКР) выявило хищения в размере 460 млн руб. Позднее сумма ущерба выросла до как минимум 2,2 млрд руб. из-за того, что экспертиза обнаружила нарушения и других контрактов. В частности выяснилось, что под видом российских разработок в армию поставляли сделанное в Китае оборудование, на котором просто меняли этикетки и выдавали его за выпущенные в России изделия. https://www.popmech.ru/technologies/news-515172-novye-razrabotki-dlya-armii-rossii-okazalis-sdelannymi-v-kitae/
  • Покупай!

×
×
  • Create New...