adnega
Свой-
Постов
3 607 -
Зарегистрирован
-
Посещение
-
Победитель дней
3
Весь контент adnega
-
Я как раз обратное утверждал: что сейчас, что три года назад - никакой разницы - покупай сколько унесешь.
-
В 2015 году я покупал резисторы 0805 по 0.14 руб в партии 5 000 шт. Сейчас они стоят по 0.31 руб от 1 шт или 0.27 руб в партии от 10 000 шт. А резисторы 0805 6.81 кОм (1%) по акции в Компэле вообще по 0.08 руб. в партии 15 000 шт. В Компэле активно внедряют СДС. Я думаю в этом основная причина изменений на сайте. Кста, несколько месяцев назад цены на сайте тоже пропали, а потом появились. Нужно поменьше слушать директоров, подкидывающих панику.
-
Вопрос о программировании Flash STM32F405
adnega ответил Vladimir_T тема в STM
+1 Нужен аналог такого GPIOA->MODER = 0 | (GPIO_MODE_ALTERNATE << GPIO_MODER_PIN0) | (GPIO_MODE_ALTERNATE << GPIO_MODER_PIN1) | (GPIO_MODE_ALTERNATE << GPIO_MODER_PIN2) | (GPIO_MODE_ANALOG << GPIO_MODER_PIN5) | (GPIO_MODE_ANALOG << GPIO_MODER_PIN6) | (GPIO_MODE_ALTERNATE << GPIO_MODER_PIN7) | (GPIO_MODE_OUTPUT << GPIO_MODER_PIN8) | (GPIO_MODE_ALTERNATE << GPIO_MODER_PIN9) | (GPIO_MODE_ALTERNATE << GPIO_MODER_PIN10) | (GPIO_MODE_ALTERNATE << GPIO_MODER_PIN13) // ! | (GPIO_MODE_ALTERNATE << GPIO_MODER_PIN14) // ! | (GPIO_MODE_OUTPUT << GPIO_MODER_PIN15); GPIOA->AFR[0] = 0 | (AF_PA0_TIM5_CH1 << GPIO_AFR0_PIN0) | (AF_PA1_ETH_RMII_REF_CLK << GPIO_AFR0_PIN1) | (AF_PA2_ETH_MDIO << GPIO_AFR0_PIN2) | (AF_PA7_ETH_RMII_CRS_DV << GPIO_AFR0_PIN7); GPIOA->AFR[1] = 0 | (AF_PA9_USART1_TX << GPIO_AFR1_PIN9) | (AF_PA10_USART1_RX << GPIO_AFR1_PIN10) | (AF_PA13_SWDIO << GPIO_AFR1_PIN13) // ! | (AF_PA14_SWCLK << GPIO_AFR1_PIN14); // ! -
Глобальный счетчик милисекунд.
adnega ответил jenya7 тема в Cредства разработки для МК
Дык, настраиваете SysTick на генерацию прерываний с интервалом 1 мс, а в обработчике прерывания делаете maintimer++; , где maintimer - 32-битная переменная, в которой будут лежать миллисекунды. -
Глобальный счетчик милисекунд.
adnega ответил jenya7 тема в Cредства разработки для МК
Можете подробнее рассказать о них? Это не норма, такие вещи нужно делать аппаратно и/или подбирать соответствующее аппаратное решение. Я уже 10 лет не пользуюсь запретом/разрешением прерываний, а проектов сделал очень много. ЧЯДНТ? -
Глобальный счетчик милисекунд.
adnega ответил jenya7 тема в Cредства разработки для МК
Jenya7, вы по все видимости начинающий разработчик - прислушайтесь к советам опытных МК-программистов. Зачем вам аппаратный таймер, если вы от него даже прерываний боитесь? Это две крайности. Нужно сделать аппаратный таймер для счета программного счетчика с интервалом 1 или 10 мс. Затем все миллисекундные задержки и выше делать программно. Только так. Если у вас какая-то неприязнь к такому решению, то вы в чем-то заблуждаетесь - можете высказать свои "фи", и мы вас переубедим. Повторюсь, у Cortex-ов есть специальный таймер SysTick, и 99% проектов использует его для миллисекундных и выше задержек, с программным отсчетом времени. Задержки на микросекунды и ниже уже могут потребовать аппаратный таймер. Использование аппаратного таймера жестко привязывает проект к данной архитектуре и данному камню - проект будет слабо переносимым и склонным к аппаратным конфликтам с другими библиотеками и т.п. Насколько я понимаю, ТС хочет сделать некую инициализацию, чтоб потом вычитывать из некого регистра число, равное числу миллисекунд. Желательно, чтоб регистр был 32-битным. Вроде, у LPC17xx таймеры были 32 битными с 32-битным предделителем. У Cortex-M есть NVIC, который может делать вложенные прерывания с приоритетами. Если 32-битная переменная выровненная, то доступ к ней будет атомарным. Но я так понял, что из счетчика миллисекунд бы будете только вычитывать. -
Глобальный счетчик милисекунд.
adnega ответил jenya7 тема в Cредства разработки для МК
У ТС именно "мили". Нужно понять что это значит. -
Покажите что-нить из ваших изделий.
-
Глобальный счетчик милисекунд.
adnega ответил jenya7 тема в Cредства разработки для МК
Дык, микро- или мили- секунд? -
У меня давно подозрения к данному участнику. Периодически тут появляются всякие Николаи Семеновичи с 30 летним опытом, с 30тыр зарплатой, тысячами написанных программ и сотнями разработанных надежных устройств. Но ни одного доказательства показать не могут. ;)
-
Глобальный счетчик милисекунд.
adnega ответил jenya7 тема в Cредства разработки для МК
Перевожу: есть 24-битный вычитающий таймер. Когда он досчитает до нуля, то перегружается значением из SYST_RVR. Таким образом можно получить периодические прерывания, а в них уже работать с софтовыми интервалами. Обращаю внимание на бит CLKSOURCE регистра SYST_CSR. Он выбирает источник тактирования. У STM32, например, можно тактировать от HCLK или HCLK / 8 за счет этого бита. -
Глобальный счетчик милисекунд.
adnega ответил jenya7 тема в Cредства разработки для МК
Может, поискать в документации? Там все очевидно: и источник, и делитель. -
Глобальный счетчик милисекунд.
adnega ответил jenya7 тема в Cредства разработки для МК
Ничего страшного. Я обычно делаю 10 мс, но при помощи SysTick. В Cortex именно этот таймер используется для этих целей. А что значит "нормальная работа"? Переполнения конечно же нужно обрабатывать. При 32-битном счетчике переполнения будут каждые 49 дней, но их тоже нужно обрабатывать. -
Запуск процесса на одном уровне прерывания
adnega ответил Hexel тема в ARM, 32bit
Тем, что в системе могут оставаться высокоприоритетные прерывания. Разумеется в них доступа к этой очереди быть не должно. -
Запуск процесса на одном уровне прерывания
adnega ответил Hexel тема в ARM, 32bit
Для простоты реализации атомарности. -
Запуск процесса на одном уровне прерывания
adnega ответил Hexel тема в ARM, 32bit
Работа с EEPROM довольно затратная по времени операция. Лишать систему прерываний на это время довольно опасно. Я бы через SVC сделал доступ к очереди (быстрая часть), а в mainloop сделал бы вычитывание из очереди и запись в EEPROM. -
Запуск процесса на одном уровне прерывания
adnega ответил Hexel тема в ARM, 32bit
Через прерывание может получится асинхронно, т.е. флажок взвели, а перед обработчиком может выполниться еще несколько инструкций. Можно через SVCall, тогда все будет синхронно. Про SVC подробно написано в "Joseph Yiu. The Definitive Guide to ARM Cortex-M3 and Cortex-M4 Processors" раздел "10.3 SVC exception". -
Использование SWDIO & SWCLK пинов как GPIO
adnega ответил ivainc1789 тема в ARM, 32bit
Все прекрасно работает. Нужно записать правильное значение в GPIOA->MODER (пины 13 и 14 в MODE_OUTPUT). GPIOA->MODER = 0 | (GPIO_MODE_OUTPUT << GPIO_MODER_PIN0) // ( 6) LCD1602_RS | (GPIO_MODE_OUTPUT << GPIO_MODER_PIN1) // ( 7) LCD1602_E | (GPIO_MODE_OUTPUT << GPIO_MODER_PIN2) // ( 8) LCD1602_D4 | (GPIO_MODE_OUTPUT << GPIO_MODER_PIN3) // ( 9) LCD1602_D5 | (GPIO_MODE_OUTPUT << GPIO_MODER_PIN4) // (10) LCD1602_D6 | (GPIO_MODE_OUTPUT << GPIO_MODER_PIN5) // (11) LCD1602_D7 | (GPIO_MODE_INPUT << GPIO_MODER_PIN6) // (12) ENC_A | (GPIO_MODE_INPUT << GPIO_MODER_PIN7) // (13) ENC_B | (GPIO_MODE_ALTERNATE << GPIO_MODER_PIN9) // (17) CON_TX. USART1_TX | (GPIO_MODE_ALTERNATE << GPIO_MODER_PIN10) // (18) CON_RX. USART1_RX | (GPIO_MODE_INPUT << GPIO_MODER_PIN11) // (17) free | (GPIO_MODE_INPUT << GPIO_MODER_PIN12) // (18) free | (GPIO_MODE_OUTPUT << GPIO_MODER_PIN13) // (19) TXEN [SWDIO (debug)] | (GPIO_MODE_OUTPUT << GPIO_MODER_PIN14); // (20) WL [SWCLK (debug)] -
Графический формат картинок для веб приложений
adnega ответил iiv тема в Программирование
SVG ? -
О чем эта тема? У вас вопрос, где люди закупаются без проблем? Или опрос решили устроить "Это у всех так сейчас?" (явно провокационный).
-
Тролль вернулся? Понакидал в каждой теме...
-
Вообще-то, часы так не работают - стрелки вращаются с разной скоростью и нет никакого способа фиксировать прямой угол. Стрелки имеют фиксированную длину и их не изменить. Что показывает "кручение в одном направлении"? А где аналог модуля комплексного числа и фазы? Хуже аналогию было сложно придумать. Николай Семенович! Это вы?
-
Вы реальной разработкой занимались когда-либо? Любой решение оно стоит денег (материалы, человекочасы, новые технологии, новое оборудование и т.п.) Чтобы что-то обосновать, нужны количественные оценки. Любое надежное решение оно и денег в конечном итоге много стоит. Вряд ли кто согласится лишнее выкладывать за сверхнадежность. Нормативной базой, регулирующей эту область, очерчивается необходимый и достаточный уровень. Есть тестер - называется "Доска Гальтона".
-
Не бывает ничего одинакового в макромире. Есть револьвер с обоймой без одного патрона, и из него в вас достоверно выстрелят. Но у вас есть возможность достать из обоймы еще один патрон. Будете ли вы использовать эту возможность, если рядом с вами живой человек, который отказался от аналогичного предложения и выжил?