Калькулятор программиста (динамик)

Новая периферия калькулятора - пассивный динамик.

Расчёт

Схема подключения динамика
Схема подключения динамика

Используется пассивный динамик с сопротивлением обмотки 16 \Omega , шедший в наборе для Arduino. Вот как он выглядит с уже припаянным диодом. Диод нужен потому как это электромагнитный динамик, а не пьезо, хотя и для тех наверное нужен поскольку они генерируют электричество при деформации - вспомним пьезозажигалки.

Динамик крупным планом с припаянным диодом
Динамик крупным планом с припаянным диодом

Заглянем в описание этих динамиков от фирмы TZT:

Первая часть описания динамика
Первая часть описания динамика
Таблица параметров динамика
Таблица параметров динамика

Определим номинал R17 . Допускается ток \le 30mA , исходя из того что среднее напряжение на обмотке динамика рано нулю получаем:

R_3 = \frac{V_{cc} - V_{CE(sat)}}{I_c}

Заглянем в параметры 2N3904:

Параметры транзистора 2N3904
Параметры транзистора 2N3904

Примем V_{CE(sat)} = 0.25V , тогда:

R_{17} = \frac{3.3V - 0.25V}{30mA}\approx 102\Omega

Поскольку ток коллектора у нас и так ограничен, то не беда если возьмём минимальный h_{FE} = 50 . Отсюда ток базы I_b = \frac{I_c}{h_{FE}}=\frac{30mA}{50}=0.6mA .

Отсюда:

\begin{array}{rl} R_{15}\cdot I_b + V_{BE(sat)} &= 3.3V \\ R_{15} &= \frac{3.3V - V_{BE(sat)}}{I_b}\\ R_{15} &= \frac{3.3V - 0.95V}{0.6mA}\approx 3.9k\Omega \end{array}

Что же до R_{16} , то это pull-down резистор достаточно большого номинала, вместо него можно было просто включить такой типа резистор на пине CH32V003.