Выбор 16-ти разрядного контроллера

Привет, Alexey! Вы писали to Vladimir Vassilevsky on Thu, 18 Nov 2004 08:49:54 +0300:

AK>>> Почему малоизвестный во всем мире МВ90 стал так популярен в AK>>> России - загадка. AM> 1) + 2) + 3) + Сеpгей Пинигин (я не шyчy :)

AM> к 2) - поpядка 50 наименований МК _с одним ядpом_ AM> и богатым набоpом пеpифеpии.

Периферия фуджиков меня расстроила :( I2C реализован криво, т.е. SDA и SCL на высокой частоте (кстати больше 400кГц он не может) при формировании START-STOP переключаются одновременно или даже в обратной, от нужной, последовательности. При понижении частоты становится заметен "правильный" сдвиг, но он такой маленький, а ожидаешь переключение по середине ... SPI реализован то же криво, т.е. возможно он прямой для кого-то, но для памяти 25Сххх он кривой. Проблема в том, что исходное состояние SCL=1, а нужно SCL=0, хотя переключения происходят по правильным фронтам. При чтении, на эту последовательность память еще соглашалась отзываться, а при записи ни как. Пришлось запись формировать вручную. Максимальная частота SPI 1МГц, но при работе на ней шли постоянные сбои, пришлось уходить на 500кГц там сбоев нет. В блоке UART нет признака окончания передачи последнего бита, что создает изрядные проблемы при формировании RS485. Правда этого признака почти ни у кого нет ... Другой периферией не пользовался. Да, все это относится к MB90F574A который есть у меня, возможно у других все гораздо лучше.

With best regards, Leha Bishletov. E-mail: snipped-for-privacy@rol.ru

Reply to
Leha Bishletov
Loading thread data ...

Hello, Dima! You wrote to Alexey Kovalev on Fri, 19 Nov 2004 13:04:00 +0300:

Codewarrior. Мне YK уже ответил.

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

ОК. Так как с выбором не густо, спрошу "Какой либо другой язык реализованный для 16-ти битных МК кроме С, asm, ну и Fort, конечно". А дальше отфильтрую по субъективному критерию нравится - не нравится.

With best regards, Alexey Kovalev

Reply to
Alexey Kovalev

Hello, Alexey Kovalev !

Под какие задачи язык?

С уважением, Дима Орлов.

Reply to
Dima Orlov

Hello, Dima! You wrote to Alex Kouznetsov on Fri, 19 Nov 2004 14:21:00 +0300:

DO> А тут ты совершенно прав.

Кто же это делал принципиальное различие в языках программирования между процессорами и контроллерами? Это не правильно.

А вот разделять реализации языков программирования между процессорами и контроллерами, очевидно можно. Если мы выбираем контроллер но не процессор, то и компилятор (+среду разработки) будем выбирать из предназначенных именно для контроллеров. Т.е MSVC или С++Builder не будем рассматривать, а IAR c Codewarrior для HC12 будем. И т.д.

With best regards, Alexey Kovalev

Reply to
Alexey Kovalev

Fri Nov 19 2004 14:05, Leha Bishletov wrote to Alexey Musin:

LB> Периферия фуджиков меня расстроила :( I2C реализован криво,

А вообще есть контроллер, в котором I2C реализован без извращений и никому не нужных премудростей с арбитражем и пр.? Мне приходилось воевать с аппаратным I2C в ATMega и в HCS12. Вручную махать пинами намного проще, чем разбираться, какой бит куда должен быть установлен.

LB> SCL на высокой частоте (кстати больше 400кГц он не может)

Больше 400kHz и не должен.

VLV

"Evil will prevail because good is dumb" (c) Dart Weider

Reply to
Vladimir Vassilevsky

Hello, Alexey Kovalev !

Hе вижу связи. Во времена оны прекрасно пользовался PC'шными средствами разработки для контроллеров на базе х86.

С уважением, Дима Орлов.

Reply to
Dima Orlov

Hello, Dima! You wrote to Alexey Kovalev on Fri, 19 Nov 2004 16:49:00 +0300:

Распределённая система сбора и обработки информации. АСУ ТП. Задачи контроллеров : нетривиальные устройства сбора данных, "черные ящики".

Вообще я не могу себе позволить под каждою задачу подбирать семейство контроллеров. Иногда приходится пользоватся под что уже есть средства разработки, да просто уже есть корпуса. Так что выбор должен подразумевать некоторую гибкость.

ps: Под языком, подразумевается конкретная реализацией его, а не что то абстрактное.

With best regards, Alexey Kovalev

Reply to
Alexey Kovalev

Hello, Alexey Kovalev !

Какой у них интерфейс с АСУ ТП?

Я так понимаю, что задачи у тебя достаточно низкоуровневые, и думаю, что голый С, ну может быть С++ будет вполне оправданным выбором

Конкретная реализация возможна только под конкретно указанный контроллер (ядро)...

С уважением, Дима Орлов.

Reply to
Dima Orlov

Hello, Dima! You wrote to Alexey Kovalev on Fri, 19 Nov 2004 19:00:00 +0300:

DO> Hе вижу связи. Во времена оны прекрасно пользовался PC'шными DO> средствами разработки для контроллеров на базе х86.

Не хочу контроллер из пня, Мне бы готовый МК.

With best regards, Alexey Kovalev

Reply to
Alexey Kovalev

Hello, Dima! You wrote to Alexey Kovalev on Fri, 19 Nov 2004 19:35:00 +0300:

DO> Какой у них интерфейс с АСУ ТП?

Из родоначального письма этой темы видно что CAN.

DO> Я так понимаю, что задачи у тебя достаточно низкоуровневые, и думаю, DO> что голый DO> С, ну может быть С++ будет вполне оправданным выбором

в С мне многого не хватает. C++ да, без исп-я всех его возможностей.

DO> Конкретная реализация возможна только под конкретно указанный DO> контроллер (ядро)...

А выбор ядра происходит в том числе и по оценке доступных компиляторов для этого ядра.

With best regards, Alexey Kovalev

Reply to
Alexey Kovalev

Hello, Alexey! You wrote to Alex Kouznetsov on Fri, 19 Nov 2004 11:33:00 +0000 (UTC):

AK>>> Hасчёт памяти ты загнул - она есть (регистры).

AK>> Да будет тебе известно, что регистры - это вообще-то не память;

AK> Самая настоящая память. В 196-ых окромя регистрового файла иной AK> встроенной RAM и нет. На ПК при загрузке с помощью только этой "не AK> памяти" выполняется программа тестирования внешней памяти.

А AVR при попытке использовать часть регистрового файла как стек теряет сознание от такой наглости.

With best regards, Alexander Derazhne

Reply to
Alexander Derazhne

Fri Nov 19 2004 13:33, Alexey Kovalev wrote to Alex Kouznetsov:

AK> From: "Alexey Kovalev" snipped-for-privacy@samara21.ru

AK>>> Hасчёт памяти ты загнул - она есть (регистры).

AK>> Да будет тебе известно, что регистры - это вообще-то не память;

AK> Самая настоящая память.

Исполни-ка программу на этой "памяти", т.е. на гольных регистрах х86.

Для того, чтобы доказать, что утверждение "регистры - это вообще говоря не память" истинно, достаточно привести хотя бы один пример, когда регистры не являются памятью, что я и сделал. Ты с логикой знаком?

AK> В 196-ых окромя регистрового файла AK> иной встроенной RAM и нет. Hа ПК при загрузке с помощью только AK> этой "не памяти" выполняется программа тестирования внешней AK> памяти.

Не в кассу. Мы говорили про 80188. В нем, как и в других х86, называть регистры памятью - глупость. Есть и другие архитектуры, некоторые из них при исполнении команд используют память примерно так же, как "более традиционные" архитектуры используют регистры. Обычно такую память называют регистровым файлом. Называть регистровые файлы памятью - нет никакого криминала. Но не путай божий дар с яичницей...

AK>> Памяти программ в нем нет. AK>> Поэтому он микропроцессор, несмотря на наличие периферии.

AK> Во сказал! А ты оказывается и не знаешь. AK> Hе имеет смысл перичислять огромное кол-во микроконтроллеров AK> только с внешней памятью. Hапример, только вчера я смотрел AK> MB90V340A и расстроился : ROM - External. :(

Для этого есть специальный термин: "микроконтроллер, работающий в микропроцессорном режиме". При этом "микроконтроллерность" такого (в сущности) _микропроцессора_ будет состоять или в _возможности_ быть настоящим микроконтроллером (например, 8051 может работать и так и эдак), или в наличии микроконтроллерных "братьев" того же семейства (например, микропроцессор 8031 имеет таких "братьев", поэтому для упрощения всех членов семейства называют микроконтроллерами, не вдаваясь в детали).

Пока, Алексей

Reply to
Alex Kouznetsov
19-Nov-04 12:52 Alexey Kovalev wrote to Dima Orlov:

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

AK> ОК. Так как с выбором не густо, спрошу "Какой либо другой язык AK> реализованный для 16-ти битных МК кроме С, asm, ну и Fort, конечно". Паскаль? Ада?

AK> А дальше отфильтрую по субъективному критерию нравится - не нравится.

Что-там что-там в далласовсикх платках Tini стоит? DS89c400 или что, не помню уже. Во флеше на плате уже забит java-интерпертатор.

wbr,

Reply to
Oleksandr Redchuk

Hello, Alexey Kovalev !

Тогда - С.

Для 16ти бит С++ - не проблема сегодня.

Укажи хоть возможные варианты.

С уважением, Дима Орлов.

Reply to
Dima Orlov

Hello, Alexey Kovalev !

Hу так и ищи готовый МК под свою задачу. 15 лет назад мне оптимальным был 8086 или 8088, никаких пней тогда не было.

С уважением, Дима Орлов.

Reply to
Dima Orlov

Fri Nov 19 2004 16:40, Alexey Kovalev wrote to Dima Orlov:

AK>>> языках программирования, делать принципиальное различие между AK>>> процессорами и контроллерами - довольно глупо.

DO>> А тут ты совершенно прав.

AKov> Кто же это делал принципиальное различие в языках программирования AKov> между процессорами и контроллерами? Это не правильно.

Наконец-то до тебя дошло. Однако ж не делай невинное лицо:

---------- quote --------- Thu Nov 18 2004 11:17, Alexey Kovalev wrote to Alex Kouznetsov:

AKov> Hу и где для 16-ти разрядных реализован полный Це++ ? AKov> Так что бы труп страуса остался доволен.

Thu Nov 18 2004 12:51, Alexey Kovalev wrote to Alex Kouznetsov:

AK>> Я ++ вообще не упоминал, непонятно с чего вдруг возник твой вопрос. AK>> Hо раз уж тебя этот вопрос интересует, то - 8086

AKov> Это микропроцессор, а не микроконтроллер (см. сабж)

-------- end quote ---------

Пока, Алексей

Reply to
Alex Kouznetsov

Hello Alex Kouznetsov!

AK>>>> Hасчёт памяти ты загнул - она есть (регистры). AK>>> Да будет тебе известно, что регистры - это вообще-то не память; AK>> Самая настоящая память. AK> Исполни-ка программу на этой "памяти", т.е. на гольных регистрах х86.

Говоpя стpого, на 486+ есть кэш, котоpый можно запpогpаммиpовать и юзать как статическую память, "висящую" в нужном месте адpесного пpостpанства.

Reply to
Aleksandr Konosevich

Hello, Alex! You wrote to Alexey Kovalev on Fri, 19 Nov 2004 20:39:40 +0000 (UTC):

Очень уж тебя задело что ты в эху написал :

AK> Памяти программ в нем нет. Поэтому он микропроцессор

По этому ты мне написал столько писем. Дабы уменьшить трафик я далее не буду отвечать на твои письма.

AK> Ты с логикой знаком?

Знаком с несколькими. Но плохо знаю схоластику, по этому не могу правильно назвать приемы которыми ты пользовался.

AK>>> Да будет тебе известно, что регистры - это вообще-то не память; AK> Исполни-ка программу на этой "памяти", т.е. на гольных регистрах AK> х86. AK> Для того, чтобы доказать, что утверждение "регистры - это вообще AK> говоря не память" истинно, достаточно привести хотя бы один пример, AK> когда регистры не являются памятью, что я и сделал.

Использование понятие достаточности без доказательства этой достаточности. (прием схоластики) Доказываем что А не В (что уже не так - см. выше). После чего утверждаем что А не С. (прием схоластики)

и т.д.

AK> AKov> Кто же это делал принципиальное различие в языках программирования AK> AKov> между процессорами и контроллерами? Это не правильно. AK>Наконец-то до тебя дошло. Однако ж не делай невинное лицо: AK>---------- quote --------- AK>Thu Nov 18 2004 11:17, Alexey Kovalev wrote to Alex Kouznetsov: AK> AKov> Hу и где для 16-ти разрядных реализован полный Це++ ?

Это, тоже прием схоластики: обвинение оппонент в том чего он не утверждал. Есть разница между _языком_ программирования_ и _реализацией_языка_.

[флейм закрыт]

With best regards, Alexey Kovalev

Reply to
Alexey Kovalev

Hello, Dima! You wrote to Alexey Kovalev on Sat, 20 Nov 2004 03:10:00 +0300:

DO>>> Какой у них интерфейс с АСУ ТП? >> Из родоначального письма этой темы видно что CAN. DO> Тогда - С.

Это как то связано?

DO> Для 16ти бит С++ - не проблема сегодня.

Для футжиков они е?

DO> Укажи хоть возможные варианты.

Прорабатывается ТЗ. Вопросы снабжения. Пока нет ограничения в пределах требований указанных

16.11.2004

With best regards, Alexey Kovalev

Reply to
Alexey Kovalev

Hello, Alexey!

Для 16-bit нет и похоже в ближайшие планы развития это не заложено...

Для 32-bit: - EC++ (Softune 6) - gcc (но сам еще не пробовал собирать)

PS: Видимо давно флейма не было... Запросы строго по железу а разбеседовались аж до С++, МК - не МК...

_______ Сергей.

Reply to
Sergey Pinigin

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.