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

    

paskal

Свой
  • Публикаций

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

  • Посещение

Репутация

0 Обычный

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

  • Звание
    Местный
  • День рождения 31.12.1969

Контакты

  • Сайт
    http://
  • ICQ
    0

Информация

  • Город
    Тула
  1. Цитата(Alex11 @ Oct 13 2017, 00:30) У меня нашелся в помойке 6.10А. Там 40МБ, если запаковать. В письмо не полезет. Есть куда кинуть? Очень хорошо! Попробуйте, например, через бесплатный хостинг https://ru.files.fm/ Заранее спасибо
  2. Цитата(megajohn @ Oct 12 2017, 20:45) извините, но вы не рассказали чем вам 7ой и 8ой не угодили. Они же должны же открыть шестую версию. Нет, не должны. С 7-й версии сильно поменялся синтаксис. Те исходники которые у нас есть, эта версия не компилирует.
  3. Цитата(jcxz @ Oct 12 2017, 20:04) Посмотрите на местном FTP. Я именно оттуда взял пятый. Шестого там нет.
  4. На работе возникла потребность поднять старый проект, который писали другие люди, давно уволившиеся. Проект 2002 года, в наличии только исходники и прошивка. Написан как удалось выяснить в IAR EW8051, версия предположительно до 7-й. Удалось найти EW8051-552B, но по дате это более старый, нужен шестой. Если у кого завалялся, поделитесь. Сойдет с любыми ограничениями, по коду по времени. Или где искать намекните.
  5. Занимаюсь моделированием устройства которое обменивается с ПК по определенному протоколу. Устройство на МК атмега128, но это в данном случае не важно. Еще есть прикладная программа для ПК которая обменивается с "железным устройством". Чтоб задействовать эту программу в симуляции, создаю виртуальную пару COM портов, у которых приемники и передатчики попарно соединены. В Протеусе вывожу uart на COMPIM, назначаю COMPIM на один виртуальный COM, а другой виртуальный COM открываю в программе. Теперь мой МК и программа виртуально соединены. Но работает это только на один раз запуска симуляции. Если остановить симуляцию и запустить снова, связи не будет. Если выйти из Протеуса и зайти снова - опять заработает на один раз. Что можно сделать?
  6. Цитата(@Ark @ Jun 6 2017, 21:36) И зачем Вам 3 Мбит/c, если достаточно 921600, на которой точно все будет работать? Ну попробую на 921600, если смогу хитрый кварц найти.
  7. Цитата(@Ark @ Jun 6 2017, 02:32) Вы, для начала, правильно сформулируйте задачу. Что такое "1 байт с интервалами от 10 до 20 мкс"? На стандартной скорости 921600 бит/сек передача одного байта в формате 8N1 занимает не более 11 мкс. Вам достаточно или нет? Вообще то я все достаточно описал. Скорость я устанавливаю 3 Мбит/с (почему вы решили что 921600?). Интервал между байтами с которым я экспериментирую, 25 мкс. Все с большим запасом умещается. Тем более что я все это контролирую осциллографом. Ладно, похоже Genadi Zawidowski дело подсказал, буду в этом направлении двигаться.
  8. Цитата(Огурцов @ Jun 6 2017, 00:31) а вы под чем сидите ? под xp было 920k максимально, под семёркой вообще 128k Семерка. А откуда для виртуального порта ограничение 128k? Ничего такого не слышал.
  9. Клон это или нет, но он работает если чуть снизить скорость. И потом, клоны делали на FT232R, а у меня FT232B на который клонов не замечено.
  10. Нужно от МК передавать большие объемы данных в ПК. Скорость - 1 байт с интервалами от 10 до 20 мкс. Направление только от устройства в ПК. Для связи настраиваю UART микроконтроллера на передачу со скоростью 3 Мбит. Далее переходник UART-USB (FT232) для ввода в компьютер, а там софт работает через виртуальный COM порт. Уже при интервале 25 мкс теряется примерно 0.1% данных. При интервале 30 мкс все стабильно. То есть компьютер не успевает обрабатывать всего 40 кБ/с! Пробовал увеличивать размер приемного буфера - не помогло. Какие будут идеи?
  11. Пытался сделать сабж, работая с командной строки: Кодvoid f() { } void (*pf)() = &f; int main() {   pf(); } Компилирую. Ввожу с командной строки: arm-none-eabi-gcc -mcpu=cortex-m3 -mthumb -c main.cpp - все ОК Затем линкую: arm-none-eabi-ld -Ttext=0x8000000 -Tdata=0x20000000 -o main.elf startup.o main.o - сообщает Цитатаundefined reference to '__aeabi_unwind_cpp_pr0' Другие программы у меня таим способом нормально компилируются. Проблема только когда вызываю функцию через указатель. Что это значит? Как этого избежать?
  12. Цитата(zltigo @ Jun 2 2016, 00:34) Так установливайте в SetCommState RTS_CONTROL_DISABLE. К сожалению такое решение порождает другую проблему. Дело в том что я пишу в Delphi, а там в структуре DCB нет поля fRtsControl, сама структура DCB какая то урезанная - вот описание в модуле windows.pas: Кодtype   _DCB = packed record     DCBlength: DWORD;     BaudRate: DWORD;     Flags: Longint;     wReserved: Word;     XonLim: Word;     XoffLim: Word;     ByteSize: Byte;     Parity: Byte;     StopBits: Byte;     XonChar: CHAR;     XoffChar: CHAR;     ErrorChar: CHAR;     EofChar: CHAR;     EvtChar: CHAR;     wReserved1: Word;   end;   {$EXTERNALSYM _DCB}   TDCB = _DCB;   DCB = _DCB;   {$EXTERNALSYM DCB} А нет ли другого способа менять скорость? Такого чтоб не затрагивал другие настройки. Может через DeviceIOControl например?
  13. Пишу бутлодер для процессора. Связь по СОМ-порту, вернее через переходник USB-COM, хотя это вряд ли что меняет. Итак, связь у меня по UART, а сброс процессора заведен через сигнал RTS. Сначала я по RTS сбрасываю проц. Он находится в состоянии ожидания синхронизации. Синхронизация идет только на скорости 9600. После успешного получения синхропосылки, он переходит в режим приема команд. Я даю команду поменять скорость на 115200 (на 9600 шьется очень медленно). Затем я меняю скорость на компьютере через API SetCommState. И вот тут - сюрприз! При вызове SetCommState он устанавливает выход RTS, процессор сбрасывается, и переходит в начальное состояние ожидания синхро. Отсюда вопрос - как менять скорость СОМ-порта не меняя выхода RTS?
  14. А использовать какие предпочтительней?
  15. Когда искал GNU тулчейны под ARM, обнаружил их с разными названиями. Есть в которых утилиты в папке BIN начинаются на ARM-NONE-EABI, например arm-none-eabi-gcc.exe, а есть другой где та же утилита arm-elf-gcc.exe Чем они отличаются?