Jump to content

    

SlavaV

Свой
  • Content Count

    101
  • Joined

  • Last visited

Community Reputation

0 Обычный

About SlavaV

  • Rank
    Частый гость
  • Birthday 08/27/1976

Контакты

  • Сайт
    http://
  • ICQ
    0

Информация

  • Город
    г.Улан-Удэ

Recent Profile Visitors

1388 profile views
  1. Нужно смотреть исходники, может Вы вообще ID отправляете в ASCII формате (как выше сказали сниффер хороший вариант, я пользуюсь Eltima он и тайм-метки показывает можно задержки посчитать) а очистить буфера можно: PurgeComm(hPort, PURGE_RXCLEAR | PURGE_TXCLEAR | PURGE_TXABORT | PURGE_RXABORT);
  2. Привет, подскажите назначение boot block у AM29F800 и разницу между BB (bottom boot block) BT (top boot block) в даташите только указанно адреса секторов и размер.
  3. Watchdog таймер

    ADM705
  4. Привет Код    QDockWidget * pdocCtrl = new QDockWidget("Controls", this);     Control * pctrl = new Control(dev, this);     pdocCtrl->setWidget(pctrl);     pmnuPanel->addAction(pdocCtrl->toggleViewAction());     addDockWidget(Qt::LeftDockWidgetArea, pdocCtrl);
  5. вопрос по verilog

    Реализуйте обычный счетчик со списком чувствительности по тактовой частоте и генерируйте выходной импульс при достижении определённого значения (посчитаете в зависимости от тактовой частоты).
  6. можно через операционный усилитель попробовать.
  7. Единственное, что могу посоветовать, проверить не подходит к выводу проводник с обратной стороны платы или можно измерять потенциал непосредственно на выводе Mute (если плата многослойная и проводников не видно) PS Вообще с трудом вериться чтобы сигнал управления выполняли дорожками такой толщины (видимо есть другое назначение у этого вывода в другом варианте исполнения).
  8. Вы не заметили, что на плате ещё пара десятков элементов не распаяны. Давайте последовательно: 1. Что за устройство (наименование)? после ответа на первый вопрос остальные могут отпасть, но приведу 2. Как транслируется звук на колонки в обход магнитолы в разрыв? 3. Где расположена кнопка Mute на устройстве?
  9. SPI

    Как съесть слона?
  10. Вопрос по volatile

    int x; void f() { x += N1; //1 ... x += N2; //2 ... x += N3; //3 } добавим к вашему коду: ISR fff() { x++; } вы считаете разработчиков компилятора недалёкими людьми которые не предполагают, что прерывание может возникнуть в любой момент времени? PS описанное вами поведение переменной ни на практике ни в теории я не видел ни разу. На этом я удаляюсь из обсуждения
  11. Вопрос по volatile

    Переменная не "путешествует" во время выполнения из памяти в регистр или обратно, если компилятор определил ей место в памяти или в регистре то она там и будет, но если ей определенно место в регистре то компилятор код добавит при входе в ISR "push" при выходе "pop" и то при условии если этот регистр используется во время обработки прерывания. PS может я чего не знаю, но почему в процедуре обработки прерывания нельзя обращаться к переменным расположенным в регистре?
  12. можно предложить однонаправленный или двунаправленный связанный список (смотря в каких направлениях нужно проходить) и два вспомогательных связанных списка для хранения свободных ячеек и занятых
  13. Вопрос по volatile

    Тогда и я своё видение изложу В документацию не лазил пишу на память могу где-то в чем-то ошибиться. Ключевое слово volatile говорит компилятору не оптимизировать работу с этой переменной, поясняется это следующим образом: переменная может быть отражена на область памяти изменяемую аппаратно или на пространство ввода вывода. PS а компилятор про ваш код знает всё, если эта переменная пишется/читается в прерывании то именно она будет использована хоть с указанием ключевого слова volatile хоть без него и не важно где она расположена в памяти или регистре, ведь код обработки прерывания также компилируется линкуется в единое целое.
  14. Сложные программы

    У Вас название темы "Сложные программы" назовите пожалуйста единственную причину появления ООП PS Всё, что я написал относиться к вашей теме непосредственно.