Перейти к содержанию
    

KykyryzzZ

Свой
  • Постов

    390
  • Зарегистрирован

  • Посещение

Сообщения, опубликованные KykyryzzZ


  1. Очень интерес в вопросе в другом аспекте: вдруг схематики ошиблись или еще что... Нужно порезать проводник, скажем в 6 слое при 8 слойке, врядли кто сделает. Ззато при двух слоях, взяли скальпель и порезали.

    Схему необходимо проверять на этапе разработки, а с таким подходом (там подрезать, тут нарастить) за серьезный проект не стоит браться. Да и в конце концов ошибки правятся при последующих ревизиях.

  2. Изготовление на одном и том же заводе, т.е. технология как бы одна.

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

  3. В коде нет проверки флага SD24IFG. Данные можно читать только когда данный флаг в "1". При чем тут SD16IFG?

    В строчке temp = temp + results; судя по форматам данных (int = int + long int) будет происходить потеря данных

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

  5. На самом деле в распараллеливании системы (как на рисунке) есть свои плюсы. Контроллер независимо работает с преобразователями не мешая обмену на общей шине. Быстродействие всей системы выше, чем с единой общей шиной.

     

    Родилась идея отказаться от промежуточных микроконтроллеров, а использовать для увеличения числа шин 4-х канальные i2c мультиплексоры с прерываниями. Мне кажется, что такая идея проще и надежнее. Надеюсь, я на правильном пути.

    При таком подходе все равно не получится скинуть ряд задач на "вспомогательных мастеров" и забыть до выполнения.

  6. Вообще такая схема жизнеспособна, но должны быть выполнены следующие условия:

    Микроконтроллер должен иметь во-первых два I2C, а во-вторых иметь возможность работать как мастером, так и слейвом.

    По поводу серии ATtiny не подскажу, т.к. их не использовал, хотя I2C (у них он называется TWI) в каком-то виде реализован, но нужно разбираться с его функциональными возможностями.

     

    Могу ошибиться, но у ATtiny режим slave отсутствует. Только мастер.

  7. дело в том что преподаватель которому надо эту лабу сдавать будет преподавать у нас интерфейсы, поэтому разделение байтов важный вопрос

    еще не совсем понял зачем посылать 2 нулевых байта на DIN , там же настройки регистров собьются ?

    Контроллер АЦП сам переключает регистры в зависимости от присланной команды. Пересылка двух нулевых байт нужна для генерации тактового сигнала по которому АЦП обратно передает данные. Вообще чтобы разобраться с этим АЦП, следует сначала разобраться с SPI интерфейсом, а уж по нему в интернете полно материала и примеров реализации для разных контроллеров.

  8. В кратце алгоритм работы таков:

    Настраиваешь на контроллере интерфейс SPI.

    Выставляешь сигнал CS в 0.

    Отправляешь по SPI четыре байта настройки (настраиваешь регистры по описанию с 10 по 14 стр)

    Ждешь пока DRDY не станет 0. Как только DRDY = 0, АЦП настроен. С этого момента DRDY будет меняться то в 1 то в 0. Можешь переводить CS в 1.

    Если хочешь считать данные, то слушаешь DRDY.

    Как только DRDY = 0, выставляешь сигнал CS в 0.

    Отправляешь по SPI байт 0х38. (перед отправкой 0х38 скорее всего придется подобрать задержку).

    Затем посылаешь два нулевых байта, чтоб под этот клок АЦП тебе переслал данные.

    Данные в регистре SPI.

    Выставляешь сигнал CS в 1.

     

     

    ... как же коды на DIN разделяются ?

    Сигналы DIN, DOUT, SCLK - сигналы интерфейса SPI. Если в контроллере этот интерфейс аппаратно реализован, все происходит автоматически. Если нет, то придется писать его ручками. Вот тогда и будешь думать - как байты разделять

  9. Так происходит когда смещение меньше 0.

    ....

    И это только при настройке в IAR Data model=Large, при котором можно использовать более 64k ram.

     

    У MSP430F2416 объем RAM 4Кбайта... От куда взялись 64К?

    Советую посмотреть при отладке, не возникает ли переполнения стека?

     

    Ради интереса посмотрел код. Результат в аттаче.

    post-9885-1337416627_thumb.jpg

  10. Совсем никаких, оптимизация отключена.

    Причем если смещение уменьшить, то все нормально:

    Для начала я бы посоветовал выяснить, в какой момент программа начинает сваливаться (т.е. точное значение этого пресловутого смещения при котором еще работает и при котором уже нет)

  11. Устройство предполагается ставить на улице, у таких шкафов всепогодное исполнение?

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

  12. Существуют спец. шкафы для аппаратуы с терморегулированием. Они работают по принципу термокамеры - выставил температуру внутри шкафа и она там поддерживается вне зависимости от внешних воздействий.

  13. Можно, но не нужно

    самое простое --- удалите одному посадочное место

    Хотя есть и другие возможности

    Так скорее всего по схеме заложен только один, а второй в "бутерброде" идет в качестве корректировки номинала. Я бы посоветовал оставить один конденсатор без всяких бутербродов, а в ПЭ3 поправить номинал.

×
×
  • Создать...