Jun. 25th, 2010
Работаю сейчас над решением одной задачки: нужно прикрутить 16-битный АЦП кое к чему (раньше был 12-битный, этого не хватило).
В качестве мозгов устройства выбрал микроконтроллер ATtiny84, ибо он милизерный и у него ажно 14 выводов (именуемых в простонародье пинами, от английского "pin"), включая питание. То есть он выглядит внешне как какая-нибудь логическая микросхема. Практически КР155ЛА3.
С одной стороны, это прикольно.
С другой стороны, выводов отчаянно не хватает.
Из-за чего на некоторые из пинов заведено сразу несколько функций. Например, для связи с внешним миром используется чип приёмопередатчика, у которого есть три ножки управления - вход данных, выход данных и пин управления режимом работы ("выкл" или "подкл"). У чипа АЦП примерно та же байда, только работающая совсем иначе: если микросхема приёмопередатчика ВКЛЮЧАЕТСЯ, когда на ножку управления подана логическая единица, то АЦП, напротив, ОТКЛЮЧАЕТСЯ. Отсюда мораль: можно обе микросхемы подвесить на одни и те же выводы микроконтроллера.
Кроме того, у меня в схеме есть цепи автокалибровки (температура окружающей среды может меняться очень сильно, при этом все такие изменения влияют на работу схемы - каждый раз, как устройство почует температурные колебания, оно должно автоматически проводить калибровку своих измерительных систем). А у АЦП есть пин, сигнализирующий о готовности данных. Объединить их просто так, напрямую, не получится.
Но! В схеме ещё есть микросхемка с двумя RS-триггерами, старая добрая 74HC74D. Один из триггеров используется для управления автоматикой защиты (ведь микропроцессор может зависнуть или заглючить, а защита должна работать всегда. Триггеры рулят!). Второй как-то остался без дела, пока я не придумал способ, как его использовать для "расщепления" сигналов управления калибровкой и готовности данных АЦП.
Вощем, кручу-верчу, запутать хочу. Все ножки микроконтроллера использованы до упора и даже чуточку больше.
А ведь ещё предстоит вписаться в его 4 килобайта программной памяти... Но если не впишусь, то поставлю ATtiny84, у него аж 8 килобайт памяти программ. И целых 512 байт памяти данных, что есть просто неимоверно огромное количество. И тактовая частота 8 МГц (но я буду использовать 1 МГц, чтобы снизить энергопотребление).
Забавно, но раньше я поступал совсем наоборот: предпочитал многоногие микроконтроллеры и выставлял им тактовую частоту на максимум. Просто щас подумал, что прямолинейное решение будет... хммм.... неизящным.
В качестве мозгов устройства выбрал микроконтроллер ATtiny84, ибо он милизерный и у него ажно 14 выводов (именуемых в простонародье пинами, от английского "pin"), включая питание. То есть он выглядит внешне как какая-нибудь логическая микросхема. Практически КР155ЛА3.
С одной стороны, это прикольно.
С другой стороны, выводов отчаянно не хватает.
Из-за чего на некоторые из пинов заведено сразу несколько функций. Например, для связи с внешним миром используется чип приёмопередатчика, у которого есть три ножки управления - вход данных, выход данных и пин управления режимом работы ("выкл" или "подкл"). У чипа АЦП примерно та же байда, только работающая совсем иначе: если микросхема приёмопередатчика ВКЛЮЧАЕТСЯ, когда на ножку управления подана логическая единица, то АЦП, напротив, ОТКЛЮЧАЕТСЯ. Отсюда мораль: можно обе микросхемы подвесить на одни и те же выводы микроконтроллера.
Кроме того, у меня в схеме есть цепи автокалибровки (температура окружающей среды может меняться очень сильно, при этом все такие изменения влияют на работу схемы - каждый раз, как устройство почует температурные колебания, оно должно автоматически проводить калибровку своих измерительных систем). А у АЦП есть пин, сигнализирующий о готовности данных. Объединить их просто так, напрямую, не получится.
Но! В схеме ещё есть микросхемка с двумя RS-триггерами, старая добрая 74HC74D. Один из триггеров используется для управления автоматикой защиты (ведь микропроцессор может зависнуть или заглючить, а защита должна работать всегда. Триггеры рулят!). Второй как-то остался без дела, пока я не придумал способ, как его использовать для "расщепления" сигналов управления калибровкой и готовности данных АЦП.
Вощем, кручу-верчу, запутать хочу. Все ножки микроконтроллера использованы до упора и даже чуточку больше.
А ведь ещё предстоит вписаться в его 4 килобайта программной памяти... Но если не впишусь, то поставлю ATtiny84, у него аж 8 килобайт памяти программ. И целых 512 байт памяти данных, что есть просто неимоверно огромное количество. И тактовая частота 8 МГц (но я буду использовать 1 МГц, чтобы снизить энергопотребление).
Забавно, но раньше я поступал совсем наоборот: предпочитал многоногие микроконтроллеры и выставлял им тактовую частоту на максимум. Просто щас подумал, что прямолинейное решение будет... хммм.... неизящным.
Rусское искуйство
Jun. 25th, 2010 06:18 pmА вот тут такого дохрена, и всё такое концептуальное-преконцептуальное.
Сплошное говно и хуи, хуи и говно.
(копирую из коммента) Подумалось. Ежели кто-то из гоев начнётрисовать мазать холсты говном, например, и назовёт сие "еврейским искусством" - ведь взвоют и потащат в суд. А тут почему-то можно.
Сплошное говно и хуи, хуи и говно.
(копирую из коммента) Подумалось. Ежели кто-то из гоев начнёт