-
Постов
2 977 -
Зарегистрирован
-
Посещение
-
Победитель дней
2
Весь контент GenaSPB
-
Загрузка программы через JTAG в AT91R40008
GenaSPB ответил Polosalbli тема в ARM, 32bit
h-jtag - нажать только одну кнопочку... может он поддерживает этот процессор? И бесплатно. ps: не поддерживает... но может получится? -
DDS vs PLL+VCO
GenaSPB ответил uriy тема в RF & Microwave Design
А раньше Вы писали: Где недостающие 10 дБ (а то и 20 дБ) искать будете? -
Квадратурный сигнал из mega128
GenaSPB ответил NikWik тема в MCS51, AVR, PIC, STM8, 8bit
Если Вас интересует меандр - первый сигнал - старший бит сумматора. второй сигнал - (старший байт сумматора + 0x40) - от этого старший бит. Нарисуйте график - дойдёт. -
Квадратурный сигнал из mega128
GenaSPB ответил NikWik тема в MCS51, AVR, PIC, STM8, 8bit
Коллега написал: Похоже, что камни с DDS, что камни с PLL одникаово тяжело по почте заказать. -
Квадратурный сигнал из mega128
GenaSPB ответил NikWik тема в MCS51, AVR, PIC, STM8, 8bit
Нет, все-таки к Гуглю вы так и не обратились.... Дискретность частоты nco зависит от разрядности сумматора. Есть асемблерные реализации nco на атмега8 - люди получали около 100 кГц синусоиду - обсуждалось на forum.cqham.ru Зайдите и сюда - http://www.scienceprog.com/avr-dds-signal-...-asm-explained/ http://www.mikrocontroller.net/topic/70798 DDS - это NCO + таблица синусов + ЦАП. Вам надо только взять ДВА старших разряда сумматора. С них получите два квадратурных сигнала. Работа с чем-либо еще в фоне будет вызыват помехи в выходном сигнале. А вот поставить (активный) фильтр на выходе каждого канала - будет лучше. Но это все зависит от требуемой точности фазового сдвига, отказ от ЦАП тоже увеличивает уровни побочных сигналов. НУ вот готовая конструкция с применением таких технологий: http://www.myplace.nu/avr/minidds/index.htm Даже исходники есть. http://www.myplace.nu/avr/minidds/minidds.asm -
Квадратурный сигнал из mega128
GenaSPB ответил NikWik тема в MCS51, AVR, PIC, STM8, 8bit
Реализовать алгоритм NCO сможете? Это накапливающий сумматор, старший бит которого в Вашем случае выдается на выход. Гуглить в сторону NCO, DDS, AD9834 -
Как нарисовать стрелку в С++?
GenaSPB ответил skyfoxx тема в Программирование
Я рисовал в фотошопе стрелку - потом поворачивал её на нужный угол - и записывал. Попробуйте сделать хоть 36 образов стрелки и взяв угол с точностью 10 градусов выбрать нужный имедж для рисованя static UINT ids [12] = { IDI_ARROW_0G0, IDI_ARROW_0G1, IDI_ARROW_0G2, IDI_ARROW_0G3, IDI_ARROW_0G4, IDI_ARROW_0G5, IDI_ARROW_0G6, IDI_ARROW_0G7, IDI_ARROW_0G8, IDI_ARROW_0G9, IDI_ARROW_0G10, IDI_ARROW_0G11, }; for (int i = 0; i < 12; ++ i) { arrowPoint [i] = AfxGetApp()->LoadIcon(ids [i]); } ... { int iangle = ((m_iAngle - m_iOffset + FULL_CIRCLE)%(FULL_CIRCLE)); double angle = iangle / 3600 * PI * 2 / 360; int yTarget = - (int) (radius * cos(angle) * 0.85); int xTarget = (int) (radius * sin(angle) * 0.85); int yTarget0 = - (int) (radius * cos(angle) * 0.1); int xTarget0 = (int) (radius * sin(angle) * 0.1); m_invisibleDc.SelectObject(m_darkRedPen); m_invisibleDc.SelectObject(m_darkRedBrush); m_invisibleDc.MoveTo(cpt.x + xTarget0, cpt.y + yTarget0); VERIFY(m_invisibleDc.LineTo(cpt.x + xTarget, cpt.y + yTarget)); { int zoneAngle = ((iangle + 15 * 3600) / (3600 * 30)) % 12; ASSERT(zoneAngle < 12); CPoint cp = CPoint(cpt.x + xTarget, cpt.y + yTarget); VERIFY(m_invisibleDc.DrawIcon(cp.x + iconXOffset, cp.y + iconYOffset, arrowPoint [zoneAngle])); } } -
Удержание кнопки 6 секунд
GenaSPB ответил decsal тема в MCS51, AVR, PIC, STM8, 8bit
Результат, собственно, и выложен был в этой теме. Обычное дело для C-шных проектов. Сейчас в нем осталось только ATMega и AT91SAM7S, i386 остался "за кадром". В том не использовалось ничего из специфической периферии - только ввод с выводом через паралельные порты - потому легко м перенеслось. Да, и библиотека целочисленной арифметики с произвольной длинной операндов была заменена на typedef unsigned long long phase_t; -
Удержание кнопки 6 секунд
GenaSPB ответил decsal тема в MCS51, AVR, PIC, STM8, 8bit
Если Вы заметили, этот проект, что отдан на растерзание - тоже сделан для себя, для радиолюбительских целей. С желанием повозиться поспорить не могу, но вот этим проектом я вожусь уже довольно долго - около двух лет - и желание дорабатывать и менять его не зависит от языка. Просто "возня" переходит на другой уровень - на функциональность, на ясность кода, на то, что доставляет больше удовольствия - в конце концов на пользование готовыми изделиями. Я возился со всем (почти со всем) кроме mcs51. И работающее изделие на новом для меня AVR появилось за несколько часов после того, как я принес домой первый купленный мною в магазине ATMega162 и спаял stk200. С ассемблером разбираться не стал - а просто засунул в него один из старых проектов для Intel386. -
ADC_SDIN = adc_conf_hi & 0b10000000; Может, так: ADC_SDIN = (adc_conf_hi & 0b10000000) != 0; Или присвоение единицы в случае не-нуля для битовых полей автоматически в Вашем компиляторе делается?
-
Удержание кнопки 6 секунд
GenaSPB ответил decsal тема в MCS51, AVR, PIC, STM8, 8bit
ОХ! вот, оказываеттся, чем Вы занимаетесь! Сказали бы - я тихо бы молчал... У Вас, я понимаю, времени еще много впереди? А попробовать свою задачу на С изобразить времени нет? -
DDS vs PLL+VCO
GenaSPB ответил uriy тема в RF & Microwave Design
Вторую гармонику давить на столько же будете? Если да - скажите как. -
Удержание кнопки 6 секунд
GenaSPB ответил decsal тема в MCS51, AVR, PIC, STM8, 8bit
Надеюсь, Вы заметили что эта строка относится к автоповтору, а не к фиксации удержанного нажатия клавиши? -
Удержание кнопки 6 секунд
GenaSPB ответил decsal тема в MCS51, AVR, PIC, STM8, 8bit
да, так и задумано... -
Но сначала нам придется процитировать здесь любимые места из описания того компилятора, которым пользуется топикстартер, чтобы ответить на вопрос - а как "в скрипте линкера задать ей конкретный адрес". Как я понял, линкеру обычно про external память ничего неизвестно - так что конфликна не будет...
-
* ((unsigned long *) 0x80000100) = value; Не забывать о выравнивании. Или описать структуру со множеством нужных полей и обращаться к ней struct confdata { unsigned long expirationdate; unsigned char color; }; ((struct confdata *) 0x80000100)->color = value;
-
Удержание кнопки 6 секунд
GenaSPB ответил decsal тема в MCS51, AVR, PIC, STM8, 8bit
в аттаче - файл keyboard.c все Ваши проблемы там решены. -
Я вам симптоматику, вы мне диагноз.
GenaSPB ответил zheka тема в В помощь начинающему
Пункт б это где? Я немного дополнил свое сообщение на предидущей странице... А Атмел сделал новую версию ATMega32A КОторая как раз во всем диапазоне до 5 вольт работает и только ограничения на частоту меняются - 8 или 16 мегагерц... В случае L и не L просто знать про ограничения по минимальному напряжению питания у каждой из них. -
Я вам симптоматику, вы мне диагноз.
GenaSPB ответил zheka тема в В помощь начинающему
И Вы это называете "работает"? Да в чем угодно может "выстрелить" нештатный режим... Действительно всё остальное лишено смысла при такой постановке задачи... Если вы пробовали Мегу32 (без L) при 3-х вольтах питания запускать - ведь тоже нарушение штатного режима - страница 332 (ordering information) дает диапазон допустимых напряжений 4.5..5.5 вольта. Или гляньте в таблицу DC Characteristics - там для ATMega32 (без L) всё нормируется только при 5 вольт. -
Я вам симптоматику, вы мне диагноз.
GenaSPB ответил zheka тема в В помощь начинающему
Диагноз: слепота (пациент даташита не видит). 8 мгц самое то для такого напражения питания. -
Ногодрыгание у ARM
GenaSPB ответил SapegoAL тема в ARM, 32bit
В потоке (без переходов) на частоте 48 МГц получалось три такта (около 66 наносекунд) между изменениями состояния порта. Где-то в форуме про ARM я задавал свои вопросы начинающего. http://electronix.ru/forum/index.php?showt...st&p=567800 -
У Dron_Gus альтернативный даташит... итого - в морг? На самом деле проблема в том - какой источник закладывать в плату... ожидал 50 мА, как в документе - а тут такое...
-
У незапрограммированного (стертого) процессора после ресета - вроде порты на ввод все?
-
atmega8L при питании 3,3 вольта
GenaSPB ответил nachinayuschiy тема в AVR
Программатор какой? Может сам программатор не умеет от 3.3 вольта работать?