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

neiver

Участник
  • Постов

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

  • Посещение

Репутация

0 Обычный

Информация о neiver

  • Звание
    Местный
    Местный

Контакты

  • ICQ
    Array

Информация

  • Город
    Array

Посетители профиля

2 811 просмотр профиля
  1. Начинать надо с того, что COM порт вообще и его реализация в Windows в частности, не гарантирует безошибочной передачи данных. То есть рассчитывать на это нельзя, и контроль и/или обеспечение целостности данных надо реализовывать в протоколе обмена. Поврежненный пакед должен отбрасываться и если нужно передаваться повторно. По возможным причинам. У стандартного аппаратного СОМ порта есть внутренний буфер, как правило размером 15 байт. Это не тот буфер, который задается в SetupComm. Если драйвер порта по каким-то причинам не успеет прочитать этот буфер, то принятые байты теряются, о чем извещают соответствующие флаги возвращаемые ClearCommError. Приоритет пользовательского процесса не влиет на приоритет драйвера СОМ порта при обработке прерываний.
  2. Я как-то вот такое делал: http://we.easyelectronics.ru/Soft/prostoy-...oder-ik-du.html
  3. Это особенности реализации конкретных аллокаторов. В keil аллокатор оптимизирован под небольшие объемы памяти.
  4. Параметры шаблона должны быть константами времени компиляции, иногда можно константы времени компановки(но не все компиляторы это едят, хотя ГЦЦ должен). То есть Объект Settings должен быть размещен по известному в точке инстанцирования адресу, хотя-бы во время линковки.
  5. Первые ссылки из гугла: https://artofcode.wordpress.com/2010/12/12/...m-stdstreambuf/ https://msdn.microsoft.com/en-us/library/aa...3(v=vs.60).aspx Надо написать свой класс унаследованный от streambuf, в нем реализовать соответствующие функции вывода. Потом связать объект своего streambuf с потоком: std::cout.rdbuf(&my_streambuf);
  6. Можно так-же как и printf перенаправить, переопределить функцию низкоуровневого вывода: size_t __write(int handle, const unsigned char * buffer, size_t size) А можно средствами C++ - реализовать свой std::streambuf и передать его в cout.
  7. На счет ЖК матрицы не скажу точно, заказчики используют какую-то Samsung-овскую IPS матрицу, модель не знаю. На счет по-штучно тоже не знаю, попробуйте написать запрос на [email protected], что нужны образцы на попробовать, может и продадут. Я если что смогу проконсультировать на счет протокола обмена и т.д.
  8. В качестве тачскрина могу порекомендовать свою разработку: http://zaprib.ru/catalog_products/avionika/modul_sensornyj/ Инфракрасный, мультитач 2 точки, фактическое разрешение более 1024х1024. Разрабатывался для авиации со всеми вытекающеми. На данный момент доступна модель 10.4''. И да, физическим лицам в розницу не продают :)
  9. А у меня статейка по этому поводу есть: http://we.easyelectronics.ru/Soft/preobraz...ey-tochkoy.html
  10. Ну например, для всяких алгебраических типов данных перегрузка операторов однозначно полезна. Вместо какого-нибудь: c = sqrt(complex_add(complex_mul(a, a), complex_mul(b, b))); можно записать: c = sqrt(a * a + b * b); Существенно улучшает читаемость кода и уменьшает вероятность ошибок. Перегружать операторы конечно надо так, чтоб их семантика была очевидна. Плохой пример: MyArray<int> array; ... array = 10; Если оператор присваивания перегружен. Что он может делать с массивом? Делает размер массива равным 10? Или присваивает всем элементам массива значение 10? Или только первому элементу?
  11. Кстати на счет симтем контроля версий и разработки схем и печатных плат. Altium поддерживает интеграцию с SVN. И даже дифы схем и плат умеет показывать. По "altium svn" гуглится много интересного. Git напрямую не поддерживается, но можно прикрутить через git-svn. Однако, я демонстрировал работу Альтиума с СВН-ом ребятам схематехникам, конструкторам ПП. Показывал им ветки, дифы, хранение истории и разных ревизий, как можно сделать централизированную библиотеку шаренных компонентов. Сказали, что очень круто, но работают всё равно по старинке, каждый пилит свою плату на своеё машине, изредка копируя ревизии в шаренную папку на сервере. Они считают им так удобнее.
  12. Вы чего-то странного хотите. Регистры R0...R3 сохраняются и восстанавливаются в прерываниях аппаратно. Если обработчику прерываний их не хватает, то будут использованы и остальные регистры. Оставьте регистры компилятору, он неплохо разбирается как и когда их использовать.
  13. Стек ZigBee

    BitCloud вроде бы. Больше ничего не припомню.
×
×
  • Создать...