Электроника - это просто Теоретические и практические вопросы для начинающих электронщиков. |
14.09.2014, 06:59
|
|
Почётный гражданин KAZUS.RU
Регистрация: 13.10.2007
Адрес: Беларусь
Сообщений: 8,048
Сказал спасибо: 60
Сказали Спасибо 3,954 раз(а) в 2,309 сообщении(ях)
|
Re: Оно работает!! :)) Еее, удача!
Сообщение от Kabron
|
А я бы посоветовал ТС обратить внимание на Cypress PSoC.
ИМХО в нашем скучном мире это гости из будущего.
|
А я бы посоветовал посмотреть на их цену и забыть про этих "гостей из будущего" как про страшный сон
Для "поковыряться в песочнице" они сойдут, но в серийное изделие пойдут СТМ и АВР/ПИК. Дайте ссылочку почитать на свои изделия с этим СоЧем, желательно с ценой
В итоге только потерянное время. Изучать нужно то, что актуально, а не чтобы "быть не как все"
Сообщение от Someone
|
Ну и накуй там такая таблица? Погуглите "Cordic", оно же "цифра за цифрой".
|
Так и я про то же
|
|
|
|
14.09.2014, 07:34
|
|
Почётный гражданин KAZUS.RU
Регистрация: 07.05.2008
Адрес: Мурманск
Сообщений: 1,300
Сказал спасибо: 461
Сказали Спасибо 526 раз(а) в 273 сообщении(ях)
|
Re: Оно работает!! :)) Еее, удача!
Сообщение от ban banovich
|
у машины родной язык ассемблер. всё остальное - переводчики.
|
А компилятор переводит разве не в родной язык машины? Сомневаюсь, что в китайский. Когда-то предлагал написать для примера десяток строчек математики с четырьмя числами после запятой, где в каждой строке tg, sin, cos, arcos, arctn, деление и умножение, возведение в степень. Знающие АСМ скромно промолчали.
|
|
|
|
14.09.2014, 07:38
|
|
Почётный гражданин KAZUS.RU
Регистрация: 07.05.2008
Адрес: Мурманск
Сообщений: 1,300
Сказал спасибо: 461
Сказали Спасибо 526 раз(а) в 273 сообщении(ях)
|
Re: Оно работает!! :)) Еее, удача!
«Бог создал людей сильными и слабыми. Сэмюэл Кольт сделал их равными». Так и СИ.
|
|
|
|
14.09.2014, 09:27
|
|
Гуру портала
Регистрация: 06.05.2005
Адрес: Краснодар, возле укротворного моря.
Сообщений: 18,978
Сказал спасибо: 2,554
Сказали Спасибо 11,858 раз(а) в 5,942 сообщении(ях)
|
Re: Оно работает!! :)) Еее, удача!
Сообщение от ban banovich
|
у машины родной язык ассемблер. всё остальное - переводчики.
|
Да будет Вам известно, АСМ - тоже переводчик, только с наиболее близкого языка в "мышиный". Машина не понимает мнемоники и макросы. Не верите? Так "это же элементарно, Ватсон!"(с). Влейте в контроллер ТЕКСТ программы, а не КОД - именно бинарный КОД. Продолжать? Или уже понято?
И еще попробуйте написать именно в машинных КОДАХ. Вам не поплохеет на уже десятой команде?
Думайте перед постингом. Программирование - вещь конкретная, оно не допускает "шаг вправо, шаг влево", а если программист допускает такие вольности, то на выходе то, что называют "говнокод". Бардак в мыслях вызывает бардак в программе.
Истинный программер на ночь ставит на тумбочку два стакана - полный и пустой...
__________________
Не бейте больно, ежели чо, ну не удержался... А вааще,
"Мы за все хорошее, против всей х..., По лугам некошеным чтобы шли ступни,
Чтобы миром правила правда, а не ложь, Мы за все хорошее, нас не на...!
..." (Ленинград)
Я не несу ответственности за свои действия в Вашей голове.
Последний раз редактировалось akegor; 14.09.2014 в 09:40.
|
|
|
|
14.09.2014, 10:02
|
|
Почётный гражданин KAZUS.RU
Регистрация: 08.06.2008
Сообщений: 1,394
Сказал спасибо: 4
Сказали Спасибо 183 раз(а) в 167 сообщении(ях)
|
Re: Оно работает!! :)) Еее, удача!
Сообщение от niXto
|
Я выше уже пояснял. Акселерометр+гироскоп, дают на выходе значения ускорения в 16-битном виде, их через арктангенс превращаем в углы. И вот в этом месте мы можем потерять в точности, т.к. чем дальше от 0° (к ±90), тем бОльшие значения чисел, и даже 16-битная арифметика не катит. И ваша таблица на 3,6 кБ для "4-байтного результата" - тоже
Потому что она будет нифига не 3,6 кБ, даже с очень сильной аппроксимацией
|
Давайте сделаем функцию atan2(short x,short y) , без всякой безумной математики.
Для начала сделаем файл с таблицей тангенсов от 0 до 45 xthtp 0.1 градуса, но немного хитрую
short tab_tan[];
tab_tan[i]=(short) (tan( ((0.05 + i*0.1 ) * PI)/180.0 )*8192.0)
Как Вы заметили она займет всего 902 байта, а даже не 3 кб.
Ну а теперь сама функциа atan2(short X, short Y);
Разбор с нулями и знаками - очевиден.
А вот и арктангенс для угла от 0 до 90 градусов с шагом 0.1 градуса
short z;
if(X‹=Y)
{
z = (X ‹‹ 13) / Y;
}
else
{
z = (Y ‹‹ 13) /X;
}
А дальше все просто как мычание - угол в десятых градуса равен индекс таблички для этого z.
И если Х было больше Y , то угол равен 900 - угол.
|
|
|
|
14.09.2014, 10:11
|
|
Почётный гражданин KAZUS.RU
Регистрация: 07.05.2008
Адрес: Мурманск
Сообщений: 1,300
Сказал спасибо: 461
Сказали Спасибо 526 раз(а) в 273 сообщении(ях)
|
Re: Оно работает!! :)) Еее, удача!
Сообщение от akegor
|
АСМ - тоже переводчик
|
Это прописная и всем известная истина. Когда писал программы для Z80 на бейсике, там использовал вставки в машинных кодах и ничего страшного. Нужно LD HL xxxx, смотришь в таблицу, ставишь циферку, затем через запятые младший байт, старший байт и т.д.
|
|
|
|
14.09.2014, 10:12
|
|
Почётный гражданин KAZUS.RU
Регистрация: 08.06.2008
Сообщений: 1,394
Сказал спасибо: 4
Сказали Спасибо 183 раз(а) в 167 сообщении(ях)
|
Re: Оно работает!! :)) Еее, удача!
для nixto Синус табличный делал, когда делали калибратор сигналов сложной формы. Там для 128 синусов задавалась фаза, частота и амплитуда, потом все это суммировалось и формировался сигнал.
|
|
|
|
14.09.2014, 10:22
|
|
Гуру портала
Регистрация: 06.05.2005
Адрес: Краснодар, возле укротворного моря.
Сообщений: 18,978
Сказал спасибо: 2,554
Сказали Спасибо 11,858 раз(а) в 5,942 сообщении(ях)
|
Re: Оно работает!! :)) Еее, удача!
Сообщение от IOPA4
|
Это прописная и всем известная истина.
|
Не всем. Иным приходится это разжевывать.
__________________
Не бейте больно, ежели чо, ну не удержался... А вааще,
"Мы за все хорошее, против всей х..., По лугам некошеным чтобы шли ступни,
Чтобы миром правила правда, а не ложь, Мы за все хорошее, нас не на...!
..." (Ленинград)
Я не несу ответственности за свои действия в Вашей голове.
|
|
|
|
14.09.2014, 10:28
|
|
Почётный гражданин KAZUS.RU
Регистрация: 13.10.2007
Адрес: Беларусь
Сообщений: 8,048
Сказал спасибо: 60
Сказали Спасибо 3,954 раз(а) в 2,309 сообщении(ях)
|
Re: Оно работает!! :)) Еее, удача!
Сообщение от akegor
|
И еще попробуйте написать именно в машинных КОДАХ. Вам не поплохеет на уже десятой команде?
Думайте перед постингом.
|
В давние-давние годы, когда компьютеры были большими, а зарплаты - маленькими, не плохело... Это с51, и большинство команд знал наизусть. И чо?
http://s55.radikal.ru/i149/1409/5d/4bbc6df38182.jpg
Сообщение от Boba_spb
|
Синус табличный делал, когда делали калибратор сигналов сложной формы. Там для 128 синусов задавалась фаза, частота и амплитуда
|
Конкретно для моей задачи табличный метод не подходил
|
|
|
|
14.09.2014, 10:30
|
|
Почётный гражданин KAZUS.RU
Регистрация: 12.11.2004
Адрес: Москва
Сообщений: 8,567
Сказал спасибо: 701
Сказали Спасибо 4,335 раз(а) в 1,986 сообщении(ях)
|
Re: Оно работает!! :)) Еее, удача!
akegor,
про PSoC 5 читайте
__________________
Я не помогаю. Я провоцирую думать.
Не дай вам Бог плохих контактов.
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 07:55.
|
|