Jump to content

    

Прием на работу

Добрый день!

 

Долго думал куда поместить тему. Думаю здесь ей место.

 

Интересно услышать, какие нетривиальные вопросы задают на собеседованиях при приеме на работу в области разработки электроники.

Для старта: есть 8-ми выводной микроконтроллер (2 ноги питание, 2 -кварц). Как организовать на оставшихся 4 выводах работу 16-ти кнопок и одного светодиода?

Share this post


Link to post
Share on other sites

Дополнительные микросхемы логики можно использовать ?

Edited by ArtemDement

Share this post


Link to post
Share on other sites

Резисторы и конденсаторы замеряем задержу

Резисторы и ацп

 

Share this post


Link to post
Share on other sites
Дополнительные микросхемы логики можно использовать ?

Можно.

 

Хотелось бы слышать не только ответы, но и вопросы :)

Share this post


Link to post
Share on other sites
Хотелось бы слышать не только ответы, но и вопросы :)

Аналоговый перемножитель,

Чем померить индуктивность рассеяния,

влияет ли немагнитный зазор на индуктивность рассеяния

как помогает устройство по экономии мощности их рекламы экономить мощность

Чем померить траффик по UTP кабелю.. да много чего можно каверзного вспомнить :lol:

Share this post


Link to post
Share on other sites
Тогда, такой вариант.

Я б вас на работу за такое не взял :laughing:

Если предполагается срабатывание только одной кнопки, то можно их посадить на линейку одинаковых последовательно включенных резисторов, и с помошью 4-х старших данных АЦП можно определить кнопку.

Или реализовать свой АЦП по времени задержки разряда RC цепи. В общем все то, что предложил GefarD

Share this post


Link to post
Share on other sites

А не проще поставить сдвиговый регистр? На одну ногу микроконтроллера принимать последовательный сигнал, а с другой клок давать. Для надежности можно еще CS воткнуть, тогда получится что-то типа SPI. В таком случае как раз останется 1 нога для светодиода, о котором почему-то забыли :)

 

Кстати, если есть условие, что одновременно может быть нажата только одна кнопка, можно подключить их матричным способом, правда тогда получится не 16, а 15, но в этом случае можно обойтись без дополнительной логики.

Share this post


Link to post
Share on other sites
Я б вас на работу за такое не взял :laughing:

Если предполагается срабатывание только одной кнопки, то можно их посадить на линейку одинаковых последовательно включенных резисторов, и с помошью 4-х старших данных АЦП можно определить кнопку.

Или реализовать свой АЦП по времени задержки разряда RC цепи. В общем все то, что предложил GefarD

 

Насчет "на работу не взял" сказано круто... Можно просто пожелать удачи такому работодателю. Удачи.

Share this post


Link to post
Share on other sites
Я б вас на работу за такое не взял :laughing:

 

Вы не поняли идею, за это я бы к вам и не пошел.

:rolleyes:

 

Если предполагается срабатывание только одной кнопки, то можно их посадить на линейку одинаковых последовательно включенных резисторов, и с помошью 4-х старших данных АЦП можно определить кнопку.

 

Предполагается последовательный опрос состояния кнопок с довольно высокой частотой опроса, что позволяет получить информацию о одновременном нажатии.

Если нажимать будет человек пальцем. Такой метод применяется в джойстиках Dendy, так что все ок.

:biggrin:

 

Кстати, если есть условие, что одновременно может быть нажата только одна кнопка, можно подключить их матричным способом, правда тогда получится не 16, а 15, но в этом случае можно обойтись без дополнительной логики.

 

Как сделать 15 кнопок матричным методом на 3 выводах, если учесть, что еще один нужен для управления светодиодом ? Что-то не могу себе это представить.

 

Share this post


Link to post
Share on other sites
Как сделать 15 кнопок матричным методом на 3 выводах, если учесть, что еще один нужен для управления светодиодом ? Что-то не могу себе это представить.

На 3 никак, я на 4 имел в виду.

 

Share this post


Link to post
Share on other sites

По принципу шифратора. 4 линии изначально подтянуты к нулю. Замыкается первая кнопка, выставляет 1 на первую линию, остальные в нуле (0001). 10 кнопка замыкает на Vcc 4 и 2 линии (1010), 15 кнопка выставит 1111 и так далее. Не очень удобно, зато никакой лишней логики, только соединения, ну и 4 резистора.

Share this post


Link to post
Share on other sites

Можно схему в студию ?

 

Что-то пока не очень понял.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this