Jump to content

    

Xenia

Модератор FTP
  • Content Count

    4392
  • Joined

Community Reputation

0 Обычный

About Xenia

  • Rank
    Гуру
  • Birthday June 2

Контакты

  • ICQ
    Array

Информация

  • Город
    Array

Recent Profile Visitors

10715 profile views
  1. Вы указали на действительно сложную проблему. Однако я бы сказала, востребованность профессий здесь ни при чем. Скажем, нынче самыми востребованными профессиями являются продавцы и грузчики :), однако мало кого эти занятия увлекают. В разные времена одни занятия считались "крутыми", а другие нет. Например, во времена Пушкина считалось круто сочинять стихи :). Или посмотрите старый советский фильм "Волга-волга" - там народ побросал все свои занятия, как только был объявлен песенный конкурс. А почему? Да потому, что быть певцом или актером считалось несравненно престижнее любой иной профессии. Отсюда и офигенный конкурс в актерские и музыкальные учебные заведения. Но проходит время и кое-что начинает меняться. После войны поднимается престиж инженерных специальностей. А после успешных испытаний атомной бомбы престижным становится быть физиком. И вот даже поэт Борис Слуцкий это заметил: Что-то физики в почете. Что-то лирики в загоне. Дело не в сухом расчете, Дело в мировом законе. Т.е. к этому времени стихосложение уступило первенство не только физике, но и некоторым другим техническим специальностям. Быть профессором стало престижнее, чем поэтом. Если, конечно, ты не Шекспир :). А электроника, думаю, получила популярность, на фоне ... дефицита. В те советские времена все челночники ездили за границу за импортной электроникой. Какой-нибудь транзисторный приемник казался в те времена роскошью, как и телевизор в доме. Отсюда и актуальность увлечений самодельщиков, которые были способны своими руками сделать то, что промышленностью не выпускалось совсем. Да и что далеко за примерами ходить - всем нам известный журнал "Радио" - типичный журнал самодельщиков :). Именно этим он и приобрел свою популярность, а радиолюбительство приобрело характер распространенного хобби. Сейчас эта волна угасает. Электронный ширпотреб подешевел и ассортимент его сильно расширился (во многом благодаря тем же китайцам :)). А потому и самодельщики перестали быть престижными, а самодельные изделия перестали котироваться (типа сделаны не фирмОй, а на коленке). Отсюда и схемотехника туго усваивается :).
  2. Arlleex, ваш рассказ свидетельствует скорее обратному, чем то, что вы декларируете. Именно препоны, которые приходится преодолевать увлеченной личности, делают их преодоление приятным. Действительно, если месяцами копишь деньги на микросхему, ее последующее программирование покажется ни с чем не сравнимым удовольствием. И оно не только в электронике так - скажем, если ребенок целый год ждал, когда ему купят велосипед, то легко (а главное с удовольствием!) научится на нем ездить. А если высыпать на стол перед человеком сотню микроконтроллеров и сказать - программируй! То он нос наморщит и скажет "не хочу, противно!". Вот и схемотехника туго воспримается до тех пор, пока эти знания не стали необходимостью в том деле, к которому лежит твое сердце.
  3. STM32H7, SDRAM и кэш

    А вы-то об этом как узнали? :) Я догадалась, что DMA всегда пишет в реальную память, не взирпая на кэш, только после того, как этот кэш отключила. P.S. А кстати, много ли мы теряем, отключая D-cache? Ясно, что отключать кэш инструкций I-cache жалко, т.к. flash читается медленно с делэями. А насколько быстрее читается D-cache по сравнению с оперативкой? Ответ на этот вопрос для меня актуален, поскольку эффект от кэширования ROM хорошо заметен, а эффект от отключение D-cache остался мной незамеченным.
  4. STM32H7, SDRAM и кэш

    Расскажите пожалуйста про data cache + DMA подробнее. А то кому эта проблема известна, а кому не известна. Лично я больше месяца времени убила в происках причины, отчего у меня DAC через DMA не работает. Оказалось, "двойная ошибка": первая та, что data cache был включен, а вторая та, что RAM начинался с адреса 0x20000. А всё потому, что Examples такие - в них и функция SCB_EnableDCache() вызывается, и адрес RAM в проекте таков. А работал тот пример только благодаря тому, что массив чисел, которые DMA гнал на DAC, был объявлен как const, а потому располагался в ROM, и поэтому работе DMA ни data cache не мешал, ни адрес ROM. И кто только такие примеры сочиняет?
  5. Я полагаю, что макрос: __LL_ADC_CALC_TEMPERATURE должен выдавать реальную температуру. Работа этого макроса соответствует формуле из Мануала: Из формулы (простая пропорция) видно, что сенсор тестировали на фабрике при двух температурах: 30°C и 110°C, получив при этом от АЦП два числа - TS_CAL1 и TS_CAL2, соответственно. А поскольку число 30 они прибавляют, то результатом является обычная температура, а не смещение относительно комнатной.
  6. Почему ваши 43 градуса не страшные, а мои 43 градуса страшные?
  7. Измерила температуру STM32H743VIT6 (LQFP100) его внутренним температурным сенсором. Оказалось не так страшно. Температура, вычисленная с помощью макроса: temperature = __LL_ADC_CALC_TEMPERATURE( 3270, HAL_ADC_GetValue( &hadc3), LL_ADC_RESOLUTION_16B); 0 мин - 26° 1 мин - 31° 2 мин - 37° 3 мин - 40° 5 мин - 41° 10 мин - 43° Далее температура больше не повышалась. Однако это испытание я проводила с приклеенным радиатором, т.к. отрывать его было жалко - у него липучка одноразовая.
  8. Попробую, спасибо! От чтения "на пустой желудок" Хоровица и Хилла, вы схемотехнику ... возненавидите :). V_G дал вам наилучший совет - займитесь практически чем-то таким, для чего эта схемотехника бывает нужна, и тогда дело пойдет семимильными шагами. Хотя и в этом случае ее восприятие будет неравномерным - лучше будут усваиваться те области, которые наиболее близки к сфере вашего практического опыта. Скажем, лично я с школе математику не любила (хотя и нормально успевала по этому предмету), а в ВУЗе ненавидела :), особливо "Теорию вероятностей". И лишь гораздо позже, когда занялась ЦОС, поняла что математика может быть очень интересной.
  9. Вы это пишите только затем, чтобы возразить? А чем SCB_DisableICache() + увеличение FLASH_ACR_LATENCY вас не устраивает? Ваше предложение гораздо более похоже на "через одно место", чем моё.
  10. Нельзя: Вы мыслите в рамках операционной системы :), тогда как в большинстве случаев контроллер работает в монозадачном режиме.
  11. А как остановить на время? На HALT встать? Но тогда не узнаем, когда температура до нормы понизилась.
  12. А мы кэш тоже отключим - SCB_DisableICache(). Раз уж решено при перегреве тормозить, то используем все средства.
  13. Реже станет инструкции выполнять - программа с меньшей скоростью станет выполняться.
  14. Чтобы бороться с перегреванием, когда оно происходит. А зачем же еще? У меня, когда мотор у мясорубки перегревается, перехожу со скорости II на скорость I :). А здесь скорость менять нельзя (ибо все таймеры на эту скорость повязаны), а "интерлив" изменять не страшно.
  15. А эту FLASH_ACR_LATENCY можно на лету менять? А то в регистре FLASH_ACR для нее 4 бита выделено, вплоть до FLASH_ACR_LATENCY_15WS.