проставляет версии, тэги, сливает, заливает, защищает,
и
custom hooks которые смотрят, чтобы ветки аккуратно назывались, например, feature/prjid-123-abc-def-xyz и в каждом коммите была ссылка на тикет типа PRJID-123.
А как тогда осуществлять фильтрацию, если идет тот же непрерывный поток данных с АЦП, а надо ослабить 50 Гц помеху? Сейчас делаю обычным усреднением, но подозреваю, что это крайне не эффективно.
вообще соответствуя документации на эти контроллеры у них CISC-архитектура и явный доступ к памяти минуя регистры (их, кстати, вообще почти нет). ничего урезанного и, как вы выразились, неортогонального. просто архитектура другая. компиляторов тоже хватает. тот же IAR уже 3 версии настряпали. документации валом. их оф.сайт напичкан ею по полной. может вы просто не правильно их готовите?)
относительно недавно теже STMicroelectronics, что делают STM32F10х, выпустили очень дешевые, но не менее производительные 8-битные контроллеры серии STM8S103Fx и STM8S101Fx. при частоте до 16МГц, Flash-памяти до 8кило и полным фаршем периферии(АЦПушки, куча таймеров, SPI, UART и прочие плюшки) вы получаете его не более чем за 20-30р в зависимости от объема партии и памяти: STM8S103F2P3, STM8L101F2P6.
Тогда еще надо сделать приложение для iOS/Android/Symbian и других многочисленных камерофонов. Чтобы по дороге сразу фотографировать и автоматом на сайт выкладывать.
Вообще еще из курса цифровой обработки сигналов, перед БПФ к полученному сигналу советуют применять оконные функции. В частности наилучший эффект в вашей задаче даст окно Хемминга. Интересно было бы взглянуть на БПФ реализованное на С.
В качестве компилятора+примитивная среда можно использовать WinAVR. AVRStudio, кстати, после установки WinAVR сама прикрутит в качестве компилятора gcc-avr.
спасибо за критику. признаю ошибки. про TerminateThread даже не догадывался о возможных последствиях. но тогда к вам вопрос. как же корректно поступить с завершением и уничтожением потока в данном случае?
с boost::thread я банально не очень хорошо знаком. а beginthread(ex) не использую потому, что пример тривиальный и лишь для наглядности был приведен, но также и по причине того, что в потоке не используются вызовы CRT, в остальном согласен — лучше использовать beginthread(ex).
с костылем соглашусь. но ведь это работает. и вполне стабильно. просто на момент написания данного фрагмента это решение было одним из явных и реализуемых на мой взгляд. кто-то решил бы по другому и интересно было бы взглянуть как.
а что не так в них, и вообще во всем что в топике, почему сразу бред? можно увидеть вполне конкретные указания на наличие ошибок или тех мест где бред, или других возможных вариантов решения задачи? интересно было бы прочитать и обоснование ваших выводов.
а зачем его определять, например, если разработка ведется в конкретной среде с, вполне, явным компилятором, к чему тогда использовать препроцессор для определения его типа, или вы при написании кода одновременно используете множество компиляторов? согласен что его использование возможно для обеспечения кроссплатформенности, но в рабочем проекте, который уже отлажен и написан под вполне конкретные условия, не вижу смысла добиваться кросскомпиляции.
мой способ не претендует на оригинальность. вы всегда можете воспользоваться другими или привести прототип метода к необходимому типу, это ничуть не усложнит и почти не изменит код.
Особенно интересует:
и