несколько мега8 и UART

Hi Nickita !

Совсем недавно 04 Sep 06 15:57, Nickita A Startcev писал к Dmitry E. Oboukhov:

NS> Hужно примерно 20 ШИМ, примерно 8 АЦП, с десяток цифровых i/o. NS> причем ШИМ хитрый: период 20 мс, длина импульса от 0.8 до 2.2 мс и NS> весь этот диапазон нужно разбить хотя бы на сотню градаций. В более NS> жирный mega16 контроллер это трудно вписывается по NS> быстродействию управления/дергания ШИМ. ШИМ великолепно решается на ПЛМ, 8 АЦП- на чем попало. Может быть, что такой ШИМ и софтово можно потянуть, зависит от остальных задач.

WBRgrds Ruslan

Reply to
Ruslan Mohniuc
Loading thread data ...

Hi Michael !

Совсем недавно 04 Sep 06 19:59, Michael Belousoff писал к Dimmy Timchenko:

GS>>> Вот только диод - не идеальное yстpойство, на нём остаётся GS>>> падение напpяжения, а иногда и yтечка в закpытом состоянии GS>>> кpитична...

DT>> Для той схемы, о котоpой шла pечь, идеальное и не нyжно. :) Там DT>> хватило бы, напpимеp, и "квазидвyнапpавленной" логики x51.

MB> Квазидвyнапpавленной логики - хватило бы. А MB> диодy там явно не место.

Почему так категорически? Если напряжения остаются в пределах ТУ, то почему бы нет? Считать надо. Где место, а где и таки нет.

WBRgrds Ruslan

Reply to
Ruslan Mohniuc

Hi George !

Совсем недавно 04 Sep 06 14:24, George Shepelev писал к Ruslan Mohniuc:

DT>>> Hе в тему: интересно, а бывают кварцы с "двоичными" частотами? DT>>> :) не 16,000,000, например, а 16*1024*1024 = 16,777,216? RM>> Бывают любые. Только доставабельность у них очень разная. :)

GS> Кварцы на 10,24 МГц нынче достаются без особого труда. Он не является степенью двойки ни в МГц, ни в кГц, ни в Гц.

WBRgrds Ruslan

Reply to
Ruslan Mohniuc

Привет, Dmitry !

04 Sep 06 , 14:21 Dmitry E. Oboukhov писал к Nickita A Startcev:

DO> насчет дороговизны - правда, раза в три-четыре цена контроллера DO> повысится. правда полагаю что в многоконтроллерной системе цена DO> контроллера не является критичной.

DO> а преобразователи адаптеров - дешевка обычно. да и на другие виды DO> интерфейсов они тоже нужны, если контроллеры стоят не на одной плате. DO> а если на одной плате, то может имеет смысл взять один контроллер DO> более мощный чем несколько размазанных слабых?

Я вот сейчас как раз об этом и думаю. по ногам - мега16 вполне хватает, но надо внимательно просчитать, хватит ли ее по ресурсам. необходимо иметь 16 каналов ШИМ со следующими параметрами: период 20мс, длина импульса от 0.8 до 2.2 мс, разрешение установки ширины импульса порядка (2.2-0.8)/256= 5 мкс.

. С уважением, Hикита. ... Во всём виноваты тараканы в голове.

Reply to
Nickita A Startcev

Привет, Alexander !

04 Sep 06 , 19:48 Alexander Zabairatsky писал к Nickita A Startcev:

NM>>> Интересно, а почему выбор именно на uart а не spi?

NS>> SPI - минимум 4 ноги занято, uart и i2c по две.

AZ> К тому же i2c и spi сильно далеко не утянешь, в отличие от простого AZ> UART'а.

В худшем случае там на соседнюю плату тянуть.

. С уважением, Hикита. ... "Man'ная каша в голове"

Reply to
Nickita A Startcev

Привет, Ruslan !

05 Sep 06 , 07:37 Ruslan Mohniuc писал к Nickita A Startcev:

NS>> Hужно примерно 20 ШИМ, примерно 8 АЦП, с десяток цифровых i/o. NS>> причем ШИМ хитрый: период 20 мс, длина импульса от 0.8 до 2.2 мс NS>> и весь этот диапазон нужно разбить хотя бы на сотню градаций. В NS>> более жирный mega16 контроллер это трудно вписывается по NS>> быстродействию управления/дергания ШИМ. RM> ШИМ великолепно решается на ПЛМ,

Это понятно, но задача мелкая, не хочется плодить лишние корпуса.

RM> 8 АЦП- на чем попало. Может быть, что RM> такой ШИМ и софтово можно потянуть, зависит от остальных задач.

Остальные задачи - чтение-запись через УАРТ установок/пределов всего этого.

. С уважением, Hикита. ... Победа сил добpа над силами pазума...

Reply to
Nickita A Startcev

DO>> насчет дороговизны - правда, раза в три-четыре цена контроллера DO>> повысится. правда полагаю что в многоконтроллерной системе цена DO>> контроллера не является критичной. NAS>

DO>> а преобразователи адаптеров - дешевка обычно. да и на другие виды DO>> интерфейсов они тоже нужны, если контроллеры стоят не на одной плате. DO>> а если на одной плате, то может имеет смысл взять один контроллер DO>> более мощный чем несколько размазанных слабых? NAS>

NAS> Я вот сейчас как раз об этом и думаю. NAS> по ногам - мега16 вполне хватает, но надо внимательно просчитать, хватит NAS> ли ее по ресурсам. NAS> необходимо иметь 16 каналов ШИМ со следующими параметрами: NAS> период 20мс, длина импульса от 0.8 до 2.2 мс, разрешение установки ширины NAS> импульса порядка (2.2-0.8)/256= 5 мкс. кстати а как насчет того чтобы 16 каналов ШИМ на внешней ПЛИСине сотворить или просто на внешнем таймере[ах]

вроде как раз такого типа задачка.

16х8 ШИМ это 16х8х2=256 регистров, то есть что-то вроде EPM240/EPM570 должно уже быть рассматривабельным. заодно и разводка у печатной платы станет простой-простой (по ПЛИСе ноги можно тусовать как угодно)
Reply to
Dmitry E. Oboukhov

Привет, Dmitry !

05 Sep 06 , 13:35 Dmitry E. Oboukhov писал к Nickita A Startcev:

NAS>> Я вот сейчас как раз об этом и думаю. NAS>> по ногам - мега16 вполне хватает, но надо внимательно просчитать, NAS>> хватит ли ее по ресурсам. необходимо иметь 16 каналов ШИМ со NAS>> следующими параметрами: период 20мс, длина импульса от 0.8 до 2.2 NAS>> мс, разрешение установки ширины импульса порядка (2.2-0.8)/256= 5 NAS>> мкс. DO> кстати а как насчет того чтобы 16 каналов ШИМ на внешней ПЛИСине DO> сотворить или просто на внешнем таймере[ах]

в идеале на плате вообще только мега16 с кодом и обвязка в виде МАХ232, всяких ключей и RC цепи на ресет. А тут еще лишний корпус и лишний код..

Кстати, напомните, pls, недорогой аналог для max232

. С уважением, Hикита. ... DCLXVI (Русскязычное ругательство о популярной музыке)

Reply to
Nickita A Startcev

Пpиветствую, Nickita!

RM>> ШИМ великолепно решается на ПЛМ, NAS> Это понятно, но задача мелкая, не хочется плодить лишние корпуса. В порядке бреда - чтобы не плодить лишние, ядро контроллера размещаем тоже в плис (в младшие Spartan к примеру). Ядро берём Picoblaze, возможно CPLD вариант (максимально обкусанный) - всякие АВР неоправданно толсты. ШИМы и аппаратный UART написать/найти не проблема. Да, придётся пописать на асме Picoblaze. С АЦП сложнее - но если на самом деле нужно мерять сопротивление, недавно Dmitry Orlov и Dmitry E. Oboukhov приводили простой рецепт, как это на плис же и делать. Или - поставить плису Actel Fusion (мало ли, вдруг по рукой есть :)), в ней АЦП есть. Или - использовать Atmel плиски с аппаратным AVR и аналоговой периферией.

Michael Tulupov ...

Reply to
Michael Tulupov

Tue Sep 05 2006 15:36, Michael Tulupov wrote to Nickita A Startcev:

RM>>> ШИМ великолепно решается на ПЛМ, NAS>> Это понятно, но задача мелкая, не хочется плодить лишние корпуса.

MT> В порядке бреда - чтобы не плодить лишние, ядро контроллера размещаем MT> тоже в плис (в младшие Spartan к примеру). Ядро берём Picoblaze, MT> возможно CPLD вариант (максимально обкусанный) - всякие АВР неоправданно MT> толсты. ШИМы и аппаратный UART написать/найти не проблема.

Или перестать страдатать х..ней, сходить на сайт атмела, сделать RTFM и купить в

formatting link
ATMEGA2560-16AU за $10.08 у которой есть 16 аппаратных ШИМ-каналов.

Чего только люди не придумают, лишь бы документацию не читать...

"Resistance is futile"

Reply to
Yuriy K

Пpивет, Ruslan.

Вот что Ruslan Mohniuc wrote to Michael Belousoff:

GS>>>> Вот только диод - не идеальное yстpойство, на нём остаётся GS>>>> падение напpяжения, а иногда и yтечка в закpытом состоянии GS>>>> кpитична...

DT>>> Для той схемы, о котоpой шла pечь, идеальное и не нyжно. :) Там DT>>> хватило бы, напpимеp, и "квазидвyнапpавленной" логики x51.

MB>> Квазидвyнапpавленной логики - хватило бы. А MB>> диодy там явно не место.

RM> Почемy так категоpически? Если напpяжения остаются в пpеделах ТУ, то RM> почемy бы нет?

А не люблю, и всё. :-) По-моемy, вполне кpитеpий. Иногда смотpишь на схемy: нy не нpавится вот это место, и всё тyт...

RM> Считать надо. Где место, а где и таки нет.

Я бы даже шоткy тyда поостеpёгся, хотя вpоде кто-то тyт пpедлагал. Тем более, диоды там нy совеpшенно ни к чемy.

RM> + Origin: NATO must die. (2:469/473)

NP: This Jesus Must Die

Michael G. Belousoff mickbell(dog)r66(dot)ru

formatting link
... ==== Пpоблемy надо pешать до того, как она появится. ====

Reply to
Michael Belousoff

Пpиветствую, Yuriy!

YK> Или перестать страдатать х..ней, сходить на сайт атмела, сделать RTFM и YK> купить в

formatting link
ATMEGA2560-16AU за $10.08 у которой есть 16 аппаратных YK> YK> ШИМ-каналов. Это ты Hиките скажи - я с микроконтроллерами почти не работал, смотрю со своей колокольни :) Если есть такой кристалл - непонятно, чего он мучается...

Michael Tulupov ...

Reply to
Michael Tulupov

Привет, Yuriy !

05 Sep 06 , 18:41 Yuriy K писал к Michael Tulupov:

MT>> В порядке бреда - чтобы не плодить лишние, ядро контроллера MT>> размещаем MT>> тоже в плис (в младшие Spartan к примеру). Ядро берём Picoblaze, MT>> возможно CPLD вариант (максимально обкусанный) - всякие АВР MT>> неоправданно MT>> толсты. ШИМы и аппаратный UART написать/найти не проблема.

YK> Или перестать страдатать х..ней, сходить на сайт атмела, сделать RTFM YK> и купить в

formatting link
ATMEGA2560-16AU за $10.08 у которой есть 16 YK> аппаратных ШИМ-каналов.

не 16, а 12 и ног 'лишних' много.

YK> Чего только люди не придумают, лишь бы документацию не читать...

Вот-вот. Советуют електронный микроскоп вместо молота и наковальни.

. С уважением, Hикита. ... Hомеpа нодов в нодлисте pасположены похабно.

Reply to
Nickita A Startcev

Пpивет, Nickita!

*** 06 Sep 06 13:13, Nickita A Startcev wrote to Yuriy K:

YK>> Или перестать страдатать х..ней, сходить на сайт атмела, сделать YK>> RTFM и купить в

formatting link
ATMEGA2560-16AU за $10.08 у которой YK>> есть 16 аппаратных ШИМ-каналов.

NS> не 16, а 12

12 на четырех 16-битных таймерах и еще четыре - на Timer0 и Timer2, по два на каждом.

с уважением Владислав

Reply to
Vladislav Baliasov

Wed Sep 06 2006 13:13, Nickita A Startcev wrote to Yuriy K:

YK>> Или перестать страдатать х..ней, сходить на сайт атмела, сделать RTFM YK>> и купить в

formatting link
ATMEGA2560-16AU за $10.08 у которой есть 16 YK>> аппаратных ШИМ-каналов.

NAS> не 16, а 12

  1. RTFM.

NAS> и ног 'лишних' много.

Who cares?

YK>> Чего только люди не придумают, лишь бы документацию не читать...

NAS> Вот-вот. Советуют електронный микроскоп вместо молота и наковальни.

Тебе важен результат или процесс?

"Resistance is futile"

Reply to
Yuriy K

Hi Nickita !

Совсем недавно 05 Sep 06 12:23, Nickita A Startcev писал к Ruslan Mohniuc:

NS>>> Hужно примерно 20 ШИМ, примерно 8 АЦП, с десяток цифровых i/o. NS>>> причем ШИМ хитрый: период 20 мс, длина импульса от 0.8 до 2.2 мс NS>>> и весь этот диапазон нужно разбить хотя бы на сотню градаций. В NS>>> более жирный mega16 контроллер это трудно вписывается по NS>>> быстродействию управления/дергания ШИМ.

RM>> ШИМ великолепно решается на ПЛМ, RM>> 8 АЦП- на чем попало. Может быть, что RM>> такой ШИМ и софтово можно потянуть, зависит от остальных задач.

NS> Остальные задачи - чтение-запись через УАРТ установок/пределов всего NS> этого.

Я почти уверен, что это можно сделать софтово. Технология простая: в RAM строится таблица, к которой идет обращение от 0.8 до 2.2ms в начале каждого 20ms цикла. Каждая строка этой таблицы 20-битная, содержит нужное состояние бита для каждого из ШИМ. Соответственно один раз в (2.2-0.8)/100=14us нужно прочитать эту строку и вывести ее на пины контроллера. 14 микросекунд для этого хватит и в ПИКе, а уж в вашей разрекламированной тут Меге и подавно. В оставшееся между выборками время можно производить управление АЦП, проверять наличие и накапливать байты, пришедшие с УАРТ, подсовывать новые байты в передатчик УАРТ. В момент 2.2ms прекращаем работу с таблицей. Дальше у тебя есть 50-2.2=47.8ms на обработку принятого с УАРТ. Если пришла команда с установкой новых значений в ШИМ- значит, пересчитываешь значения для таблицы вывода. Вот и все. Устройство, посылающее команды, должно ожидать ответа не менее чем, скажем, 3ms

- тогда не будет и перерывов в связи (контроллер всегда успеет подготовить ответ). RAM на таблицу требуется 100 строк по 3 байта (24бита, из них используется 20)- это 300 байт. Я уверен, что 10-мипсовый ПИК справится со свистом. Hаверняка можно и помедленнее что-то выбрать.

WBRgrds Ruslan

Reply to
Ruslan Mohniuc

Hi Michael !

Совсем недавно 05 Sep 06 14:36, Michael Tulupov писал к Nickita A Startcev:

MT> В порядке бреда - чтобы не плодить лишние, ядро контроллера размещаем MT> тоже в плис (в младшие Spartan к примеру). Точно бред. Ты на частоты посмотри, у него там миллисекунды. :-) Софтово весь хард решается, софтово! А не софт хардверно! :)

WBRgrds Ruslan

Reply to
Ruslan Mohniuc

Привет, Yuriy !

06 Sep 06 , 16:42 Yuriy K писал к Nickita A Startcev:

YK>>> Или перестать страдатать х..ней, сходить на сайт атмела, сделать YK>>> RTFM и купить в

formatting link
ATMEGA2560-16AU за $10.08 у которой YK>>> есть 16 аппаратных ШИМ-каналов.

NAS>> не 16, а 12

YK> 16. RTFM.

А почему тогда в ПДФке написано, что 12?

NAS>> и ног 'лишних' много.

YK> Who cares?

на коленке единственный экземпляр заметно сложнее делать.

YK>>> Чего только люди не придумают, лишь бы документацию не читать...

NAS>> Вот-вот. Советуют електронный микроскоп вместо молота и NAS>> наковальни.

YK> Тебе важен результат или процесс?

Результат, но при ограниченной сложности процесса.

. С уважением, Hикита. ... Плохое настроение - это неприлично?

Reply to
Nickita A Startcev

Привет, Ruslan !

07 Sep 06 , 07:05 Ruslan Mohniuc писал к Nickita A Startcev:

RM> Я почти уверен, что это можно сделать софтово. Технология простая: RM> в RAM строится таблица, к которой идет обращение от 0.8 до 2.2ms в RM> начале каждого 20ms цикла. Каждая строка этой таблицы 20-битная,

То есть, всего по 20 градаций каждого канала?

У меня тут созрел другой вариант, что-то типа need = 0; do{ if ( lim[0] > 0 ) { need = 1; lim [0] --; }else{ PORT &= ~(1); }

}while(need!=0);

Примерно 5 операций на канал*такт, на 8мгц получится примерно 120 градаций на каждый из 16 каналов. По одному каналу таймера (условный 0) ыключаем все ШИМы, через 0.8 мс отрабатываем указанный цикл.

. С уважением, Hикита. ... С сегодняшнего дня этот вопpос y нас - наболевший.

Reply to
Nickita A Startcev

Пpивет, Ruslan!

*** 07 Sep 06 07:05, Ruslan Mohniuc wrote to Nickita A Startcev:

NS>> Остальные задачи - чтение-запись через УАРТ установок/пределов NS>> всего этого.

RM> Я почти уверен, что это можно сделать софтово. Технология простая: RM> в RAM строится таблица, к которой идет обращение от 0.8 до 2.2ms в RM> начале каждого 20ms цикла. Каждая строка этой таблицы 20-битная, RM> содержит нужное состояние бита для каждого из ШИМ. Соответственно один RM> раз в (2.2-0.8)/100=14us нужно прочитать эту строку и вывести ее на RM> пины контроллера. 14 микросекунд для этого хватит и в ПИКе, а уж в RM> вашей разрекламированной тут Меге и подавно.

В AVR это еще проще, можно без таблиц, быстродействие позволяет. Просто 20 сравнений текущей позиции с заявленной, и установка бита (5 циклов на канал, если через память или три, если через регистры) в регистре-заготовке, потом три вывода в порт (если критично быстродействие). 100 градаций на 8 MHz тактовой - запросто.

RM> в передатчик УАРТ. В момент 2.2ms прекращаем работу с таблицей. RM> Дальше RM> у тебя есть 50-2.2=47.8ms на обработку принятого с УАРТ

Только не 50 - цикл 20 mS. Хотя запас огромный.

RM> (24бита, из них используется 20)- это 300 байт. Я уверен, что RM> 10-мипсовый ПИК справится со свистом.

10-мипсовый и с прямым обсчетом справился бы. А вот PIC16 - разве что по таблице.

с уважением Владислав

Reply to
Vladislav Baliasov

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.