Jump to content
    

Arlleex

Свой
  • Posts

    4,133
  • Joined

  • Last visited

  • Days Won

    6

Arlleex last won the day on September 27

Arlleex had the most liked content!

Reputation

24 Очень хороший

2 Followers

About Arlleex

Контакты

  • Сайт
    Array
  • ICQ
    Array

Recent Profile Visitors

13,026 profile views
  1. STM32F4, -70 по Цельсию, полет нормальный. Из периферии - PLL, SPI/I2C/UART/CAN/Ethernet/SDIO, может еще что по мелочи, не помню.
  2. Портятся и портятся... Что не так? У Вас их 32 штуки. Если так рассуждать, то идеальная программа - это ее отсутствие))
  3. Ну да. Для RS-485 даже грех не купить эту программу 6 страниц обсуждения не понятно чего
  4. Можно сократить таблицу до 16 элементов: сделав SWAP с последующим XOR, обнулив старший ниббл, получаем 4-битный индекс. Получив значение по этому индексу, делаем с исходным байтом данных OR с 0x80 либо 0x0 из этой таблицы - profit. Не уверен, что по тактам будет быстрее, ибо одна подготовка пролога сжирать будет добрую часть тела функции.
  5. В Резоните примерно 43 мкм станет. Осаждается 25 мкм при 18 мкм фольге.
  6. mov r17, r16 swap r17 eor r17, r16 mov r18, r17 lsl r17 lsl r17 eor r17, r18 mov r18, r17 lsl r17 eor r17, r18 andi r17, 0x80 or r16, r17 В R16 на входе и на выходе из функции - аргумент и результат. 12 тактов, примерно.
  7. Да я сразу не прочитал, что Вам надо в 7й бит добавлять четность, поэтому исправил. Оптимизация включена?
  8. u8 addEven(u8 byte) { u8 retVal = byte; byte ^= byte << 4; byte ^= byte << 2; byte ^= byte << 1; byte = byte & 0x80; return retVal | byte; }
  9. 60 Mbit/s SPI это в худшем случае (8-битные данные) - 7.5 МГц запросов в DMA на одно событие. Суммарно с 2 SPI-контроллеров 30 МГц. DMA обычно молотит на частоте ядра, поэтому у DMA-контроллера в запасе 400/30 ~= 13 тактов. Если настроить FIFO SPI + FIFO DMA, да на пакетную передачу, да не лезть в SDRAM на время транзакций, то все должно пролезть)) Но проверить, действительно, стоит.
  10. Какая STM, какие кэши, какая системная частота... конечно же, знать не нужно.
  11. С таким уровнем смысла в вопросе ответ тоже будет вполне однозначный - вложенные прерывания поддерживаются в любой архитектуре.
  12. Поздравляю, у меня тоже работает. Я за это время еще и CAN поднял, и GUI на компе накатал для управления.
  13. "Массивы были в Си, в плюсах классы"... блин как послушаю, на смех пробирает, ей-богу. Камон, я решил свою проблему, причем полностью так, как хотел - с блекджеком и массивами в плюсах. isValid - bool-переменная структуры-класса sRegCache (кэша), которая указывает, актуально ли значение кэша или нет. Не актуально это содержимое, например, после включения питания до первого чтения из микросхем. Тяжело догадаться, валидность чего означает isValid, который расположен в структуре-классе кэша, да? Напомню, автор (я) не спрашивал мнения о вкусе устриц, автор спрашивал конкретный технико-лексический момент в C++. Я на 100% уверен, что дайте ваш код кому-то левому, найдется процент толковых программистов, которые скажут, что этот код говно. Это нормально, с этим можно и нужно жить. В общем, возвращаться к теме именований я не буду, это каждый раз как первый раз. Встретимся, когда вопросы будут по технической тематике языка
  14. Я, например, крайне не приемлю раздутые исходники как из-за комментариев, так и из-за лишних пробелов, леса ненужных скобок-ограничителей блоков для одного стейтмента, названий переменных в километр и т.д. Краткость - сестра таланта. А простыни кода особенно доставляют под вечер, когда с утра только и занимался, что разбирался в исходниках (речь, естественно, не про свои исходники - в своих нужно разбираться де-факто).
  15. Процесс записи один, и вполне четко детерминирован - поэтому я и не стал его кэшировать.
×
×
  • Create New...