Jump to content

    

SergSit

Свой
  • Content Count

    170
  • Joined

  • Last visited

Community Reputation

0 Обычный

About SergSit

  • Rank
    Частый гость

Информация

  • Город
    Array
  1. В том то и дело, что импеданс зависит и от толщины препрега. К тому же Вы говорите о USB. Хочу уточнить о какой скорости Вы говорите? Если о FS (12МГц), то там и импеданс можно не считать будет работать. Или Вы говорите о HS т.е 480МГц на проводах в 2,5см?
  2. Спасибо за информацию. Если знал бы заложил 2 препрега. Но выдержка из статьи: " Обеспечение надежности. Допустимое количество смежных слоев препрега вМПП - не менее 2 и не более 4. Возможность же использования одиночного слоя препрега между «ядрами» зависит от характера рисунка и от толщины смежных слоев меди. Чем толще медь и чем насыщенней рисунок проводников, тем сложнее заполнить смолой пространство между проводниками. А от качества заполнения зависит надежность платы. Пример: медь 17 мкм - можно использовать 1 слой 1080, 2116 или 106; медь 35 мкм - можно использовать 1 слой только для 2116." Подчеркнуто как раз для моего случая. К тому же на внутренних слоях у меня только полигоны и один широкий (5мм) не длинный проводник. И переходных не очень много.
  3. Они говорили о не допустимых сочетаниях. Но мне было все равно, т.к. плату заказали в Китае. Производитель сказал, что все реализует. Честно, опыта в МПП мало. А чем хуже использования одного слоя? И чем лучше использование 2-х слоев? Зачем использовать более высокий класс, если можно обойтись более низким классом. Тем самым сберечь деньги фирмы. Причем высокий класс нужен только дифпар. Все остальное 3-4 классу. Большая часть по 3-му.
  4. Да, толщину препрега выбирал из ряда которым пользуется "Нанотех": Возможные толщины препрегов FR4 и FR4 High Tg: 7628 (0,185мм); 7628 (0,216мм); 2116 (0,105мм); 1080 (0,075мм). У не которых производителей тоже видел эти толщины. И вторую задачу, которую поставил - это чтобы дорожки были не меньше 0,2. Чтобы на плате виды были))) И попасть в 4-ый класс точности.
  5. Ядро 1,2 мм. Вот стэк слоев. Спасибо БОЛЬШОЕ за участие))
  6. Уважаемые форумчане))) Разработал первую 4-х слойку, это USB-Hub на 7 портов. По USB стандартам импеданс между проводниками дифпар должен быть 90 Ом. Расчитал ширину дорожек, расстояние между проводниками дифпар и расстояния до слоя земли (который должен находится под проводниками дифпар). Получились такие результаты: ширина дорожек 0,2мм, между проводниками 0,25мм, prepreg 0.105мм. Кто может проверти мои результаты. Уж очень волнительно, чтобы не допустить ошибку из-за отсутствия опыта)) Для расчетов использовал Si9000.
  7. Ищу StateViewer

    Для информации, IAR7 ARM имеют этот плагин. Находятся в папке c:\Program Files\IAR Systems\Embedded Workbench 7.0\arm\plugins\rtos\OpenRTOS\. Для его включения необходимо в файле OpenRTOSPlugin.ewplugin изменить параметр <defaultLoad>no</defaultLoad> на yes. И при отладке вы будете все видеть))) Думаю его можно перенести и в IAR AVR. Спасибо Ксения за участие.
  8. Ищу StateViewer

    Спасибо. Да это то, что нужно только надо разбираться. Показывает неверные данные(
  9. Ищу StateViewer

    На сколько понимаю это эклипса. Мне надо для IAR( Спасибо за помошь.
  10. Ищу StateViewer

    Это читал. Там ссылка на разроботчика. Как раз то о чем говорил. Не дают они по ссылкам скачивания. Точнее, регистрируешся и не чего в ответ(((
  11. Ищу StateViewer

    Может кто-нибудь может помоч с этой утилитой для отладки FreeRtos. Ссылка на сайт разработчика не нужна, знаю. Не чего они не раздают((((( По крайней мере мне после регистрации не чего не приходило(((
  12. Мне необходимо вызвать шаблонный метод Port::SetConfig< Port::Fisrt >( ), который даст короткий код. И это лечится)) Подсказали на другом форуме. Надо вот так: Port:: template SetConfig< Port::Fisrt >( ); И дали ссылку на разъяснения: Решение проблемы из стандарта Топик закрыт.
  13. Есть код: class A { public: static void Set( unsigned param ) { GPIOA->ODR = param; } }; template< class ClassTemp1, uint8_t number > class B { public: enum Config { Fisrt, Second, }; static void SetConfig( Config param ) { ClassTemp1::Set( param ); } template< Config param > static void SetConfig( ) { ClassTemp1::Set( param ); } }; template< class Port > class C { public: static void Init( ) { Port::SetConfig< Port::Fisrt >( ); Port::SetConfig( Port::Fisrt ); } }; typedef B< A, 14 > D; typedef C< D > Proba; int main( void ) { Proba::Init( ); D::SetConfig( D::Fisrt ); D::SetConfig<D::Fisrt>( ); } Компилятор дает ошибку на строчке с методом Port::SetConfig< Port::Fisrt >( ); в методе C::Init(): compiling main.cpp... src\main.cpp(99): error: #29: expected an expression Port::SetConfig< Port::Fisrt >( ); Хотя если напрямую вызывать методы из класса D ошибок нет. В чем моя ошибка?
  14. Не могу толком открыть поток))) _binFile объявлен в классе, часть конструктора которого показана ниже. Поток открывается в конструкторе нормально, но по выходу из конструктора он уже закрыт. В чем у меня ошибка? ofstream _binFile( _nameFile, ios::out | ios::binary ); if( _binFile.is_open( ) == 0 ) { cout << "Не смог открыть файл " << _nameFile << endl; return; }
  15. Спасибо всем отозвавшимся. Тему эту читал, но были отличия от моего случая. Ошибку нашел))) Небыло реализации деструктора в наследнике))) Как всегда дело было вечером........))