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

AlanSbor

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

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

  • Посещение

Репутация

0 Обычный

Информация о AlanSbor

Посетители профиля

Блок последних пользователей отключён и не показывается другим пользователям.

  1. Выходной чип какой используется? Антенна точно 50ом , выложите диаграмму на нужной частоте.
  2. Спасибо за качественный ответ. Тему можно закрыть.
  3. Числа до 4000 десятичных знаков в числе. Я описал проблему в первом сообщении. Добрый день Изучаю свойства сверхбольших чисел через графики их синусоид. Но есть проблема, ни одна программа не может без ограничений нарисовать синусоиды правильно: разница в периодах синусоид до 2000 знаков, одновременное отображение до 4 синусоид, бесконечное приближение, отображение всех знаков чисел без экспоненциальной формы. Посоветуйте пожалуйста, что можно использовать? Расшифрую более подробно: Нужна программа умеющая строить правильно графики такой размерности. Функцию я и сам могу построить при необходимости, как и делить и брать остаток :)), но хотелось бы построить графики именно теми средствами, которыми пользуются математики.
  4. Этим синусоида и хороша, мне не нужно строить всю синусоиду по точкам, достаточно максимумы и минимумы и пересечения с нулём оси Х. 2000/8бит= 256, да хватит. Если вы только не имели ввиду 10^2000.
  5. Приведение аргумента функции к диапазону? Возможно, но маловероятно. Матлабом пользуют полмира, и до сих пор это не обнаружили? Маловероятно. и если учесть что диапазон который максимален для range reduction, в литературе, это только 23 десятичных знака, то не исключено что для 100 и более десятичных знаков это ( правильное построение графиков синусоиды) не работает.
  6. На сверх больших числах или выдает переполнение памяти , хотя оперативки на домашнем компе почти 100 Гб, или график рисует как для квадратичных функций или как модуляцию. Синусоида предсказуема и может быть вычисленна как целиком так и только ее часть. Я исследую поведение и закономерности на примере известных чисел RSA, результаты проверены и надёжны, могут быть использованы для анализа без ограничений. Матлаб поддерживает. Для исследования остатков, а там больше 150 десятичных разрядов, использую vpa.
  7. Почему нельзя? Можно, просто копаться с увеличением потом, а так можно. Я попробовал в матлабе. На малых числах работает, а вот на сверхбольших ерунда получается. Могу скрипт матлабовский приложить.
  8. Таблицы Брадиса не работают с большой точностью.
  9. Добрый день Изучаю свойства сверхбольших чисел через графики их синусоид. Но есть проблема, ни одна программа не может без ограничений нарисовать синусоиды правильно: разница в периодах синусоид до 2000 знаков, одновременное отображение до 4 синусоид, бесконечное приближение, отображение всех знаков чисел без экспоненциальной формы. Посоветуйте пожалуйста, что можно использовать?
  10. Всем добрый вечер. Повторить то можно. Главное начать и закончить. 😉 Но это не тот случай, для начала реверсим OBJ файл, что бы понять таки что происходит при чтении порта. Исходники на Паскале я так и не увидел. Вот что получилось: extn00:0000 ; Format : Object Module Format (OMF/Microsoft) extn00:0000 ; Module name : aux_vvod.asm extn00:0000 extn00:0000 extn00:0000 .686p extn00:0000 .mmx extn00:0000 .model flat extn00:0000 extn00:0000 ; =========================================================================== extn00:0000 extn00:0000 ; Segment type: Externs extn00:0000 ; extn00 extn00:0000 extrn STR0:byte:2 ; DATA XREF: CODE:002E↓w extn00:0000 ; CODE:0094↓w ... extn00:0002 extrn STR1:far ; DATA XREF: CODE:loc_100F9↓o extn00:0003 extrn STR2:far ; DATA XREF: CODE:00AE↓o extn00:0003 ; CODE:loc_100DE↓o extn00:0004 extrn STR3:far ; DATA XREF: CODE:loc_100A0↓o extn00:0004 ; CODE:00D9↓o extn00:0004 CODE:0000 ; =========================================================================== CODE:0000 CODE:0000 ; Segment type: Regular CODE:0000 CODE segment para private '' use16 CODE:0000 assume cs:CODE CODE:0000 assume es:nothing, ss:nothing, ds:nothing, fs:nothing, gs:nothing CODE:0000 word_10010 dw 3F8h ; DATA XREF: CODE:AUX_VVOD↓r CODE:0000 ; CODE:003A↓o ... CODE:0002 word_10012 dw 180h ; DATA XREF: CODE:0012↓r CODE:0004 ; --------------------------------------------------------------------------- CODE:0004 CODE:0004 public AUX_VVOD CODE:0004 AUX_VVOD: CODE:0004 mov dx, cs:word_10010 CODE:0009 add dl, 3 CODE:000C mov al, 83h ; ‭10000011‬ CODE:000E out dx, al ; COM: line control register bits: CODE:000E ; 0-1: word length: 00=5, 01=6, 10=7, 11=8 CODE:000E ; 2: stop bits: 0=1,1=2 CODE:000E ; 3-4: parity: x0=None, 01=Odd, 11=Even CODE:000E ; 5: stuck parity CODE:000E ; 6: enable break control. 1=start sending 0s (spaces) CODE:000E ; 7: DLAB (Divisor Latch Access Bit) CODE:000F sub dl, 3 CODE:0012 mov ax, cs:word_10012 CODE:0016 out dx, al ; COM: transmitter holding register CODE:0016 ; or (when DLAB=1) divisor latch low byte. CODE:0017 inc dx CODE:0018 mov al, ah CODE:001A out dx, al ; COM: divisor latch high byte(when DLAB=1) CODE:001A ; or interrupt enable register bits: CODE:001A ; 0:1=an interrupt when rec'd data is available CODE:001A ; 1:1=interrupt when transmit buffer is empty CODE:001A ; 2:1=int on rec'r line status (error or break) CODE:001A ; 3:1=int on modem status (CTS,DSR,RI,RLSD) CODE:001B add dl, 2 CODE:001E mov al, 3 CODE:0020 out dx, al ; COM: line control register bits: CODE:0020 ; 0-1: word length: 00=5, 01=6, 10=7, 11=8 CODE:0020 ; 2: stop bits: 0=1,1=2 CODE:0020 ; 3-4: parity: x0=None, 01=Odd, 11=Even CODE:0020 ; 5: stuck parity CODE:0020 ; 6: enable break control. 1=start sending 0s (spaces) CODE:0020 ; 7: DLAB (Divisor Latch Access Bit) CODE:0021 inc dx CODE:0022 mov al, 8 CODE:0024 out dx, al ; COM: modem control reg bits: CODE:0024 ; 0: 1=activate -DTR (-data termnl ready), 0=deactivate CODE:0024 ; 1: 1=activate -RTS (-request to send), 0=deactivate CODE:0024 ; 2: 1=activate -OUT1 (spare, user-designated output) CODE:0024 ; 3: 1=activate -OUT2 CODE:0024 ; 4: 1=activate loopback for diagnostic testing CODE:0025 mov al, 3 CODE:0027 out dx, al ; COM: modem control reg bits: CODE:0027 ; 0: 1=activate -DTR (-data termnl ready), 0=deactivate CODE:0027 ; 1: 1=activate -RTS (-request to send), 0=deactivate CODE:0027 ; 2: 1=activate -OUT1 (spare, user-designated output) CODE:0027 ; 3: 1=activate -OUT2 CODE:0027 ; 4: 1=activate loopback for diagnostic testing CODE:0028 sub dl, 3 CODE:002B mov al, 0 CODE:002D out dx, al ; COM: divisor latch high byte(when DLAB=1) CODE:002D ; or interrupt enable register bits: CODE:002D ; 0:1=an interrupt when rec'd data is available CODE:002D ; 1:1=interrupt when transmit buffer is empty CODE:002D ; 2:1=int on rec'r line status (error or break) CODE:002D ; 3:1=int on modem status (CTS,DSR,RI,RLSD) CODE:002E mov ds:STR0+1, 30h ; '0' CODE:0033 push es CODE:0034 push cs CODE:0035 pop es CODE:0036 assume es:nothing CODE:0036 cld CODE:0037 mov cx, 1Eh CODE:003A lea di, word_10010+51h CODE:003E CODE:003E loc_1004E: ; CODE XREF: CODE:0046↓j CODE:003E call sub_10106 CODE:0041 cmp al, 8Dh CODE:0043 jz short loc_10099 CODE:0045 stosb CODE:0046 loop loc_1004E CODE:0048 call sub_10106 CODE:004B cmp al, 8Dh CODE:004D jz short loc_100DE CODE:004F pop es CODE:0050 assume es:nothing CODE:0050 retn CODE:0050 ; --------------------------------------------------------------------------- CODE:0051 db ? ; CODE:0052 db ? ; CODE:0053 byte_10063 db ? ; DATA XREF: CODE:0099↓r CODE:0053 ; CODE:00A6↓r ... CODE:0054 align 8 CODE:0058 db ? ; CODE:0059 db ? ; CODE:005A db ? ; CODE:005B db ? ; CODE:005C db ? ; CODE:005D db ? ; CODE:005E db ? ; CODE:005F db ? ; CODE:0060 db ? ; CODE:0061 db ? ; CODE:0062 db ? ; CODE:0063 db ? ; CODE:0064 db ? ; CODE:0065 db ? ; CODE:0066 db ? ; CODE:0067 db ? ; CODE:0068 db ? ; CODE:0069 db ? ; CODE:006A db ? ; CODE:006B db ? ; CODE:006C db ? ; CODE:006D db ? ; CODE:006E db ? ; CODE:006F db 0A0h CODE:0070 db 30h ; 0 CODE:0071 db 0B1h CODE:0072 db 0B2h CODE:0073 db 33h ; 3 CODE:0074 db 0B4h CODE:0075 db 35h ; 5 CODE:0076 db 36h ; 6 CODE:0077 db 0B7h CODE:0078 db 0B8h CODE:0079 a90 db '9.-0' CODE:007D a0123456789 db '0123456789.-' CODE:0089 ; --------------------------------------------------------------------------- CODE:0089 CODE:0089 loc_10099: ; CODE XREF: CODE:0043↑j CODE:0089 cmp cx, 14h CODE:008C jz short loc_100A0 CODE:008E pop es CODE:008F retn CODE:0090 ; --------------------------------------------------------------------------- CODE:0090 CODE:0090 loc_100A0: ; CODE XREF: CODE:008C↑j CODE:0090 lea bx, STR3 CODE:0094 mov ds:STR0+1, 34h ; '4' CODE:0099 cmp es:byte_10063, 56h ; 'V' CODE:009F jz short loc_100FD CODE:00A1 mov ds:STR0+1, 33h ; '3' CODE:00A6 cmp es:byte_10063, 42h ; 'B' CODE:00AC jz short loc_100FD CODE:00AE lea bx, STR2 CODE:00B2 mov ds:STR0+1, 32h ; '2' CODE:00B7 cmp es:byte_10063, 47h ; 'G' CODE:00BD jnz short loc_100FD CODE:00BF mov ds:STR0+1, 31h ; '1' CODE:00C4 cmp es:byte_10063, 0D2h CODE:00CA jz short loc_100F9 CODE:00CC pop es CODE:00CD retn CODE:00CE ; --------------------------------------------------------------------------- CODE:00CE CODE:00CE loc_100DE: ; CODE XREF: CODE:004D↑j CODE:00CE lea bx, STR2 CODE:00D2 lea si, word_10010+60h CODE:00D6 call sub_10134 CODE:00D9 lea bx, STR3 CODE:00DD lea si, word_10010+6Ah CODE:00E1 call sub_10134 CODE:00E4 mov ds:STR0+1, 35h ; '5' CODE:00E9 CODE:00E9 loc_100F9: ; CODE XREF: CODE:00CA↑j CODE:00E9 lea bx, STR1 CODE:00ED CODE:00ED loc_100FD: ; CODE XREF: CODE:009F↑j CODE:00ED ; CODE:00AC↑j ... CODE:00ED lea si, word_10010+56h CODE:00F1 call sub_10134 CODE:00F4 pop es CODE:00F5 retn CODE:00F6 CODE:00F6 ; =============== S U B R O U T I N E ======================================= CODE:00F6 CODE:00F6 CODE:00F6 sub_10106 proc near ; CODE XREF: CODE:loc_1004E↑p CODE:00F6 ; CODE:0048↑p ... CODE:00F6 mov dx, cs:word_10010 CODE:00FB add dl, 5 CODE:00FE CODE:00FE loc_1010E: ; CODE XREF: sub_10106+1B↓j CODE:00FE mov ah, 1 CODE:0100 int 16h ; KEYBOARD - CHECK BUFFER, DO NOT CLEAR CODE:0100 ; Return: ZF clear if character in buffer CODE:0100 ; AH = scan code, AL = character CODE:0100 ; ZF set if no character in buffer CODE:0102 jz short loc_1011E CODE:0104 xor ah, ah CODE:0106 int 16h ; KEYBOARD - READ CHAR FROM BUFFER, WAIT IF EMPTY CODE:0106 ; Return: AH = scan code, AL = character CODE:0108 cmp ah, 1 CODE:010B jnz short loc_1011E CODE:010D retn CODE:010E ; --------------------------------------------------------------------------- CODE:010E CODE:010E loc_1011E: ; CODE XREF: sub_10106+C↑j CODE:010E ; sub_10106+15↑j CODE:010E in al, dx CODE:010F test al, 1 CODE:0111 jz short loc_1010E CODE:0113 mov ah, al CODE:0115 sub dl, 5 CODE:0118 in al, dx CODE:0119 and ah, 9Eh CODE:011C jnz short sub_10106 CODE:011E cmp ax, 0Dh CODE:0121 jle short sub_10106 CODE:0123 retn CODE:0123 sub_10106 endp CODE:0123 CODE:0124 CODE:0124 ; =============== S U B R O U T I N E ======================================= CODE:0124 CODE:0124 CODE:0124 sub_10134 proc near ; CODE XREF: CODE:00D6↑p CODE:0124 ; CODE:00E1↑p ... CODE:0124 mov ah, 5 CODE:0126 push bx CODE:0127 inc bx CODE:0128 CODE:0128 loc_10138: ; CODE XREF: sub_10134+1C↓j CODE:0128 mov al, es:[si] CODE:012B lea di, word_10010+6Fh CODE:012F mov cx, 0Dh CODE:0132 repne scasb CODE:0134 jnz short loc_10157 CODE:0136 mov al, es:[di+0Ch] CODE:013A mov [bx], al CODE:013C inc si CODE:013D inc bx CODE:013E dec ah CODE:0140 jnz short loc_10138 CODE:0142 pop bx CODE:0143 mov byte ptr [bx], 5 CODE:0146 retn CODE:0147 ; --------------------------------------------------------------------------- CODE:0147 CODE:0147 loc_10157: ; CODE XREF: sub_10134+10↑j CODE:0147 pop bx CODE:0148 mov ds:STR0+1, 30h ; '0' CODE:014D pop ax CODE:014E CODE:014E locret_1015E: CODE:014E retn CODE:014E sub_10134 endp ; sp-analysis failed CODE:014E CODE:014E CODE ends CODE:014E CODE:014E CODE:014E end По исходнику ничего интересного, все относительно стандартно, можно кучу примеров найти на гугле. единственное что тут добавлено работа с форматами при формировании вывода строк в порт и опрос клавы, но тоже ничего экстра ординарного. Но самый лучший вариант, это для начала посмотреть обмен вот таким приборчиком : Посмотреть в разных режимах работы программы. И от этого плясать. А нервничать, зачем ? оно никому не нужно кроме автора топика. На предложение в личке прислать исходники на паскале, что бы не мудрить - тишина, игнорирование вопросов по существу - это вообще как здравствуйте. Поэтому топик, скорее всего мертв, чем жив. А жаль.
  11. Да, вы правы, на квад нет таких, я недосмотрел. Более реалистично выглядит emmc - таже sd карта но припаянная как чип, либо nand flash.
  12. Можно конечно и беспроводное решение, но, нет в ТЗ сколько специалисты могут работать со снарядом по времени. Если быстро - 10 минут, то не выйдет, по беспроводу без помех и идеальной согласованности антенн можно выйти на 10 Гбит, но это в лабораторных условиях читай идеальных, что в полевых это недостижимо. Оптимально конечно на эзернет благо stm32 в седьмой серии это поддерживает, но я бы тоже не рассчитывал на фантастические скорости, т.к. согласование линий на минимум 6 слойке это ещё то удовольствие даже на альтиуме, а у вас готовый комплект DIY.
×
×
  • Создать...