FreeCalypso > hg > freecalypso-schem2
annotate venus/src/periph/audio_main.v @ 70:8bc2aa52fd23
manual RESET button new part: 260 g force, shorter actuator
One of the main envisioned use cases for FC Venus is field demonstration:
the board will be carried around, mounted on a sheet of acrylic or somesuch,
it will have a battery and an antenna connected, there will be a test SIM
with active service inserted, and the setup will be ready to demonstrate
as a working phone at a moment's notice. But when a demo is not actively
in progress, the fully assembled setup will be transported around in a big
and loose ESD bag, and it will need to be equivalent to a traditional phone
in its switched-off state: battery present, RTC keeping time, but not
switched on all the time.
Having a RESET button of the same keyswitch type as used for the regular
keypad and PWON would cause a problem for such field transport scenarios:
any spurious press of this button would cause a "misc boot" switch-on.
Short spurious presses of PWON are filtered out by the firmware (automatic
power-off if the button isn't held down long enough), but the same cannot
be done for super-low-level nTESTRESET. However, a button with significantly
greater operating force and a shorter actuator (not sticking out to the same
height as the regular keypad buttons) should be much safer.
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Thu, 02 Dec 2021 22:40:39 +0000 |
parents | 3afd172b83e1 |
children |
rev | line source |
---|---|
57
3afd172b83e1
main audio channel implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
1 /* |
3afd172b83e1
main audio channel implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
2 * This Verilog module encapsulates our main audio channel. |
3afd172b83e1
main audio channel implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
3 */ |
3afd172b83e1
main audio channel implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
4 |
3afd172b83e1
main audio channel implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
5 module audio_main (GND, EARN, EARP, MICBIAS, MICIN, MICIP); |
3afd172b83e1
main audio channel implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
6 |
3afd172b83e1
main audio channel implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
7 input GND; |
3afd172b83e1
main audio channel implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
8 input EARN, EARP; |
3afd172b83e1
main audio channel implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
9 input MICBIAS; |
3afd172b83e1
main audio channel implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
10 output MICIN, MICIP; |
3afd172b83e1
main audio channel implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
11 |
3afd172b83e1
main audio channel implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
12 /* internal wires */ |
3afd172b83e1
main audio channel implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
13 |
3afd172b83e1
main audio channel implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
14 wire EARN_jack, EARP_jack, MIC_jack; |
3afd172b83e1
main audio channel implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
15 |
3afd172b83e1
main audio channel implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
16 /* instantiate the jack */ |
3afd172b83e1
main audio channel implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
17 |
3afd172b83e1
main audio channel implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
18 trrs_jack jack (.T(EARP_jack), |
3afd172b83e1
main audio channel implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
19 .R(MIC_jack), |
3afd172b83e1
main audio channel implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
20 .R2(EARN_jack), |
3afd172b83e1
main audio channel implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
21 .S(GND), |
3afd172b83e1
main audio channel implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
22 .T_sw(), /* not used */ |
3afd172b83e1
main audio channel implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
23 .R_sw() /* not used */ |
3afd172b83e1
main audio channel implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
24 ); |
3afd172b83e1
main audio channel implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
25 |
3afd172b83e1
main audio channel implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
26 /* earpiece path filter caps */ |
3afd172b83e1
main audio channel implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
27 |
3afd172b83e1
main audio channel implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
28 capacitor C15 (EARP, EARN); |
3afd172b83e1
main audio channel implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
29 capacitor C16 (EARP, GND); |
3afd172b83e1
main audio channel implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
30 capacitor C17 (EARP, GND); |
3afd172b83e1
main audio channel implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
31 capacitor C18 (EARN, GND); |
3afd172b83e1
main audio channel implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
32 capacitor C19 (EARN, GND); |
3afd172b83e1
main audio channel implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
33 |
3afd172b83e1
main audio channel implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
34 /* earpiece path filter inductors */ |
3afd172b83e1
main audio channel implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
35 |
3afd172b83e1
main audio channel implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
36 inductor L1 (EARP, EARP_jack); |
3afd172b83e1
main audio channel implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
37 inductor L2 (EARN, EARN_jack); |
3afd172b83e1
main audio channel implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
38 |
3afd172b83e1
main audio channel implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
39 /* microphone input circuit */ |
3afd172b83e1
main audio channel implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
40 |
3afd172b83e1
main audio channel implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
41 capacitor C13 (MICBIAS, GND); |
3afd172b83e1
main audio channel implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
42 |
3afd172b83e1
main audio channel implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
43 resistor R9 (MICBIAS, MIC_jack); |
3afd172b83e1
main audio channel implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
44 capacitor C14 (MIC_jack, GND); |
3afd172b83e1
main audio channel implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
45 |
3afd172b83e1
main audio channel implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
46 capacitor C12 (MICBIAS, MICIP); |
3afd172b83e1
main audio channel implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
47 capacitor C21 (MIC_jack, MICIN); |
3afd172b83e1
main audio channel implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
48 |
3afd172b83e1
main audio channel implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
49 capacitor C32 (MICIP, MICIN); |
3afd172b83e1
main audio channel implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
50 |
3afd172b83e1
main audio channel implemented
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
51 endmodule |