Помогите стартануть с MSP

Если ваш вопрос не влез ни в одну из вышеперечисленных тем, вам сюда.
Ответить
clawham
Поставщик валерьянки для Кота
Сообщения: 1957
Зарегистрирован: Пт окт 31, 2008 09:38:55
Откуда: Одесса
Контактная информация:

Помогите стартануть с MSP

Сообщение clawham »

В общем нужно батарейное питание и простые функции обработки и генерации ... на меге8 получил потребление 1 миллиампер на полном функционале...теперь хочу msp430g2553 попробывать применить..

для начала запустил АЦП с опорой полтора польта и шим генератор на первом таймере, проц клокает на 8 мегагерцах, кторой таймер клокает от 14 килогерцового тормоза и опрашивает АЦП, и кидает результат из АЦП на выход ШИМа(а там светик моргает когда ногу трогаеш)

так вот проблемы:

1) не срабатывает прерывание АЦП

инициирую АЦП так:

Код: Выделить всё

ADC10CTL0 &= ~ENC;
ADC10CTL0 = ADC10IE | ADC10ON | REFON | ADC10SHT_2 | SREF_1;
ADC10CTL1 = CONSEQ_0 | ADC10SSEL_3 | ADC10DIV_0 | SHS_0 | INCH_1;
ADC10AE0 = 0x6;
ADC10CTL0 |= ENC;
дальше в основном цикле хочу стартануть его и уйти в спячку а там по прерывании отработать результат, переключить вход и снова уйти на спячку до следующего результата преобразования

текст main()

Код: Выделить всё

ADC10CTL0 |= ADC10SC;
_BIS_SR(LPM0_bits + GIE);
ну и в обработчике

Код: Выделить всё

#pragma vector=ADC10_VECTOR
__interrupt void ADC10_ISR_HOOK(void)
{
    /* USER CODE START (section: ADC10_ISR_HOOK) */

	static int a=0;

	a=ADC10MEM;
	a=a/4;

	if((a>=0)&&(a<255))
		TA0CCR1 = a;

	ADC10CTL1 |=  INCH_1;
	ADC10CTL0 |= ADC10SC;

    /* USER CODE END (section: ADC10_ISR_HOOK) */
}

так вот в этот обработчик оно не попадает никогда!

если же этот код перенести в таймерное прерывание

Код: Выделить всё

#pragma vector=TIMER1_A0_VECTOR
__interrupt void TIMER1_A0_ISR_HOOK(void)
{
    /* USER CODE START (section: TIMER1_A0_ISR_HOOK) */
	static int a=0;

	a=ADC10MEM;
	a=a/4;

	if((a>=0)&&(a<255))
		TA0CCR1 = a;

	ADC10CTL1 |=  INCH_1;
	ADC10CTL0 |= ADC10SC;
    /* USER CODE END (section: TIMER1_A0_ISR_HOOK) */
}

то вродебы всё работает так как надо НО...потребление 3 миллиампера!!! как роде не уходит в сон...

мне нужно чтоб во время сна АЦП преобразовывал(согласен и на 14 килогерц такта АЦП
а вот таймер 1 должен гудеть на все 8 мегагерц...так надо...его результатом АЦП буду корректировать.....или выключать...

ЧЯДН ?
почему нет низкого потребления и нет прерывания АЦП?
Что нас не убило сделало нас осторожней
Не доверяйте русским лужам - это может быть вход в метро.
Реклама
Аватара пользователя
balmer
Это не хвост, это антенна
Сообщения: 1433
Зарегистрирован: Вс дек 02, 2012 03:13:48
Откуда: Калининград

Re: Помогите стартануть с MSP

Сообщение balmer »

Жалко, что STM32L не выбрали. Они тоже хорошие и низкопотребляющие.
Реклама
clawham
Поставщик валерьянки для Кота
Сообщения: 1957
Зарегистрирован: Пт окт 31, 2008 09:38:55
Откуда: Одесса
Контактная информация:

Re: Помогите стартануть с MSP

Сообщение clawham »

я-бы выбрал stm32vl

но за неимением платы отладчика программатора и самих камней :)

а вот мсп семплами есть гора и маленькая тележка...+ ланчпад подарили...та чего мне ваш стм32-то?

вроде с прерываниями разобрался - надо флаг очищать....
теперь другая проблема...или 4 миллиампера или 2....но не меньше кушает...ерунда какая-то...

заже на 1 мегагерце такт проца и 8-ми - такт таймера - жрет 2 миллиампера...и это со спячкой....многовато для легендарной работы" почти на воздухе"
Что нас не убило сделало нас осторожней
Не доверяйте русским лужам - это может быть вход в метро.
Аватара пользователя
balmer
Это не хвост, это антенна
Сообщения: 1433
Зарегистрирован: Вс дек 02, 2012 03:13:48
Откуда: Калининград

Re: Помогите стартануть с MSP

Сообщение balmer »

clawham писал(а): а вот мсп семплами есть гора и маленькая тележка...+ ланчпад подарили...та чего мне ваш стм32-то?
Рискую показаться занудным, но перечислю аргументы.
Освоение таких микроконтроллеров STM32 и MSP430 достаточно сложное дело. Я вот например уже с начала года изучаю семейство STM32, но еще чувствую себя новичком. Для сравнения ATmega8 уже через 2-3 месяца была вдоль и поперек изученной.

Семейство STM32 очень широкое, начиная с дешевеньких тормозных низкопотребляющих микроконтроллеров за 30 руб, и заканчивая довольно быстрыми чипами с тактовой частотой под 200 Мгц.

Ну и STM32 банально дешевле. Вот смотрю в одном и том-же магазине
MSP430F5529IPN - 341.49р.
STM32L152RBT6 - 159.24р.

Так что лично мое мнение, что в долгострочной перспективе таки STM32 значительно более разумное вложение умственных усилий.
Реклама
Эиком - электронные компоненты и радиодетали
clawham
Поставщик валерьянки для Кота
Сообщения: 1957
Зарегистрирован: Пт окт 31, 2008 09:38:55
Откуда: Одесса
Контактная информация:

Re: Помогите стартануть с MSP

Сообщение clawham »

а я где-то говорил что мсп лучше или дешевле?
они просто есть в колве по 15 штук каждого экземпляра какой был доступен для фрисемплов!!!во всех корпусах...и соик и qfn с dip ...
и программатор для них есть с отладчиком...

просто хотел поднакомиться с ними...их особенностями...разминка для мозга..ато атмега да атмега....

они вродебы более экономичны в режимах когда всё стоит и только по прерыванию просыпается....а когда всё включено кроме АЛУ - ничего они не экономичные....хотя...я эту тему ещё не до конца расковырял....мне нужно батарейное питание одного устройства...на атмеге я добился 3 миллиампера потребления с исполнительными устройствами.....но я видел аналогичное схемное рещение работающее 2 года от 2х пальчиковых батареек аа!!!! сделано оно на мсп430...
вот и интересно где же я туплю
Что нас не убило сделало нас осторожней
Не доверяйте русским лужам - это может быть вход в метро.
Реклама
Аватара пользователя
oleg110592
Друг Кота
Сообщения: 3832
Зарегистрирован: Сб сен 10, 2011 17:46:25

Re: Помогите стартануть с MSP

Сообщение oleg110592 »

Реклама
Аватара пользователя
Ser60
Друг Кота
Сообщения: 3784
Зарегистрирован: Ср дек 24, 2008 09:58:58

Re: Помогите стартануть с MSP

Сообщение Ser60 »

Чтобы добиться низкого потребления, МК должен быть в режиме сна LPM3 с пробуждением от VLPO. По пробуждении оn будет тактироваться, скажем, от 8 мгц VCO. У АЦП нижний предел тактирования несколько мгц - не помню сколько именно, см. в ДШ. Если его тактирвоать от SMCLK = MCLK/2 = 4 мгц, то требования будут соблюдены. Короче, при пробуждении включайте опорник, дайте ему 5 мкс погреться, затем включайте АЦП и переводите МК в LPM0 с пробуждением по окончании работы АЦП. После того как данные с АЦП получены, перед входом в LPM3 не забудьте отключить АЦП и опорник. Если сделаете как я написал, среднее потребление будет на уровне 1 мка при нечастом обращении к АЦП, скажем раз в секунду. У меня есть код, но на АСМе.
clawham
Поставщик валерьянки для Кота
Сообщения: 1957
Зарегистрирован: Пт окт 31, 2008 09:38:55
Откуда: Одесса
Контактная информация:

Re: Помогите стартануть с MSP

Сообщение clawham »

в режиме LPM3 глушися такт 8 мегагерцовый...а мне он нужен чтоб генерить ШИМ импульсы наружу....

это продолжение моей части с высоковольтным преобразователем klz газовых датчиков... поддержание стабильных 400 +-25 вольт...

при накачке я ищу пиковый ток транзистора 800-вольтового и стараюсь за него не вылазить регулируя заполнение.
по превышении напряжения я глушу таймер шима, переключаю АЦП на такт от 12 килогерц и вырубаю проц...

АЦП будит МК, меряет напругу, упало ниже предела - включаем 8 мегагерц, таймер и переводим ацп на 4 мегагерца такт и снова поддерживаем активными ействиями пиковый ток...

к сожалению подкачка необходима очень часто и потому потребление конечно же высоко...
нагрузки по 400 вольт нет никакой фактически....только 15 мегаоммный измерительный резистор...

можно конечно поколдовать с преобразователем и взять катушку от накачки вспышки(там отвот от 18 вольт есть, его и садим на массу низкоомным низковольтовым транзистором) транзюк поменять на 1 миллиомный и поставить стабилитрон паралельно транзюку...

тогда напруга кагбэ не сможет выйти за 400 вольт но на практике такая схема не даёт достаточного тока при слишком частом пробое газа и даж в холостую там никак не померять выход...разве что кондер на 1000 мкф поставить и мерять быстро...

как вариант в режиме превышения напруги выключать и измерительный резюк от высокого...подключать только на период семпл холд....но где такой коммутатор взять и как угадать время когда входная ёмкость зарядилась и уже можно не мерять?
Что нас не убило сделало нас осторожней
Не доверяйте русским лужам - это может быть вход в метро.
Аватара пользователя
Ser60
Друг Кота
Сообщения: 3784
Зарегистрирован: Ср дек 24, 2008 09:58:58

Re: Помогите стартануть с MSP

Сообщение Ser60 »

Здесь на форуме есть темы про дозиметры Гамма, где разработчики добились малого токопотребления преобразователей на 400в. Думаю, идеи для Вашего преобразователя можно оттуда позаимствовать.
clawham
Поставщик валерьянки для Кота
Сообщения: 1957
Зарегистрирован: Пт окт 31, 2008 09:38:55
Откуда: Одесса
Контактная информация:

Re: Помогите стартануть с MSP

Сообщение clawham »

дозиметры это 400 +-100 вольт и пролет частицы вызывает 10 наносекундную нагрузку 15 мегаомм...у меня нагрузка 1 мегаомм длительность 1 миллисекунда или вообще на постоянно замкнуто

кроме того частиц всего 10 раз в секунду это уже смертельная доза :)....они расчитаны на мизерную нагрузку

у меня нагрузка поболе
Что нас не убило сделало нас осторожней
Не доверяйте русским лужам - это может быть вход в метро.
Аватара пользователя
Ser60
Друг Кота
Сообщения: 3784
Зарегистрирован: Ср дек 24, 2008 09:58:58

Re: Помогите стартануть с MSP

Сообщение Ser60 »

По ДШ - минимальная частота тактирования АЦП при гарантиии его линейности - 450 кгц. Но судя по описанию алгоритма, похоже что компараторы также могут справится со слежением за током и напряжением. Тогда и токопотребление может уменьшится. Если устройство работает 2 года от 2хАА, то принимая емкость АА за 2400 мАч, получаем среднее токопотребление схемы около 130 мкА. А нужно-ли Вам тактиривать ЦПУ на 8 мгц? Покажите схему преобразователя и как происходит слежение за выходным напряжением.
clawham
Поставщик валерьянки для Кота
Сообщения: 1957
Зарегистрирован: Пт окт 31, 2008 09:38:55
Откуда: Одесса
Контактная информация:

Re: Помогите стартануть с MSP

Сообщение clawham »

http://radiokot.ru/forum/viewtopic.php? ... 4#p1777954 это исходная тема...только 34063 сама по себе кушает 3 миллиампера + надо же и мк полюбому какой-то считать импульсы...вот и решил обьединить преобразователь и МК....на атмеге получилось 5 миллиампер сумарно потреблять...думал на мсп меньше - ага...болт...кроме того проц тактуется от /8 тактового сигнала так что нормально...тут в таймере наверное дело ..ибо ацп я тактовал от 12 килогерцового гена и результат - вполне сносный
ещё будет экранчит от 1100 или 3310 но они жрут несоизмеримо мизерно :)
Что нас не убило сделало нас осторожней
Не доверяйте русским лужам - это может быть вход в метро.
Аватара пользователя
Ser60
Друг Кота
Сообщения: 3784
Зарегистрирован: Ср дек 24, 2008 09:58:58

Re: Помогите стартануть с MSP

Сообщение Ser60 »

При напряжении на выходе 400в на нагрузке 1 мом рассеивается 160 мВт. Если КПД преобразователя 100%, то от 3в потребление должно быть 160 мВт/3в = 50 мА (?) Или я чего-то не так понял с нагрузкой?
clawham
Поставщик валерьянки для Кота
Сообщения: 1957
Зарегистрирован: Пт окт 31, 2008 09:38:55
Откуда: Одесса
Контактная информация:

Re: Помогите стартануть с MSP

Сообщение clawham »

1 мегаомм нагрузки это 0.0000000000000000000000001% времени когда газ попал в трубку
тут же сигнализация оценка количества и принятие мер
в остальных случаях эта штучка стоит и никого не трогает, нагрузка 15 мегаомм измерительных...иногда...раз в минуту происходит щелчек самохода от той же радиации естественной - это погрешность и на потребление оно не влияет...

можно это всё представить большим дозиметром с сотней трубок сбм-20
у каждой раз в секунду самоходый щелчек...от сотни - соответственно +- 100 срабатываний :)

вот у меня такая нагрузка...смотрим что там с газом и если кол-во щелчкой перевалило - орем, недовалило - показываем на экране средневзвешенное со скользящим фильтром графиком и реактивностью(нарастанием или спаданием ) концентрации....всё это в реальном времени на протяжении недели-двух не менее...приоритет - минимизация приборчика до носимого портативного устройства....понятно что приделай ручку, акум от упса 12вольт 7 амперчасов и проблема исчерпана...но я сам буду с этим устройством ходить и тащить за собой пол кило гаджет - уже нереально...собственно сичас так и есть юсб девайс и прога на планшете...автономность 4 часа и датчик - это заводской девайс от батареек работает полтора два года....но он тупой ограниченный нефункциональный и т.д. и т.п.
кроме того возможность регулировки напруги меняет спектр реагирования датчика....тоесть на зашкальных концентрациях я перехожу в режим поддержки тока и по напряжению определяю проводимость исследуемого газа...в общем алгоритм отработан но в виде макета на тележке...теперь надо карманник....как дозиметр....чем меньше и дольше работает тем лучше...

можно было бы заказать транс от терры черной....тот самый дозиметр показанный мне как эталон....там мсп430, биполярник и транс/катушка с отводом от середины + умножитель....тоесть что у него на выходе за напряжение не знает никто....проц генерит стандартную пачку из 1000 импульсом 15 килогерц частотой каждый раз когда были срабатывания счетчика гейгера ибо срабатывание уносит фиксированное кол-во энергии из накопительного кондера....
у меня энергия срабатывания не нормирована....мне нужно сенсить высокое ... и держать узкий диапазон...железно...на холостом ходу или на полной нагрузке которая даже в теории сложнодостижима...конечно в макс нагрузке потребление большое...но это крайне редкий случай(закинь терру в контейнер с цезием137 - там тоже сбм-20 не выходит из насыщения светясь как неонка) .... но мой прибор обязан это выдержать..потому нет умножителям и нет безсенсовому гипотетическому поддержанию.

можно конечно 100-200 мегаомм резюк юзать но тогда точность напруги будет под угрозой...ведь у резюков ТКЕ большой а у ноги МК тоже есть ток и он дико зависит от температуры...уже не вариант...должен и 0 держать 400 вольт и на +50 и -10 тоже...но там уже условия помягче...
Что нас не убило сделало нас осторожней
Не доверяйте русским лужам - это может быть вход в метро.
Аватара пользователя
Ser60
Друг Кота
Сообщения: 3784
Зарегистрирован: Ср дек 24, 2008 09:58:58

Re: Помогите стартануть с MSP

Сообщение Ser60 »

Да, видно что Вы уже достаточно эксперименторовали со своим конвертером. Отмечу лишь, что когда делал свой дозиметр, то использовал утроитель, а для контроля напряжения использовал дополнительнуу обмотку на трансе. Абсолютно железно выходное напряжение схема не держала, но для дозиметра было вполне приемлимо.
http://mcs.uwsuper.edu/sb/Electronics/Geiger/
clawham
Поставщик валерьянки для Кота
Сообщения: 1957
Зарегистрирован: Пт окт 31, 2008 09:38:55
Откуда: Одесса
Контактная информация:

Re: Помогите стартануть с MSP

Сообщение clawham »

это то да....но у меня не дозиметр :) газоанализатор если можно так выразиться....там нужно строго держать напругу...иначе кукиш...

я вот думаю мож туда какую-нить лампу с холодным катодом? чтоб её пробивало от напруги больше 400 вольт? или стабилитрон? вольт на 400 :)
Что нас не убило сделало нас осторожней
Не доверяйте русским лужам - это может быть вход в метро.
Аватара пользователя
YS
Друг Кота
Сообщения: 7518
Зарегистрирован: Вс мар 29, 2009 22:09:05
Контактная информация:

Re: Помогите стартануть с MSP

Сообщение YS »

или стабилитрон? вольт на 400
Предлагаю стабилитрон в стиле "сделай сам". :) Напряжение "пробоя" регулируется делителем R1/R2. Очевидно, при напряжении "пробоя" делитель должен выдавать на базу где-то 0.6 - 0.7 В - исходя из этого можно прикинуть сопротивления.

Транзистор BUP35 - 800 В, 10 А, 80 Вт.

Изображение
Разница между теорией и практикой на практике гораздо больше, чем в теории.
clawham
Поставщик валерьянки для Кота
Сообщения: 1957
Зарегистрирован: Пт окт 31, 2008 09:38:55
Откуда: Одесса
Контактная информация:

Re: Помогите стартануть с MSP

Сообщение clawham »

у меня задача - минимизировать ток покоя по высокому напряжению...
в вашей схеме 500 вольт закорочено 1 мегаоммом....а у меня 15...ито мне много

думается что на напруге меньше пробоя стабилитрона ток через него равен нулю...вот так я и буду раз в секунду "подкачивать" до пробоя стабилитрона высокое и потом стоять в спячке...если начали приходить вспышки в ионизационной камере - включаем поддержание напруги пробоя стабилитрона постоянно....пока не пропадут вспышки...потом снова уходим в даун....так сэкономится море энергии....ведь в отсутствие газа пробой раз в минуту происходит...максимум ито....это очень мизерный ток...так что кондер побольше и стабилитрон на 400 вольт :) думается как-то так :)
Что нас не убило сделало нас осторожней
Не доверяйте русским лужам - это может быть вход в метро.
Ответить

Вернуться в «Разные вопросы по МК»