Цитата(defunct @ May 6 2008, 05:01)

Взял второй. День провозился для того чтобы запустить тактирование от кварца!
С докой не разобрались просто, вот и все.
Цитата(defunct @ May 6 2008, 05:01)

Решил испытать как работает АЦП. Мамочки, а его оказывается надо программно на компараторе делать! Вот тебе раз. UART оказывается тоже предлагают сделать программно. LOL.
И это в чипе который дороже AVR mega16.
Ой, что же это вы купили-то? Поглядите на АЦП в MSP430F16x. Поглядите на USART'ы в нем же. И сравните с меговскими. Вот тогда будет LOL.
И зачем было брать сразу десяток? И зачем было брать вслепую? Вы меня удивляете - вроде уже не новичок в этих делах, вполне успешно трудитесь на этой ниве, судя по всему, нежели до приобретения МК было не ясно, что там у него внутри. И для потренироваться, поковыряться естественно брать чип потолще - чтобы можно было весь набор фич пощупать. Потом уж под задачу оптимизировать с выбором.
Цитата(defunct @ May 6 2008, 05:01)

В общем попал я на очень много неприятных сюрпизов, на которые при освоении других семейств не наталкивался. Знакомство с MSP мне показалось самым болезненным. Возможно я ошибся на каком-то шаге (выбрал не тот МК для экпериментов, не с того документа начал читать, не с той ноги встал

, а возможно просто MSP сам по себе такой, непростой в знакомстве.
Вы не разобрались с документацией - после атымеловского подхода, согласен, нормальный выглядит поначалу странно. Про выбор чипа - см выше.
Цитата(defunct @ May 6 2008, 05:01)

Конечно, здорово, как они подошли. Но зачем мне читать весь толстый мануал, если я собрался работать с самым мелким представителем семейста?
Не надо все читать. Надо читать только то, что требуется.

В этом весь цимус и есть.
Цитата(defunct @ May 6 2008, 05:01)

Ну допустим хочу я найти как настроить клок.
В Atmel документации да и не только Atmel - берется документ на конкретный девайс, кликается на раздел System Clock and Clock Options - там расписано все о тактировании этого конкретного девайса.
Ага, потом программа переносится на другой чип - и привет, там уже что-то чуть по-другому. Типичная ситуация для атымела.
Цитата(defunct @ May 6 2008, 05:01)

В TI даташит на конкретный девайс мне рассказывает сколько много разных вкусностей есть, при этот ни слова не говоря о том как их использовать!! Я должен бродить по куче разных документов, в поисках раздела, а где же устройство тактового генератора. Найдя его я должен 10 раз убедиться а подходит ли то что я нашел к конкретному моему part'у.
Это вероятно очень удобно для начинающих. Да?
Не по куче документов. Их всего два. Один общий, где описаны модули. Модули во всех чипах
одинаковые. Нужно вам клок настроить? Плиз: открываете User's Guide, нахоите описание модуля тактирования "Chapter 7 Basic Clock Module". Читаете, как оно устроено. Все подробно, внятно и с картинками. Удобнее некуда. В DS смотрите только электрические характеристики да распиновку.
Цитата(defunct @ May 6 2008, 05:01)

В нем описано в стиле рекламной акции - очень кратко об имеющихся фичах, примерно то же что Atmel называет Chip Summary. Если бы мне надо было Summary на чип, я бы качал его. Но мне нужен Datasheet где должно быть написано как с этим всем работать.
Это не summary на чип. Это краткое описание имеющихся в этом конкретном кристалле модулей. Буквально по паре абзацев на каждый. Посмотрите, там при общем объеме 65 страниц, краткое описание модулей занимает страниц 7-8, из которых больше половины - это таблицы с адресами и прочей подобной справочной информацией. Это именно Data Sheet и по форме, и по содержанию. Никакое не summary, как у Атмела, которое, действительно, вещь безполезная, пару раз скачивал, потом никогда больше не качал - мусор, надо сразу брать полноценный DS.
Цитата(defunct @ May 6 2008, 05:01)

Это показывает, что Atmel с уважением относится ко времени пользователя. Возьмем даташит на любой компонент будь-то SDRAM чип, драйвер, или транзистор - в нем есть все про этот конкретный компонент, как его включать и как с ним работать! Почему с MK должно быть иначе?
Потому, что МК гораздо сложнее транзистора и драйвера. Сложнее, прежде всего, функционально, что выражается в большом объему документации, а это, в свою очередь, уже требует соответствующего подхода - структуризации, классификации, словом, всего того, что нужно для обеспечения эффективной работы с документацией большого объема на нетривиальные вещи. МК по сравнению с перечисленным вами - это качественно другой объект.
Вас же не удивляет, что есть отдельная дока на компилятор, на ассемблер, на линкер, на язык С, на язык С++, на runtime библиотеку. Представьте, что в составе IAR или AVR-GCC идет офигенного размера мануал, в котором сперва описывается язык, потом рантаймная библа, потом собственно сам тулчейн. И выходит новая версия - там тот же мануал, но уже чуть другой - версия другая, изменения какие-то есть (мелкие или значительные - не суть). Попробуйте раскопать это там. Вот уж занятие для мазохистов.
Цитата(defunct @ May 6 2008, 05:01)

Вся информация собрана вместе, это я и называю грамотно построенная документация.
От того, что вы ее так называете, она таковой не становится.

Информация, начиная с какого-то объема, должна быть структурирована. Иначе ей пользоваться становиться трудно или невозможно. С докой на AVR оно пока на стадии "трудно". Я имею в виду случай, когда надо перейти на похожий чип - придется лопать сотни страниц и выискивать различия в реализации. Думаете, это мои фантазии? Нисколько. Рассказываю про грабли, на которые я сам наступал.
Была у меня плата с мегой163. Там, в частности, использовался UART. В обработчике прерываний я данные из UDR не забирал, только флаг сбрасывал, а сам принятый байт забирал уже процессе (задаче, треде), выполняющем функцию приемника пакетов. Флаг приемника UART'а в AVR как сбрасывается? Правильно - путем чтения из UDR. Все замечательно работало.
Потом пришлось мигрировать на мегу16 (причину уже не помню, давно было). Поглядел бегло, вроде почти то же самое. И совместимость заявлялась. Действительно, мега16 встала на место меги163 без проблем (ну, там переименованные I/O регистры - это обычные финты IAR'а (а может и Атмела, а IAR просто тупо делает, как в доке написано, уже не помню таких подробностей, хотя тот же IAR с MSP430 таких сюрпризов не преподносит)). Включили, все работает, кроме, как вы уже догадались, UART'а. Стал разбираться, эксперименты ставить. Ну, на чип-то ведь не подумаешь, все у себя косяки ищешь. Проискал полдня, уже шарики за ролики заезжать стали. Отладки внутрисхемной не было.
Потом уже заподозревал сам МК, стал его фишки проверять. Нашел. Оказывается эти деятели в Атмеле чуть переделали UART. Теперь у него - страшно подумать - FIFO на приемнике аж (трудно поверить) на
ДВА байта!!! Ну, и, естественно, когда я в ISR сбрасываю флаг (путем чтения UDR, другого способа нет), то байтик из фифо теряется. Завел временную переменную-буфер, в которую этот байтик читается при сбросе флага, с нее уже в процессе в буфер пакета и складывал.
Я не хочу тут дискутировать на тему правильности/неправильности технических решений (как у Атмела, так и у меня), тут можно спорить, что лучше/хуже. Я тут хотел просто продемонстрировать миазмы этого подхода атмеловского: другой
чип - другая документация, и не надо обольщаться насчет полной совместимости и взаимозаменяемости.
Другой чип - все, бери читай всю доку полностью и внимательно. Иначе, лови преведы вроде вышеописанного.
На самом деле не открою тайны, если скажу, что Атмел так доку выпускает не принципиальным соображениям, по вынужденной необходимости. У них не было (а возможно и по сей день нет) стабильности в выпуске МК. Постоянно что-то доделывается, переделывается, уточняется. А происходит это потому, что руководит стремление как можно быстрее на рынок выкинуть продукцию и застолбить нишу. Хорошенько подумать, чтоб потом не переделывать, времени нет.
В этой ситуации другого выхода, кроме как выпускать на каждый конкретный чип полную документацию всем чохом, просто нет. Вот они берут за базу доку от ближайшего кристалла, правят ее в части изменений. А вам предлагается "найти пять отличий". С чем вас и поздравляю. Хоть бы они бы уж выкладывали бы рядом и мелкий файлик с отличиями - это сильно облегчило бы работу с документацией.
Вот такие они - реалии "грамотного подхода" и "уважения к пользователю".

Цитата(defunct @ May 6 2008, 05:01)

Если я собрался работать с самым мелким представителем семейства напр tiny13, с весьма ограниченным набором фич, то мне не понадобиться читать информацию обо всех фичах всех MK семейства AVR. В даташите будет ровно то, что мне надо прочитать.
Пользователю не надо искать ничего больше.
С MSP430 все еще проще. Берете DS, смотрите на первой странице перечень фич, решаете, подходит вам данный МК или нет. Если подходит, то открываете неоднократно упомянутый User's Guide и читаете главы про интересующие периферийные модули. Например, надо вам UART - читаете "Chapter 12 USART Peripheral Interface, UART Mode", надо вам SPI - читаете "Chapter 13 USART Peripheral Interface, SPI Mode", надо вам АЦП - "Chapter 15 ADC12" (или "Chapter 16 ADC10", если в выбранном вами чипе стоит 10 битный АЦП). (Номера глав могут от свежей доки отличаться, цитировал по документу SLAU049B от 2002 года.)
Если не надо вам DMA, то про него не читаете. Если не надо вам Hardware Multiplier, то про него тоже не читаете. Если не надо вам Timer B, то и его трогать не обязательно. Словом, читаете только те главы, которые явно нужны. И сразу ясно, что нужно читать, что не нужно. И сюрпризов в особенностями работы, например, АЦП12 между чипами, в которых он применяется, тоже нет. Все на месте, все стабильно и предсказуемо.
Цитата(defunct @ May 6 2008, 05:01)

См. выше. Как говорится а ХЗ, что в толстом мануале относится к чипу который мы выбрали, а что не относится.
Как это "ХЗ"? Удивительные вещи говорите!

А содержимое чипа от вас в тайне, что-ли, держат? В DS посмотрите, что есть - там на первой же странице все перечислено (как и в доке на меги), и все понятно становится. А за подробностями - в User's Guide.
Цитата(defunct @ May 6 2008, 05:01)

TI / ADI компании которые как бы это сказать "на своей волне". Для меня они не показатель. Точнее показатель того как делать не надо.
Аргументация что надо.
Цитата(defunct @ May 6 2008, 05:01)

Не надо строить документацию на МК на подобие документации к DSP.
А в чем принципиальная разница между МК и DSP? И вот, например, Blackfin - это МК или DSP?

Где эта четкая граница?