Да. Вот пример
itead studio: 5x5 — 9.90$\10 шт, 5х10 — 14.90$\10 шт, 10х10 — 19.90$\10 шт
seeed studio: 5x5 — 9.90$\10 шт, 5x10 — 23.90$\10 шт, 10х10 — 24.90$\10 шт
Цены без учета доставки, там с размером вроде бы тоже цена растет.
Просто часто место гуляет на плате, можно плотнее сделать компоновку и влезть в 5х5
Просто лучше впихнуть маленькую платку в чуть больший корпус, чем переплачивать за пустое пространство. Ну это лично моё мнение, может я и не прав. Кстати можно ведь и меньше делать размером. Главное что бы длина грани была не более 50 мм
С корпусом конечно тоже верно, но платку в 50х50 можно запихнуть и в больший корпус впринципе. Ну а лично я решаю вопрос с корпусом с помощью 3D принтера)
По поводу дипа — там же панелька идет под MEGA16/32/644 (сбрасываемый девайс), SMD не применить никак. А так вообще я DIP'ы разлюбил ещё когда ЛУТом печатки делал)
Честно-говоря, я бы ориентирвоался не на размер платы, а на размер какого-нибуть готового корпуса или линейки корпусов. Ведь эту плату нужно будет потом куда-то всунуть.
А насчет дипа — можно взять SMD версию и все сразу влезет.
А что если запилить такой же курс по KiCAD? Он может и не подходит для профессионального применения и сложных проектов, но для любителя вполне сойдет. Сайт посещают как профессионалы так и любители, и далеко не у всех есть несколько тысяч на покупку Альтиума, а KiCAD бесплатен. Я могу сделать свой вклад в это дело, так как пользуюсь им. Будет ли интересно людям?
На счет умножения и деления чисел с фиксированной точкой. 64-х разрядное умножение и особенно деление может быть очень медленным. Особенно на 8-ми и 16-ти битниках. А умножение и деление можно реализовать и без использования типов с большей разрядностью. Например умножение q16:
uint32_t mult_q16(uint32_t a, uint32_t b)
{
uint32_t inta = a >> 16;
uint32_t intb = b >> 16;
uint32_t fracta = a & 0x0000ffff;
uint32_t fractb = b & 0x0000ffff;
uint32_t result = (inta * intb << 16) + (inta * fractb + fracta * intb) + (fracta * fractb >> 16);
return result;
}
Нужно 4 умножения 16х16=>32 бита.
Деление q16:
uint32_t div_q16(uint32_t a, uint32_t b)
{
uint32_t r = a >> 16, q = a << 16;
uint_fast8_t carry = 0;
for (uint_fast8_t i = 0; i < 32; i++)
{
if(r & 0x80000000)
carry = 1;
else
carry = 0;
r <<= 1;
if (q & 0x80000000)
r |= 1;
q <<= 1;
if (r >= b || carry)
{
q = q | 1;
r -= b;
}
}
return q;
}
Хоть оно и побитовое, но работает в разы бsстрее, чем х64 деление на Cortex-m3. Может быть можно сделать еще быстрее используя аппаратное деление 32/32=>32 и алгоритм Кнута.
Лучше ввести дополнительное поле, которое по-умолчанию заполнять какой-то разумной величиной, например 5 или 10%, возможно разной в разных расчётах. Иначе проще воспользоваться другим калькулятором или написать формулу в экселе, тем более что на практике чаще приходится иметь дело с более сложными схемами, а такие как источник тока рассчитываются в уме без калькулятора.
itead studio: 5x5 — 9.90$\10 шт, 5х10 — 14.90$\10 шт, 10х10 — 19.90$\10 шт
seeed studio: 5x5 — 9.90$\10 шт, 5x10 — 23.90$\10 шт, 10х10 — 24.90$\10 шт
Цены без учета доставки, там с размером вроде бы тоже цена растет.
Просто часто место гуляет на плате, можно плотнее сделать компоновку и влезть в 5х5
Я так понимаю, за счет размера 50х50 мы попадаем под «акцию щедрости» за счет того, что размер подходит под стандартную заготовку?
По поводу дипа — там же панелька идет под MEGA16/32/644 (сбрасываемый девайс), SMD не применить никак. А так вообще я DIP'ы разлюбил ещё когда ЛУТом печатки делал)
А насчет дипа — можно взять SMD версию и все сразу влезет.
Добавил в статью. И еще добавил про умножения на целые числа.
Нужно 4 умножения 16х16=>32 бита.
Деление q16:
Хоть оно и побитовое, но работает в разы бsстрее, чем х64 деление на Cortex-m3. Может быть можно сделать еще быстрее используя аппаратное деление 32/32=>32 и алгоритм Кнута.
Для таких лучше симуляторы юзать, а калькуляторы для БЫСТРОГО расчета мелких узлов оставить.
Лично мне калькуляторы хорошо жизнь облегчают.