avatar
Mentor Graphics Expedition Это моя первая система для проектирования ПП. Потом еще освоил Altium Designer но все же Ментор мне нравится больше. На мой взгляд из преимуществ Ментора это жесткая связь между всеми этапами разработки ПП начиная от создания пада… схема… разводка ПП в отличии от Альтиума где связь достаточно гибкая.
avatar
Когда осколки мультиметра летят в лицо, не до новых щупов :)
avatar
Можно просто купить несколько комплектов шупов =)))
avatar
Ха :) А я мерял именно ампераж сети :) Именно поэтому, такая вот заглушка очень полезна :)
avatar
Ой блин, я на видео сказал, что мерял ампераж сети, вот йо…
Имелся в виду ток потребления аппарата с питанием от розетки.
Забавно, но у меня дядя как-то мультиметр попросил, ну я дал, перед самым уходом спросил, мол, нафиг он тебе? Оказалось, хотел померять, какой ток сможет дать проводка в его доме, и это на полном серьезе. Забрал обратно.
:D
avatar
В меня тут завал, ты ж знаешь… да и самому скучно будет, кто ж умной озвучкой будет сопровождать, так чтобы у самих представителей уши заворачивались )))
avatar
Да, машиностроение было крутое. А выставка еще три дня идти будет, можешь сходить.
avatar
Спасибо за отчет и видео. Жаль я не смог пойти тоже. Выставки это весело… особенно веселая была по машиностроению )))
avatar
Спасибо, очень конструктивно! :)
avatar
китайские приспособы в кирове были, и пожосче чем на картинке. Но все равно туфта мне показалась. Лучше станочек. Еще была мысль попробовать фрезер, но не срослось что то…
avatar
Оставлю пару полезных, на мой взгляд, мыслей и рекомендаций.

1. Как уже сказали, лучше в структуре объявить лишь указатель на массив. А уж предоставить собственно массив для буфера — пусть будет задача пользователя.
2. Как обезопасить работу с указателями? Возьмите себе за привычку всегда проверять в начале функций все указатели на NULL, и сразу выдавать ошибку если был передан неинициализированный указатель.
3. Ваша функция выдаст ошибку, если данные не помещаются в буфер целиком. Может оно и верно. А возможно будет удобнее, если функция будет класть в очередь что может, и возвращать количество реально записанных байт. Тут стоит подумать. Вообще подход возвращать что-то более полезное чем 0 и -1 приветствуется.
4. Если функция не изменяет никаких данных в массиве, переданном ей в качестве аргумента, то указатель на этот массив стоит объявлять как const void *. Например, если у меня есть строка «Hello, world!» (как раз тип const), и я хочу запихать ее в буфер.
5. Может стоит добавить функции для записи/чтения одного единственного байта, а не массива. Иногда бывает полезно при использовании в алгоритмах.
6. Кто-то предгалал не использовать переменную count, которая хранит размер данных в очереди. Но тут есть одна проблема — когда буфер заполнится полностью, не получится ли так, что head станет равно tail?
Что я хочу сказать: изначально у нас head = 0, tail = 0. Допустим, мы пишем в очередь FIFO_LENGTH байт данных. Тогда и head станет под конец равным FIFO_LENGTH, и выполнится условие if (fifo->tail == FIFO_LENGTH), что сбросит его опять в 0. Тем самым «очистив буфер». Решений тут два:
1) Хранить не tail и head, а tail и length. А head вычислять.
2) Оставлять в буфере всегда 1 байт.

7. Старайтесь не писать в алгоритмах «жесткие» сравнения: по типу if (fifo->head == FIFO_LENGTH).
Особенно это касается сравнений чисел с плавающей запятой. Ваш алгоритм может быть более стойким к изменениям, если написать if (fifo->head >= FIFO_LENGTH). Или, если совсем заморочиться, та же операция в более общем виде:
while(fifo->head >= FIFO_LENGTH){ fifo->head -= FIFO_LENGTH; } // по сути то же, что и fifo->head %= FIFO_LENGTH

8. Если пишете код «для всех» (библиотеку), то старайтесь делать так, чтобы он заработал сразу у всех.
Например, объявления переменных в середине функции и особенно в for(int i = 0; ...) могут вылезти ошибками при компиляции gcc с флагами -pedantic и -ansi. Еще можно порадовать любителей C++, если вставить в нужные места
Спойлер
#ifdef __cplusplus
extern «C» {
#endif

#ifdef __cplusplus
} // extern «C»
#endif


Еще можно отказаться от «нестандартных» названий типов, и выкинуть из кода #include <stm32f10x.h>. Тогда код можно будет использовать, например, для написания программы для AVR.
avatar
Бида :(
avatar
не иду(
avatar
Завтра мне наконец то вышлют мои платки и мой первый трафарет для пасты!!! Все будет на руках только на среду, что то в отделе отгрузки протупили — я везде заполнил и написал, что надобно высылать во Львов (самовывоза не будет!). В какой раз я вспоминаю слова своего Отца: «Славян не можно попускать, они привыкли, что бы их „пинали“...», просто я сам другого мнения: «Не мешай работать и результат будет еще лучше». Ну это лирика.
Только что приехал из «Епицентра», накупил всякого барахла и расходников по работе, а так же прикупил шпателей пластиковых и резиновых разной плотности (наборы такие с разной шириной). Просто трафарет тоже будет из бронзы, толщину попросил 0,15, так вот подумал, пластик будет более щадительным к столь тонкой бронзе.
avatar
Я, что то замешкался и мне еле купили билеты Львов-Киев-Львов. На носу праздники все туда сюда будут ездить, а я тут со своей выставкой.
Огромное спасибо, Сергей, что проинформировал про выставку!
avatar
Про расщет можно почитаь в даташите, а также можно на оф. сайте поискать калькулятор для микросхем, видел в некоторых производителей, выбираеться микросхема, входное и выходное напряжение, ток и уровень пульсаций и кажеться частота работы, и все номиналы автоматом расщитываються
avatar
Да фиг там, просто отмазались, причем совсем не красиво, но не говорить же, что мол «ребят, маркировка каждого резистора составляет 30% его стоимости, прикиньте, сколько лишних миллионов мы будем зарабатывать в месяц, если от нее откажемся! Так то, надеемся на ваше понимание, народ! Просто смиритесь, за этим будущее!»…
Насчет падения цены не уверен, ведь позиционируются данные резисторы, как эко-продукт, так что черт их знает.
В данном случае я согласен с Andrew, если коммерческая техника хоть немного ремонтопригодна, то после того, как все капы, чипы, резисторы, и индуктивности будут представлять собой черные коробочки, ее можно будет смело выбрасывать при самых банальных поломках, и выгодно это только производителю и никому другому.
P.S.
Не были бы уродами, стали бы маркировать резисторы лазером, как это делается с современными микрухами. Мне лазерная маркировка не нравится, не видно ни хрена, но при желании 555 от Tiny13 отличить можно, это лучше, чем пустые корпуса.
avatar
место есть, но номиналы к сожалению не знаю. я просто брал мультиметр и накручивал нужное напряжение подстроечным резистором.
avatar
Наверно лёгкая и позволяет зажимать любые дрели в этом и заключается её эффективность.
avatar
Подскажите Step-Down на LM2596 вроде, там места под конденсаторы вроде есть, интересует выбор их номиналов?