|
|
  |
MSP430 - снова вопросы от чайника, Вопросы от чайника про MSP и магнитный компас |
|
|
|
Oct 19 2008, 17:44
|
Местный
  
Группа: Участник
Сообщений: 229
Регистрация: 24-02-08
Пользователь №: 35 345

|
Цитата(SSerge @ Oct 19 2008, 05:36)  Начиная с 99 года в С стало возможно описывать массивы с переменной длинной, IAR этот стандарт поддерживает. Спасибо за пример. То, что вообще в С возможно, я понимаю, в билдере можно и function( float a[][]), и function(float**a). Про IAR rezident объяснил. Спасибо всем!
|
|
|
|
|
Oct 20 2008, 16:42
|
Частый гость
 
Группа: Участник
Сообщений: 92
Регистрация: 1-06-08
Пользователь №: 37 959

|
Цитата(yanita @ Oct 20 2008, 19:16)  Немного не в тему, но зато от чайника. Есть ли готовая макетная плата с контроллером MSP430 с АЦП и ЦАП? Да, например, вот эта: http://www.terraelectronica.ru/pdf/OLIMEX/MSP430-H1611.pdf
|
|
|
|
|
Oct 20 2008, 17:31
|
Местный
  
Группа: Участник
Сообщений: 229
Регистрация: 24-02-08
Пользователь №: 35 345

|
Цитата(yanita @ Oct 20 2008, 19:16)  Немного не в тему, но зато от чайника. Есть ли готовая макетная плата с контроллером MSP430 с АЦП и ЦАП? О! В нашем полку чайников прибыло rezident, или кто-нибудь еще - А есть ли какие-нибудь функции, позволяющие организовать память как массив массивов(мне, как чайнику, было бы удобнее и понятнее  ) То есть, можно, конечно просто создавать массив, в котором содержатся адреса массивов, и вот с этим массивом тогда запросто работать, но, может, есть какие-то готовые функции, чтобы не париться с объявлением всех этих массивов? (Вот оно, нестандартное женское мышление, это оно  ) Да, и все-таки про уравнение - никто, значит, не сталкивался?
|
|
|
|
|
Oct 23 2008, 19:37
|

Знающий
   
Группа: Свой
Сообщений: 723
Регистрация: 29-08-05
Из: Березовский
Пользователь №: 8 065

|
Цитата(Daria @ Oct 24 2008, 00:52)  А вот вопрос - у какого кристалла MSP самое большое ОЗУ? И нет ли у кого ссылочки на перевод руководства по IAR на русский язык(если такой перевод есть)? Т.е. самой поискать на сайте производителя уже влом? Тогда вот ссылка -- http://focus.ti.com/paramsearch/docs/param...&family=mcuВ четвертом списке указываете максимальный объем оперативы (только не перепутайте "B" и "KB", они там не "по-росту" стоят!) и жмите на ссылку "Show me" (там же -- под списками). Я так подозреваю, что оператива жрет много, поэтому TI старается ее особо не раздувать. Дарья, может быть Вы все-таки не тот проц выбрали под свою задачу? Може стоило посмотреть на LPC или AVR. На сколько я понимаю, у Вас в задаче присутствуют достаточно интенсивные вычисления. А при интенсивных вычислениях MSP430 потребляет примерно столько же, что и другие процы. Вы потребляемый ток мерили? Можете назвать цифру? (Просто любопытно.) ЗЫ. Попутно для всех. Просто для информации. Не по теме. У меня тут намедни в процессе настройки в одном девайсе у TPS71533 случайно оборвалась лапка земли, и стабилизатор погнал "много" напряжения на MSP430F2001. "Много" -- это 6.8 В. Проц был "под напряжением" около десятка минут. Девайс работал исправно, я даже сдуру подумал, что навернулся тестер и пошел по этой версии. Это уж потом, через время я убедился, что тестер исправен. Что удивительно -- микруха живая, даже флешь не слетела. Проц и сейчас работает нормально, претензий нет. Понятно, что в поставку этот экземпляр уже не пойдет. Но сам факт меня удивил.
--------------------
Хочешь рассмешить Бога -- расскажи ему о своих планах!
|
|
|
|
|
Oct 23 2008, 20:03
|
Местный
  
Группа: Участник
Сообщений: 229
Регистрация: 24-02-08
Пользователь №: 35 345

|
Цитата(rezident @ Oct 23 2008, 23:07)  Из доступных: MSP430F1611 - 10240 байт ОЗУ, а вообще выбирайте сами => Product BrochureУх ты. спасибо Цитата(zhevak @ Oct 23 2008, 23:37)  Дарья, может быть Вы все-таки не тот проц выбрали под свою задачу? Да нет, нормально, это я на будущее смотрю  К тому же я не выбирала, мне его ВЫДАЛИ Цитата(zhevak @ Oct 23 2008, 23:37)  А при интенсивных вычислениях MSP430 потребляет примерно столько же, что и другие процы. Вы потребляемый ток мерили? Можете назвать цифру? (Просто любопытно.) Да нет, интенсивные вычисления будут примерно один раз в день, при первоначальном включении. Потом все потихоньку  да и этих вычислений не должно было бы быть, просто особенности конструкции изделия, заставляют придумывать какую-то извращенную калибровку А про ток сейчас на вскидку не могу сказать - вся плата потребляет 40 мА, но это потому, что разводил ее чел, тоже не очень далеко от меня ушедший, он поставил там импульсники, которые жутко много потребляют. Сколько потребляет сам проц высчитывать неохота  Но, думаю, когда спаяем новую плату, в обычном режиме работы все будет в этом смысле ок Спасибо за ссылочку и советы - я действительно обленилась, Вы правы
Сообщение отредактировал Daria - Oct 23 2008, 20:03
|
|
|
|
|
Oct 23 2008, 20:31
|
Гуру
     
Группа: Свой
Сообщений: 10 920
Регистрация: 5-04-05
Пользователь №: 3 882

|
Цитата(zhevak @ Oct 24 2008, 01:37)  Я так подозреваю, что оператива жрет много, поэтому TI старается ее особо не раздувать. В MSP430 ОЗУ статическое посему потребляет оно немного, особенно в статическом режиме, когда ядро "спит". А вот по площади на кристалле SRAM занимает значительно больше места, чем Flash такого же объема. Да и по стоимости SRAM дороже выходит. Если очень грубо оценивать, то один бит SRAM это один триггер или около десятка транзисторов, а один бит Flash это один транзистор с плавающим затвором. Цитата(zhevak @ Oct 24 2008, 01:37)  Дарья, может быть Вы все-таки не тот проц выбрали под свою задачу? У меня тоже такое же впечатление начинает складываться  Цитата(Daria @ Oct 24 2008, 02:03)  А про ток сейчас на вскидку не могу сказать - вся плата потребляет 40 мА, но это потому, что разводил ее чел, тоже не очень далеко от меня ушедший, он поставил там импульсники, которые жутко много потребляют. Сколько потребляет сам проц высчитывать неохота  Навскидку. Если выходы не нагружены чем-то непотребным, то думаю никак не более 5мА потребляет.
|
|
|
|
|
Oct 26 2008, 22:01
|

Гуру
     
Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095

|
Цитата(Daria @ Oct 26 2008, 22:47)  К примеру, сколько тактов процессора нужно для вычисления произведения двух float-чисел? А double? А написать Код void main() { volatile float Tmp1 = 1.2345; volatile float Tmp2 = 678.9; volatile Tmp3 = Tmp1 * Tmp2; // аналогично для целых ........ } и прогнать в симуляторе лень? На всякий случай: количество тактов зависит от перемножаемых чисел и от реализации алгоритма. Но приблизительный порядок вы таким образом узнаете.
--------------------
На любой вопрос даю любой ответ"Write code that is guaranteed to work, not code that doesn’t seem to break" ( C++ FAQ)
|
|
|
|
|
Oct 28 2008, 20:10
|
Местный
  
Группа: Участник
Сообщений: 229
Регистрация: 24-02-08
Пользователь №: 35 345

|
Так. Мне все-таки придется решать уравнение четвертой степени Точно никто не делал?  Насколько вообще реализуема эта задача? Может сразу заказать этот MSP430F1611 c 10KB ОЗУ? Хотя вобще-то решать его нужно один раз, при первоначальной калибровке, при включении питания. Время не ограничено - пока не решит, можно ждать. Но сам принцип? Вот если знать отрезок, на которой функция(многочлен в левой части) меняет знак, то методом последовательных приближений(делением отрезка пополам, например)можно получить решения с точностью, обусловленной числом итераций. Но как найти диапазон значений?  коэффициенты при переменной вычисляются из данныйх АЦП по двум каналам, и двум значениям кренов. Диапазоны значений АЦП и кренов, естесственно известны. Но по шести параметрам определить область функции... маткад, например, зависнет Вообще, кто-нибудь решал уравнения на MSP? Отзовитесь, если вдруг.
Сообщение отредактировал Daria - Oct 28 2008, 20:14
|
|
|
|
|
Oct 30 2008, 09:05
|
Группа: Новичок
Сообщений: 7
Регистрация: 25-10-08
Пользователь №: 41 188

|
Если вам поможет для ваших прикидок, то у меня прибор использует при интерполяции уравнение параболы. Есть возможность для уточнения показаний во время калибровки вставить точку между двумя существующими. Т.е. грубо говоря, пересчитать две параболы. Правда у меня целочисленка используется с long int. Ничо, всё считает где-то за сотню миллисекунд, может и меньше. Сужу по времени ответа. Хотя в винде по времени попадания данных в буфер интервал можно оценить достаточно приблизительно. Эт я ещё тактовую не поднимал.
Сообщение отредактировал Измеритель верёвочками - Oct 30 2008, 09:14
|
|
|
|
|
Nov 1 2008, 17:30
|
Местный
  
Группа: Участник
Сообщений: 229
Регистрация: 24-02-08
Пользователь №: 35 345

|
Цитата(Измеритель верёвочками @ Oct 30 2008, 13:05)  Если вам поможет для ваших прикидок, то у меня прибор использует при интерполяции уравнение параболы. Есть возможность для уточнения показаний во время калибровки вставить точку между двумя существующими. Т.е. грубо говоря, пересчитать две параболы. Правда у меня целочисленка используется с long int. Ничо, всё считает где-то за сотню миллисекунд, может и меньше. Сужу по времени ответа. Хотя в винде по времени попадания данных в буфер интервал можно оценить достаточно приблизительно. Эт я ещё тактовую не поднимал. О! Спасибо, что откликнулись. По поводу параболы - решаете квадратное уравнение ax^2+bx+c? но оно вообще говоря может не иметь действительных решений, если D=sqrt(b^2-4ac)<0/ Какпоступаете? решение +-sqrt(D)/2a может быть мнимым числом - контроллер посчитает полную фигню. С моим уравнением четвертой степени та же история. Просто пробросить эту точку я не могу, как считаете можно ли брать модуль D? Сложно оценить погрешность... И еще -ВОПРОС КО ВСЕМ  Программа не готова, а мне уже надо начинать документацию. и вот какое дело - на плате предусмотрены разъемы и для программирования по JTAG, и для BSL. JTAG fuse я пережгу, но все равно останется возможность доступа к программе по BSL - по крайней мере стереть можно  Как полностью закрыть доступ к прошитой программе и по BSL? Разъем убирать уже поздно... ОЧЕНЬ ВАЖНЫЙ ВОПРОС! Как всегда простите за дилетантство
Сообщение отредактировал Daria - Nov 1 2008, 17:35
|
|
|
|
|
  |
3 чел. читают эту тему (гостей: 3, скрытых пользователей: 0)
Пользователей: 0
|
|
|