Автор Тема: QT4 програма и програма за микроконтролер Atmega  (Прочетена 10157 пъти)

victim70

  • Напреднали
  • *****
  • Публикации: 454
  • Distribution: Gentoo, Ubuntu
  • Window Manager: Kde Xfce
    • Профил
Уважаеми Колеги,
Провеждам интервю със тестове за домашна работа за фирмата в която работя. На кандидатите съм дал елементарни задачи за решаване, които са по долу описана. Моля ви ако поискат от някой от вас да напише нещо подобно в рамките на този месец, да откаже. В края на краищата това са хора които кандидатстват за работа, ако някой им го напише в изпитателният срок аз ще разбера че не стават за тази работа и ще съм принуден да ги уволня, което е зле за бъдещата им кариера.
Благодаря ви за разбирането.

Цитат
Задание

1. Да се изработи честотомер
1.1. Характеристики
1.1.1. Обхват на измерване 0,1 Hz – 3MHz
1.1.2. Амплитуда на входният сигнал 0.3 – 100V p-p
1.1.3. Захранващо напрежение – 7 – 38 VDC
1.1.4. Изход за измерената величина:
1.1.4.1. RS232 – връща измерената честота в килохерци при подадена команда „Measure?“ или връща „Not Ready“ при стартирано, но незавършено измерване.
1.1.4.2. Стартира измерване с подадена команда „Start“ и връща отговор „Started“
1.1.4.3. Индикира последната измерена честота с напреженов изход, в проценти между 0-5 волта. Изходно напрежение 0 волта отговаря на честота < 0.1 Hz, изходно напрежение ~5V отговаря на честота 3MHz.
1.1.5. Комуникацията не трябва да спира по време на работа за повече от 5mS. Контролера винаги трябва да отговаря на запитване от компютъра на RS232 порта съгласно точки 1.1.4.1 – 1.1.4.3
1.2. Използван контролер за реализацията – Atmega8 или Atmega162
1.3. Използван софтуер за начертаване на принципната схема – kicad http://www.lis.inpg.fr/realise_au_lis/kicad/
1.4. Използван софтуер за програмата на микроконтролера – avr-gcc
http://www.nongnu.org/avr-libc/
http://winavr.sourceforge.net/
1.5. Консумираната мощност трябва да бъде почти константна при различните захранващи напрежения.
1.6. Съдържание на проекта
1.6.1. Принципна схема на kicad с написана консумирана мощност от захранването.
1.6.1.1. Позволява се заместване на необходими, но несъществуващи в библиотеката елементи с иерархични блокове с подходящи надписи.
1.6.1.2. Да се използва стандартните включени библиотеки в kicad.
1.7. Софтуерната част включва, архивирана папка със сорса и Makefile на проекта. Сорса задължително трябва да се компилира без грешка или warning. Да се използват единствено библиотеки включени в стандартният пакет avr-libc.

2. Да се напише програма за таймер.
2.1. Визия на апликацията:
2.2. Функционалност на приложението:
2.2.1. При натискане на „Старт“ бутона таймера започва отброяване на времето.
2.2.2. При натискане на „Стоп“ бутона таймера спира да брои.
2.2.3. При натискане на бутон „Нулиране“ таймера се нулира ако е в състояние стоп. В състояние на броене бутона трябва да е неактивен.
2.3. Използван софтуер за създаване на апликацията:
- qtcreator - http://qt.nokia.com/products/developer-tools/
- QT4 версия 4.7.1 - http://qt.nokia.com/
2.4. Сорсовете трябва да се компилират без warnin съобщения, предава се архивирана папката със проекта.

3. Допълнителни изисквания и указания:
3.1. Сорсовете на програмите трябва да са документирани с подходящи коментари и пригодни за генериране на автоматична документация с програмата doxygen. Коментарите не трябва да са излишно подробни или дълги – само необходимото.
3.2. Използването на указаните програми със съответните версии, където е упоменато е задължително.
3.3. Програмите които са дадени са opensource – да не се използва комерсиалната версия за създаването на QT апликацията.
3.4. При необходимост за чертежа могат да се използват външни библиотеки, като те се приложат във архива на проектната папка.
3.5. Работата (писане и чертаене) трябва да се извършва самостоятелно. Позволени са обаче и консултации от сайтовете на разработчиците, като тредовете със въпроси и използван чужди предложения трябва да се цитира в сорса със линк към тях.
3.6. Не е позволено апликациите и схемата да се чертае от второ лице или физически да помага за разработката, както и да се използва готов код.

Активен

"Господи, дай ми сила да променя нещата които немога да приема,
дай ми търпение да приема нещата които не мога да променя,
и ми дай мъдрост, да правя разликата между двете"

bot

  • Гост
 Hека уточним малко първа задача, другата е елементарна. Първото нещо, което ми се наби в очи е че липсва изискване за битрейт  на комуникацията. Точка 1.1.4.3 - не е ясно как да индикира измерената величина: по RS232 линията ли, по LED/LCD индикация ли, условието е НЕЯСНО. Какво означава: индикира с напреженов изход в проценти??? Това предполага наличие на DAC или е някаква зависимост в проценти, върната по серийния канал??? Комуникацията не трябва да спира по време на работа... Какво означава това: че постоянно се подават заявки и отговора не трябва да се бави повече от 5mS ли?? Някакво изискване за точност?  И последно - амплитудата на входния сигнал постоянна  в границите от 0,3V-100V ли е или варира от 0,3V-100V, защото ако е второто трябва да преобразуваме 100V до удобно за обработка от процесора ниво то тогава 0.3V стават прекалено малко.
« Последна редакция: Apr 08, 2011, 12:20 от bot »
Активен

bot

  • Гост
 като послепис (офтопик или не модераторите да решат и да затриват ако преценят) Кандидатите да се свържат на лична с мен, анси C или атмел асемблер няма никакво значение за мен, реален имейл за обратна връзка, ще направя различни решения за различните кандидати. Схемата ще е скица, да се справят сами със софтуера.
« Последна редакция: Apr 08, 2011, 12:20 от bot »
Активен

BULFON

  • Administrator
  • Напреднали
  • *****
  • Публикации: 478
  • Distribution: Fedora
  • Window Manager: Gnome
    • Профил
Mоля ви!
Цялата тази енергия си готов да я отделиш, защото има срещу кого да я насочиш?!
А аз от толкова време търся хора за лектори за поредната конференция за хардуер с отворен код...
Активен

фонокартен телефонен апарат

victim70

  • Напреднали
  • *****
  • Публикации: 454
  • Distribution: Gentoo, Ubuntu
  • Window Manager: Kde Xfce
    • Профил
Hека уточним малко първа задача, другата е елементарна. Първото нещо, което ми се наби в очи е че липсва изискване за битрейт  на комуникацията. Точка 1.1.4.3 - не е ясно как да .........................
Задачата е абсолютно точна.
Входното напрежение може да е между 0.3 волта може и 100 волта. Каквото и да му подадеш в тези граници трябва да работи. Има прости схемни решения които го позволяват от 0.01волт до 1KV без комутации.
Дисплей не видях някъде да съм написал, така че остава за изход само RS комуникацията и напреженовият изход в проценти. Това означава че на един изход на електронната схема ако свържа аналогов линеен волтметър с максимална скала до 5 волта, и разграфя скалата линейно в проценти, ще показва каква е входната честота между 0 и 3MHz като при 1,5 MHZ ще е на средата.
Ако не знаеш как да направиш напреженов изход без DAC пиши след 2 седмици ще отговоря с пример.
Скорост на комуникацията липсва - което означава че и 300 и 115к са приемливи. Тоест по преценка на програмиста.
Изискването за точност е указано 0.1Hz - по скоро това не е точност а разделителна способност. Защото за точност трябва да смятат неопределеността на системата + грешки на осцилатора + погрешност на джитера. Това ще превърне задачата в доста сложна за днешните инженери.
Закъснението означава че между края на запитването по RS порта и началото на отговора от контролера времето трябва да е по-малко от 5ms (даже съм отпуснал много време)

Задачата е абсолютно ясна и изпълнима в рамките на 2 дни. Хардуера го имам така че ще натоваря само програмата и я пускам на генератора и анализатора да видя какви са закъсненията и изпълнението.

Мисля че отправих молба да им се помага в рамките само на насока, и ако е възможно в публичното пространство. Ако ме заблудят със чужд код или някой им направи програмата, след 2 седмици те ще имат задача за 1 месец която е доста по-сложна (естествено и помощ ще има), ако не се справят, ще бъдат уволнени със вписване в трудовата им книжка че не са пригодни за тази работа, както и без характеристика.
Така че уважаеми Bot постъпи както смяташ за добре. Ако искаш дори публикувай решението (по въпросите които задаваш аз се съмнявам че ще го реализираш вярно), няма как да те спра освен да информирам модераторите, но правиш мечешка услуга на кандидатите.
Това не е пуберско преписване в училище, което ще остане незабелязано, това е реалният живот който неможеш да го препишеш.
Mоля ви!
Цялата тази енергия си готов да я отделиш, защото има срещу кого да я насочиш?!
А аз от толкова време търся хора за лектори за поредната конференция за хардуер с отворен код...

Колега не съществува понятие отворен код за хардуер. Обикновенно това са типични апликации, според нуждите. Такова понятие не съществува, защото електронните схеми не са обект на авторско и патентно право. Това е гласувано още 1952 година, електронни схеми да не подлежат на патентоване. Това не важи за принципи, идеи и печатни платки.

Моля да ми разрешиш да префразирам малко нещата:
Цитат
Хардуерни платформи и реализации, за софтуер с отворен код
Предполагам че това имаш като идея за конференция.
Аз няма да участвам за втори път като лектор на такава конференция, защото пътните ми разходи си бяха за моя сметка, както и това се превърна в PR на Роботев и ардуино, която платформа според моето мнение на човек с 20 годишен стаж на конструктор е малко поизкривена, като концепция. В смисъл няма готов продукт, който е използваем. Нежелая да правя реклама но колеги продават китове и контролери с IP модули и релета, които са много по завършени от ардуиното. За да стане нещо с ардуиното трябва да си купиш още модули и доста свързване и поене.
Мога да осигуря собственна разработка на подобен обаче завършен кит с Atmega (свързваш само сензори които са от 0 - 32 волта, и управляваш товари до 1 Ампер + RS, стъпков мотор, изходи ивходове на винтов клеморед), но само 2-3 и то на учасници от форума срещу копие от фактури на Комет за частите и транспорт, за да не се чудят защо е по евтино от ардуиното.
Активен

"Господи, дай ми сила да променя нещата които немога да приема,
дай ми търпение да приема нещата които не мога да променя,
и ми дай мъдрост, да правя разликата между двете"

bot

  • Гост
 Колега, ти ли не обясняваш като хората или аз имам проблем с асимилацията. Защо беше необходимо да се споменава този напреженов изход като ти искаш да ти се върне измерената честота в процентно съотношение в скалата от 0.1 до 3 000 000 херца. Прост пример: 1 процент е равен на (3 000 000-0.1)/100 = 29999.999 (тук вече опираме до точността)
 Да речем че измериш честота 1 550 679.56 Hz В проценти това прави 1 550 679.56/29999.999 = 51,68932039% Ако не си задал изискване за точност аз бих ти върнал 52% Ако си задал точност 0.01% тогава бих ти върнал 51,69% Ако допускаш операции с плаваща запетая, тогава трябва да зададеш максимална дължина на стринга, който да се върне по серийния канал. Което ме кара да забележа че липсва изобщо формат на върнатия резултат. Пълна недомислица. Допълнително усложняваш положението на кандидатите - горките, няма да смеят да попитат за подробности защото биха те изкарали неграмотник, а като ти засегнат егото това може да повлияе на резултата.
Активен

victim70

  • Напреднали
  • *****
  • Публикации: 454
  • Distribution: Gentoo, Ubuntu
  • Window Manager: Kde Xfce
    • Профил
Колега, ти ли не обясняваш като хората или аз имам проблем с асимилацията. Защо беше необходимо да се споменава този напреженов изход като ти искаш да ти се върне измерената честота в процентно съотношение в скалата от 0.1 до 3 000 000 херца. Прост пример: 1 процент е равен на (3 000 000-0.1)/100 = 29999.999 (тук вече опираме до точността)
 Да речем че измериш честота 1 550 679.56 Hz В проценти това прави 1 550 679.56/29999.999 = 51,68932039% Ако не си задал изискване за точност аз бих ти върнал 52% Ако си задал точност 0.01% тогава бих ти върнал 51,69%
И ще бъде прието за вярно - аналогов изход не допуска голяма точност 10% е ОК. Забележи че в точка 1.1.4.3. максималното напрежение не е 5 волта а ~5 волта. Такива изходи се използват за стрелкови индикатори, които за разлика от цифровите се разчитат с един поглед и носят само информация че величината е около (който е работил със стрелкови мултиметър знае за какво иде дума)

Ако допускаш операции с плаваща запетая, тогава трябва да зададеш максимална дължина на стринга, който да се върне по серийния канал. Което ме кара да забележа че липсва изобщо формат на върнатия резултат. Пълна недомислица. Допълнително усложняваш положението на кандидатите - горките, няма да смеят да попитат за подробности защото биха те изкарали неграмотник, а като ти засегнат егото това може да повлияе на резултата.
Въпроса  е риторичен. В кернела и драйверите на линукс използва ли се плаваща запетая?
НЕ въпреки възможността да се използва.
За един контролер или контролерна развойна система, ако някой използва плаваща запетая е до декларацията float нататъка няма да погледна дори.
Кандидатите не са за жалене защото от 35 интервюта останах само с 4-ма, които отговориха правилно за коефициент на усилване на инвертиращ и неинвертиращ усилвател. И само един от тях описа 3 основни схеми обща база, общ емитер, общ колектор. Никой от тях не беше и пипвал линукс. Явно това е нивото на днешната младеж.
Активен

"Господи, дай ми сила да променя нещата които немога да приема,
дай ми търпение да приема нещата които не мога да променя,
и ми дай мъдрост, да правя разликата между двете"

bot

  • Гост
 Колега, не се отплесвай с линукс, дай да уточним условията на задачата. Ако ми пратиш "Measure?" и аз ти върна "1 550 679.56 Hz 52 %" (виж предният ми поуст) това устройва ли те или държиш на допълнителни символи, които да слагат край на стринга? Другото, което ме вълнува е входният сигнал, от какъв характер е? За амлитудата и честотния диапазон разбрахме. Каква е формата - правоъгълна, синусоидална, AC, DC, AC с постояннотокова съставка. Само не ми казвай че ще пуснеш каквото ти дойде на акъла защото интерфейса изобщо няма да е прост, както твърдиш. Ако сигналът е AC сунусоидален държиш ли на галванично разделяне на входния интерфейс от логическата част (микроконтролера и останалата част) защото нали се сещаш че без галванично разделяне ако решиш да измерваш честотата на напрежението от захранващата мрежа компютърът ще ти издумка, или най-малкото RS232 интерфейса.

 пс какво ще кажеш за тая схема (става дума само за входния интерфейс)

 С малки изключения може да мериш честотата на всякакъв сигнал с нея, пък и в края на краищата универсални неща в електрониката няма нали?  Искаш ли да ти покажа как си представям цялата схема? Апък от теб искам да ми кажеш дали би ме одобрил като кандидат. При подходящо заплащане току виж съм се замислил.
 ппс забравил съм резистор на диода на оптрона, ама принципа е по-важен, DC/DC конвертора е тип TRACO.
« Последна редакция: Apr 10, 2011, 00:33 от bot »
Активен

victim70

  • Напреднали
  • *****
  • Публикации: 454
  • Distribution: Gentoo, Ubuntu
  • Window Manager: Kde Xfce
    • Профил
Колега, не се отплесвай с линукс, дай да уточним условията на задачата.
Не се отплесвам, работа с плаваща запетая, не се допуска в контролери, ако нямат ОС работещ отдолу. Освен това е сериозна загуба на производителност. А и всяка сметка с плаваща запетая може в часност да се реши като целочислена операция.
пример:
100/3.14 = 10000/314 или 100000/3140 и т.н.т. в зависимост от изискваната точност.
Ако ми пратиш "Measure?" и аз ти върна "1 550 679.56 Hz 52 %" (виж предният ми поуст) това устройва ли те или държиш на допълнителни символи, които да слагат край на стринга?
Само до числото ако се ограничиш 15506795 или 1550679.5 или 1550.6795 или 1.5506795 дори без Hz е ОК аналоговият изход е само в проценти по условие. Добрият програмист обаче би включил някаква чексума за проверка щом е сериен асинхронен интерфейс. Препоръчително е да се изпрати едно 0x0d накрая, но това вече са добри пожелания, извън условието и говорят за стил

Другото, което ме вълнува е входният сигнал, от какъв характер е? За амлитудата и честотния диапазон разбрахме. Каква е формата - правоъгълна, синусоидална, AC, DC, AC с постояннотокова съставка. Само не ми казвай че ще пуснеш каквото ти дойде на акъла защото интерфейса изобщо няма да е прост, както твърдиш. Ако сигналът е AC сунусоидален държиш ли на галванично разделяне на входния интерфейс от логическата част (микроконтролера и останалата част) защото нали се сещаш че без галванично разделяне ако решиш да измерваш честотата на напрежението от захранващата мрежа компютърът ще ти издумка, или най-малкото RS232 интерфейса.

 пс какво ще кажеш за тая схема (става дума само за входния интерфейс)

 С малки изключения може да мериш честотата на всякакъв сигнал с нея, пък и в края на краищата универсални неща в електрониката няма нали?  Искаш ли да ти покажа как си представям цялата схема? Апък от теб искам да ми кажеш дали би ме одобрил като кандидат. При подходящо заплащане току виж съм се замислил.
 ппс забравил съм резистор на диода на оптрона, ама принципа е по-важен, DC/DC конвертора е тип TRACO.
Ако знаеш какъв ти е входният сигнал няма да искаш да го мериш, така че е произволен, с постоянни съставки на моменти, както обикновенно се случва се мери само първи хармоник, иначе ще бъде не честотомер а сигналанализатор. Един обикновен китайски ръчен мултиметър има такъв вход, и работи до 700волта безпроблемно, няма обаче същата разделителна способност.
При 100 волта задание (чети пак между редовете) се предполага че няма нищо общо с мрежата, така че може да не е галванично изолирано.
Твойта схема не става. Защото кой е този компаратор, който ще работи безпроблемно и на 0.1 Hz и на 3 MHz (Ton<100ns Toff< 100ns Tdelay<50ns) за консултация - критерии на Найкуист за устойчивост. Дори да приеме че вземеш един 60MHz компаратор или ОУ от аналогдивайс в тази честотна лента, входното стъпало ще се самовъзбужда от прелитащите мухи. Изход на оптрон за 3MHz също несериозно, тогава компаратор + оптрон трябва да имат зъкъснения по-малки от 100ns.
Нека направим малко елементарни сметки:
За 3MHz перида е 333.3 нано секунди. В това време трябва да имаш 2 фронта и 2 плата на сигнала. За да се регистрира нивото трябва да е с продължителност на 1 цикъл на атмегата, тоест ако е примерно на 8 мегахерца (не го препоръчвам) 125 nS трябва да е всяко плато. Тоест 250ns за двете плата. За фронтовете остават 333-250=83ns или по ~40 nS на фронт. Това предполага компаратора да работи без проблем на честота 1/40nS=25MHz. Там трябва да е и първият полюс на схемата. Понеже има лимит за долна честота първата нула на схемата е на 0.1Hz. Практическата реализация по Найкуист казва че схемата е нестабилна.
Преведено на техникумски език това означава че дори пикофарадната връзка между вход и изход (1-10pF) са достатъчни да се получи положителна обратна връзка и да се възбуди входният преобразувател, защото като съпротивление 1pF за 25MHz e Xc=1/(2*pi*f*c) = 6.3KOhm - твърде ниско. За да може да се изпълнят критериите за устойчивост е необходимо да има повече полюси отколкото нули. Това става като се избере по-високочестотен компаратор. По теоремата на Котелников-Найкуист това е 30 пъти по висока честота. Така че системата компаратор оптрон трябва да имат проходна (коефициент на усилване 1) честота от 30*25=750MHz. От това следва че оптрона примерно трябва да работи безпроблемно на 1.5GHz и компаратора на 1.5GHz.
Мисли има по-проста схема.
Ако си заинтересуван от работата, и текущите кандидати се издънят следи jobsbg. След малък тюнинг може и да станеш, виж задачите с колко занижен критерий са. Само човек да чете между редовете, малко.
Активен

"Господи, дай ми сила да променя нещата които немога да приема,
дай ми търпение да приема нещата които не мога да променя,
и ми дай мъдрост, да правя разликата между двете"

bot

  • Гост
 Колега, няма да се обиждаш ама започвам да се досещам защо от 35 кандидата си останал само с 4 - не са отговорили каквото си очаквал или не са направили някое задание по твоят начин. Виждам че знанията са ти отпреди поне 15 години. Бързи ОУ и компаратори с лопата да ги ринеш за жълти стотинки, има оптрони на NEC до 20MHz Това е което ти драснах набързо, ако седна да я проектирам ще я изпипам да ти работи на всякакви сигнали. А, за китайски ръчен мултимер ли ми говориш (базиран на ICL71xx)? Нали се сещаш че работи на батерии и няма опастност от конфлик на напрежения. Относно предложението за работа беше малко несериозно за което моля да ме извиниш. Работата ми е страхотна, за хубави пари, живея в бяла държава със закони и обноски. Не съм сигурен че можеш да ми предложиш такава заплата, която да ме накара да се лиша от всичко това.
 Успех с кандидатите. Надявам се да прочетат всичко това по-нагоре за да си отговорят на някои от висящите в заданието въпроси.
Активен

bot

  • Гост
 Чакай че сега ти дочетох поуста. Какво си написал, гегахерци ли? Процесорът изобщо няма да се бави, защото ще направя програмата да работи с прекъсване при промяна на състоянието на вход. Обслужването на RS232 също ще бъде с прекъсване, за да не дава грешка при измерването на интервала. Така че си прегледай пак схемата дето си я приготвил да изпитваш студентите дали има тази възможност (входа да е на пин, които да задейства прекъсване при промяна на състоянието).
 Мерси за темата, доста разтоварващо ми подейства през уйкенда.
Активен

bot

  • Гост

 ps Какъв Котелников те гони бе човек, знаеш ли изобщо теоремата на Котелников за какво се отнася. Между другото се учи по "теория на сигналите" в университета, иначе гледам се опитваш да превеждаш на техникумски език, явно ти се отдава,
Активен

victim70

  • Напреднали
  • *****
  • Публикации: 454
  • Distribution: Gentoo, Ubuntu
  • Window Manager: Kde Xfce
    • Профил

 ps Какъв Котелников те гони бе човек, знаеш ли изобщо теоремата на Котелников за какво се отнася. Между другото се учи по "теория на сигналите" в университета, иначе гледам се опитваш да превеждаш на техникумски език, явно ти се отдава,
А тя гласи че:
Носещият сигнал в една линия за предаване на данни трябва да е с поне 2 пъти по-висока честота от най вишият хармоник на информационният сигнал.
Префразирано на езика на Сигнали и системи (ТУ 2 курс)
Честотата на семплиране трябва да е 2 пъти по-висока от най-висшият хармоник на семплираният сигнал.
В следствията се казва (все пак обработва се аналогов сигнал на входа а не цифров) че транзитната честота трябва да е 2 пъти по-висока.
За това къде работиш - не ме интересува но ми е ясно че че си си тука. С ардуино няма да те допуснат в никоя бяла страна да се занимаваш.
Критериите са справедливи, защото утре ти хвърлям едно FPGA за 140$ на Xilinx и трябва да има резултат, защото борда ще трябва да си го проектираш, и запуснеш. Как ще ме убедиш че ще тръгне устройството? Какво ще направиш ако не тръгне и има грешка в импедансите на платката и става състезания - ще го изхвърля в такова състояние и 1000 истински пари отива проекта назад.
Ако ще управляваш сериозен бюджет трябват сериозни познания. За заплащането не искам да говоря - фирмена тайна е.
Даже критерият е силно занижен, единственото което оценява е скорост на научаване на нови неща, съобразителност, работа с документи.
Никой не е работил с kikad, Atmega, doxygen, нито с контрол на версиите. Ако се справи и покаже за 6 месеца че може да учи бързо и да възприема - добре, иначе чао и наново подобна драма.
Ако наистина си в бяла страна знаеш колко бързо уволняват и за какво. Знаеш и как се провеждат интервюта за 'линч пин'. Тоест за интервютата едва ли знаеш, не си на такъв пост.
За мене се издъни сериозно на:
1. Разчитане на задание.
2. Схемотехника на аналогов сигнал (какво става ако подам на схемата отрицателен сигнал с променливотокова съставка, защо не е филтрирано промени под 0.1Hz нараства неопределеността, защо няма филтър за над 3 MHz, защо съгласуващото устройство липсва пулъп резистор на изхода нима е ОУ а не компаратор, Ако е ОУ като компаратор къде са му обратните връзки и съгласуване по импеданс с оптрона).
3. Транзитната честота наистина на аналоговата част на схемата трябва да е в гигахерцовият обхват, защото е за измерване на честота- никъде не е казано че коефициента на запълване е 50% при 5% и при 95% нормално би трябвало да работи. Къде е нормализацията на периода да го доведеш до удобните ~50% запълване за 3 MHz
4. Нищо не каза за напреженовият изход
5. Не определи работна честота на процесора.
6. Предположения за плаваща запетая.
Позитиви:
1. Прекъсванията
2. Идея за евентуална необходимост от галванично разделяне.
Активен

"Господи, дай ми сила да променя нещата които немога да приема,
дай ми търпение да приема нещата които не мога да променя,
и ми дай мъдрост, да правя разликата между двете"

bot

  • Гост
 Ами какво да ти кажа, тъй както гледам ще си работиш сам и ще си се разбираш най-добре. Така ако изгориш компонент за 140$ ще обвиняваш само себе си, обаче явно само така ще се научиш че преди да програмираш ЕДНОКРАТНО програмируем компонент то първо програмата се симулира. За теоремата на Котелников въпросът ми беше реторичен, хубаво си я цитирал за тези, които не я знаят да видят че тя се отнася за МОДУЛАЦИЯ и ДЕМОДУЛАЦИЯ на сигнали. Ха обясни ми сега ние честотомер ли ще правим или радиоприемник? Аз си мислех че само практиката ти куца, пък тебе и в теорията те няма. Как ги изчисли онези гегахерци само, измисли си едни цифри, намеси Найкуист и Котелников за да си придадеш авторитет и хоп - не става. Що, щото компараторът щял ще внесе няколко nS закъснение, оптрона също и за процесора нямало да остане достатъчно сигнал. Говорим за ЗАКЪСНЕНИЕ колега, не за скъсяване на сигнала. Скъсяване ще имаш когато закъснението ти е по-голямо от дължината на импулса, а в случая няма да има такова при 3MHz. И ще ти кажа как е в белите държави. Обявата за работа започва така: Длъжност, ЗАПЛАТА, изисквания. Щото хората тука знаят че с трици маймуни не се ловят.
Активен

victim70

  • Напреднали
  • *****
  • Публикации: 454
  • Distribution: Gentoo, Ubuntu
  • Window Manager: Kde Xfce
    • Профил
Нека оставим за този който разбира да говори схемата която си начертал и как ще се държи при сигнал описан с:
А=-40+1*sin(1*pi*0.1*t)
. FPGA матриците не са еднократно програмируеми, а за платки и състезания няма софтуер има правила, или по-скъпото проба-грешка.
Колектива е от 4-ма така че не съм сам и всеки достойно може да съперничи със знания. Аз лично съм проектирал на времето около 200 машини. За да пуснаь тука инфото, явно е важно за мене и е необходимо да направя най-добрият избор.
Активен

"Господи, дай ми сила да променя нещата които немога да приема,
дай ми търпение да приема нещата които не мога да променя,
и ми дай мъдрост, да правя разликата между двете"