-
Content Count
2291 -
Joined
-
Last visited
Content Type
Profiles
Forums
Calendar
Everything posted by DpInRock
-
Ситема ориентация беспилотного летательного аппарата
DpInRock replied to Simeon's topic in В помощь начинающему
Горизонт в самолете показывает гироскоп. А перпендикулярный оному вполне покажет крен вверх-вниз. :05: -
Ситема ориентация беспилотного летательного аппарата
DpInRock replied to Simeon's topic in В помощь начинающему
А если скажут, то сядут. имхо люди давно плюнули на магнитное поле. оно разное везде. да еще и на север не везде показывает.GPS - решение проблем. А всякие изменения местоположения платформы относительно гравитационного поля - это относительно простая задача. Есть такая штука - гироскоп. Вообще. Пара гироскопов и вы о самолете знаете все. -
Ситема ориентация беспилотного летательного аппарата
DpInRock replied to Simeon's topic in В помощь начинающему
http://www.israeli-weapons.com/weapons/air...Hermes_450.html -
Вопрос по указателям
DpInRock replied to eav1978's topic in В помощь начинающему
В одно действие чего именно? (микропроцессора, языка С...)? -
Отключение периферии
DpInRock replied to gretis's topic in В помощь начинающему
Чего тут мудрить - нихт понятно. Тут магазинная схема. Работай - не хочу. -
Подсчет количества единиц
DpInRock replied to lotor's topic in В помощь начинающему
Это справедливо для любой схемы. Ибо товарищ не объяснил дальнейшее использование этого кода. -
Megа16 не хочет набирать номер ...
DpInRock replied to dima34's topic in В помощь начинающему
Вас ожидает еще столько удивительных и фееричных вещей для отправки СМС...:) -
Подсчет количества единиц
DpInRock replied to lotor's topic in В помощь начинающему
Проще ПЗУ не придумать. А раз человек не в курсе про схемотехнику, то подключать альтеру какую-нибудь чисто умается. -- Есть еще один извратный способ, но очень простой. Все выходы АЦП объединяются через резисторы, к примеру, 10 килоом. С точки объединения - на землю какой-нибудь резистор, килоом 100, например. Тогда напряжение на выходе будет прямопропорционально числу единиц. ставим крутой стрелочный прибор и градуируем его. Точность будет очень хорошей. Ибо всего 8 градаций. Это примерно 0.6 вольта на единицу при питании 5 вольт. Очень круто будет. Hi-end измеритель чила единиц. Почти ламповый. К тому же препод отвергнет идею с альтерой. Это не есть рассыпуха. А вот ПЗУ под это дело подходит лучше. Формально - это рассыпуха. -
Подсчет количества единиц
DpInRock replied to lotor's topic in В помощь начинающему
Специалист, который не умеет делать на рассыпухе - никто. Это радиолюбитель. Для дома, для семьи. Сделай сам. И пр. Надо учиться. Надо. -
Подсчет количества единиц
DpInRock replied to lotor's topic in В помощь начинающему
Очень просто. Поставить на выход АЦП ПЗУ. Минимум 256х3. Каждое значение АЦП в диапазоне 0-255 будет адресом ПЗУ. Ну а запрограммировать ПЗУ так, чтобы в соот. адресе было число, которое показывает число единиц в этом адресе. Тут хватит всего три бита. Это самая простая схема. А если вы не знакому с методами построения логических схем, то на более простых элементах вам это не сделать. Но идея такова. Записываете логическое выражение зависимость конкретного разряда выхода от состояния всях входов. Минимизируете ее. Оставшееся - реализуете на элементах И-НЕ или ИЛИ-НЕ. Но чтобы вам тут все это рассказать нужно примерно 1 семестр времени и сотня килобайт текста. -
Источник прерывания для АЦП
DpInRock replied to SAS-1983's topic in В помощь начинающему
Вообще-то АЦП везде ОДИН. Входы - мультиплексируются. Номер входа никак не связан с завершением преобразования. АЦП глубоко наплевать по какому входу пришла аналоговая информация. -
Как принудительно закрыть транзистор?
DpInRock replied to DMD's topic in В помощь начинающему
Про цвет люди спрашивают, чтобы узнать падение напряжение на диоде. У синих оно существенно больше. -
Правильно ли я сделал?
DpInRock replied to na1s's topic in В помощь начинающему
Вы лучше программу попробуйте написать для начала без вызовов подпрограмм. Сомнения сильные охватывают. Что удастся. По поводу хальта - вам экономия не нужна. По хальту можно сделать завершение алгоритма, по ресету (кнопка готовности) - начало. Заодно избавитесь от необходимости всякие дребезки убирать. Хотя их и не сильно нужно убирать. -
Правильно ли я сделал?
DpInRock replied to na1s's topic in В помощь начинающему
Насколько я припоминаю контроллер прерываний выставляет на шину данных адрес обработчика (или вектор). Или номер. Уже не помню. Но то, что что-то высталяет на шину - точно помню. Если адрес - то тогда да, ничего не забъешь. Вроде вспомнил. Он выставляет код CD (вызов подпрограммы CALL), а потом 2 байта адреса. Значит, если резюками создать слабые подтяжки вверх и вниз, то можно симитировать обработчик прерывания по адресу CDCD. Вот так примерно. -
Правильно ли я сделал?
DpInRock replied to na1s's topic in В помощь начинающему
Контроллер прерывания необязателен. Просто все вектора надо забить одинаковым значением. Какой-нибудь да сработает. -
Правильно ли я сделал?
DpInRock replied to na1s's topic in В помощь начинающему
Проще завести эту кнопку на РЕСЕТ. Тем более, что прерывания требуют ОЗУ. Которого у вас нет. -
алгоритм для записи пульта в AVR
DpInRock replied to VAHOO's topic in В помощь начинающему
http://ww1.microchip.com/downloads/en/AppNotes/01064A.pdf Вот тут все описано. Максимальная длительно стабильного интервала у вас буде 1.7 мс. Это для RC5. У Сони битовый интервал тоже где-то в этих пределах. Вот сделайте так, чтобы таймер заполнялся (пока) за 2 миллисекунды. Т.е. на вход ему надо дать частоту 500 ГЦ*256=128 Кгц примерно. -
алгоритм для записи пульта в AVR
DpInRock replied to VAHOO's topic in В помощь начинающему
Не путайте человека. Окончание интервала со стабильным значением бита определяется сменой этого самого значения. Таймер вообще не причем. А, бит, конечно не имеет размерности времени, пока лежит в памяти. А вот при передаче уже имеет размерность времени. Объясняю еще раз. Сначала накапливаем интервал, а потом режем его на один или несколько бит, в зависимости от длины. Таким образом мы всего лишь скокращаем необходимую память для хранения принятой посылки. Но заодно и решае проблему сравнения интервалов, если бы мы не превращали эти интервалы в биты. Ибо тогда пришлось бы как-то округлять эти интервалы при сравнении. Ибо раз от раза они будут все равно разными. -
алгоритм для записи пульта в AVR
DpInRock replied to VAHOO's topic in В помощь начинающему
БИТ, Клим, характеризуется не только ЗНАЧЕНИЕМ, но и ДЛИТЕЛЬНОСТЬЮ!!!! Вы описываете меандр. Настроить таймер на максимальную частоту. Но так, чтобы дительность самого большого интервала с постоянным уровнем укладывалась в 255 единиц инкремента таймер. Никаких прерываний от таймера. Таймер просто считывается в нужные моменты и обнуляется. Если есть возможность, то вход с приемника сделать прерыванием по изменению уровня. Тогда на каждое прерывание такого рода вы будете считывать число из таймера и потом обнулять таймер. Дальше по алгоритму. -
алгоритм для записи пульта в AVR
DpInRock replied to VAHOO's topic in В помощь начинающему
Отличается степенью доходчивости до клиента. Ибо если так непонятно, то надо объяснять сяк. Или эдак. До получения результата. 10101010101 - не такая. Против этого я возражал и возражаю. -
Модуль SIM300DZ
DpInRock replied to Magellan80's topic in Предлагаю работу
Вы что-то имеет против документации? 3.4 вольта минимум, 4.5 максимум. Гарантирую, что это условие товарищ не соблюл. -
алгоритм для записи пульта в AVR
DpInRock replied to VAHOO's topic in В помощь начинающему
НЕТТТ!!! Еще раз. 1. Засекаете переход, например в ноль. 2. Включаете таймер. 3. Ждем переход в 1 4. Записываем длительность посылки и обнуляем таймер 5. Ждем переход в ноль 6. Записываем длительность посылки, обнуляем таймер. Гоу то пункт 3. Каждое число полученное в ПРОЦЕССЕ будет говорить о КОЛИЧЕСТВЕ 0 или 1 на конкретном участке. А не ОБ ОДНОМ НУЛЕ ИЛИ ЕДИНИЦЕ. Зная длительность минимального импулься можно расчитать, сколько нулей или единиц содержится в КАЖДОМ ИЗ ПОЛУЧЕННЫХ ЧИСЕЛ!!! Ясно? -- Пример. Длительность нуля 150 Длительность 1 - 200 Длительность 0 -30 Длительность 1 60 .... Из этого делаем вывод что сначала пришло 5 нулей потом 7 единиц потом один НОЛЬ потом 2 единицы. Понятно???? Кода у меня нет. Убил давно. -
А какой компилятор Pascal для AVR? Где его взять
DpInRock replied to Tefochek's topic in В помощь начинающему
Нормальный паскаль. Попробовал. Очень нормально. Токо не понял, в каком месте начнет таблетку просить... -
алгоритм для записи пульта в AVR
DpInRock replied to VAHOO's topic in В помощь начинающему
1. Нам неизвестна природа посылки. 2. Нам неизвестна скорость передачи 3. Единственное, что мы знаем наверняка, это то, что из приемника выходит некая последовательность уровней. Эти последовательности обычно разделены паузой. Все. Записывая же напрямую битовую последовательность, мы можем напороться (и скорее всего напоремся) на ЛИШНИЕ или недостающие биты (из-за незнания точной скорости и из-за неумение ее точно поддерживать, как нами так и передатчиком). То, как я описал - я лично делал. Работало со всеми пультами, которые видел приемник. Т.е. обучаемость была очень высокая. С полтыка. -
алгоритм для записи пульта в AVR
DpInRock replied to VAHOO's topic in В помощь начинающему
У вашего ПРИЕМНИКА определение 0 и 1 соответсвующее ИМЕННО ЭТОМУ приемнику. Приемник просто демодулирует посылку. А вы превращаете эту посылку в список длительностей. Скажем, в посылке 30 бит. Значит длина массива с длительностями будет где-нибудь 60 байт. (Первую длинную можно не учитывать, а использовать как признак начала посылки). Если столько места нет, то превращать эти длительности тупо в биты. Например, замерили вы следущее: 100, 30, 47, 210, 150 каких нибудь единиц времени. Видим, что минимальная длительность бита - 30. значит превращаем эти числа в биты: 11101000000011111 - уже намного короче. И делать это можно по ходу действия. Только заранее забить минимальную длительность бита. Можно брать реальную (будет точнее), а можно и от балды.