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

Рыгз

Members
  • Постов

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

  • Посещение

Электроника

  • Стаж в электронике
    1-2 года

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

898 просмотров профиля

Достижения Рыгз

Новобранец

Новобранец (2/14)

  • 10 постов на форуме
  • Неделя на форуме
  • Месяц на форуме
  • Год на форуме

Последние значки

1

Репутация

  1. Инжектированных слишком мало. И я не помню что бы в тех устройствах, что мне приходилось делать на мк, мне требовалась непрерывная асинхронная работа ацп, а вот недоделанный и пока брошенный пример когда надо было быстро опросить несколько каналов есть) Очень внимательно читал. Не нашел. Нет про ЕОС флаг при SCAN режиме и все, и не предложен способ обнаружения окончания обработки регулярной группы. В разделе ДМА тоже не особо понятно описан момент появления флага окончания передачи. И были сомнения то ли он считает концом передачи конец регистров источника, в этом случае ацп и всего 1 регистр, толи буфера, куда пишет, где регистров больше одного, то ли вообще периферия как то сообщает ДМА что передача закончилась. В любом случае экспериментально для себя выяснил, что строка while(DMA_GetFlagStatus(DMA1_FLAG_TC1) == RESET); ждет столько сколько необходимо и вопрос на том закрылся)
  2. Очень надеюсь что Вы мне поможете еще кое с чем. Продолжаю пытаться освоить stm-овский ацп. В даташите не совсем понятен один момент. Допустим ацп работает в сканирующем режиме, но не в режиме непрерывного преобразования, то есть по запросу ADC_SoftwareStartConvCmd(ADC1, ENABLE); сканирует несколько каналов и отключается, в ДШ ничего не сказано про ЕОС флаг. Судя по тому что моя программа виснет на while(ADC_GetFlagStatus(ADC1, ADC_FLAG_EOC) == RESET); бит не устанавливается ни в конце группы каналов, ни после каждого канала. Как синхронизировать ацп, дма и программу в таком случае? Мне нужна элементарная вещь, по запросу программы получить ответ одного из регулярных каналов АЦП, так как отдельный канал прочитать невозможно, я пытаюсь прочитать всю группу каналов в буфер, и вернуть значение отдельного канала из него. В режиме непрерывного преобразования все работает, но хочется что бы АЦП опрашивал входы в синхронном с программой режиме. Допустимо ли использовать вот такую строку while(DMA_GetFlagStatus(DMA1_FLAG_TC1) == RESET); ? Понятно что можно использовать инжектированные каналы, но их всего 4 и хочется разобраться.
  3. Спасибо! Супер-ответ)
  4. Рыгз

    Помогите с АЦП.

    Привет. Пилю кое что на китайской плате с ф103, понадобилось добавить в схему термометр и еще кой-чего на ацп. Но уже с термометром возникла проблема. Воткнул что было, lm35, микроконтроллером намерил 15 градусов. Подоткнул к лм-ке мультиметр, показания ацп выросли до 18 градусов, на мультиметре 247мВ (26,7С). Раз мультиметр добавил показаний ацп, я решил попробовать воткнуть резистор между ацп и землей, сначала 4.7к а потом и 1к. Лм-ка по прежнему показывала 247мВ, но с 1к резистором показания ацп микроконтроллера выросли до требуемых 26С, но резистор выглядит костылем. Может у кого есть предположения что не так? Ацп калибруется, при соединении с землей показания 0, с питанием 4095.
  5. Ага, кварц не панацея, но полторы секнуды в месяц - точность избыточная для моего проекта где то на 2 порядка. У меня выбор пал на ф103 не потому что он мне как то особенно подходит, а просто потому что он сидит на этих копеешных китайских платах. Самому плату разводить травить паять - это не для меня)
  6. Ну к счастью не настолько сильно как Вы. "Нужен стрелочный прибор с возможностью управления МК" != "нужен тахометр на мотоцикл". "Как спидометр на мотоцикле" - пример желаемого форм-фактора такого прибора. Кто их знает, я в этом не рублю. Но китайские поделки похоже достаточно просто дрыгать за сигнальный провод)
  7. Да, похоже, лучший вариант. Затупил, меня смутили 3 проводка одинаковых, как будто для подключения к генератору.
  8. Точностью. Запиливаемая фиговина должна годами работать без остановки и желательно без обслуживания. При этом она чувствительна ко времени. Один-два часа ошибки не страшно, но на РЦ даже за месяц могут сутки набежать, особенно на улице. Предыдущая на ардуине отработала около 3х лет, убегала в месяц часа на 2 и теперь в связи с новыми обстоятельствами требует допиливания или замены. Ну я решил полностью перепилить, заодно и избавиться от необходимости раз в месяц подстраивать часы.
  9. Привет. Рыл и ибей и али и автомаги, короче нужно что то вроде того что на картинке ниже, прибор в корпусе, с подстветкой и большой яркой стрелкой, но что бы управлялось так, что бы его можно было без изврата прикрутить к микроконтроллеру, то есть в идеале ШИМ на 3.3-5 вольт. Тот что на фотке кажется от трех фаз генератора работает, можно было бы наверное прикрутить - но хотелось бы че попроще и побольше уверенности что без танцев и обвязки заработает. Извиняйте, не могу найти где тут фотки прятать в иконки.
  10. Сорь, очень долго тема проходила модерацию, я решил что ее не пропустили, залогинился и создал в тематическом разделе новую.
  11. Да, но видел и не подпаянные и ниче, работают. Ну так я и не сомневался что самый низкопотребный, оно меня бы устроило) Помыть наверное стоит попробовать. Попробовал точно такую же платку только что из пакетика, та же фигня. Похоже придется дрыгать ртиси от кварца на 8мгц, на первый взгляд он нормально себя ведет, да и делится без остатка. Жаль, хотелось что бы часы не сбивались при отключении питания.
  12. Шуткуешь? Или серьезно? Тогда я не понял. Ни разу не видел что бы кварцы экранировались:)
  13. Ослика нет. Все таки наверное кварц. Тоже так подумал и попробовал "LSE_Bypass" - перестало работать. До этого 2-3 года юзал ардуину с его РЦ генератором, дык ниче, час-два в месяц убегал, что для моего применения где то на грани приемлимости, потому и решил переписать на стм - на его платах китайцы сразу распаивают кварц. Ах да, совсем забыл, что платы то самые "ходовые" на ибее. Неужели с таким косяком?
  14. Привет. Запиливаю хитрый таймер. Купил платку именно потому что на ней сразу распаян часовой кварц. Сейчас при тесте работы секундного прерывания от rtc заметил такую фигню: пока я не лезу руками к плате, частота явно выше 1гц, подношу руку - падает, кладу палец на корпус кварца - совсем встает, может оно бы и тикнуло, но ждать больше ~5 секунд было лень. Прям емкостной сенсор расстояния. Точно настроен LSE. Никаких других прерываний в коде пока нет. Это особенность этих плат или у меня бракованная? Или это как то может от кода зависеть? Фото платки, на моей на часовом кварце во второй строке написано Е 82к, а не 840, что бы это не значило:
×
×
  • Создать...