Enclosure 3D files, Assembly Diagrams and Assembly Guide. Also so work on getting the firmware compatible with the PSDR2 hardware. Probably some junk as well. Lots of files.

This commit is contained in:
Michael Colton 2014-09-28 20:40:01 -06:00
parent 7742b85c6a
commit 817dcff56e
81 changed files with 17572 additions and 55 deletions

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

File diff suppressed because it is too large Load Diff

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

File diff suppressed because it is too large Load Diff

Binary file not shown.

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 450 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 454 KiB

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

File diff suppressed because it is too large Load Diff

Binary file not shown.

Binary file not shown.

Binary file not shown.

1388
Hardware/Enclosure/psdr.emn Normal file

File diff suppressed because it is too large Load Diff

643
Hardware/Enclosure/psdr.emp Normal file
View File

@ -0,0 +1,643 @@
.HEADER
LIBRARY_FILE 3.0 "PADS Layout 9.1" 2014/09/18.21:09:22 1
.END_HEADER
.ELECTRICAL
0_1__1PIN 0_1__1PIN MM 0.0
0 -0.889 -0.889 0
0 0.889 -0.889 0
0 0.889 0.889 0
0 -0.889 0.889 0
0 -0.889 -0.889 0
.END_ELECTRICAL
.ELECTRICAL
C0603 CSM-C0G-18P-5P-50V-0603 MM 0.65
0 -1.397 -0.9144 0
0 1.397 -0.9144 0
0 1.397 0.9144 0
0 -1.397 0.9144 0
0 -1.397 -0.9144 0
.END_ELECTRICAL
.ELECTRICAL
GENERIC_CAP_0805 CSM-X5R-10U0-10P-25V-0805 MM 0.78
0 -1.6002 -0.6096 0
0 1.6002 -0.6096 0
0 1.6002 0.6096 0
0 -1.6002 0.6096 0
0 -1.6002 -0.6096 0
.END_ELECTRICAL
.ELECTRICAL
C0603 CSM-X5R-1U0-10P-25V-0603 MM 0.9
0 -1.397 -0.9144 0
0 1.397 -0.9144 0
0 1.397 0.9144 0
0 -1.397 0.9144 0
0 -1.397 -0.9144 0
.END_ELECTRICAL
.ELECTRICAL
C0603 CSM-X7R-100N-10P-25V-0603 MM 0.3
0 -1.397 -0.9144 0
0 1.397 -0.9144 0
0 1.397 0.9144 0
0 -1.397 0.9144 0
0 -1.397 -0.9144 0
.END_ELECTRICAL
.ELECTRICAL
C0603 CSM-X7R-10N-10P-50V-0603 MM 0.3
0 -1.397 -0.9144 0
0 1.397 -0.9144 0
0 1.397 0.9144 0
0 -1.397 0.9144 0
0 -1.397 -0.9144 0
.END_ELECTRICAL
.ELECTRICAL
L0805 ISM-0805-10U MM 1.25
0 -2.0066 -0.9906 0
0 2.0066 -0.9906 0
0 2.0066 0.9906 0
0 -2.0066 0.9906 0
0 -2.0066 -0.9906 0
.END_ELECTRICAL
.ELECTRICAL
LED0603 LED-WHITE-0603 MM 0.65
0 -1.8796 -0.9906 0
0 1.8796 -0.9906 0
0 1.8796 1.8796 0
0 -1.8796 1.8796 0
0 -1.8796 -0.9906 0
.END_ELECTRICAL
.ELECTRICAL
R0603 RSM-10K0-1PCT-100MW-0603 MM 0.4
0 -1.8796 -0.9906 0
0 1.8796 -0.9906 0
0 1.8796 0.9906 0
0 -1.8796 0.9906 0
0 -1.8796 -0.9906 0
.END_ELECTRICAL
.ELECTRICAL
R0603 RSM-150R-1PCT-100MW-0603 MM 0.65
0 -1.8796 -0.9906 0
0 1.8796 -0.9906 0
0 1.8796 0.9906 0
0 -1.8796 0.9906 0
0 -1.8796 -0.9906 0
.END_ELECTRICAL
.ELECTRICAL
R0603 RSM-200R-1PCT-100MW-0603 MM 0.4
0 -1.8796 -0.9906 0
0 1.8796 -0.9906 0
0 1.8796 0.9906 0
0 -1.8796 0.9906 0
0 -1.8796 -0.9906 0
.END_ELECTRICAL
.ELECTRICAL
R0603 RSM-255R-1PCT-100MW-0603 MM 0.65
0 -1.8796 -0.9906 0
0 1.8796 -0.9906 0
0 1.8796 0.9906 0
0 -1.8796 0.9906 0
0 -1.8796 -0.9906 0
.END_ELECTRICAL
.ELECTRICAL
R0603 RSM-6K81-1PCT-100MW-0603 MM 0.4
0 -1.8796 -0.9906 0
0 1.8796 -0.9906 0
0 1.8796 0.9906 0
0 -1.8796 0.9906 0
0 -1.8796 -0.9906 0
.END_ELECTRICAL
.ELECTRICAL
75HMHZ_OSC 75MHZ_OSC MM 0.65
0 -1.3716 -1.4224 0
0 1.1505 -1.4224 0
0 1.1505 1.2 0
0 -1.3716 1.2 0
0 -1.3716 -1.4224 0
.END_ELECTRICAL
.ELECTRICAL
AD9834 AD9834 MM 1.2
0 -3.825 -3.525 0
0 3.825 -3.525 0
0 3.825 3.525 0
0 -3.825 3.525 0
0 -3.825 -3.525 0
.END_ELECTRICAL
.ELECTRICAL
DS90LV028 DS90LV028 MM 1.1999
0 -3.7016 -2.725 0
0 3.675 -2.725 0
0 3.675 2.725 0
0 -3.7016 2.725 0
0 -3.7016 -2.725 0
.END_ELECTRICAL
.ELECTRICAL
C0805 CSM-X5R-47U-20P-6V3-0805 MM 1.35
0 -1.6002 -0.9906 0
0 1.6002 -0.9906 0
0 1.6002 0.9906 0
0 -1.6002 0.9906 0
0 -1.6002 -0.9906 0
.END_ELECTRICAL
.ELECTRICAL
SMA_BOARD_EDGE SMA_BOARD_EDGE MM 0.65
0 -12.2916 -8.9016 0
0 2.032 -8.9016 0
0 2.032 8.9016 0
0 -12.2916 8.9016 0
0 -12.2916 -8.9016 0
.END_ELECTRICAL
.ELECTRICAL
T4-1-KK81 T4-1-KK81 MM 0.65
0 -7.62 -3.91 0
0 7.62 -3.91 0
0 7.62 4.61231 0
0 -7.62 4.61231 0
0 -7.62 -3.91 0
.END_ELECTRICAL
.ELECTRICAL
C0603 CSM-X5R-4U7-10P-10V-0603 MM 0.3
0 -1.397 -0.9144 0
0 1.397 -0.9144 0
0 1.397 0.9144 0
0 -1.397 0.9144 0
0 -1.397 -0.9144 0
.END_ELECTRICAL
.ELECTRICAL
C0603 CSM-X5R-2U2-10P-6V3-0603 MM 0.3
0 -1.397 -0.9144 0
0 1.397 -0.9144 0
0 1.397 0.9144 0
0 -1.397 0.9144 0
0 -1.397 -0.9144 0
.END_ELECTRICAL
.ELECTRICAL
R0603 RSM-0R0-1PCT-125MW-0603 MM 0.4
0 -1.8796 -0.9906 0
0 1.8796 -0.9906 0
0 1.8796 0.9906 0
0 -1.8796 0.9906 0
0 -1.8796 -0.9906 0
.END_ELECTRICAL
.ELECTRICAL
R0603 RSM-22R1-1PCT-100MW-0603 MM 0.65
0 -1.8796 -0.9906 0
0 1.8796 -0.9906 0
0 1.8796 0.9906 0
0 -1.8796 0.9906 0
0 -1.8796 -0.9906 0
.END_ELECTRICAL
.ELECTRICAL
AD8131 AD8131 MM 1.1
0 -3.075 -1.725 0
0 3.075 -1.725 0
0 3.075 1.725 0
0 -3.075 1.725 0
0 -3.075 -1.725 0
.END_ELECTRICAL
.ELECTRICAL
74CBTLV3253 74CBTLV3253 MM 1.73
0 -3.675 -2.725 0
0 3.675 -2.725 0
0 3.675 2.725 0
0 -3.675 2.725 0
0 -3.675 -2.725 0
.END_ELECTRICAL
.ELECTRICAL
MCP6N11 MCP6N11 MM 0.65
0 -2.55 -3.71696 0
0 2.55 -3.71696 0
0 2.55 3.475 0
0 -2.55 3.475 0
0 -2.55 -3.71696 0
.END_ELECTRICAL
.ELECTRICAL
R0603 RSM-1K00-1PCT-100MW-0603 MM 0.4
0 -1.8796 -0.9906 0
0 1.8796 -0.9906 0
0 1.8796 0.9906 0
0 -1.8796 0.9906 0
0 -1.8796 -0.9906 0
.END_ELECTRICAL
.ELECTRICAL
C0603 CSM-X5R-10U0-20P-6V3-0603 MM 0.3
0 -1.397 -0.9144 0
0 1.397 -0.9144 0
0 1.397 0.9144 0
0 -1.397 0.9144 0
0 -1.397 -0.9144 0
.END_ELECTRICAL
.ELECTRICAL
R0603 RSM-24R9-1PCT-100MW-0603 MM 0.65
0 -1.8796 -0.9906 0
0 1.8796 -0.9906 0
0 1.8796 0.9906 0
0 -1.8796 0.9906 0
0 -1.8796 -0.9906 0
.END_ELECTRICAL
.ELECTRICAL
R0603 RSM-49R9-1PCT-100MW-0603 MM 0.4
0 -1.8796 -0.9906 0
0 1.8796 -0.9906 0
0 1.8796 0.9906 0
0 -1.8796 0.9906 0
0 -1.8796 -0.9906 0
.END_ELECTRICAL
.ELECTRICAL
SOLDER_JUMPER_SPDT SOLDER_JUMPER_SPDT MM 0.65
0 -2.667 -0.5 0
0 1.7192 -0.5 0
0 1.7192 0.5 0
0 -2.667 0.5 0
0 -2.667 -0.5 0
.END_ELECTRICAL
.ELECTRICAL
SOT-23 MOSFET_P_SOT23_IRLML6401 MM 1.1
0 -1.7526 -2.1082 0
0 1.7526 -2.1082 0
0 1.7526 2.1082 0
0 -1.7526 2.1082 0
0 -1.7526 -2.1082 0
.END_ELECTRICAL
.ELECTRICAL
ENCODER_PEC09-2320F-S0015 ENCODER_PEC09-2320F-S0015 MM 0.65
0 -8.4 -4.95 0
0 6.1 -4.95 0
0 6.1 4.95 0
0 -8.4 4.95 0
0 -8.4 -4.95 0
.END_ELECTRICAL
.ELECTRICAL
MICROUSB_H1292CT-ND MICROUSB_H12192CT-ND MM 0.65
0 -6.1016 -5.1016 0
0 6.1016 -5.1016 0
0 6.1016 4.3874 0
0 -6.1016 4.3874 0
0 -6.1016 -5.1016 0
.END_ELECTRICAL
.ELECTRICAL
R1206 RSM-6K98-1PCT-250MW-1206 MM 0.65
0 -2.35 -1.15 0
0 2.35 -1.15 0
0 2.35 1.15 0
0 -2.35 1.15 0
0 -2.35 -1.15 0
.END_ELECTRICAL
.ELECTRICAL
CRYSTAL_24MHZ_P79E CRYSTAL_24MHZ_P79E MM 0.65
0 -1.05 -0.85 0
0 1.05 -0.85 0
0 1.05 0.85 0
0 -1.05 0.85 0
0 -1.05 -0.85 0
.END_ELECTRICAL
.ELECTRICAL
C0603 CSM-C0G-100P-5P-50V-0603 MM 0.65
0 -1.397 -0.9144 0
0 1.397 -0.9144 0
0 1.397 0.9144 0
0 -1.397 0.9144 0
0 -1.397 -0.9144 0
.END_ELECTRICAL
.ELECTRICAL
2U2H_INDUCTOR_NR6028T2R2N 2U2H_INDUCTOR_NR6028T2R2N MM 0.65
0 -3.15 -3.1 0
0 3.15 -3.1 0
0 3.15 3.1 0
0 -3.15 3.1 0
0 -3.15 -3.1 0
.END_ELECTRICAL
.ELECTRICAL
BUCK_REGULATOR_AP3417C BUCK_REGULATOR_AP3417C MM 0.65
0 -1.51 -1.8 0
0 1.51 -1.8 0
0 1.51 1.8 0
0 -1.51 1.8 0
0 -1.51 -1.8 0
.END_ELECTRICAL
.ELECTRICAL
DPDT_ANALOG_MAX4525 DPDT_ANALOG_MAX4525 MM 0.95
0 -3.1 -1.75 0
0 3.1 -1.75 0
0 3.1 1.9 0
0 -3.1 1.9 0
0 -3.1 -1.75 0
.END_ELECTRICAL
.ELECTRICAL
R0603 RSM-100K-1PCT-100MW-0603 MM 0.4
0 -1.8796 -0.9906 0
0 1.8796 -0.9906 0
0 1.8796 0.9906 0
0 -1.8796 0.9906 0
0 -1.8796 -0.9906 0
.END_ELECTRICAL
.ELECTRICAL
SOT-23-5 3V3_LDO_MCP1802 MM 0.65
0 -1.7526 -2.2098 0
0 1.7526 -2.2098 0
0 1.7526 2.2098 0
0 -1.7526 2.2098 0
0 -1.7526 -2.2098 0
.END_ELECTRICAL
.ELECTRICAL
AD8302 AD8302 MM 1.2
0 -3.825 -2.775 0
0 3.825 -2.775 0
0 3.825 2.775 0
0 -3.825 2.775 0
0 -3.825 -2.775 0
.END_ELECTRICAL
.ELECTRICAL
MICROPHONE_MEMS_SPU0410HR5H-PB ALT-MICROPHONE_MEMS_SPU0410HR5H-PB MM 0.65
0 -2.35 -1.98 0
0 2.35 -1.98 0
0 2.35 2.9162273333 0
0 -2.35 2.9162273333 0
0 -2.35 -1.98 0
.END_ELECTRICAL
.ELECTRICAL
AUDIO_AMP_TPA0253DGQR AUDIO_AMP_TPA0253DGQR MM 0.65
0 -1.9 -2.9 0
0 1.65 -2.9 0
0 1.65 2.9 0
0 -1.9 2.9 0
0 -1.9 -2.9 0
.END_ELECTRICAL
.ELECTRICAL
BAT-MANAGE_MCP73871 BAT-MANAGE_MCP73871 MM 1.0
0 -2.8026773333 -2.575 0
0 2.575 -2.575 0
0 2.575 2.802678 0
0 -2.8026773333 2.802678 0
0 -2.8026773333 -2.575 0
.END_ELECTRICAL
.ELECTRICAL
CAP_SENSE_AT42QT1010 CAP_SENSE_AT42QT1010 MM 1.45
0 -2.075 -1.725 0
0 2.075 -1.725 0
0 2.075 1.725 0
0 -2.075 1.725 0
0 -2.075 -1.725 0
.END_ELECTRICAL
.ELECTRICAL
CRYSTAL_SMT_32_768 CRYSTAL_SMT_32_768 MM 0.65
0 -1.75 -0.9 0
0 1.75 -0.9 0
0 1.75 0.9 0
0 -1.75 0.9 0
0 -1.75 -0.9 0
.END_ELECTRICAL
.ELECTRICAL
C0603 CSM-C0G-10P-5P-50V-0603 MM 0.65
0 -1.397 -0.9144 0
0 1.397 -0.9144 0
0 1.397 0.9144 0
0 -1.397 0.9144 0
0 -1.397 -0.9144 0
.END_ELECTRICAL
.ELECTRICAL
C0603 CSM-C0G-3N3-5P-50V-0603 MM 0.3
0 -1.397 -0.9144 0
0 1.397 -0.9144 0
0 1.397 0.9144 0
0 -1.397 0.9144 0
0 -1.397 -0.9144 0
.END_ELECTRICAL
.ELECTRICAL
C1210 CSM-X5R-22U-20P-10V-1210 MM 1.7
0 -2.35 -1.6 0
0 2.35 -1.6 0
0 2.35 1.6 0
0 -2.35 1.6 0
0 -2.35 -1.6 0
.END_ELECTRICAL
.ELECTRICAL
C0805 CSM-X5R-4U7-10P-16V-0805 MM 1.35
0 -1.6002 -0.9906 0
0 1.6002 -0.9906 0
0 1.6002 0.9906 0
0 -1.6002 0.9906 0
0 -1.6002 -0.9906 0
.END_ELECTRICAL
.ELECTRICAL
C0603 CSM-X5R-4U7-10P-6V3-0603 MM 0.65
0 -1.397 -0.9144 0
0 1.397 -0.9144 0
0 1.397 0.9144 0
0 -1.397 0.9144 0
0 -1.397 -0.9144 0
.END_ELECTRICAL
.ELECTRICAL
C0603 CSM-X7R-1N-10P-50V-0603 MM 0.65
0 -1.397 -0.9144 0
0 1.397 -0.9144 0
0 1.397 0.9144 0
0 -1.397 0.9144 0
0 -1.397 -0.9144 0
.END_ELECTRICAL
.ELECTRICAL
C0603 CSM-X7R-1U0-10P-10V-0603 MM 0.65
0 -1.397 -0.9144 0
0 1.397 -0.9144 0
0 1.397 0.9144 0
0 -1.397 0.9144 0
0 -1.397 -0.9144 0
.END_ELECTRICAL
.ELECTRICAL
DIGITAL_POT_MAX5388 DIGITAL_POT_MAX5388 MM 0.95
0 -3.1 -1.75 0
0 3.1 -1.75 0
0 3.1 1.9 0
0 -3.1 1.9 0
0 -3.1 -1.75 0
.END_ELECTRICAL
.ELECTRICAL
GP-1513 GP-1513 MM 0.65
0 -7.59 -7.6016 0
0 7.6708 -7.6016 0
0 7.6708 7.6016 0
0 -7.59 7.6016 0
0 -7.59 -7.6016 0
.END_ELECTRICAL
.ELECTRICAL
GPS_CERAMIC_ANT_25X25X2 GPS_CERAMIC_ANT_25X25X2 MM 0.65
0 -12.6016 -12.6016 0
0 12.6016 -12.6016 0
0 12.6016 12.6016 0
0 -12.6016 12.6016 0
0 -12.6016 -12.6016 0
.END_ELECTRICAL
.ELECTRICAL
JST_2P-2MM JST_2P_2MM MM 0.65
0 -3.05 -1.45 0
0 3.05 -1.45 0
0 3.05 6.35 0
0 -3.05 6.35 0
0 -3.05 -1.45 0
.END_ELECTRICAL
.ELECTRICAL
MIC_PREAMP_SSM2167 MIC_PREAMP_SSM2167 MM 1.45
0 -3.15 -1.775 0
0 3.15 -1.775 0
0 3.15 1.775 0
0 -3.15 1.775 0
0 -3.15 -1.775 0
.END_ELECTRICAL
.ELECTRICAL
OP_AMP_FAN4174 OP_AMP_FAN4174 MM 0.65
0 -2.0 -1.8 0
0 1.6 -1.8 0
0 1.6 1.8 0
0 -2.0 1.8 0
0 -2.0 -1.8 0
.END_ELECTRICAL
.ELECTRICAL
RF_DPDT_MASWSS0129TR RF_DPDT_MASWSS0129TR MM 0.9
0 -2.075 -2.075 0
0 2.075 -2.075 0
0 2.075 2.075 0
0 -2.075 2.075 0
0 -2.075 -2.075 0
.END_ELECTRICAL
.ELECTRICAL
R0603 RSM-100R-1PCT-100MW-0603 MM 0.65
0 -1.8796 -0.9906 0
0 1.8796 -0.9906 0
0 1.8796 0.9906 0
0 -1.8796 0.9906 0
0 -1.8796 -0.9906 0
.END_ELECTRICAL
.ELECTRICAL
R0603 RSM-110K-1PCT-100MW-0603 MM 0.65
0 -1.8796 -0.9906 0
0 1.8796 -0.9906 0
0 1.8796 0.9906 0
0 -1.8796 0.9906 0
0 -1.8796 -0.9906 0
.END_ELECTRICAL
.ELECTRICAL
R0603 RSM-12K1-1PCT-100MW-0603 MM 0.65
0 -1.8796 -0.9906 0
0 1.8796 -0.9906 0
0 1.8796 0.9906 0
0 -1.8796 0.9906 0
0 -1.8796 -0.9906 0
.END_ELECTRICAL
.ELECTRICAL
R0603 RSM-15K0-1PCT-100MW-0603 MM 0.65
0 -1.8796 -0.9906 0
0 1.8796 -0.9906 0
0 1.8796 0.9906 0
0 -1.8796 0.9906 0
0 -1.8796 -0.9906 0
.END_ELECTRICAL
.ELECTRICAL
R0603 RSM-1K30-1PCT-100MW-0603 MM 0.65
0 -1.8796 -0.9906 0
0 1.8796 -0.9906 0
0 1.8796 0.9906 0
0 -1.8796 0.9906 0
0 -1.8796 -0.9906 0
.END_ELECTRICAL
.ELECTRICAL
R0603 RSM-22K1-1PCT-100MW-0603 MM 0.65
0 -1.8796 -0.9906 0
0 1.8796 -0.9906 0
0 1.8796 0.9906 0
0 -1.8796 0.9906 0
0 -1.8796 -0.9906 0
.END_ELECTRICAL
.ELECTRICAL
R0603 RSM-332K-1PCT-100MW-0603 MM 0.65
0 -1.8796 -0.9906 0
0 1.8796 -0.9906 0
0 1.8796 0.9906 0
0 -1.8796 0.9906 0
0 -1.8796 -0.9906 0
.END_ELECTRICAL
.ELECTRICAL
R0603 RSM-383K-1PCT-100MW-0603 MM 0.65
0 -1.8796 -0.9906 0
0 1.8796 -0.9906 0
0 1.8796 0.9906 0
0 -1.8796 0.9906 0
0 -1.8796 -0.9906 0
.END_ELECTRICAL
.ELECTRICAL
R0603 RSM-51R1-1PCT-100MW-0603 MM 0.4
0 -1.8796 -0.9906 0
0 1.8796 -0.9906 0
0 1.8796 0.9906 0
0 -1.8796 0.9906 0
0 -1.8796 -0.9906 0
.END_ELECTRICAL
.ELECTRICAL
SPDT_ANALOG_SWITCH_SN74LVC1G3157 SPDT_ANALOG_SWITCH_SN74LVC1G3157 MM 0.65
0 -1.5 -1.7 0
0 1.175 -1.7 0
0 1.175 1.55 0
0 -1.5 1.55 0
0 -1.5 -1.7 0
.END_ELECTRICAL
.ELECTRICAL
SPEAKER_SMT_WATERPROOF_2403-260-00107 SPEAKER_SMT_WATERPROOF_2403-260-00107 MM 0.65
0 -7.5762 -5.79 0
0 8.0 -5.79 0
0 8.0 5.79 0
0 -7.5762 5.79 0
0 -7.5762 -5.79 0
.END_ELECTRICAL
.ELECTRICAL
STM32F429_LQFP100 STM32F429_LQFP100 MM 1.6
0 -8.675 -8.675 0
0 8.675 -8.675 0
0 8.675 8.675 0
0 -8.675 8.675 0
0 -8.675 -8.675 0
.END_ELECTRICAL
.ELECTRICAL
QVGA_SPI_DISPLAY_MINIMAL QVGA_SPI_DISPLAY_MINIMAL MM 0.65
0 -18.6881 -34.5881 0
0 18.6881 -34.5881 0
0 18.6881 29.8881 0
0 -18.6881 29.8881 0
0 -18.6881 -34.5881 0
.END_ELECTRICAL
.ELECTRICAL
GENERIC_CAP_0805 CSM-X5R-10U0-10P-10V-0805 MM 0.65
0 -1.6002 -0.6096 0
0 1.6002 -0.6096 0
0 1.6002 0.6096 0
0 -1.6002 0.6096 0
0 -1.6002 -0.6096 0
.END_ELECTRICAL
.ELECTRICAL
PAD_1MM PAD_1MM MM 0.65
0 -0.5 -0.5 0
0 0.5 -0.5 0
0 0.5 0.5 0
0 -0.5 0.5 0
0 -0.5 -0.5 0
.END_ELECTRICAL
.ELECTRICAL
MICROSD_DM3CS-SF MICROSD_DM3CS-SF MM 0.65
0 -0.2 -15.55 0
0 14.4 -15.55 0
0 14.4 0.1 0
0 -0.2 0.1 0
0 -0.2 -15.55 0
.END_ELECTRICAL
.ELECTRICAL
3_5MM_PHONO_4P_3SW_SJ-42617-SMT 3_5MM_PHONO_4P_3SW_SJ-42617-SMT MM 0.65
0 -7.1016 -5.6016 0
0 13.0 -5.6016 0
0 13.0 5.6016 0
0 -7.1016 5.6016 0
0 -7.1016 -5.6016 0
.END_ELECTRICAL
.ELECTRICAL
MH125_PLATED MH125_PLATED MM 0.65
0 -2.966806 -2.966806 0
0 2.966806 -2.966806 0
0 2.966806 2.966806 0
0 -2.966806 2.966806 0
0 -2.966806 -2.966806 0
.END_ELECTRICAL

View File

@ -0,0 +1,48 @@
.HEADER
BOARD_FILE 3.0 "PADS Layout 9.1" 2014/09/18.22:31:23 1
"d:\stm32f4\workspace\psdr_github\hardware\enclosure\psdr_encoder.emn" THOU
.END_HEADER
.BOARD_OUTLINE UNOWNED
35.4
0 2440.9448818898 2559.0551181102 0
0 2362.2047244094 2480.3149606299 90.0
0 2362.2047244094 2401.5748031496 0
0 2440.9448818898 2322.8346456693 90.0
0 3038.2508923885 2322.8346456693 0
0 3093.9286089239 2299.7721784777 -45.0
0 3323.3942257218 2070.3065616798 0
0 3379.0719422572 2047.2440944882 45.0
0 3858.2677165354 2047.2440944882 0
0 3937.0078740157 2125.9842519685 90.0
0 3937.0078740157 2480.3149606299 0
0 3858.2677165354 2559.0551181102 90.0
0 2440.9448818898 2559.0551181102 0
.END_BOARD_OUTLINE
.DRILLED_HOLES
16.000000 2650.000000 2420.000000 PTH BOARD VIA UNOWNED
37.000000 2450.000000 2500.000000 PTH TOUCH6 PIN UNOWNED
37.000000 2550.000000 2500.000000 PTH TOUCH5 PIN UNOWNED
37.000000 2650.000000 2500.000000 PTH TOUCH3 PIN UNOWNED
16.000000 2750.000000 2408.000000 PTH BOARD VIA UNOWNED
37.000000 2750.000000 2500.000000 PTH TOUCH4 PIN UNOWNED
125.000000 3248.031496 2440.944882 PTH M4 PIN UNOWNED
39.000000 3454.724409 2204.724409 PTH S2 PIN UNOWNED
39.000000 3454.724409 2401.574803 PTH S2 PIN UNOWNED
39.000000 3700.787402 2303.149606 PTH S2 PIN UNOWNED
39.000000 3700.787402 2204.724409 PTH S2 PIN UNOWNED
39.000000 3700.787402 2401.574803 PTH S2 PIN UNOWNED
.END_DRILLED_HOLES
.PLACEMENT
ENCODER_PEC09-2320F-S0015 ENCODER_PEC09-2320F-S0015 S2
3700.7874015748 2303.1496062992 0.0 180.0 BOTTOM MCAD
MH125_PLATED MH125_PLATED M4
3248.031496063 2440.9448818898 0.0 0.0 TOP PLACED
0_1__1PIN 0_1__1PIN TOUCH3
2650.0 2500.0 0.0 0.0 TOP PLACED
0_1__1PIN 0_1__1PIN TOUCH4
2750.0 2500.0 0.0 0.0 TOP PLACED
0_1__1PIN 0_1__1PIN TOUCH5
2550.0 2500.0 0.0 0.0 TOP PLACED
0_1__1PIN 0_1__1PIN TOUCH6
2450.0 2500.0 0.0 0.0 TOP PLACED
.END_PLACEMENT

View File

@ -0,0 +1,27 @@
.HEADER
LIBRARY_FILE 3.0 "PADS Layout 9.1" 2014/09/18.22:31:23 1
.END_HEADER
.ELECTRICAL
ENCODER_PEC09-2320F-S0015 ENCODER_PEC09-2320F-S0015 THOU 1.0
0 -330.7086614173 -194.8818897638 0
0 240.157480315 -194.8818897638 0
0 240.157480315 194.8818897638 0
0 -330.7086614173 194.8818897638 0
0 -330.7086614173 -194.8818897638 0
.END_ELECTRICAL
.ELECTRICAL
MH125_PLATED MH125_PLATED THOU 0.0
0 -116.8033858268 -116.8033858268 0
0 116.8033858268 -116.8033858268 0
0 116.8033858268 116.8033858268 0
0 -116.8033858268 116.8033858268 0
0 -116.8033858268 -116.8033858268 0
.END_ELECTRICAL
.ELECTRICAL
0_1__1PIN 0_1__1PIN THOU 0.0
0 -35.0 -35.0 0
0 35.0 -35.0 0
0 35.0 35.0 0
0 -35.0 35.0 0
0 -35.0 -35.0 0
.END_ELECTRICAL

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,82 @@
*
*
G04 PADS9.1 Build Number: 384028 generated Gerber (RS-274-X) file*
G04 PC Version=2.1*
*
%IN "PSDR_Encoder.pcb"*%
*
%MOIN*%
*
%FSLAX35Y35*%
*
*
*
*
G04 PC Standard Apertures*
*
*
G04 Thermal Relief Aperture macro.*
%AMTER*
1,1,$1,0,0*
1,0,$1-$2,0,0*
21,0,$3,$4,0,0,45*
21,0,$3,$4,0,0,135*
%
*
*
G04 Annular Aperture macro.*
%AMANN*
1,1,$1,0,0*
1,0,$2,0,0*
%
*
*
G04 Odd Aperture macro.*
%AMODD*
1,1,$1,0,0*
1,0,$1-0.005,0,0*
%
*
*
G04 PC Custom Aperture Macros*
*
*
*
*
*
*
G04 PC Aperture Table*
*
%ADD012C,0.00787*%
%ADD042C,0.001*%
*
*
*
*
G04 PC Circuitry*
G04 Layer Name PSDR_Encoder.pcb - circuitry*
%LPD*%
*
*
G04 PC Custom Flashes*
G04 Layer Name PSDR_Encoder.pcb - flashes*
%LPD*%
*
*
G04 PC Circuitry*
G04 Layer Name PSDR_Encoder.pcb - circuitry*
%LPD*%
*
G54D12*
G01X437402Y311220D02*
X489764D01*
Y349409*
X437402*
Y311220*
X489764Y316142D02*
X493701D01*
Y344488*
X489764*
G54D42*
X0Y0D02*
M02*

View File

@ -0,0 +1,88 @@
*
*
G04 PADS9.1 Build Number: 384028 generated Gerber (RS-274-X) file*
G04 PC Version=2.1*
*
%IN "PSDR_Encoder.pcb"*%
*
%MOIN*%
*
%FSLAX35Y35*%
*
*
*
*
G04 PC Standard Apertures*
*
*
G04 Thermal Relief Aperture macro.*
%AMTER*
1,1,$1,0,0*
1,0,$1-$2,0,0*
21,0,$3,$4,0,0,45*
21,0,$3,$4,0,0,135*
%
*
*
G04 Annular Aperture macro.*
%AMANN*
1,1,$1,0,0*
1,0,$2,0,0*
%
*
*
G04 Odd Aperture macro.*
%AMODD*
1,1,$1,0,0*
1,0,$1-0.005,0,0*
%
*
*
G04 PC Custom Aperture Macros*
*
*
*
*
*
*
G04 PC Aperture Table*
*
%ADD042C,0.001*%
*
*
*
*
G04 PC Circuitry*
G04 Layer Name PSDR_Encoder.pcb - circuitry*
%LPD*%
*
*
G04 PC Custom Flashes*
G04 Layer Name PSDR_Encoder.pcb - flashes*
%LPD*%
*
*
G04 PC Circuitry*
G04 Layer Name PSDR_Encoder.pcb - circuitry*
%LPD*%
*
G54D42*
G01X344094Y355906D02*
G75*
G03X336220Y348031I0J-7875D01*
G01Y340157*
G03X344094Y332283I7874J0*
G01X403825*
X409393Y329977D02*
G03X403825Y332283I-5568J-5568D01*
G01X409393Y329977D02*
X432339Y307031D01*
G03X437907Y304724I5568J5567*
G01X485827*
G03X493701Y312598I-0J7874*
G01Y348031*
G03X485827Y355906I-7874J0*
G01X344094*
G74*
X0Y0D02*
M02*

View File

@ -0,0 +1,18 @@
% M48 INCH,LZ
T1C.016F095S300
X037500Y034080
X036500Y034200
T2C.037F197S550
X036500Y035000
X035500Y035000
X034500Y035000
X037500Y035000
T3C.039F197S550
X044547Y032047
X044547Y034016
X047008Y034016
X047008Y033031
X047008Y032047
T4C.125F035S794
X042480Y034409
M30

View File

@ -0,0 +1,77 @@
*
*
G04 PADS9.1 Build Number: 384028 generated Gerber (RS-274-X) file*
G04 PC Version=2.1*
*
%IN "PSDR_Encoder.pcb"*%
*
%MOIN*%
*
%FSLAX35Y35*%
*
*
*
*
G04 PC Standard Apertures*
*
*
G04 Thermal Relief Aperture macro.*
%AMTER*
1,1,$1,0,0*
1,0,$1-$2,0,0*
21,0,$3,$4,0,0,45*
21,0,$3,$4,0,0,135*
%
*
*
G04 Annular Aperture macro.*
%AMANN*
1,1,$1,0,0*
1,0,$2,0,0*
%
*
*
G04 Odd Aperture macro.*
%AMODD*
1,1,$1,0,0*
1,0,$1-0.005,0,0*
%
*
*
G04 PC Custom Aperture Macros*
*
*
*
*
*
*
G04 PC Aperture Table*
*
%ADD010C,0.01*%
%ADD042C,0.001*%
*
*
*
*
G04 PC Circuitry*
G04 Layer Name PSDR_Encoder.pcb - circuitry*
%LPD*%
*
*
G04 PC Custom Flashes*
G04 Layer Name PSDR_Encoder.pcb - flashes*
%LPD*%
*
*
G04 PC Circuitry*
G04 Layer Name PSDR_Encoder.pcb - circuitry*
%LPD*%
*
G54D10*
G01X435983Y344094D02*
G75*
G03X435983I-11180J0D01*
G54D42*
G74*
G01X0Y0D02*
M02*

View File

@ -0,0 +1,87 @@
*
*
G04 PADS9.1 Build Number: 384028 generated Gerber (RS-274-X) file*
G04 PC Version=2.1*
*
%IN "PSDR_Encoder.pcb"*%
*
%MOIN*%
*
%FSLAX35Y35*%
*
*
*
*
G04 PC Standard Apertures*
*
*
G04 Thermal Relief Aperture macro.*
%AMTER*
1,1,$1,0,0*
1,0,$1-$2,0,0*
21,0,$3,$4,0,0,45*
21,0,$3,$4,0,0,135*
%
*
*
G04 Annular Aperture macro.*
%AMANN*
1,1,$1,0,0*
1,0,$2,0,0*
%
*
*
G04 Odd Aperture macro.*
%AMODD*
1,1,$1,0,0*
1,0,$1-0.005,0,0*
%
*
*
G04 PC Custom Aperture Macros*
*
*
*
*
*
*
G04 PC Aperture Table*
*
%ADD042C,0.001*%
%ADD048C,0.07*%
%ADD152C,0.063*%
%ADD165C,0.2*%
*
*
*
*
G04 PC Circuitry*
G04 Layer Name PSDR_Encoder.pcb - circuitry*
%LPD*%
*
*
G04 PC Custom Flashes*
G04 Layer Name PSDR_Encoder.pcb - flashes*
%LPD*%
*
*
G04 PC Circuitry*
G04 Layer Name PSDR_Encoder.pcb - circuitry*
%LPD*%
*
G54D42*
G54D48*
G01X365000Y350000D03*
X375000D03*
X355000D03*
X345000D03*
G54D152*
X470079Y340157D03*
Y320472D03*
Y330315D03*
X445472Y340157D03*
Y320472D03*
G54D165*
X424803Y344094D03*
X0Y0D02*
M02*

View File

@ -0,0 +1,562 @@
*
*
G04 PADS9.1 Build Number: 384028 generated Gerber (RS-274-X) file*
G04 PC Version=2.1*
*
%IN "PSDR_Encoder.pcb"*%
*
%MOIN*%
*
%FSLAX35Y35*%
*
*
*
*
G04 PC Standard Apertures*
*
*
G04 Thermal Relief Aperture macro.*
%AMTER*
1,1,$1,0,0*
1,0,$1-$2,0,0*
21,0,$3,$4,0,0,45*
21,0,$3,$4,0,0,135*
%
*
*
G04 Annular Aperture macro.*
%AMANN*
1,1,$1,0,0*
1,0,$2,0,0*
%
*
*
G04 Odd Aperture macro.*
%AMODD*
1,1,$1,0,0*
1,0,$1-0.005,0,0*
%
*
*
G04 PC Custom Aperture Macros*
*
*
*
*
*
*
G04 PC Aperture Table*
*
%ADD010C,0.01*%
%ADD011C,0.008*%
%ADD037C,0.015*%
%ADD042C,0.001*%
%ADD048C,0.07*%
%ADD149C,0.032*%
%ADD152C,0.063*%
%ADD165C,0.2*%
*
*
*
*
G04 PC Circuitry*
G04 Layer Name PSDR_Encoder.pcb - circuitry*
%LPD*%
*
*
G04 PC Custom Flashes*
G04 Layer Name PSDR_Encoder.pcb - flashes*
%LPD*%
*
*
G04 PC Circuitry*
G04 Layer Name PSDR_Encoder.pcb - circuitry*
%LPD*%
*
G54D10*
G01X450322Y320472D02*
G75*
G03X450322I-4850J0D01*
G01X474929Y330315D02*
G03X474929I-4850J0D01*
G01X491801Y312598D02*
Y348031D01*
G03X485827Y354005I-5974J0*
G01X431021*
X430363Y333800D02*
G03X431021Y354005I-5560J10294D01*
G01X430363Y333800D02*
X435230D01*
X440704Y339274*
X443228Y335858D02*
G03X440704Y339274I2244J4299D01*
G01X443228Y335858D02*
X439470Y332100D01*
X459051*
X465502Y338551*
X468472Y335581D02*
G03X465502Y338551I1607J4576D01*
G01X468472Y335581D02*
X462231Y329339D01*
X467197Y324373*
X465229Y320401D02*
G03X467197Y324373I4850J71D01*
G01X465229Y320401D02*
X459330Y326300D01*
X417600*
X416115Y326915D02*
G03X417600Y326300I1485J1485D01*
G01X416115Y326915D02*
X403130Y339900D01*
X378175*
X371775Y341500D02*
G03X378175Y339900I3225J-700D01*
G01X371775Y341500D02*
X368262D01*
X361889Y343100D02*
G03X368262Y341500I3111J-1100D01*
G01X361889Y343100D02*
X359800D01*
X358315Y343715D02*
G03X359800Y343100I1485J1485D01*
G01X358315Y343715D02*
X356879Y345151D01*
X350000Y348572D02*
G03X356879Y345151I5000J1428D01*
G01X340730Y352968D02*
G03X350000Y348572I4270J-2968D01*
G01X340730Y352968D02*
G03X338120Y348031I3364J-4937D01*
G01Y340157*
G03X344094Y334183I5974J0*
G01X403825*
X410736Y331321D02*
G03X403825Y334183I-6911J-6912D01*
G01X410736Y331321D02*
X433683Y308374D01*
G03X437907Y306624I4224J4224*
G01X485827*
G03X491801Y312598I-0J5974*
G01X418585Y354005D02*
G03X413953Y339717I6218J-9911D01*
G01X418585Y354005D02*
X378316D01*
X379444Y347300D02*
G03X378316Y354005I-4444J2700D01*
G01X379444Y347300D02*
X405500D01*
X406985Y346685D02*
G03X405500Y347300I-1485J-1485D01*
G01X406985Y346685D02*
X413953Y339717D01*
X450322Y320472D02*
G03X450322I-4850J0D01*
G01X474929Y330315D02*
G03X474929I-4850J0D01*
G01X378956Y353375D02*
X417678D01*
X379573Y352475D02*
X416639D01*
X379956Y351575D02*
X415807D01*
X380156Y350675D02*
X415129D01*
X380195Y349775D02*
X414575D01*
X380077Y348875D02*
X414124D01*
X413795Y339875D02*
X413890D01*
X379790Y347975D02*
X413765D01*
X412895Y340775D02*
X413584D01*
X406446Y347075D02*
X413489D01*
X411995Y341675D02*
X413356D01*
X407495Y346175D02*
X413290D01*
X411095Y342575D02*
X413202D01*
X408395Y345275D02*
X413163D01*
X410195Y343475D02*
X413120D01*
X409295Y344375D02*
X413106D01*
X435841Y347975D02*
X491801D01*
X436117Y347075D02*
X491801D01*
X436317Y346175D02*
X491801D01*
X436443Y345275D02*
X491801D01*
X472473Y344375D02*
X491801D01*
X473617Y343475D02*
X491801D01*
X474283Y342575D02*
X491801D01*
X474685Y341675D02*
X491801D01*
X474889Y340775D02*
X491801D01*
X474921Y339875D02*
X491801D01*
X474782Y338975D02*
X491801D01*
X474459Y338075D02*
X491801D01*
X473903Y337175D02*
X491801D01*
X472986Y336275D02*
X491801D01*
X470886Y335375D02*
X491801D01*
X472572Y334475D02*
X491801D01*
X473670Y333575D02*
X491801D01*
X474316Y332675D02*
X491801D01*
X474704Y331775D02*
X491801D01*
X474896Y330875D02*
X491801D01*
X474917Y329975D02*
X491801D01*
X474768Y329075D02*
X491801D01*
X474431Y328175D02*
X491801D01*
X473858Y327275D02*
X491801D01*
X472907Y326375D02*
X491801D01*
X470392Y325475D02*
X491801D01*
X472665Y324575D02*
X491801D01*
X473721Y323675D02*
X491801D01*
X474347Y322775D02*
X491801D01*
X474722Y321875D02*
X491801D01*
X474903Y320975D02*
X491801D01*
X474912Y320075D02*
X491801D01*
X474752Y319175D02*
X491801D01*
X474402Y318275D02*
X491801D01*
X473811Y317375D02*
X491801D01*
X472825Y316475D02*
X491801D01*
X426482Y315575D02*
X491801D01*
X427382Y314675D02*
X491801D01*
X428282Y313775D02*
X491801D01*
X429182Y312875D02*
X491801D01*
X430082Y311975D02*
X491768D01*
X435482Y348875D02*
X491741D01*
X430982Y311075D02*
X491603D01*
X435032Y349775D02*
X491541D01*
X431882Y310175D02*
X491287D01*
X434477Y350675D02*
X491184D01*
X432782Y309275D02*
X490791D01*
X433799Y351575D02*
X490636D01*
X433682Y308375D02*
X490052D01*
X432967Y352475D02*
X489820D01*
X434835Y307475D02*
X488899D01*
X431928Y353375D02*
X488498D01*
X466095Y325475D02*
X469765D01*
X468266Y335375D02*
X469272D01*
X447867Y344375D02*
X467684D01*
X467366Y334475D02*
X467586D01*
X466995Y324575D02*
X467492D01*
X448219Y316475D02*
X467332D01*
X465195Y326375D02*
X467250D01*
X449010Y343475D02*
X466541D01*
X466466Y333575D02*
X466488D01*
X449205Y317375D02*
X466347D01*
X464295Y327275D02*
X466300D01*
X449677Y342575D02*
X465874D01*
X465566Y332675D02*
X465842D01*
X449796Y318275D02*
X465755D01*
X463395Y328175D02*
X465726D01*
X450079Y341675D02*
X465472D01*
X464666Y331775D02*
X465454D01*
X450146Y319175D02*
X465405D01*
X462495Y329075D02*
X465390D01*
X450176Y338975D02*
X465375D01*
X450283Y340775D02*
X465268D01*
X463766Y330875D02*
X465261D01*
X450306Y320075D02*
X465245D01*
X462866Y329975D02*
X465241D01*
X450314Y339875D02*
X465237D01*
X449853Y338075D02*
X465026D01*
X450296Y320975D02*
X464655D01*
X449297Y337175D02*
X464126D01*
X450115Y321875D02*
X463755D01*
X448379Y336275D02*
X463226D01*
X449741Y322775D02*
X462855D01*
X446279Y335375D02*
X462326D01*
X449115Y323675D02*
X461955D01*
X441845Y334475D02*
X461426D01*
X448059Y324575D02*
X461055D01*
X440945Y333575D02*
X460526D01*
X416582Y325475D02*
X460155D01*
X440045Y332675D02*
X459626D01*
X442745Y335375D02*
X444665D01*
X436500Y344375D02*
X443078D01*
X417482Y324575D02*
X442886D01*
X425582Y316475D02*
X442726D01*
X436487Y343475D02*
X441935D01*
X418382Y323675D02*
X441830D01*
X424682Y317375D02*
X441740D01*
X436404Y342575D02*
X441268D01*
X419282Y322775D02*
X441204D01*
X423782Y318275D02*
X441149D01*
X436250Y341675D02*
X440866D01*
X420182Y321875D02*
X440830D01*
X422882Y319175D02*
X440799D01*
X436022Y340775D02*
X440662D01*
X421082Y320975D02*
X440649D01*
X421982Y320075D02*
X440639D01*
X435716Y339875D02*
X440631D01*
X435324Y338975D02*
X440405D01*
X434836Y338075D02*
X439505D01*
X434238Y337175D02*
X438605D01*
X433506Y336275D02*
X437705D01*
X432605Y335375D02*
X436805D01*
X431463Y334475D02*
X435905D01*
X415682Y326375D02*
X417043D01*
X414782Y327275D02*
X415755D01*
X413882Y328175D02*
X414855D01*
X412982Y329075D02*
X413955D01*
X412082Y329975D02*
X413055D01*
X411182Y330875D02*
X412155D01*
X410250Y331775D02*
X411255D01*
X409042Y332675D02*
X410355D01*
X407220Y333575D02*
X409455D01*
X342251Y334475D02*
X408555D01*
X340514Y335375D02*
X407655D01*
X339554Y336275D02*
X406755D01*
X338918Y337175D02*
X405855D01*
X376861Y338075D02*
X404955D01*
X377750Y338975D02*
X404055D01*
X378168Y339875D02*
X403155D01*
X338495Y338075D02*
X373139D01*
X366319Y338975D02*
X372250D01*
X367525Y339875D02*
X371832D01*
X368064Y340775D02*
X371700D01*
X338239Y338975D02*
X363681D01*
X338127Y339875D02*
X362475D01*
X338120Y340775D02*
X361936D01*
X338120Y342575D02*
X361750D01*
X338120Y341675D02*
X361716D01*
X338120Y343475D02*
X358602D01*
X338120Y344375D02*
X357655D01*
X347171Y345275D02*
X352829D01*
X348523Y346175D02*
X351477D01*
X349299Y347075D02*
X350701D01*
X349790Y347975D02*
X350210D01*
X338120Y345275D02*
X342829D01*
X338120Y346175D02*
X341477D01*
X338120Y347075D02*
X340701D01*
X340102Y352475D02*
X340427D01*
X338120Y347975D02*
X340210D01*
X339285Y351575D02*
X340044D01*
X338180Y348875D02*
X339923D01*
X338737Y350675D02*
X339844D01*
X338381Y349775D02*
X339805D01*
G54D11*
X365000Y342000D02*
X366600Y343600D01*
X404800*
X418400Y330000*
X459921*
X470079Y340157*
X355000Y350000D02*
X359800Y345200D01*
X405500*
X419000Y331700*
X436100*
X444557Y340157*
X445472*
X375000Y340800D02*
X376200Y342000D01*
X404000*
X417600Y328400*
X460200*
X468000Y320600*
X469951*
X470079Y320472*
G54D37*
X433076Y352368D02*
X431874Y351166D01*
X433076Y335821D02*
X431874Y337023D01*
X416530Y352368D02*
X417732Y351166D01*
X341323Y346323D02*
X342525Y347525D01*
X348677Y346323D02*
X347475Y347525D01*
X473508Y326885D02*
X472306Y328088D01*
X466649Y326885D02*
X467851Y328088D01*
X466649Y333744D02*
X467851Y332542D01*
X473508Y333744D02*
X472306Y332542D01*
X448902Y317043D02*
X447700Y318245D01*
X442043Y317043D02*
X443245Y318245D01*
X442043Y323902D02*
X443245Y322700D01*
X448902Y323902D02*
X447700Y322700D01*
G54D42*
G54D48*
X365000Y350000D03*
X375000D03*
X355000D03*
X345000D03*
G54D149*
X365000Y342000D03*
X375000Y340800D03*
G54D152*
X470079Y340157D03*
Y320472D03*
Y330315D03*
X445472Y340157D03*
Y320472D03*
G54D165*
X424803Y344094D03*
G74*
X0Y0D02*
M02*

View File

@ -0,0 +1,549 @@
*
*
G04 PADS9.1 Build Number: 384028 generated Gerber (RS-274-X) file*
G04 PC Version=2.1*
*
%IN "PSDR_Encoder.pcb"*%
*
%MOIN*%
*
%FSLAX35Y35*%
*
*
*
*
G04 PC Standard Apertures*
*
*
G04 Thermal Relief Aperture macro.*
%AMTER*
1,1,$1,0,0*
1,0,$1-$2,0,0*
21,0,$3,$4,0,0,45*
21,0,$3,$4,0,0,135*
%
*
*
G04 Annular Aperture macro.*
%AMANN*
1,1,$1,0,0*
1,0,$2,0,0*
%
*
*
G04 Odd Aperture macro.*
%AMODD*
1,1,$1,0,0*
1,0,$1-0.005,0,0*
%
*
*
G04 PC Custom Aperture Macros*
*
*
*
*
*
*
G04 PC Aperture Table*
*
%ADD010C,0.01*%
%ADD011C,0.008*%
%ADD037C,0.015*%
%ADD042C,0.001*%
%ADD048C,0.07*%
%ADD149C,0.032*%
%ADD152C,0.063*%
%ADD165C,0.2*%
*
*
*
*
G04 PC Circuitry*
G04 Layer Name PSDR_Encoder.pcb - circuitry*
%LPD*%
*
*
G04 PC Custom Flashes*
G04 Layer Name PSDR_Encoder.pcb - flashes*
%LPD*%
*
*
G04 PC Circuitry*
G04 Layer Name PSDR_Encoder.pcb - circuitry*
%LPD*%
*
G54D10*
G01X474929Y320472D02*
G75*
G03X474929I-4850J0D01*
G01Y330315D02*
G03X474929I-4850J0D01*
G01Y340157D02*
G03X474929I-4850J0D01*
G01X450322Y320472D02*
G03X450322I-4850J0D01*
G01Y340157D02*
G03X450322I-4850J0D01*
G01X491801Y312598D02*
Y348031D01*
G03X485827Y354005I-5974J0*
G01X431021*
X418585D02*
G03X431021I6218J-9911D01*
G01X418585D02*
X378316D01*
X377100Y345243D02*
G03X378316Y354005I-2100J4757D01*
G01X377100Y345243D02*
Y343346D01*
X372900D02*
G03X377100I2100J-2546D01*
G01X372900D02*
Y345243D01*
X370000Y348572D02*
G03X372900Y345243I5000J1428D01*
G01X367100D02*
G03X370000Y348572I-2100J4757D01*
G01X367100Y345243D02*
Y344546D01*
X362900D02*
G03X367100I2100J-2546D01*
G01X362900D02*
Y345243D01*
X360000Y348572D02*
G03X362900Y345243I5000J1428D01*
G01X350000Y348572D02*
G03X360000I5000J1428D01*
G01X340730Y352968D02*
G03X350000Y348572I4270J-2968D01*
G01X340730Y352968D02*
G03X338120Y348031I3364J-4937D01*
G01Y340157*
G03X344094Y334183I5974J0*
G01X403825*
X410736Y331321D02*
G03X403825Y334183I-6911J-6912D01*
G01X410736Y331321D02*
X433683Y308374D01*
G03X437907Y306624I4224J4224*
G01X485827*
G03X491801Y312598I-0J5974*
G01X474929Y320472D02*
G03X474929I-4850J0D01*
G01Y330315D02*
G03X474929I-4850J0D01*
G01Y340157D02*
G03X474929I-4850J0D01*
G01X450322Y320472D02*
G03X450322I-4850J0D01*
G01Y340157D02*
G03X450322I-4850J0D01*
G01X436055Y347301D02*
X491801D01*
X436274Y346401D02*
X491801D01*
X436418Y345501D02*
X491801D01*
X472022Y344601D02*
X491801D01*
X473390Y343701D02*
X491801D01*
X474145Y342801D02*
X491801D01*
X474605Y341901D02*
X491801D01*
X474855Y341001D02*
X491801D01*
X474928Y340101D02*
X491801D01*
X474834Y339201D02*
X491801D01*
X474559Y338301D02*
X491801D01*
X474069Y337401D02*
X491801D01*
X473265Y336501D02*
X491801D01*
X471741Y335601D02*
X491801D01*
X472149Y334701D02*
X491801D01*
X473451Y333801D02*
X491801D01*
X474182Y332901D02*
X491801D01*
X474626Y332001D02*
X491801D01*
X474865Y331101D02*
X491801D01*
X474927Y330201D02*
X491801D01*
X474822Y329301D02*
X491801D01*
X474535Y328401D02*
X491801D01*
X474029Y327501D02*
X491801D01*
X473198Y326601D02*
X491801D01*
X471574Y325701D02*
X491801D01*
X472266Y324801D02*
X491801D01*
X473509Y323901D02*
X491801D01*
X474217Y323001D02*
X491801D01*
X474647Y322101D02*
X491801D01*
X474874Y321201D02*
X491801D01*
X474926Y320301D02*
X491801D01*
X474809Y319401D02*
X491801D01*
X474510Y318501D02*
X491801D01*
X473987Y317601D02*
X491801D01*
X473128Y316701D02*
X491801D01*
X471383Y315801D02*
X491801D01*
X427156Y314901D02*
X491801D01*
X428056Y314001D02*
X491801D01*
X428956Y313101D02*
X491801D01*
X435759Y348201D02*
X491798D01*
X429856Y312201D02*
X491788D01*
X435378Y349101D02*
X491704D01*
X430756Y311301D02*
X491658D01*
X434903Y350001D02*
X491467D01*
X431656Y310401D02*
X491382D01*
X434320Y350901D02*
X491066D01*
X432556Y309501D02*
X490935D01*
X433607Y351801D02*
X490461D01*
X433456Y308601D02*
X490266D01*
X432729Y352701D02*
X489553D01*
X434486Y307701D02*
X489248D01*
X431623Y353601D02*
X487987D01*
X436465Y306801D02*
X487269D01*
X446777Y315801D02*
X468775D01*
X416356Y325701D02*
X468584D01*
X447134Y335601D02*
X468417D01*
X447416Y344601D02*
X468135D01*
X431778Y334701D02*
X468009D01*
X447660Y324801D02*
X467891D01*
X448522Y316701D02*
X467029D01*
X415456Y326601D02*
X466960D01*
X448659Y336501D02*
X466892D01*
X448784Y343701D02*
X466767D01*
X430365Y333801D02*
X466707D01*
X448903Y323901D02*
X466648D01*
X449381Y317601D02*
X466170D01*
X414556Y327501D02*
X466128D01*
X449463Y337401D02*
X466088D01*
X449539Y342801D02*
X466013D01*
X428209Y332901D02*
X465976D01*
X449611Y323001D02*
X465940D01*
X449904Y318501D02*
X465647D01*
X413656Y328401D02*
X465622D01*
X449953Y338301D02*
X465598D01*
X449998Y341901D02*
X465553D01*
X409981Y332001D02*
X465531D01*
X450041Y322101D02*
X465510D01*
X450203Y319401D02*
X465349D01*
X412756Y329301D02*
X465336D01*
X450227Y339201D02*
X465324D01*
X450249Y341001D02*
X465303D01*
X410956Y331101D02*
X465293D01*
X450267Y321201D02*
X465284D01*
X450319Y320301D02*
X465232D01*
X411856Y330201D02*
X465230D01*
X450322Y340101D02*
X465229D01*
X426256Y315801D02*
X444168D01*
X432850Y335601D02*
X443811D01*
X436492Y344601D02*
X443529D01*
X417256Y324801D02*
X443285D01*
X425356Y316701D02*
X442423D01*
X433704Y336501D02*
X442286D01*
X436497Y343701D02*
X442161D01*
X418156Y323901D02*
X442042D01*
X424456Y317601D02*
X441564D01*
X434399Y337401D02*
X441482D01*
X436431Y342801D02*
X441406D01*
X419056Y323001D02*
X441334D01*
X423556Y318501D02*
X441041D01*
X434968Y338301D02*
X440992D01*
X436296Y341901D02*
X440947D01*
X419956Y322101D02*
X440904D01*
X422656Y319401D02*
X440742D01*
X435431Y339201D02*
X440718D01*
X436087Y341001D02*
X440696D01*
X420856Y321201D02*
X440677D01*
X421756Y320301D02*
X440625D01*
X435801Y340101D02*
X440623D01*
X408665Y332901D02*
X421398D01*
X406532Y333801D02*
X419241D01*
X378751Y353601D02*
X417983D01*
X341662Y334701D02*
X417828D01*
X379443Y352701D02*
X416877D01*
X340231Y335601D02*
X416756D01*
X379878Y351801D02*
X416000D01*
X339370Y336501D02*
X415902D01*
X380121Y350901D02*
X415287D01*
X338794Y337401D02*
X415207D01*
X380200Y350001D02*
X414703D01*
X377155Y338301D02*
X414638D01*
X380122Y349101D02*
X414228D01*
X377887Y339201D02*
X414176D01*
X379879Y348201D02*
X413847D01*
X378225Y340101D02*
X413806D01*
X379445Y347301D02*
X413551D01*
X378294Y341001D02*
X413519D01*
X378753Y346401D02*
X413333D01*
X378111Y341901D02*
X413311D01*
X377608Y345501D02*
X413188D01*
X377624Y342801D02*
X413175D01*
X377100Y344601D02*
X413114D01*
X377100Y343701D02*
X413110D01*
X367100Y344601D02*
X372900D01*
X367828Y343701D02*
X372900D01*
X338416Y338301D02*
X372845D01*
X367608Y345501D02*
X372392D01*
X368201Y342801D02*
X372376D01*
X366748Y339201D02*
X372113D01*
X368299Y341901D02*
X371889D01*
X367699Y340101D02*
X371775D01*
X368145Y341001D02*
X371706D01*
X368753Y346401D02*
X371247D01*
X369445Y347301D02*
X370555D01*
X369879Y348201D02*
X370121D01*
X338198Y339201D02*
X363252D01*
X338120Y344601D02*
X362900D01*
X357608Y345501D02*
X362392D01*
X338121Y340101D02*
X362301D01*
X338120Y343701D02*
X362172D01*
X338120Y341001D02*
X361855D01*
X338120Y342801D02*
X361799D01*
X338120Y341901D02*
X361701D01*
X358753Y346401D02*
X361247D01*
X359445Y347301D02*
X360555D01*
X359879Y348201D02*
X360121D01*
X347608Y345501D02*
X352392D01*
X348753Y346401D02*
X351247D01*
X349445Y347301D02*
X350555D01*
X349879Y348201D02*
X350121D01*
X338120Y345501D02*
X342392D01*
X338120Y346401D02*
X341247D01*
X340368Y352701D02*
X340557D01*
X338120Y347301D02*
X340555D01*
X339460Y351801D02*
X340122D01*
X338123Y348201D02*
X340121D01*
X338855Y350901D02*
X339879D01*
X338217Y349101D02*
X339878D01*
X338454Y350001D02*
X339800D01*
G54D11*
X365000Y342000D02*
Y350000D01*
X375000Y340800D02*
Y350000D01*
X380400Y338000D02*
X357000D01*
X345000Y350000*
X380400Y338000D02*
X383800D01*
X389600Y343800*
X424509*
X424803Y344094*
X445472Y320472D02*
X435345Y330600D01*
Y333553*
X424803Y344094*
X424803*
X445472Y320472D02*
X448498Y323498D01*
X448498*
X455315Y330315*
X470079*
G54D37*
X433076Y352368D02*
X431874Y351166D01*
X416530Y352368D02*
X417732Y351166D01*
X416530Y335821D02*
X417732Y337023D01*
X433076Y335821D02*
X431874Y337023D01*
X341323Y346323D02*
X342525Y347525D01*
X348677Y346323D02*
X347475Y347525D01*
X473508Y326885D02*
X472306Y328088D01*
X466649Y326885D02*
X467851Y328088D01*
X466649Y333744D02*
X467851Y332542D01*
X473508Y333744D02*
X472306Y332542D01*
X448902Y317043D02*
X447700Y318245D01*
X442043Y317043D02*
X443245Y318245D01*
X442043Y323902D02*
X443245Y322700D01*
X448902Y323902D02*
X447700Y322700D01*
G54D42*
G54D48*
X365000Y350000D03*
X375000D03*
X355000D03*
X345000D03*
G54D149*
X365000Y342000D03*
X375000Y340800D03*
G54D152*
X470079Y340157D03*
Y320472D03*
Y330315D03*
X445472Y340157D03*
Y320472D03*
G54D165*
X424803Y344094D03*
G74*
X0Y0D02*
M02*

View File

@ -0,0 +1,87 @@
*
*
G04 PADS9.1 Build Number: 384028 generated Gerber (RS-274-X) file*
G04 PC Version=2.1*
*
%IN "PSDR_Encoder.pcb"*%
*
%MOIN*%
*
%FSLAX35Y35*%
*
*
*
*
G04 PC Standard Apertures*
*
*
G04 Thermal Relief Aperture macro.*
%AMTER*
1,1,$1,0,0*
1,0,$1-$2,0,0*
21,0,$3,$4,0,0,45*
21,0,$3,$4,0,0,135*
%
*
*
G04 Annular Aperture macro.*
%AMANN*
1,1,$1,0,0*
1,0,$2,0,0*
%
*
*
G04 Odd Aperture macro.*
%AMODD*
1,1,$1,0,0*
1,0,$1-0.005,0,0*
%
*
*
G04 PC Custom Aperture Macros*
*
*
*
*
*
*
G04 PC Aperture Table*
*
%ADD042C,0.001*%
%ADD048C,0.07*%
%ADD152C,0.063*%
%ADD165C,0.2*%
*
*
*
*
G04 PC Circuitry*
G04 Layer Name PSDR_Encoder.pcb - circuitry*
%LPD*%
*
*
G04 PC Custom Flashes*
G04 Layer Name PSDR_Encoder.pcb - flashes*
%LPD*%
*
*
G04 PC Circuitry*
G04 Layer Name PSDR_Encoder.pcb - circuitry*
%LPD*%
*
G54D42*
G54D48*
G01X365000Y350000D03*
X375000D03*
X355000D03*
X345000D03*
G54D152*
X470079Y340157D03*
Y320472D03*
Y330315D03*
X445472Y340157D03*
Y320472D03*
G54D165*
X424803Y344094D03*
X0Y0D02*
M02*

Binary file not shown.

After

Width:  |  Height:  |  Size: 31 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 40 KiB

Binary file not shown.

Binary file not shown.

Binary file not shown.

12
Hardware/PSDR/.mxproject Normal file
View File

@ -0,0 +1,12 @@
[PreviousLibFiles]
LibFiles=Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_gpio.h;Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_gpio_ex.h;Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_dma.h;Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_dma_ex.h;Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_adc.h;Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_adc_ex.h;Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_dac.h;Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_dac_ex.h;Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_sd.h;Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_ll_sdmmc.h;Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_spi.h;Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_tim.h;Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_tim_ex.h;Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_uart.h;Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal.h;Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_def.h;Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h;Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc_ex.h;Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_cortex.h;Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_flash.h;Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_flash_ex.h;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_flash.c;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_flash_ex.c;Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_pwr.h;Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_pwr_ex.h;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_pwr.c;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_pwr_ex.c;Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_flash_ramfunc.h;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc.c;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_adc_ex.c;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma_ex.c;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dac.c;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dac_ex.c;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_sd.c;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_ll_sdmmc.c;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_spi.c;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim.c;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_rcc.c;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_rcc_ex.c;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_cortex.c;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_flash_ramfunc.c;Drivers/CMSIS/Device/ST/STM32F4xx/Source/Templates/system_stm32f4xx.c;
[PreviousGenFiles]
HeaderPath=D:/STM32F4/workspace/PSDR_GitHub/Hardware/PSDR/Inc
SourcePath=D:/STM32F4/workspace/PSDR_GitHub/Hardware/PSDR/Src
SourceFiles=stm32f4xx_it.h;stm32f4xx_hal_conf.h;stm32f4xx_it.c;stm32f4xx_hal_msp.c;main.c;
HeaderFiles=stm32f4xx_it.h;stm32f4xx_hal_conf.h;
[]
SourceFiles=;;

View File

@ -0,0 +1,401 @@
/**
******************************************************************************
* @file stm32f4xx_hal_conf.h
* @brief HAL configuration file.
******************************************************************************
* @attention
*
* <h2><center>&copy; COPYRIGHT(c) 2014 STMicroelectronics</center></h2>
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
* 3. Neither the name of STMicroelectronics nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
* DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
* OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
******************************************************************************
*/
/* Define to prevent recursive inclusion -------------------------------------*/
#ifndef __STM32F4xx_HAL_CONF_H
#define __STM32F4xx_HAL_CONF_H
#ifdef __cplusplus
extern "C" {
#endif
/* Exported types ------------------------------------------------------------*/
/* Exported constants --------------------------------------------------------*/
/* ########################## Module Selection ############################## */
/**
* @brief This is the list of modules to be used in the HAL driver
*/
#define HAL_MODULE_ENABLED
#define HAL_ADC_MODULE_ENABLED
//#define HAL_CAN_MODULE_ENABLED
//#define HAL_CRC_MODULE_ENABLED
//#define HAL_CRYP_MODULE_ENABLED
#define HAL_DAC_MODULE_ENABLED
//#define HAL_DCMI_MODULE_ENABLED
//#define HAL_DMA2D_MODULE_ENABLED
//#define HAL_ETH_MODULE_ENABLED
//#define HAL_NAND_MODULE_ENABLED
//#define HAL_NOR_MODULE_ENABLED
//#define HAL_PCCARD_MODULE_ENABLED
//#define HAL_SRAM_MODULE_ENABLED
//#define HAL_SDRAM_MODULE_ENABLED
//#define HAL_HASH_MODULE_ENABLED
//#define HAL_I2C_MODULE_ENABLED
//#define HAL_I2S_MODULE_ENABLED
//#define HAL_IWDG_MODULE_ENABLED
//#define HAL_LTDC_MODULE_ENABLED
//#define HAL_RNG_MODULE_ENABLED
//#define HAL_RTC_MODULE_ENABLED
//#define HAL_SAI_MODULE_ENABLED
#define HAL_SD_MODULE_ENABLED
#define HAL_SPI_MODULE_ENABLED
#define HAL_TIM_MODULE_ENABLED
#define HAL_UART_MODULE_ENABLED
//#define HAL_USART_MODULE_ENABLED
//#define HAL_IRDA_MODULE_ENABLED
//#define HAL_SMARTCARD_MODULE_ENABLED
//#define HAL_WWDG_MODULE_ENABLED
//#define HAL_PCD_MODULE_ENABLED
//#define HAL_HCD_MODULE_ENABLED
#define HAL_GPIO_MODULE_ENABLED
#define HAL_DMA_MODULE_ENABLED
#define HAL_RCC_MODULE_ENABLED
#define HAL_FLASH_MODULE_ENABLED
#define HAL_PWR_MODULE_ENABLED
#define HAL_CORTEX_MODULE_ENABLED
/* ########################## HSE/HSI Values adaptation ##################### */
/**
* @brief Adjust the value of External High Speed oscillator (HSE) used in your application.
* This value is used by the RCC HAL module to compute the system frequency
* (when HSE is used as system clock source, directly or through the PLL).
*/
#if !defined (HSE_VALUE)
#define HSE_VALUE ((uint32_t)24000000) /*!< Value of the External oscillator in Hz */
#endif /* HSE_VALUE */
#if !defined (HSE_STARTUP_TIMEOUT)
#define HSE_STARTUP_TIMEOUT ((uint32_t)5000) /*!< Time out for HSE start up, in ms */
#endif /* HSE_STARTUP_TIMEOUT */
/**
* @brief Internal High Speed oscillator (HSI) value.
* This value is used by the RCC HAL module to compute the system frequency
* (when HSI is used as system clock source, directly or through the PLL).
*/
#if !defined (HSI_VALUE)
#define HSI_VALUE ((uint32_t)16000000) /*!< Value of the Internal oscillator in Hz*/
#endif /* HSI_VALUE */
/**
* @brief Internal Low Speed oscillator (LSI) value.
*/
#if !defined (LSI_VALUE)
#define LSI_VALUE ((uint32_t)40000)
#endif /* LSI_VALUE */ /*!< Value of the Internal Low Speed oscillator in Hz
The real value may vary depending on the variations
in voltage and temperature. */
/**
* @brief External Low Speed oscillator (LSE) value.
*/
#if !defined (LSE_VALUE)
#define LSE_VALUE ((uint32_t)32768) /*!< Value of the External Low Speed oscillator in Hz */
#endif /* LSE_VALUE */
/**
* @brief External clock source for I2S peripheral
* This value is used by the I2S HAL module to compute the I2S clock source
* frequency, this source is inserted directly through I2S_CKIN pad.
*/
#if !defined (EXTERNAL_CLOCK_VALUE)
#define EXTERNAL_CLOCK_VALUE ((uint32_t)12288000) /*!< Value of the External audio frequency in Hz*/
#endif /* EXTERNAL_CLOCK_VALUE */
/* Tip: To avoid modifying this file each time you need to use different HSE,
=== you can define the HSE value in your toolchain compiler preprocessor. */
/* ########################### System Configuration ######################### */
/**
* @brief This is the HAL system configuration section
*/
#define VDD_VALUE ((uint32_t)3300) /*!< Value of VDD in mv */
#define TICK_INT_PRIORITY ((uint32_t)0) /*!< tick interrupt priority */
#define USE_RTOS 0
#define PREFETCH_ENABLE 1
#define INSTRUCTION_CACHE_ENABLE 1
#define DATA_CACHE_ENABLE 1
/* ########################## Assert Selection ############################## */
/**
* @brief Uncomment the line below to expanse the "assert_param" macro in the
* HAL drivers code
*/
/* #define USE_FULL_ASSERT 1 */
/* ################## Ethernet peripheral configuration ##################### */
/* Section 1 : Ethernet peripheral configuration */
/* MAC ADDRESS: MAC_ADDR0:MAC_ADDR1:MAC_ADDR2:MAC_ADDR3:MAC_ADDR4:MAC_ADDR5 */
#define MAC_ADDR0 2
#define MAC_ADDR1 0
#define MAC_ADDR2 0
#define MAC_ADDR3 0
#define MAC_ADDR4 0
#define MAC_ADDR5 0
/* Definition of the Ethernet driver buffers size and count */
#define ETH_RX_BUF_SIZE ETH_MAX_PACKET_SIZE /* buffer size for receive */
#define ETH_TX_BUF_SIZE ETH_MAX_PACKET_SIZE /* buffer size for transmit */
#define ETH_RXBUFNB ((uint32_t)4) /* 4 Rx buffers of size ETH_RX_BUF_SIZE */
#define ETH_TXBUFNB ((uint32_t)4) /* 4 Tx buffers of size ETH_TX_BUF_SIZE */
/* Section 2: PHY configuration section */
/* DP83848 PHY Address*/
#define DP83848_PHY_ADDRESS 0x01
/* PHY Reset delay these values are based on a 1 ms Systick interrupt*/
#define PHY_RESET_DELAY ((uint32_t)0x000000FF)
/* PHY Configuration delay */
#define PHY_CONFIG_DELAY ((uint32_t)0x00000FFF)
#define PHY_READ_TO ((uint32_t)0x0000FFFF)
#define PHY_WRITE_TO ((uint32_t)0x0000FFFF)
/* Section 3: Common PHY Registers */
#define PHY_BCR ((uint16_t)0x00) /*!< Transceiver Basic Control Register */
#define PHY_BSR ((uint16_t)0x01) /*!< Transceiver Basic Status Register */
#define PHY_RESET ((uint16_t)0x8000) /*!< PHY Reset */
#define PHY_LOOPBACK ((uint16_t)0x4000) /*!< Select loop-back mode */
#define PHY_FULLDUPLEX_100M ((uint16_t)0x2100) /*!< Set the full-duplex mode at 100 Mb/s */
#define PHY_HALFDUPLEX_100M ((uint16_t)0x2000) /*!< Set the half-duplex mode at 100 Mb/s */
#define PHY_FULLDUPLEX_10M ((uint16_t)0x0100) /*!< Set the full-duplex mode at 10 Mb/s */
#define PHY_HALFDUPLEX_10M ((uint16_t)0x0000) /*!< Set the half-duplex mode at 10 Mb/s */
#define PHY_AUTONEGOTIATION ((uint16_t)0x1000) /*!< Enable auto-negotiation function */
#define PHY_RESTART_AUTONEGOTIATION ((uint16_t)0x0200) /*!< Restart auto-negotiation function */
#define PHY_POWERDOWN ((uint16_t)0x0800) /*!< Select the power down mode */
#define PHY_ISOLATE ((uint16_t)0x0400) /*!< Isolate PHY from MII */
#define PHY_AUTONEGO_COMPLETE ((uint16_t)0x0020) /*!< Auto-Negotiation process completed */
#define PHY_LINKED_STATUS ((uint16_t)0x0004) /*!< Valid link established */
#define PHY_JABBER_DETECTION ((uint16_t)0x0002) /*!< Jabber condition detected */
/* Section 4: Extended PHY Registers */
#define PHY_SR ((uint16_t)0x10) /*!< PHY status register Offset */
#define PHY_MICR ((uint16_t)0x11) /*!< MII Interrupt Control Register */
#define PHY_MISR ((uint16_t)0x12) /*!< MII Interrupt Status and Misc. Control Register */
#define PHY_LINK_STATUS ((uint16_t)0x0001) /*!< PHY Link mask */
#define PHY_SPEED_STATUS ((uint16_t)0x0002) /*!< PHY Speed mask */
#define PHY_DUPLEX_STATUS ((uint16_t)0x0004) /*!< PHY Duplex mask */
#define PHY_MICR_INT_EN ((uint16_t)0x0002) /*!< PHY Enable interrupts */
#define PHY_MICR_INT_OE ((uint16_t)0x0001) /*!< PHY Enable output interrupt events */
#define PHY_MISR_LINK_INT_EN ((uint16_t)0x0020) /*!< Enable Interrupt on change of link status */
#define PHY_LINK_INTERRUPT ((uint16_t)0x2000) /*!< PHY link status interrupt mask */
/* Includes ------------------------------------------------------------------*/
/**
* @brief Include module's header file
*/
#ifdef HAL_RCC_MODULE_ENABLED
#include "stm32f4xx_hal_rcc.h"
#endif /* HAL_RCC_MODULE_ENABLED */
#ifdef HAL_GPIO_MODULE_ENABLED
#include "stm32f4xx_hal_gpio.h"
#endif /* HAL_GPIO_MODULE_ENABLED */
#ifdef HAL_DMA_MODULE_ENABLED
#include "stm32f4xx_hal_dma.h"
#endif /* HAL_DMA_MODULE_ENABLED */
#ifdef HAL_CORTEX_MODULE_ENABLED
#include "stm32f4xx_hal_cortex.h"
#endif /* HAL_CORTEX_MODULE_ENABLED */
#ifdef HAL_ADC_MODULE_ENABLED
#include "stm32f4xx_hal_adc.h"
#endif /* HAL_ADC_MODULE_ENABLED */
#ifdef HAL_CAN_MODULE_ENABLED
#include "stm32f4xx_hal_can.h"
#endif /* HAL_CAN_MODULE_ENABLED */
#ifdef HAL_CRC_MODULE_ENABLED
#include "stm32f4xx_hal_crc.h"
#endif /* HAL_CRC_MODULE_ENABLED */
#ifdef HAL_CRYP_MODULE_ENABLED
#include "stm32f4xx_hal_cryp.h"
#endif /* HAL_CRYP_MODULE_ENABLED */
#ifdef HAL_DMA2D_MODULE_ENABLED
#include "stm32f4xx_hal_dma2d.h"
#endif /* HAL_DMA2D_MODULE_ENABLED */
#ifdef HAL_DAC_MODULE_ENABLED
#include "stm32f4xx_hal_dac.h"
#endif /* HAL_DAC_MODULE_ENABLED */
#ifdef HAL_DCMI_MODULE_ENABLED
#include "stm32f4xx_hal_dcmi.h"
#endif /* HAL_DCMI_MODULE_ENABLED */
#ifdef HAL_ETH_MODULE_ENABLED
#include "stm32f4xx_hal_eth.h"
#endif /* HAL_ETH_MODULE_ENABLED */
#ifdef HAL_FLASH_MODULE_ENABLED
#include "stm32f4xx_hal_flash.h"
#endif /* HAL_FLASH_MODULE_ENABLED */
#ifdef HAL_SRAM_MODULE_ENABLED
#include "stm32f4xx_hal_sram.h"
#endif /* HAL_SRAM_MODULE_ENABLED */
#ifdef HAL_NOR_MODULE_ENABLED
#include "stm32f4xx_hal_nor.h"
#endif /* HAL_NOR_MODULE_ENABLED */
#ifdef HAL_NAND_MODULE_ENABLED
#include "stm32f4xx_hal_nand.h"
#endif /* HAL_NAND_MODULE_ENABLED */
#ifdef HAL_PCCARD_MODULE_ENABLED
#include "stm32f4xx_hal_pccard.h"
#endif /* HAL_PCCARD_MODULE_ENABLED */
#ifdef HAL_SDRAM_MODULE_ENABLED
#include "stm32f4xx_hal_sdram.h"
#endif /* HAL_SDRAM_MODULE_ENABLED */
#ifdef HAL_HASH_MODULE_ENABLED
#include "stm32f4xx_hal_hash.h"
#endif /* HAL_HASH_MODULE_ENABLED */
#ifdef HAL_I2C_MODULE_ENABLED
#include "stm32f4xx_hal_i2c.h"
#endif /* HAL_I2C_MODULE_ENABLED */
#ifdef HAL_I2S_MODULE_ENABLED
#include "stm32f4xx_hal_i2s.h"
#endif /* HAL_I2S_MODULE_ENABLED */
#ifdef HAL_IWDG_MODULE_ENABLED
#include "stm32f4xx_hal_iwdg.h"
#endif /* HAL_IWDG_MODULE_ENABLED */
#ifdef HAL_LTDC_MODULE_ENABLED
#include "stm32f4xx_hal_ltdc.h"
#endif /* HAL_LTDC_MODULE_ENABLED */
#ifdef HAL_PWR_MODULE_ENABLED
#include "stm32f4xx_hal_pwr.h"
#endif /* HAL_PWR_MODULE_ENABLED */
#ifdef HAL_RNG_MODULE_ENABLED
#include "stm32f4xx_hal_rng.h"
#endif /* HAL_RNG_MODULE_ENABLED */
#ifdef HAL_RTC_MODULE_ENABLED
#include "stm32f4xx_hal_rtc.h"
#endif /* HAL_RTC_MODULE_ENABLED */
#ifdef HAL_SAI_MODULE_ENABLED
#include "stm32f4xx_hal_sai.h"
#endif /* HAL_SAI_MODULE_ENABLED */
#ifdef HAL_SD_MODULE_ENABLED
#include "stm32f4xx_hal_sd.h"
#endif /* HAL_SD_MODULE_ENABLED */
#ifdef HAL_SPI_MODULE_ENABLED
#include "stm32f4xx_hal_spi.h"
#endif /* HAL_SPI_MODULE_ENABLED */
#ifdef HAL_TIM_MODULE_ENABLED
#include "stm32f4xx_hal_tim.h"
#endif /* HAL_TIM_MODULE_ENABLED */
#ifdef HAL_UART_MODULE_ENABLED
#include "stm32f4xx_hal_uart.h"
#endif /* HAL_UART_MODULE_ENABLED */
#ifdef HAL_USART_MODULE_ENABLED
#include "stm32f4xx_hal_usart.h"
#endif /* HAL_USART_MODULE_ENABLED */
#ifdef HAL_IRDA_MODULE_ENABLED
#include "stm32f4xx_hal_irda.h"
#endif /* HAL_IRDA_MODULE_ENABLED */
#ifdef HAL_SMARTCARD_MODULE_ENABLED
#include "stm32f4xx_hal_smartcard.h"
#endif /* HAL_SMARTCARD_MODULE_ENABLED */
#ifdef HAL_WWDG_MODULE_ENABLED
#include "stm32f4xx_hal_wwdg.h"
#endif /* HAL_WWDG_MODULE_ENABLED */
#ifdef HAL_PCD_MODULE_ENABLED
#include "stm32f4xx_hal_pcd.h"
#endif /* HAL_PCD_MODULE_ENABLED */
#ifdef HAL_HCD_MODULE_ENABLED
#include "stm32f4xx_hal_hcd.h"
#endif /* HAL_HCD_MODULE_ENABLED */
/* Exported macro ------------------------------------------------------------*/
#ifdef USE_FULL_ASSERT
/**
* @brief The assert_param macro is used for function's parameters check.
* @param expr: If expr is false, it calls assert_failed function
* which reports the name of the source file and the source
* line number of the call that failed.
* If expr is true, it returns no value.
* @retval None
*/
#define assert_param(expr) ((expr) ? (void)0 : assert_failed((uint8_t *)__FILE__, __LINE__))
/* Exported functions ------------------------------------------------------- */
void assert_failed(uint8_t* file, uint32_t line);
#else
#define assert_param(expr) ((void)0)
#endif /* USE_FULL_ASSERT */
#ifdef __cplusplus
}
#endif
#endif /* __STM32F4xx_HAL_CONF_H */
/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/

View File

@ -0,0 +1,57 @@
/**
******************************************************************************
* @file stm32f4xx_it.h
* @date 27/09/2014 00:43:09
* @brief This file contains the headers of the interrupt handlers.
******************************************************************************
*
* COPYRIGHT(c) 2014 STMicroelectronics
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
* 3. Neither the name of STMicroelectronics nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
* DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
* OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
******************************************************************************
*/
/* Define to prevent recursive inclusion -------------------------------------*/
#ifndef __STM32F4xx_IT_H
#define __STM32F4xx_IT_H
#ifdef __cplusplus
extern "C" {
#endif
/* Includes ------------------------------------------------------------------*/
/* Exported types ------------------------------------------------------------*/
/* Exported constants --------------------------------------------------------*/
/* Exported macro ------------------------------------------------------------*/
/* Exported functions ------------------------------------------------------- */
void SysTick_Handler(void);
#ifdef __cplusplus
}
#endif
#endif /* __STM32F4xx_IT_H */
/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/

303
Hardware/PSDR/PSDR.ioc Normal file
View File

@ -0,0 +1,303 @@
#MicroXplorer Configuration settings - do not modify
#Sat Sep 27 00:43:07 MDT 2014
ADC1.Channel-0\#ChannelRegularConversion=ADC_CHANNEL_TEMPSENSOR
ADC1.IPParameters=NbrOfConversionFlag,Channel-0\#ChannelRegularConversion,SamplingTime-0\#ChannelRegularConversion,Rank-0\#ChannelRegularConversion,master
ADC1.NbrOfConversionFlag=1
ADC1.Rank-0\#ChannelRegularConversion=1
ADC1.SamplingTime-0\#ChannelRegularConversion=ADC_SAMPLETIME_3CYCLES
ADC1.master=1
File.Version=4
KeepUserPlacement=false
Mcu.Family=STM32F4
Mcu.IP0=ADC1
Mcu.IP1=DAC
Mcu.IP10=USB_OTG_FS
Mcu.IP2=NVIC
Mcu.IP3=RCC
Mcu.IP4=SDIO
Mcu.IP5=SPI1
Mcu.IP6=SYS
Mcu.IP7=TIM1
Mcu.IP8=TIM2
Mcu.IP9=USART1
Mcu.IPNb=11
Mcu.Name=STM32F429V(E-G-I)Tx
Mcu.Package=LQFP100
Mcu.Pin0=PE2
Mcu.Pin1=PE3
Mcu.Pin10=PC0
Mcu.Pin11=PC1
Mcu.Pin12=PC2
Mcu.Pin13=PC3
Mcu.Pin14=PA0/WKUP
Mcu.Pin15=PA4
Mcu.Pin16=PA5
Mcu.Pin17=PD11
Mcu.Pin18=PD12
Mcu.Pin19=PD13
Mcu.Pin2=PE4
Mcu.Pin20=PD14
Mcu.Pin21=PD15
Mcu.Pin22=PC6
Mcu.Pin23=PC7
Mcu.Pin24=PC8
Mcu.Pin25=PC9
Mcu.Pin26=PA8
Mcu.Pin27=PA9
Mcu.Pin28=PA10
Mcu.Pin29=PA11
Mcu.Pin3=PE5
Mcu.Pin30=PA12
Mcu.Pin31=PA13
Mcu.Pin32=PA14
Mcu.Pin33=PA15
Mcu.Pin34=PC10
Mcu.Pin35=PC11
Mcu.Pin36=PC12
Mcu.Pin37=PD0
Mcu.Pin38=PD1
Mcu.Pin39=PD2
Mcu.Pin4=PE6
Mcu.Pin40=PD3
Mcu.Pin41=PD4
Mcu.Pin42=PD5
Mcu.Pin43=PD6
Mcu.Pin44=PD7
Mcu.Pin45=PB3
Mcu.Pin46=PB4
Mcu.Pin47=PB5
Mcu.Pin48=PB6
Mcu.Pin49=PB7
Mcu.Pin5=PC13
Mcu.Pin50=PB8
Mcu.Pin51=PB9
Mcu.Pin52=PE0
Mcu.Pin53=PE1
Mcu.Pin54=VP_ADC1_TempSens_Input
Mcu.Pin55=VP_ADC1_Vbat_Input
Mcu.Pin6=PC14/OSC32_IN
Mcu.Pin7=PC15/OSC32_OUT
Mcu.Pin8=PH0/OSC_IN
Mcu.Pin9=PH1/OSC_OUT
Mcu.PinsNb=56
Mcu.UserName=STM32F429VITx
NVIC.PriorityGroup=NVIC_PRIORITYGROUP_0
NVIC.SysTick_IRQn=true\:0\:0
PA0/WKUP.GPIOParameters=GPIO_Label
PA0/WKUP.GPIO_Label=REF_CLOCK_ENABLE
PA0/WKUP.Signal=GPIO_Output
PA10.Mode=OTG/Dual_Role_Device
PA10.Signal=USB_OTG_FS_ID
PA11.Mode=OTG/Dual_Role_Device
PA11.Signal=USB_OTG_FS_DM
PA12.Mode=OTG/Dual_Role_Device
PA12.Signal=USB_OTG_FS_DP
PA13.Mode=Serial-Wire
PA13.Signal=SYS_JTMS-SWDIO
PA14.Mode=Serial-Wire
PA14.Signal=SYS_JTCK-SWCLK
PA15.GPIOParameters=GPIO_Label
PA15.GPIO_Label=LCD_LED
PA15.Signal=S_TIM2_CH1_ETR
PA4.Signal=COMP_DAC1_group
PA5.Signal=COMP_DAC2_group
PA8.GPIOParameters=GPIO_Label
PA8.GPIO_Label=LED_WHITE
PA8.Signal=S_TIM1_CH1
PA9.Mode=Activate_VBUS
PA9.Signal=USB_OTG_FS_VBUS
PB3.GPIOParameters=GPIO_Label
PB3.GPIO_Label=LCD_SCK
PB3.Mode=Full_Duplex_Master
PB3.Signal=SPI1_SCK
PB4.GPIOParameters=GPIO_Label
PB4.GPIO_Label=LCD_MISO
PB4.Mode=Full_Duplex_Master
PB4.Signal=SPI1_MISO
PB5.GPIOParameters=GPIO_Label
PB5.GPIO_Label=LCD_MOSI
PB5.Mode=Full_Duplex_Master
PB5.Signal=SPI1_MOSI
PB6.GPIOParameters=GPIO_Label
PB6.GPIO_Label=RX_TO_GPS
PB6.Mode=Asynchronous
PB6.Signal=USART1_TX
PB7.GPIOParameters=GPIO_Label
PB7.GPIO_Label=TX_FROM_GPS
PB7.Mode=Asynchronous
PB7.Signal=USART1_RX
PB8.GPIOParameters=GPIO_Label
PB8.GPIO_Label=ENC_B
PB8.Signal=GPIO_Input
PB9.GPIOParameters=GPIO_Label
PB9.GPIO_Label=ENC_A
PB9.Signal=GPIO_Input
PC0.GPIOParameters=GPIO_Label
PC0.GPIO_Label=DDS_PSEL
PC0.Signal=GPIO_Output
PC1.GPIOParameters=GPIO_Label
PC1.GPIO_Label=LOW_BAT
PC1.Signal=GPIO_Input
PC10.Mode=SD_4_bits_Wide_bus
PC10.Signal=SDIO_D2
PC11.Mode=SD_4_bits_Wide_bus
PC11.Signal=SDIO_D3
PC12.Mode=SD_4_bits_Wide_bus
PC12.Signal=SDIO_CK
PC13.GPIOParameters=GPIO_Label
PC13.GPIO_Label=DDS_FSEL
PC13.Signal=GPIO_Output
PC14/OSC32_IN.Mode=LSE-External-Oscillator
PC14/OSC32_IN.Signal=RCC_OSC32_IN
PC15/OSC32_OUT.Mode=LSE-External-Oscillator
PC15/OSC32_OUT.Signal=RCC_OSC32_OUT
PC2.GPIOParameters=GPIO_Label
PC2.GPIO_Label=CHARGE_STATUS2
PC2.Signal=GPIO_Input
PC3.GPIOParameters=GPIO_Label
PC3.GPIO_Label=POWER_GOOD
PC3.Signal=GPIO_Input
PC6.GPIOParameters=GPIO_Label
PC6.GPIO_Label=TOUCH1
PC6.Signal=GPIO_Input
PC7.GPIOParameters=GPIO_Label
PC7.GPIO_Label=TOUCH2
PC7.Signal=GPIO_Input
PC8.GPIOParameters=GPIO_Label
PC8.GPIO_Label=SDIO_DAT0
PC8.Mode=SD_4_bits_Wide_bus
PC8.Signal=SDIO_D0
PC9.GPIOParameters=GPIO_Label
PC9.GPIO_Label=SDIO_DAT1
PC9.Mode=SD_4_bits_Wide_bus
PC9.Signal=SDIO_D1
PCC.Battery=LiPo_SparkFun_2000mAh
PCC.Battery.Capacity=2000.0
PCC.Battery.Compatibility=Yes
PCC.Battery.InParallel=1
PCC.Battery.InSeries=1
PCC.Battery.MaxContinuous=4000.0
PCC.Battery.MaxPulseCurrent=0.0
PCC.Battery.NominalVoltage=3.7
PCC.Battery.SelfDischarge=10.0
PCC.Family=STM32F4
PCC.MCU=STM32F429V(E-G-I)Tx
PCC.MXVersion=4.3.1
PCC.PartNumber=STM32F429VITx
PCC.Seq0=0
PCC.SubFamily=STM32F429/439
PCC.Temperature=25
PCC.Vdd=3.3
PD0.GPIOParameters=GPIO_Label
PD0.GPIO_Label=GPS_POWER
PD0.Signal=GPIO_Output
PD1.GPIOParameters=GPIO_Label
PD1.GPIO_Label=GPS_RESET
PD1.Signal=GPIO_Output
PD11.GPIOParameters=GPIO_Label
PD11.GPIO_Label=KEY1
PD11.Signal=GPIO_Input
PD12.GPIOParameters=GPIO_Label
PD12.GPIO_Label=KEY2
PD12.Signal=GPIO_Input
PD13.GPIOParameters=GPIO_Label
PD13.GPIO_Label=PREAMP_SHTDWN
PD13.Signal=GPIO_Output
PD14.GPIOParameters=GPIO_Label
PD14.GPIO_Label=MIC_SELECT
PD14.Signal=GPIO_Output
PD15.GPIOParameters=GPIO_Label
PD15.GPIO_Label=SD_CARD_DETECT
PD15.Signal=GPIO_Input
PD2.Mode=SD_4_bits_Wide_bus
PD2.Signal=SDIO_CMD
PD3.GPIOParameters=GPIO_Label
PD3.GPIO_Label=GPS_FIX_LED
PD3.Signal=GPIO_Input
PD4.GPIOParameters=GPIO_Label
PD4.GPIO_Label=GPS_PPS
PD4.Signal=GPIO_Input
PD5.GPIOParameters=GPIO_Label
PD5.GPIO_Label=LCD_CS
PD5.Signal=GPIO_Output
PD6.GPIOParameters=GPIO_Label
PD6.GPIO_Label=LCD_RESET
PD6.Signal=GPIO_Output
PD7.GPIOParameters=GPIO_Label
PD7.GPIO_Label=LCD_DC/RS
PD7.Signal=GPIO_Output
PE0.GPIOParameters=GPIO_Label
PE0.GPIO_Label=ENC_SW
PE0.Signal=GPIO_Input
PE1.GPIOParameters=GPIO_Label
PE1.GPIO_Label=DDS1_MOSI
PE1.Signal=GPIO_Output
PE2.GPIOParameters=GPIO_Label
PE2.GPIO_Label=DDS1_SCK
PE2.Signal=GPIO_Output
PE3.GPIOParameters=GPIO_Label
PE3.GPIO_Label=DDS1_NSS
PE3.Signal=GPIO_Output
PE4.GPIOParameters=GPIO_Label
PE4.GPIO_Label=DDS2_MOSI
PE4.Signal=GPIO_Output
PE5.GPIOParameters=GPIO_Label
PE5.GPIO_Label=DDS2_SCK
PE5.Signal=GPIO_Output
PE6.GPIOParameters=GPIO_Label
PE6.GPIO_Label=DDS2_NSS
PE6.Signal=GPIO_Output
PH0/OSC_IN.Mode=HSE-External-Oscillator
PH0/OSC_IN.Signal=RCC_OSC_IN
PH1/OSC_OUT.Mode=HSE-External-Oscillator
PH1/OSC_OUT.Signal=RCC_OSC_OUT
ProjectManager.AskForMigrate=true
ProjectManager.BackupPrevious=false
ProjectManager.CompilerOptimize=2
ProjectManager.ComputerToolchain=false
ProjectManager.CoupleFile=false
ProjectManager.DeletePrevious=true
ProjectManager.DeviceId=STM32F429VITx
ProjectManager.FirmwarePackage=STM32Cube FW_F4 V1.3.0
ProjectManager.FreePins=false
ProjectManager.HalAssertFull=false
ProjectManager.KeepUserCode=true
ProjectManager.LastFirmware=true
ProjectManager.LibraryCopy=0
ProjectManager.ProjectBuild=false
ProjectManager.ProjectFileName=PSDR.ioc
ProjectManager.ProjectName=PSDR
ProjectManager.TargetToolchain=EWARM 6.70
RCC.APB1CLKDivider=RCC_HCLK_DIV4
RCC.APB2CLKDivider=RCC_HCLK_DIV2
RCC.FamilyName=M
RCC.HSE_VALUE=24000000
RCC.HSI_VALUE=16000000
RCC.IPParameters=PLLSource,LSI_VALUE,FamilyName,VcooutputI2SQ,APB1CLKDivider,APB2CLKDivider,PLLM,PLLN,VcooutputI2S,PLLQ,SYSCLKSource,LSE_VALUE,HSE_VALUE,HSI_VALUE,VCOSAIOutputFreq_ValueQ,VCOSAIOutputFreq_ValueR
RCC.LSE_VALUE=32768
RCC.LSI_VALUE=32000
RCC.PLLM=15
RCC.PLLN=210
RCC.PLLQ=7
RCC.PLLSource=RCC_PLLSOURCE_HSE
RCC.SYSCLKSource=RCC_SYSCLKSOURCE_PLLCLK
RCC.VCOSAIOutputFreq_ValueQ=19600000
RCC.VCOSAIOutputFreq_ValueR=39200000
RCC.VcooutputI2S=153600000
RCC.VcooutputI2SQ=153600000
SH.COMP_DAC1_group.0=DAC_OUT1,DAC_OUT1
SH.COMP_DAC1_group.ConfNb=1
SH.COMP_DAC2_group.0=DAC_OUT2,DAC_OUT2
SH.COMP_DAC2_group.ConfNb=1
SH.S_TIM1_CH1.0=TIM1_CH1,Output Compare1 CH1
SH.S_TIM1_CH1.ConfNb=1
SH.S_TIM2_CH1_ETR.0=TIM2_CH1,Output Compare1 CH1
SH.S_TIM2_CH1_ETR.ConfNb=1
SPI1.BaudRatePrescaler-Full_Duplex_Master=SPI_BAUDRATEPRESCALER_2
SPI1.CalculateBaudRate-Full_Duplex_Master=42.0 MBits/s
SPI1.IPParameters=BaudRatePrescaler-Full_Duplex_Master,Mode-Full_Duplex_Master,CalculateBaudRate-Full_Duplex_Master
SPI1.Mode-Full_Duplex_Master=SPI_MODE_MASTER
VP_ADC1_TempSens_Input.Mode=IN-TempSens
VP_ADC1_TempSens_Input.Signal=ADC1_TempSens_Input
VP_ADC1_Vbat_Input.Mode=IN-Vbat
VP_ADC1_Vbat_Input.Signal=ADC1_Vbat_Input

449
Hardware/PSDR/Src/main.c Normal file
View File

@ -0,0 +1,449 @@
/**
******************************************************************************
* File Name : main.c
* Date : 27/09/2014 00:43:09
* Description : Main program body
******************************************************************************
*
* COPYRIGHT(c) 2014 STMicroelectronics
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
* 3. Neither the name of STMicroelectronics nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
* DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
* OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
******************************************************************************
*/
/* Includes ------------------------------------------------------------------*/
#include "stm32f4xx_hal.h"
/* Private variables ---------------------------------------------------------*/
ADC_HandleTypeDef hadc1;
DAC_HandleTypeDef hdac;
SD_HandleTypeDef hsd;
HAL_SD_CardInfoTypedef SDCardInfo;
SPI_HandleTypeDef hspi1;
TIM_HandleTypeDef htim1;
TIM_HandleTypeDef htim2;
UART_HandleTypeDef huart1;
/* USER CODE BEGIN 0 */
/* USER CODE END 0 */
/* Private function prototypes -----------------------------------------------*/
void SystemClock_Config(void);
static void MX_GPIO_Init(void);
static void MX_ADC1_Init(void);
static void MX_DAC_Init(void);
static void MX_SDIO_SD_Init(void);
static void MX_SPI1_Init(void);
static void MX_TIM1_Init(void);
static void MX_TIM2_Init(void);
static void MX_USART1_UART_Init(void);
static void MX_USB_OTG_FS_USB_Init(void);
int main(void)
{
/* USER CODE BEGIN 1 */
/* USER CODE END 1 */
/* MCU Configuration----------------------------------------------------------*/
/* Reset of all peripherals, Initializes the Flash interface and the Systick. */
HAL_Init();
/* Configure the system clock */
SystemClock_Config();
/* System interrupt init*/
/* Sets the priority grouping field */
HAL_NVIC_SetPriorityGrouping(NVIC_PRIORITYGROUP_0);
HAL_NVIC_SetPriority(SysTick_IRQn, 0, 0);
/* Initialize all configured peripherals */
MX_GPIO_Init();
MX_ADC1_Init();
MX_DAC_Init();
MX_SDIO_SD_Init();
MX_SPI1_Init();
MX_TIM1_Init();
MX_TIM2_Init();
MX_USART1_UART_Init();
MX_USB_OTG_FS_USB_Init();
/* USER CODE BEGIN 2 */
/* USER CODE END 2 */
/* USER CODE BEGIN 3 */
/* Infinite loop */
while (1)
{
}
/* USER CODE END 3 */
}
/** System Clock Configuration
*/
void SystemClock_Config(void)
{
RCC_ClkInitTypeDef RCC_ClkInitStruct;
RCC_OscInitTypeDef RCC_OscInitStruct;
__PWR_CLK_ENABLE();
__HAL_PWR_VOLTAGESCALING_CONFIG(PWR_REGULATOR_VOLTAGE_SCALE1);
RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSE;
RCC_OscInitStruct.HSEState = RCC_HSE_ON;
RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON;
RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_HSE;
RCC_OscInitStruct.PLL.PLLM = 15;
RCC_OscInitStruct.PLL.PLLN = 210;
RCC_OscInitStruct.PLL.PLLP = RCC_PLLP_DIV2;
RCC_OscInitStruct.PLL.PLLQ = 7;
HAL_RCC_OscConfig(&RCC_OscInitStruct);
RCC_ClkInitStruct.ClockType = RCC_CLOCKTYPE_SYSCLK|RCC_CLOCKTYPE_PCLK1
|RCC_CLOCKTYPE_PCLK2;
RCC_ClkInitStruct.SYSCLKSource = RCC_SYSCLKSOURCE_PLLCLK;
RCC_ClkInitStruct.AHBCLKDivider = RCC_SYSCLK_DIV1;
RCC_ClkInitStruct.APB1CLKDivider = RCC_HCLK_DIV4;
RCC_ClkInitStruct.APB2CLKDivider = RCC_HCLK_DIV2;
HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_5);
}
/* ADC1 init function */
void MX_ADC1_Init(void)
{
ADC_ChannelConfTypeDef sConfig;
/**Configure the global features of the ADC (Clock, Resolution, Data Alignment and number of conversion)
*/
hadc1.Instance = ADC1;
hadc1.Init.ClockPrescaler = ADC_CLOCKPRESCALER_PCLK_DIV2;
hadc1.Init.Resolution = ADC_RESOLUTION12b;
hadc1.Init.ScanConvMode = DISABLE;
hadc1.Init.ContinuousConvMode = DISABLE;
hadc1.Init.DiscontinuousConvMode = DISABLE;
hadc1.Init.NbrOfDiscConversion = 1;
hadc1.Init.ExternalTrigConvEdge = ADC_EXTERNALTRIGCONVEDGE_NONE;
hadc1.Init.DataAlign = ADC_DATAALIGN_RIGHT;
hadc1.Init.NbrOfConversion = 1;
hadc1.Init.DMAContinuousRequests = DISABLE;
hadc1.Init.EOCSelection = EOC_SINGLE_CONV;
HAL_ADC_Init(&hadc1);
/**Configure for the selected ADC regular channel its corresponding rank in the sequencer and its sample time.
*/
sConfig.Channel = ADC_CHANNEL_TEMPSENSOR;
sConfig.Rank = 1;
sConfig.SamplingTime = ADC_SAMPLETIME_3CYCLES;
HAL_ADC_ConfigChannel(&hadc1, &sConfig);
}
/* DAC init function */
void MX_DAC_Init(void)
{
DAC_ChannelConfTypeDef sConfig;
/**DAC Initialization
*/
hdac.Instance = DAC;
HAL_DAC_Init(&hdac);
/**DAC channel OUT1 config
*/
sConfig.DAC_Trigger = DAC_TRIGGER_NONE;
sConfig.DAC_OutputBuffer = DAC_OUTPUTBUFFER_ENABLE;
HAL_DAC_ConfigChannel(&hdac, &sConfig, DAC_CHANNEL_1);
/**DAC channel OUT2 config
*/
HAL_DAC_ConfigChannel(&hdac, &sConfig, DAC_CHANNEL_2);
}
/* SDIO init function */
void MX_SDIO_SD_Init(void)
{
hsd.Instance = SDIO;
hsd.Init.ClockEdge = SDIO_CLOCK_EDGE_RISING;
hsd.Init.ClockBypass = SDIO_CLOCK_BYPASS_DISABLE;
hsd.Init.ClockPowerSave = SDIO_CLOCK_POWER_SAVE_DISABLE;
hsd.Init.HardwareFlowControl = SDIO_HARDWARE_FLOW_CONTROL_DISABLE;
hsd.Init.ClockDiv = 0;
HAL_SD_Init(&hsd, &SDCardInfo);
}
/* SPI1 init function */
void MX_SPI1_Init(void)
{
hspi1.Instance = SPI1;
hspi1.Init.Mode = SPI_MODE_MASTER;
hspi1.Init.Direction = SPI_DIRECTION_2LINES;
hspi1.Init.DataSize = SPI_DATASIZE_8BIT;
hspi1.Init.CLKPolarity = SPI_POLARITY_LOW;
hspi1.Init.CLKPhase = SPI_PHASE_1EDGE;
hspi1.Init.NSS = SPI_NSS_SOFT;
hspi1.Init.BaudRatePrescaler = SPI_BAUDRATEPRESCALER_2;
hspi1.Init.FirstBit = SPI_FIRSTBIT_MSB;
hspi1.Init.TIMode = SPI_TIMODE_DISABLED;
hspi1.Init.CRCCalculation = SPI_CRCCALCULATION_DISABLED;
HAL_SPI_Init(&hspi1);
}
/* TIM1 init function */
void MX_TIM1_Init(void)
{
TIM_OC_InitTypeDef sConfigOC;
TIM_BreakDeadTimeConfigTypeDef sBreakDeadTimeConfig;
TIM_MasterConfigTypeDef sMasterConfig;
htim1.Instance = TIM1;
htim1.Init.Prescaler = 0;
htim1.Init.CounterMode = TIM_COUNTERMODE_UP;
htim1.Init.Period = 0;
htim1.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1;
htim1.Init.RepetitionCounter = 0;
HAL_TIM_OC_Init(&htim1);
sConfigOC.OCMode = TIM_OCMODE_TIMING;
sConfigOC.Pulse = 0;
sConfigOC.OCPolarity = TIM_OCPOLARITY_HIGH;
sConfigOC.OCIdleState = TIM_OCIDLESTATE_RESET;
HAL_TIM_OC_ConfigChannel(&htim1, &sConfigOC, TIM_CHANNEL_1);
sBreakDeadTimeConfig.OffStateRunMode = TIM_OSSR_DISABLE;
sBreakDeadTimeConfig.OffStateIDLEMode = TIM_OSSI_DISABLE;
sBreakDeadTimeConfig.LockLevel = TIM_LOCKLEVEL_OFF;
sBreakDeadTimeConfig.DeadTime = 0;
sBreakDeadTimeConfig.BreakState = TIM_BREAK_DISABLE;
sBreakDeadTimeConfig.BreakPolarity = TIM_BREAKPOLARITY_HIGH;
sBreakDeadTimeConfig.AutomaticOutput = TIM_AUTOMATICOUTPUT_DISABLE;
HAL_TIMEx_ConfigBreakDeadTime(&htim1, &sBreakDeadTimeConfig);
sMasterConfig.MasterOutputTrigger = TIM_TRGO_RESET;
sMasterConfig.MasterSlaveMode = TIM_MASTERSLAVEMODE_DISABLE;
HAL_TIMEx_MasterConfigSynchronization(&htim1, &sMasterConfig);
}
/* TIM2 init function */
void MX_TIM2_Init(void)
{
TIM_OC_InitTypeDef sConfigOC;
TIM_MasterConfigTypeDef sMasterConfig;
htim2.Instance = TIM2;
htim2.Init.Prescaler = 0;
htim2.Init.CounterMode = TIM_COUNTERMODE_UP;
htim2.Init.Period = 0;
htim2.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1;
HAL_TIM_OC_Init(&htim2);
sConfigOC.OCMode = TIM_OCMODE_TIMING;
sConfigOC.Pulse = 0;
sConfigOC.OCPolarity = TIM_OCPOLARITY_HIGH;
HAL_TIM_OC_ConfigChannel(&htim2, &sConfigOC, TIM_CHANNEL_1);
sMasterConfig.MasterOutputTrigger = TIM_TRGO_RESET;
sMasterConfig.MasterSlaveMode = TIM_MASTERSLAVEMODE_DISABLE;
HAL_TIMEx_MasterConfigSynchronization(&htim2, &sMasterConfig);
}
/* USART1 init function */
void MX_USART1_UART_Init(void)
{
huart1.Instance = USART1;
huart1.Init.BaudRate = 115200;
huart1.Init.WordLength = UART_WORDLENGTH_8B;
huart1.Init.StopBits = UART_STOPBITS_1;
huart1.Init.Parity = UART_PARITY_NONE;
huart1.Init.Mode = UART_MODE_TX_RX;
huart1.Init.HwFlowCtl = UART_HWCONTROL_NONE;
huart1.Init.OverSampling = UART_OVERSAMPLING_16;
HAL_UART_Init(&huart1);
}
/* USB_OTG_FS init function */
void MX_USB_OTG_FS_USB_Init(void)
{
}
/** Configure pins as
* Analog
* Input
* Output
* EVENT_OUT
* EXTI
PA9 ------> USB_OTG_FS_VBUS
PA10 ------> USB_OTG_FS_ID
PA11 ------> USB_OTG_FS_DM
PA12 ------> USB_OTG_FS_DP
*/
void MX_GPIO_Init(void)
{
GPIO_InitTypeDef GPIO_InitStruct;
/* GPIO Ports Clock Enable */
__GPIOE_CLK_ENABLE();
__GPIOC_CLK_ENABLE();
__GPIOH_CLK_ENABLE();
__GPIOA_CLK_ENABLE();
__GPIOD_CLK_ENABLE();
__GPIOB_CLK_ENABLE();
/*Configure GPIO pins : PE2 PE3 PE4 PE5
PE6 PE1 */
GPIO_InitStruct.Pin = GPIO_PIN_2|GPIO_PIN_3|GPIO_PIN_4|GPIO_PIN_5
|GPIO_PIN_6|GPIO_PIN_1;
GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;
GPIO_InitStruct.Pull = GPIO_NOPULL;
GPIO_InitStruct.Speed = GPIO_SPEED_LOW;
HAL_GPIO_Init(GPIOE, &GPIO_InitStruct);
/*Configure GPIO pins : PC13 PC0 */
GPIO_InitStruct.Pin = GPIO_PIN_13|GPIO_PIN_0;
GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;
GPIO_InitStruct.Pull = GPIO_NOPULL;
GPIO_InitStruct.Speed = GPIO_SPEED_LOW;
HAL_GPIO_Init(GPIOC, &GPIO_InitStruct);
/*Configure GPIO pins : PC1 PC2 PC3 PC6
PC7 */
GPIO_InitStruct.Pin = GPIO_PIN_1|GPIO_PIN_2|GPIO_PIN_3|GPIO_PIN_6
|GPIO_PIN_7;
GPIO_InitStruct.Mode = GPIO_MODE_INPUT;
GPIO_InitStruct.Pull = GPIO_NOPULL;
HAL_GPIO_Init(GPIOC, &GPIO_InitStruct);
/*Configure GPIO pin : PA0 */
GPIO_InitStruct.Pin = GPIO_PIN_0;
GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;
GPIO_InitStruct.Pull = GPIO_NOPULL;
GPIO_InitStruct.Speed = GPIO_SPEED_LOW;
HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
/*Configure GPIO pins : PD11 PD12 PD15 PD3
PD4 */
GPIO_InitStruct.Pin = GPIO_PIN_11|GPIO_PIN_12|GPIO_PIN_15|GPIO_PIN_3
|GPIO_PIN_4;
GPIO_InitStruct.Mode = GPIO_MODE_INPUT;
GPIO_InitStruct.Pull = GPIO_NOPULL;
HAL_GPIO_Init(GPIOD, &GPIO_InitStruct);
/*Configure GPIO pins : PD13 PD14 PD0 PD1
PD5 PD6 PD7 */
GPIO_InitStruct.Pin = GPIO_PIN_13|GPIO_PIN_14|GPIO_PIN_0|GPIO_PIN_1
|GPIO_PIN_5|GPIO_PIN_6|GPIO_PIN_7;
GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;
GPIO_InitStruct.Pull = GPIO_NOPULL;
GPIO_InitStruct.Speed = GPIO_SPEED_LOW;
HAL_GPIO_Init(GPIOD, &GPIO_InitStruct);
/*Configure GPIO pin : PA9 */
GPIO_InitStruct.Pin = GPIO_PIN_9;
GPIO_InitStruct.Mode = GPIO_MODE_INPUT;
GPIO_InitStruct.Pull = GPIO_NOPULL;
HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
/*Configure GPIO pins : PA10 PA11 PA12 */
GPIO_InitStruct.Pin = GPIO_PIN_10|GPIO_PIN_11|GPIO_PIN_12;
GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
GPIO_InitStruct.Pull = GPIO_NOPULL;
GPIO_InitStruct.Speed = GPIO_SPEED_LOW;
GPIO_InitStruct.Alternate = GPIO_AF10_OTG_FS;
HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
/*Configure GPIO pins : PB8 PB9 */
GPIO_InitStruct.Pin = GPIO_PIN_8|GPIO_PIN_9;
GPIO_InitStruct.Mode = GPIO_MODE_INPUT;
GPIO_InitStruct.Pull = GPIO_NOPULL;
HAL_GPIO_Init(GPIOB, &GPIO_InitStruct);
/*Configure GPIO pin : PE0 */
GPIO_InitStruct.Pin = GPIO_PIN_0;
GPIO_InitStruct.Mode = GPIO_MODE_INPUT;
GPIO_InitStruct.Pull = GPIO_NOPULL;
HAL_GPIO_Init(GPIOE, &GPIO_InitStruct);
}
/* USER CODE BEGIN 4 */
/* USER CODE END 4 */
#ifdef USE_FULL_ASSERT
/**
* @brief Reports the name of the source file and the source line number
* where the assert_param error has occurred.
* @param file: pointer to the source file name
* @param line: assert_param error line source number
* @retval None
*/
void assert_failed(uint8_t* file, uint32_t line)
{
/* USER CODE BEGIN 6 */
/* User can add his own implementation to report the file name and line number,
ex: printf("Wrong parameters value: file %s on line %d\r\n", file, line) */
/* USER CODE END 6 */
}
#endif
/**
* @}
*/
/**
* @}
*/
/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/

View File

@ -0,0 +1,330 @@
/**
******************************************************************************
* File Name : stm32f4xx_hal_msp.c
* Date : 27/09/2014 00:43:09
* Description : This file provides code for the MSP Initialization
* and de-Initialization codes.
******************************************************************************
*
* COPYRIGHT(c) 2014 STMicroelectronics
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
* 3. Neither the name of STMicroelectronics nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
* DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
* OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
******************************************************************************
*/
/* Includes ------------------------------------------------------------------*/
#include "stm32f4xx_hal.h"
/* USER CODE BEGIN 0 */
/* USER CODE END 0 */
void HAL_ADC_MspInit(ADC_HandleTypeDef* hadc)
{
if(hadc->Instance==ADC1)
{
/* Peripheral clock enable */
__ADC1_CLK_ENABLE();
}
}
void HAL_ADC_MspDeInit(ADC_HandleTypeDef* hadc)
{
if(hadc->Instance==ADC1)
{
/* Peripheral clock disable */
__ADC1_CLK_DISABLE();
}
}
void HAL_DAC_MspInit(DAC_HandleTypeDef* hdac)
{
GPIO_InitTypeDef GPIO_InitStruct;
if(hdac->Instance==DAC)
{
/* Peripheral clock enable */
__DAC_CLK_ENABLE();
/**DAC GPIO Configuration
PA4 ------> DAC_OUT1
PA5 ------> DAC_OUT2
*/
GPIO_InitStruct.Pin = GPIO_PIN_4|GPIO_PIN_5;
GPIO_InitStruct.Mode = GPIO_MODE_ANALOG;
GPIO_InitStruct.Pull = GPIO_NOPULL;
HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
}
}
void HAL_DAC_MspDeInit(DAC_HandleTypeDef* hdac)
{
if(hdac->Instance==DAC)
{
/* Peripheral clock disable */
__DAC_CLK_DISABLE();
/**DAC GPIO Configuration
PA4 ------> DAC_OUT1
PA5 ------> DAC_OUT2
*/
HAL_GPIO_DeInit(GPIOA, GPIO_PIN_4|GPIO_PIN_5);
}
}
void HAL_SD_MspInit(SD_HandleTypeDef* hsd)
{
GPIO_InitTypeDef GPIO_InitStruct;
if(hsd->Instance==SDIO)
{
/* Peripheral clock enable */
__SDIO_CLK_ENABLE();
/**SDIO GPIO Configuration
PC8 ------> SDIO_D0
PC9 ------> SDIO_D1
PC10 ------> SDIO_D2
PC11 ------> SDIO_D3
PC12 ------> SDIO_CK
PD2 ------> SDIO_CMD
*/
GPIO_InitStruct.Pin = GPIO_PIN_8|GPIO_PIN_9|GPIO_PIN_10|GPIO_PIN_11
|GPIO_PIN_12;
GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
GPIO_InitStruct.Pull = GPIO_NOPULL;
GPIO_InitStruct.Speed = GPIO_SPEED_LOW;
GPIO_InitStruct.Alternate = GPIO_AF12_SDIO;
HAL_GPIO_Init(GPIOC, &GPIO_InitStruct);
GPIO_InitStruct.Pin = GPIO_PIN_2;
GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
GPIO_InitStruct.Pull = GPIO_NOPULL;
GPIO_InitStruct.Speed = GPIO_SPEED_LOW;
GPIO_InitStruct.Alternate = GPIO_AF12_SDIO;
HAL_GPIO_Init(GPIOD, &GPIO_InitStruct);
}
}
void HAL_SD_MspDeInit(SD_HandleTypeDef* hsd)
{
if(hsd->Instance==SDIO)
{
/* Peripheral clock disable */
__SDIO_CLK_DISABLE();
/**SDIO GPIO Configuration
PC8 ------> SDIO_D0
PC9 ------> SDIO_D1
PC10 ------> SDIO_D2
PC11 ------> SDIO_D3
PC12 ------> SDIO_CK
PD2 ------> SDIO_CMD
*/
HAL_GPIO_DeInit(GPIOC, GPIO_PIN_8|GPIO_PIN_9|GPIO_PIN_10|GPIO_PIN_11
|GPIO_PIN_12);
HAL_GPIO_DeInit(GPIOD, GPIO_PIN_2);
}
}
void HAL_SPI_MspInit(SPI_HandleTypeDef* hspi)
{
GPIO_InitTypeDef GPIO_InitStruct;
if(hspi->Instance==SPI1)
{
/* Peripheral clock enable */
__SPI1_CLK_ENABLE();
/**SPI1 GPIO Configuration
PB3 ------> SPI1_SCK
PB4 ------> SPI1_MISO
PB5 ------> SPI1_MOSI
*/
GPIO_InitStruct.Pin = GPIO_PIN_3|GPIO_PIN_4|GPIO_PIN_5;
GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
GPIO_InitStruct.Pull = GPIO_NOPULL;
GPIO_InitStruct.Speed = GPIO_SPEED_LOW;
GPIO_InitStruct.Alternate = GPIO_AF5_SPI1;
HAL_GPIO_Init(GPIOB, &GPIO_InitStruct);
}
}
void HAL_SPI_MspDeInit(SPI_HandleTypeDef* hspi)
{
if(hspi->Instance==SPI1)
{
/* Peripheral clock disable */
__SPI1_CLK_DISABLE();
/**SPI1 GPIO Configuration
PB3 ------> SPI1_SCK
PB4 ------> SPI1_MISO
PB5 ------> SPI1_MOSI
*/
HAL_GPIO_DeInit(GPIOB, GPIO_PIN_3|GPIO_PIN_4|GPIO_PIN_5);
}
}
void HAL_TIM_OC_MspInit(TIM_HandleTypeDef* htim_oc)
{
GPIO_InitTypeDef GPIO_InitStruct;
if(htim_oc->Instance==TIM1)
{
/* Peripheral clock enable */
__TIM1_CLK_ENABLE();
/**TIM1 GPIO Configuration
PA8 ------> TIM1_CH1
*/
GPIO_InitStruct.Pin = GPIO_PIN_8;
GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
GPIO_InitStruct.Pull = GPIO_NOPULL;
GPIO_InitStruct.Speed = GPIO_SPEED_LOW;
GPIO_InitStruct.Alternate = GPIO_AF1_TIM1;
HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
}
else if(htim_oc->Instance==TIM2)
{
/* Peripheral clock enable */
__TIM2_CLK_ENABLE();
/**TIM2 GPIO Configuration
PA15 ------> TIM2_CH1
*/
GPIO_InitStruct.Pin = GPIO_PIN_15;
GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
GPIO_InitStruct.Pull = GPIO_NOPULL;
GPIO_InitStruct.Speed = GPIO_SPEED_LOW;
GPIO_InitStruct.Alternate = GPIO_AF1_TIM2;
HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
}
}
void HAL_TIM_OC_MspDeInit(TIM_HandleTypeDef* htim_oc)
{
if(htim_oc->Instance==TIM1)
{
/* Peripheral clock disable */
__TIM1_CLK_DISABLE();
/**TIM1 GPIO Configuration
PA8 ------> TIM1_CH1
*/
HAL_GPIO_DeInit(GPIOA, GPIO_PIN_8);
}
else if(htim_oc->Instance==TIM2)
{
/* Peripheral clock disable */
__TIM2_CLK_DISABLE();
/**TIM2 GPIO Configuration
PA15 ------> TIM2_CH1
*/
HAL_GPIO_DeInit(GPIOA, GPIO_PIN_15);
}
}
void HAL_UART_MspInit(UART_HandleTypeDef* huart)
{
GPIO_InitTypeDef GPIO_InitStruct;
if(huart->Instance==USART1)
{
/* Peripheral clock enable */
__USART1_CLK_ENABLE();
/**USART1 GPIO Configuration
PB6 ------> USART1_TX
PB7 ------> USART1_RX
*/
GPIO_InitStruct.Pin = GPIO_PIN_6|GPIO_PIN_7;
GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
GPIO_InitStruct.Pull = GPIO_NOPULL;
GPIO_InitStruct.Speed = GPIO_SPEED_LOW;
GPIO_InitStruct.Alternate = GPIO_AF7_USART1;
HAL_GPIO_Init(GPIOB, &GPIO_InitStruct);
}
}
void HAL_UART_MspDeInit(UART_HandleTypeDef* huart)
{
if(huart->Instance==USART1)
{
/* Peripheral clock disable */
__USART1_CLK_DISABLE();
/**USART1 GPIO Configuration
PB6 ------> USART1_TX
PB7 ------> USART1_RX
*/
HAL_GPIO_DeInit(GPIOB, GPIO_PIN_6|GPIO_PIN_7);
}
}
/* USER CODE BEGIN 1 */
/* USER CODE END 1 */
/**
* @}
*/
/**
* @}
*/
/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/

View File

@ -0,0 +1,54 @@
/**
******************************************************************************
* @file stm32f4xx_it.c
* @date 27/09/2014 00:43:08
* @brief Interrupt Service Routines.
******************************************************************************
*
* COPYRIGHT(c) 2014 STMicroelectronics
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
* 3. Neither the name of STMicroelectronics nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
* DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
* OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
******************************************************************************
*/
/* Includes ------------------------------------------------------------------*/
#include "stm32f4xx_hal.h"
#include "stm32f4xx.h"
#include "stm32f4xx_it.h"
/* External variables --------------------------------------------------------*/
/******************************************************************************/
/* Cortex-M4 Processor Interruption and Exception Handlers */
/******************************************************************************/
/**
* @brief This function handles System tick timer.
*/
void SysTick_Handler(void)
{
HAL_IncTick();
HAL_SYSTICK_IRQHandler();
}
/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/

Binary file not shown.

Binary file not shown.

View File

@ -1,5 +1,5 @@
#MicroXplorer Configuration settings - do not modify
#Sun Sep 14 21:40:09 MDT 2014
#Sat Sep 27 00:38:59 MDT 2014
ADC1.Channel-0\#ChannelRegularConversion=ADC_CHANNEL_TEMPSENSOR
ADC1.IPParameters=NbrOfConversionFlag,Channel-0\#ChannelRegularConversion,SamplingTime-0\#ChannelRegularConversion,Rank-0\#ChannelRegularConversion,master
ADC1.NbrOfConversionFlag=1
@ -251,12 +251,19 @@ PH0/OSC_IN.Mode=HSE-External-Oscillator
PH0/OSC_IN.Signal=RCC_OSC_IN
PH1/OSC_OUT.Mode=HSE-External-Oscillator
PH1/OSC_OUT.Signal=RCC_OSC_OUT
RCC.APB1CLKDivider=RCC_HCLK_DIV4
RCC.APB2CLKDivider=RCC_HCLK_DIV2
RCC.FamilyName=M
RCC.HSE_VALUE=25000000
RCC.HSE_VALUE=24000000
RCC.HSI_VALUE=16000000
RCC.IPParameters=SYSCLKFreq_VALUE,RTCFreq_Value,LSI_VALUE,FamilyName,LSE_VALUE,APB1Freq_Value,HSE_VALUE,APB2Freq_Value,HSI_VALUE,VCOI2SOutputFreq_Value,RTCHSEDivFreq_Value,PLLCLKFreq_Value,AHBFreq_Value,48MHZClocksFreq_Value,VCOInputFreq_Value,I2SClocksFreq_Value,VCOSAIOutputFreq_Value,VCOOutputFreq_Value
RCC.IPParameters=PLLSource,RTCFreq_Value,LSI_VALUE,FamilyName,APB1TimFreq_Value,SAI_AClocksFreq_Value,APB2Freq_Value,MCO2PinFreq_Value,APB1CLKDivider,HCLKFreq_Value,EthernetFreq_Value,FCLKCortexFreq_Value,APB2CLKDivider,PLLM,AHBFreq_Value,48MHZClocksFreq_Value,VCOInputFreq_Value,I2SClocksFreq_Value,PLLN,VCOSAIOutputFreq_Value,VCOOutputFreq_Value,SYSCLKFreq_VALUE,SAI_BClocksFreq_Value,CortexFreq_Value,PLLQ,SYSCLKSource,LSE_VALUE,APB1Freq_Value,HSE_VALUE,HSI_VALUE,VCOI2SOutputFreq_Value,LCDTFTFreq_Value,RTCHSEDivFreq_Value,PLLCLKFreq_Value,APB2TimFreq_Value
RCC.LSE_VALUE=32768
RCC.LSI_VALUE=32000
RCC.PLLM=15
RCC.PLLN=210
RCC.PLLQ=7
RCC.PLLSource=RCC_PLLSOURCE_HSE
RCC.SYSCLKSource=RCC_SYSCLKSOURCE_PLLCLK
SH.COMP_DAC1_group.0=DAC_OUT1,DAC_OUT1
SH.COMP_DAC1_group.ConfNb=1
SH.COMP_DAC2_group.0=DAC_OUT2,DAC_OUT2
@ -265,8 +272,9 @@ SH.S_TIM1_CH1.0=TIM1_CH1,Output Compare1 CH1
SH.S_TIM1_CH1.ConfNb=1
SH.S_TIM2_CH1_ETR.0=TIM2_CH1,Output Compare1 CH1
SH.S_TIM2_CH1_ETR.ConfNb=1
SPI1.CalculateBaudRate-Full_Duplex_Master=8.0 MBits/s
SPI1.IPParameters=Mode-Full_Duplex_Master,CalculateBaudRate-Full_Duplex_Master
SPI1.BaudRatePrescaler-Full_Duplex_Master=SPI_BAUDRATEPRESCALER_2
SPI1.CalculateBaudRate-Full_Duplex_Master=42.0 MBits/s
SPI1.IPParameters=BaudRatePrescaler-Full_Duplex_Master,Mode-Full_Duplex_Master,CalculateBaudRate-Full_Duplex_Master
SPI1.Mode-Full_Duplex_Master=SPI_MODE_MASTER
VP_ADC1_TempSens_Input.Mode=IN-TempSens
VP_ADC1_TempSens_Input.Signal=ADC1_TempSens_Input

Binary file not shown.

BIN
PSDR2 Guide.pdf Normal file

Binary file not shown.

View File

@ -67,12 +67,12 @@
</option>
<option id="ilg.gnuarmeclipse.managedbuild.cross.option.assembler.defs.948547285" name="Defined symbols (-D)" superClass="ilg.gnuarmeclipse.managedbuild.cross.option.assembler.defs" valueType="definedSymbols">
<listOptionValue builtIn="false" value="DEBUG"/>
<listOptionValue builtIn="false" value="HSE_VALUE=24000000"/>
<listOptionValue builtIn="false" value="STM32F429xx"/>
<listOptionValue builtIn="false" value="__FPU_PRESENT"/>
<listOptionValue builtIn="false" value="ARM_MATH_CM4"/>
<listOptionValue builtIn="false" value="USE_FULL_ASSERT"/>
<listOptionValue builtIn="false" value="STM32F415xx"/>
<listOptionValue builtIn="false" value="USE_HAL_DRIVER"/>
<listOptionValue builtIn="false" value="HSE_VALUE=8000000"/>
</option>
<inputType id="ilg.gnuarmeclipse.managedbuild.cross.tool.assembler.input.1448576225" superClass="ilg.gnuarmeclipse.managedbuild.cross.tool.assembler.input"/>
</tool>
@ -88,11 +88,11 @@
<option id="ilg.gnuarmeclipse.managedbuild.cross.option.c.compiler.warning.badfunctioncast.1142545749" name="Warn if wrong cast (-Wbad-function-cast)" superClass="ilg.gnuarmeclipse.managedbuild.cross.option.c.compiler.warning.badfunctioncast" useByScannerDiscovery="true" value="true" valueType="boolean"/>
<option id="ilg.gnuarmeclipse.managedbuild.cross.option.c.compiler.defs.1438180569" name="Defined symbols (-D)" superClass="ilg.gnuarmeclipse.managedbuild.cross.option.c.compiler.defs" useByScannerDiscovery="false" valueType="definedSymbols">
<listOptionValue builtIn="false" value="__FPU_PRESENT"/>
<listOptionValue builtIn="false" value="HSE_VALUE=24000000"/>
<listOptionValue builtIn="false" value="STM32F429xx"/>
<listOptionValue builtIn="false" value="DEBUG"/>
<listOptionValue builtIn="false" value="USE_FULL_ASSERT"/>
<listOptionValue builtIn="false" value="STM32F415xx"/>
<listOptionValue builtIn="false" value="USE_HAL_DRIVER"/>
<listOptionValue builtIn="false" value="HSE_VALUE=8000000"/>
</option>
<option id="ilg.gnuarmeclipse.managedbuild.cross.option.c.compiler.std.1291795338" name="Language standard" superClass="ilg.gnuarmeclipse.managedbuild.cross.option.c.compiler.std" useByScannerDiscovery="true" value="ilg.gnuarmeclipse.managedbuild.cross.option.c.compiler.std.gnu99" valueType="enumerated"/>
<inputType id="ilg.gnuarmeclipse.managedbuild.cross.tool.c.compiler.input.1999167372" superClass="ilg.gnuarmeclipse.managedbuild.cross.tool.c.compiler.input"/>
@ -116,11 +116,11 @@
<option id="ilg.gnuarmeclipse.managedbuild.cross.option.cpp.compiler.warning.signpromo.1550000837" name="Warn on sign promotion (-Wsign-promo)" superClass="ilg.gnuarmeclipse.managedbuild.cross.option.cpp.compiler.warning.signpromo" useByScannerDiscovery="true" value="true" valueType="boolean"/>
<option id="ilg.gnuarmeclipse.managedbuild.cross.option.cpp.compiler.defs.1001346196" name="Defined symbols (-D)" superClass="ilg.gnuarmeclipse.managedbuild.cross.option.cpp.compiler.defs" useByScannerDiscovery="false" valueType="definedSymbols">
<listOptionValue builtIn="false" value="DEBUG"/>
<listOptionValue builtIn="false" value="HSE_VALUE=24000000"/>
<listOptionValue builtIn="false" value="STM32F429xx"/>
<listOptionValue builtIn="false" value="__FPU_PRESENT"/>
<listOptionValue builtIn="false" value="USE_FULL_ASSERT"/>
<listOptionValue builtIn="false" value="STM32F415xx"/>
<listOptionValue builtIn="false" value="USE_HAL_DRIVER"/>
<listOptionValue builtIn="false" value="HSE_VALUE=8000000"/>
</option>
<option id="ilg.gnuarmeclipse.managedbuild.cross.option.cpp.compiler.std.1512752242" name="Language standard" superClass="ilg.gnuarmeclipse.managedbuild.cross.option.cpp.compiler.std" useByScannerDiscovery="true" value="ilg.gnuarmeclipse.managedbuild.cross.option.cpp.compiler.std.default" valueType="enumerated"/>
<inputType id="ilg.gnuarmeclipse.managedbuild.cross.tool.cpp.compiler.input.126815537" superClass="ilg.gnuarmeclipse.managedbuild.cross.tool.cpp.compiler.input"/>
@ -173,6 +173,17 @@
</tool>
</toolChain>
</folderInfo>
<fileInfo id="ilg.gnuarmeclipse.managedbuild.cross.config.elf.debug.1375704298.779112260" name="ILI9341_t3.h" rcbsApplicability="disable" resourcePath="include/ILI9341_t3.h" toolsToInvoke="">
<tool customBuildStep="true" id="org.eclipse.cdt.managedbuilder.ui.rcbs.265919205" name="Resource Custom Build Step">
<inputType id="org.eclipse.cdt.managedbuilder.ui.rcbs.inputtype.736310475" name="Resource Custom Build Step Input Type">
<additionalInput kind="additionalinputdependency" paths=""/>
</inputType>
<outputType id="org.eclipse.cdt.managedbuilder.ui.rcbs.outputtype.1712731893" name="Resource Custom Build Step Output Type"/>
</tool>
</fileInfo>
<fileInfo id="ilg.gnuarmeclipse.managedbuild.cross.config.elf.debug.1375704298.138531628" name="stm32f415xx.h" rcbsApplicability="disable" resourcePath="system/include/cmsis/stm32f415xx.h" toolsToInvoke=""/>
<fileInfo id="ilg.gnuarmeclipse.managedbuild.cross.config.elf.debug.1375704298.556398614" name="stm32f439xx.h" rcbsApplicability="disable" resourcePath="system/include/cmsis/stm32f439xx.h" toolsToInvoke=""/>
<fileInfo id="ilg.gnuarmeclipse.managedbuild.cross.config.elf.debug.1375704298.1980029090" name="stm32f407xx.h" rcbsApplicability="disable" resourcePath="system/include/cmsis/stm32f407xx.h" toolsToInvoke=""/>
<fileInfo id="ilg.gnuarmeclipse.managedbuild.cross.config.elf.debug.1375704298.1616885862" name="core_cmInstr.h" rcbsApplicability="disable" resourcePath="system/include/cmsis/core_cmInstr.h" toolsToInvoke="">
<tool customBuildStep="true" id="org.eclipse.cdt.managedbuilder.ui.rcbs.452876450" name="Resource Custom Build Step">
<inputType id="org.eclipse.cdt.managedbuilder.ui.rcbs.inputtype.1170895437" name="Resource Custom Build Step Input Type">
@ -181,6 +192,19 @@
<outputType id="org.eclipse.cdt.managedbuilder.ui.rcbs.outputtype.1815660056" name="Resource Custom Build Step Output Type"/>
</tool>
</fileInfo>
<fileInfo id="ilg.gnuarmeclipse.managedbuild.cross.config.elf.debug.1375704298.834760362" name="stm32f401xc.h" rcbsApplicability="disable" resourcePath="system/include/cmsis/stm32f401xc.h" toolsToInvoke="">
<tool customBuildStep="true" id="org.eclipse.cdt.managedbuilder.ui.rcbs.1646494840" name="Resource Custom Build Step">
<inputType id="org.eclipse.cdt.managedbuilder.ui.rcbs.inputtype.1957599091" name="Resource Custom Build Step Input Type">
<additionalInput kind="additionalinputdependency" paths=""/>
</inputType>
<outputType id="org.eclipse.cdt.managedbuilder.ui.rcbs.outputtype.221381919" name="Resource Custom Build Step Output Type"/>
</tool>
</fileInfo>
<fileInfo id="ilg.gnuarmeclipse.managedbuild.cross.config.elf.debug.1375704298.1760462246" name="stm32f401xe.h" rcbsApplicability="disable" resourcePath="system/include/cmsis/stm32f401xe.h" toolsToInvoke=""/>
<fileInfo id="ilg.gnuarmeclipse.managedbuild.cross.config.elf.debug.1375704298.198871799" name="stm32f405xx.h" rcbsApplicability="disable" resourcePath="system/include/cmsis/stm32f405xx.h" toolsToInvoke=""/>
<fileInfo id="ilg.gnuarmeclipse.managedbuild.cross.config.elf.debug.1375704298.1528905043" name="stm32f417xx.h" rcbsApplicability="disable" resourcePath="system/include/cmsis/stm32f417xx.h" toolsToInvoke=""/>
<fileInfo id="ilg.gnuarmeclipse.managedbuild.cross.config.elf.debug.1375704298.708018723" name="stm32f437xx.h" rcbsApplicability="disable" resourcePath="system/include/cmsis/stm32f437xx.h" toolsToInvoke=""/>
<fileInfo id="ilg.gnuarmeclipse.managedbuild.cross.config.elf.debug.1375704298.1431321268" name="stm32f427xx.h" rcbsApplicability="disable" resourcePath="system/include/cmsis/stm32f427xx.h" toolsToInvoke=""/>
<folderInfo id="ilg.gnuarmeclipse.managedbuild.cross.config.elf.debug.1375704298.608015733" name="/" resourcePath="DSP_Lib">
<toolChain id="ilg.gnuarmeclipse.managedbuild.cross.toolchain.elf.debug.425450735" name="Cross ARM GCC" superClass="ilg.gnuarmeclipse.managedbuild.cross.toolchain.elf.debug" unusedChildren="">
<option id="ilg.gnuarmeclipse.managedbuild.cross.option.optimization.level.1067485307.697494564" name="Optimization Level" superClass="ilg.gnuarmeclipse.managedbuild.cross.option.optimization.level.1067485307"/>
@ -761,8 +785,9 @@
</folderInfo>
<sourceEntries>
<entry excluding="Source/TransformFunctions/arm_cfft_radix2_q31.c|Source/TransformFunctions/arm_cfft_radix2_q15.c|Source/TransformFunctions/arm_cfft_radix2_init_q31.c|Source/TransformFunctions/arm_cfft_radix2_init_q15.c|Source/TransformFunctions/arm_cfft_radix2_init_f32.c|Source/TransformFunctions/arm_cfft_radix2_f32.c|Source/FilteringFunctions|Source/ControllerFunctions|Source/MatrixFunctions|Source/StatisticsFunctions|Source/SupportFunctions" flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="DSP_Lib"/>
<entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="src"/>
<entry excluding="src/stm32f4-hal/stm32f4xx_hal_adc_ex.c|src/stm32f4-hal/stm32f4xx_hal_can.c|src/stm32f4-hal/stm32f4xx_hal_crc.c|src/stm32f4-hal/stm32f4xx_hal_cryp.c|src/stm32f4-hal/stm32f4xx_hal_cryp_ex.c|src/stm32f4-hal/stm32f4xx_hal_dac_ex.c|src/stm32f4-hal/stm32f4xx_hal_dcmi.c|src/stm32f4-hal/stm32f4xx_hal_dma2d.c|src/stm32f4-hal/stm32f4xx_hal_dma_ex.c|src/stm32f4-hal/stm32f4xx_hal_eth.c|src/stm32f4-hal/stm32f4xx_hal_hash.c|src/stm32f4-hal/stm32f4xx_hal_hash_ex.c|src/stm32f4-hal/stm32f4xx_hal_hcd.c|src/stm32f4-hal/stm32f4xx_hal_i2c.c|src/stm32f4-hal/stm32f4xx_hal_i2c_ex.c|src/stm32f4-hal/stm32f4xx_hal_i2s.c|src/stm32f4-hal/stm32f4xx_hal_i2s_ex.c|src/stm32f4-hal/stm32f4xx_hal_irda.c|src/stm32f4-hal/stm32f4xx_hal_ltdc.c|src/stm32f4-hal/stm32f4xx_hal_msp_template.c|src/stm32f4-hal/stm32f4xx_hal_nand.c|src/stm32f4-hal/stm32f4xx_hal_nor.c|src/stm32f4-hal/stm32f4xx_hal_pccard.c|src/stm32f4-hal/stm32f4xx_hal_pcd.c|src/stm32f4-hal/stm32f4xx_hal_rng.c|src/stm32f4-hal/stm32f4xx_hal_rtc.c|src/stm32f4-hal/stm32f4xx_hal_rtc_ex.c|src/stm32f4-hal/stm32f4xx_hal_sai.c|src/stm32f4-hal/stm32f4xx_hal_sd.c|src/stm32f4-hal/stm32f4xx_hal_sdram.c|src/stm32f4-hal/stm32f4xx_hal_smartcard.c|src/stm32f4-hal/stm32f4xx_hal_sram.c|src/stm32f4-hal/stm32f4xx_hal_uart.c|src/stm32f4-hal/stm32f4xx_hal_usart.c|src/stm32f4-hal/stm32f4xx_hal_wwdg.c|src/stm32f4-hal/stm32f4xx_ll_fmc.c|src/stm32f4-hal/stm32f4xx_ll_fsmc.c|src/stm32f4-hal/stm32f4xx_ll_sdmmc.c|src/stm32f4-hal/stm32f4xx_ll_usb.c" flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="system"/>
<entry excluding="ILI9341_t3.h" flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="include"/>
<entry excluding="ILI9341_t3.c" flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="src"/>
<entry excluding="include/cmsis/stm32f439xx.h|include/cmsis/stm32f437xx.h|include/cmsis/stm32f427xx.h|include/cmsis/stm32f417xx.h|include/cmsis/stm32f415xx.h|include/cmsis/stm32f407xx.h|include/cmsis/stm32f405xx.h|include/cmsis/stm32f401xe.h|include/cmsis/stm32f401xc.h|src/stm32f4-hal/stm32f4xx_hal_adc_ex.c|src/stm32f4-hal/stm32f4xx_hal_can.c|src/stm32f4-hal/stm32f4xx_hal_crc.c|src/stm32f4-hal/stm32f4xx_hal_cryp.c|src/stm32f4-hal/stm32f4xx_hal_cryp_ex.c|src/stm32f4-hal/stm32f4xx_hal_dac_ex.c|src/stm32f4-hal/stm32f4xx_hal_dcmi.c|src/stm32f4-hal/stm32f4xx_hal_dma2d.c|src/stm32f4-hal/stm32f4xx_hal_dma_ex.c|src/stm32f4-hal/stm32f4xx_hal_eth.c|src/stm32f4-hal/stm32f4xx_hal_hash.c|src/stm32f4-hal/stm32f4xx_hal_hash_ex.c|src/stm32f4-hal/stm32f4xx_hal_hcd.c|src/stm32f4-hal/stm32f4xx_hal_i2c.c|src/stm32f4-hal/stm32f4xx_hal_i2c_ex.c|src/stm32f4-hal/stm32f4xx_hal_i2s.c|src/stm32f4-hal/stm32f4xx_hal_i2s_ex.c|src/stm32f4-hal/stm32f4xx_hal_irda.c|src/stm32f4-hal/stm32f4xx_hal_ltdc.c|src/stm32f4-hal/stm32f4xx_hal_msp_template.c|src/stm32f4-hal/stm32f4xx_hal_nand.c|src/stm32f4-hal/stm32f4xx_hal_nor.c|src/stm32f4-hal/stm32f4xx_hal_pccard.c|src/stm32f4-hal/stm32f4xx_hal_pcd.c|src/stm32f4-hal/stm32f4xx_hal_rng.c|src/stm32f4-hal/stm32f4xx_hal_rtc.c|src/stm32f4-hal/stm32f4xx_hal_rtc_ex.c|src/stm32f4-hal/stm32f4xx_hal_sai.c|src/stm32f4-hal/stm32f4xx_hal_sd.c|src/stm32f4-hal/stm32f4xx_hal_sdram.c|src/stm32f4-hal/stm32f4xx_hal_smartcard.c|src/stm32f4-hal/stm32f4xx_hal_sram.c|src/stm32f4-hal/stm32f4xx_hal_uart.c|src/stm32f4-hal/stm32f4xx_hal_usart.c|src/stm32f4-hal/stm32f4xx_hal_wwdg.c|src/stm32f4-hal/stm32f4xx_ll_fmc.c|src/stm32f4-hal/stm32f4xx_ll_fsmc.c|src/stm32f4-hal/stm32f4xx_ll_sdmmc.c|src/stm32f4-hal/stm32f4xx_ll_usb.c" flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="system"/>
</sourceEntries>
</configuration>
</storageModule>

View File

@ -9,7 +9,12 @@
#endif
//#include <stm32f10x.h>
#include <stm32f415xx.h>
//#include <stm32f415xx.h>
#include "stm32f4xx.h"
#ifdef PSDR2
#include "stm32f429xx.h"
#endif
#include <stdbool.h>
#include <Adafruit_ILI9340.h>
//#include <Adafruit_SSD1306.h>

View File

@ -18,7 +18,10 @@
#define _ADAFRUIT_ILI9340H_
//#include <stm32f10x.h>
#include <stm32f415xx.h>;
//#include <stm32f415xx.h>
#ifdef PSDR2
#include "stm32f429xx.h"
#endif
#include <stdbool.h>
#include <Adafruit_GFX.h>

View File

@ -27,8 +27,8 @@
// STM32F4DISCOVERY definitions (the GREEN led, D12, active high)
// (SEGGER J-Link device name: STM32F407VG).
#define BLINK_PORT_NUMBER (2)
#define BLINK_PIN_NUMBER (13)
#define BLINK_PORT_NUMBER (0)
#define BLINK_PIN_NUMBER (8)
#define BLINK_ACTIVE_LOW (0)
#endif

View File

@ -24,18 +24,18 @@ volatile uint8_t sampleRun;
/* Definition for ADCx clock resources */
#define ADCx ADC1
#define ADCx_CLK_ENABLE() __ADC3_CLK_ENABLE();
#define ADCx_CHANNEL_GPIO_CLK_ENABLE() __GPIOF_CLK_ENABLE()
#define ADCx_CLK_ENABLE() __ADC1_CLK_ENABLE();
#define ADCx_CHANNEL_GPIO_CLK_ENABLE() __GPIOA_CLK_ENABLE()
#define ADCx_FORCE_RESET() __ADC_FORCE_RESET()
#define ADCx_RELEASE_RESET() __ADC_RELEASE_RESET()
/* Definition for ADCx Channel Pin */
#define ADCx_CHANNEL_PIN GPIO_PIN_1
#define ADCx_CHANNEL_PIN GPIO_PIN_3
#define ADCx_CHANNEL_GPIO_PORT GPIOA
/* Definition for ADCx's Channel */
#define ADCx_CHANNEL ADC_CHANNEL_1
#define ADCx_CHANNEL ADC_CHANNEL_3
/* Definition for ADCx's NVIC */
#define ADCx_IRQn ADC_IRQn

View File

@ -7,7 +7,10 @@
#include <stdint.h>
#include <stdbool.h>
//#include <stm32f10x.h>
#include <stm32f415xx.h>
//#include <stm32f415xx.h>
#ifdef PSDR2
#include "stm32f429xx.h"
#endif
#include <stm32f4xx_hal_gpio.h>
// #include <stm32f10x_gpio.h>
// #include <uart.h>
@ -99,6 +102,25 @@
extern const Gpio_Pin dac1;
extern const Gpio_Pin dac2;
extern const Gpio_Pin REF_CLOCK_DISABLE;
extern const Gpio_Pin DDS_FSEL;
extern const Gpio_Pin DDS_PSEL;
extern const Gpio_Pin RX_MUX;
extern const Gpio_Pin AMP_SWITCH_A;
extern const Gpio_Pin AMP_SWITCH_B;
extern const Gpio_Pin IMP_BRIDGE_SWITCH_A;
extern const Gpio_Pin IMP_BRIDGE_SWITCH_B;
extern const Gpio_Pin MIXER_SWITCH_A;
extern const Gpio_Pin MIXER_SWITCH_B;
extern const Gpio_Pin TX_RF_SWITCH_A;
extern const Gpio_Pin TX_RF_SWITCH_B;
extern const Gpio_Pin GAIN_POT_SCLK;
extern const Gpio_Pin GAIN_POT_MOSI;
extern const Gpio_Pin GAIN_POT_NSS;
// extern const Gpio_Pin NC_1;
// extern const Gpio_Pin DAC_SWITCHES;

View File

@ -1,6 +1,23 @@
#pragma once
#include "stm32f415xx.h"
//#define PSDR1 1
#define PSDR2 2
//#define PSDR_BOARD PSDR2
#ifdef PSDR1
#define STM32F415xx
#define HSE_VALUE=8000000 //did I do this right? Both of these were defined in the progect settings before in the several preprocessors
//#include "stm32f415xx.h"
#endif
#ifdef PSDR2
//#define HSE_VALUE 24000000
#include "stm32f429xx.h"
#endif
#include "stm32f4xx.h"
//#include "core_cmInstr.h"
#include <stdio.h>
@ -41,3 +58,5 @@ TIM_HandleTypeDef TimHandle4;
#define MASKTEAL 0b0000011111111111
#define MASKWHITE 0b1111111111111111
#define MASKBLACK 0b0000000000000000

View File

@ -10,7 +10,10 @@
#include <stdint.h>
//#include <stm32f10x.h>
#include <stm32f415xx.h>
//#include <stm32f415xx.h>
#ifdef PSDR2
#include "stm32f429xx.h"
#endif
//#include <stm32f4xx_hal.h>
#include <stm32f4xx_hal_spi.h>

View File

@ -40,7 +40,10 @@ POSSIBILITY OF SUCH DAMAGE.
#endif
//#include "stm32f10x.h"
#include <stm32f415xx.h>
//#include <stm32f415xx.h>
#ifdef PSDR2
#include "stm32f429xx.h"
#endif
//void Adafruit_GFX_Adafruit_GFX(int16_t w, int16_t h)

View File

@ -67,7 +67,7 @@ void initAdc()
sConfig1.SamplingTime = ADC_SAMPLETIME_3CYCLES;
sConfig1.Offset = 0;
sConfig2.Channel = ADC_CHANNEL_2;
sConfig2.Channel = ADC_CHANNEL_6;
sConfig2.Rank = 1;
sConfig2.SamplingTime = ADC_SAMPLETIME_3CYCLES;
sConfig2.Offset = 0;

View File

@ -55,28 +55,47 @@ const Gpio_Pin SPI2_MISO = { GPIOB, GPIO_PIN_14 };
const Gpio_Pin SPI2_MOSI = { GPIOB, GPIO_PIN_15 };
//CORRECT FOR PSDR1
const Gpio_Pin LCD_DC = { GPIOB, GPIO_PIN_11 };
const Gpio_Pin LCD_RESET = { GPIOB, GPIO_PIN_10 };
const Gpio_Pin LCD_NSS = { GPIOA, GPIO_PIN_15 };
const Gpio_Pin ddsReset = { GPIOC, GPIO_PIN_12 };
const Gpio_Pin ddsSleep = { GPIOD, GPIO_PIN_2 };
const Gpio_Pin dds1Mosi = { GPIOC, GPIO_PIN_11 };
const Gpio_Pin dds1Nss = { GPIOC, GPIO_PIN_0 };
const Gpio_Pin dds1Sck = { GPIOC, GPIO_PIN_10 };
const Gpio_Pin dds2Mosi = { GPIOB, GPIO_PIN_6 };
const Gpio_Pin dds2Nss = { GPIOB, GPIO_PIN_8 };
const Gpio_Pin dds2Sck = { GPIOB, GPIO_PIN_7 };
const Gpio_Pin LCD_DC = { GPIOD, GPIO_PIN_7 };
const Gpio_Pin LCD_RESET = { GPIOD, GPIO_PIN_6 };
const Gpio_Pin LCD_NSS = { GPIOD, GPIO_PIN_5 }; //When this was set wrong, the display still worked. No need?
const Gpio_Pin LCD_LED = { GPIOA, GPIO_PIN_15 };
const Gpio_Pin ddsReset = { GPIOC, GPIO_PIN_3 };
const Gpio_Pin ddsSleep = { GPIOA, GPIO_PIN_0 };
const Gpio_Pin dds1Mosi = { GPIOE, GPIO_PIN_1 };
const Gpio_Pin dds1Nss = { GPIOE, GPIO_PIN_3 };
const Gpio_Pin dds1Sck = { GPIOE, GPIO_PIN_2 };
const Gpio_Pin dds2Mosi = { GPIOE, GPIO_PIN_4 };
const Gpio_Pin dds2Nss = { GPIOE, GPIO_PIN_6 };
const Gpio_Pin dds2Sck = { GPIOE, GPIO_PIN_5 };
const Gpio_Pin SPI1_MOSI = { GPIOB, GPIO_PIN_5 };
const Gpio_Pin SPI1_MISO = { GPIOB, GPIO_PIN_4 };
const Gpio_Pin SPI1_SCK = { GPIOB, GPIO_PIN_3 };
const Gpio_Pin encoderA = { GPIOC, GPIO_PIN_2 };
const Gpio_Pin encoderB = { GPIOC, GPIO_PIN_3 };
const Gpio_Pin encoderP = { GPIOC, GPIO_PIN_15 };
const Gpio_Pin ADC_1 = { GPIOA, GPIO_PIN_1 };
const Gpio_Pin ADC_2 = { GPIOA, GPIO_PIN_2 };
const Gpio_Pin encoderA = { GPIOB, GPIO_PIN_8 }; //Backwards according to schematic, but easier this way
const Gpio_Pin encoderB = { GPIOB, GPIO_PIN_9 };
const Gpio_Pin encoderP = { GPIOE, GPIO_PIN_0 };
const Gpio_Pin ADC_1 = { GPIOA, GPIO_PIN_3 }; //just testing to see what happens.
const Gpio_Pin ADC_2 = { GPIOA, GPIO_PIN_6 };
const Gpio_Pin dac1 = { GPIOA, GPIO_PIN_4 };
const Gpio_Pin dac2 = { GPIOA, GPIO_PIN_5 };
const Gpio_Pin REF_CLOCK_DISABLE = { GPIOC, GPIO_PIN_2 };
const Gpio_Pin DDS_FSEL = { GPIOA, GPIO_PIN_1 };
const Gpio_Pin DDS_PSEL = { GPIOA, GPIO_PIN_2 };
const Gpio_Pin RX_MUX = { GPIOB, GPIO_PIN_15 };
const Gpio_Pin AMP_SWITCH_A = { GPIOE, GPIO_PIN_8 };
const Gpio_Pin AMP_SWITCH_B = { GPIOE, GPIO_PIN_9 };
const Gpio_Pin IMP_BRIDGE_SWITCH_A = { GPIOE, GPIO_PIN_11 };
const Gpio_Pin IMP_BRIDGE_SWITCH_B = { GPIOE, GPIO_PIN_12 };
const Gpio_Pin MIXER_SWITCH_A = { GPIOE, GPIO_PIN_13 };
const Gpio_Pin MIXER_SWITCH_B = { GPIOE, GPIO_PIN_14 };
const Gpio_Pin TX_RF_SWITCH_A = { GPIOB, GPIO_PIN_12 };
const Gpio_Pin TX_RF_SWITCH_B = { GPIOB, GPIO_PIN_13 };
const Gpio_Pin GAIN_POT_SCLK = { GPIOB , GPIO_PIN_11 };
const Gpio_Pin GAIN_POT_MOSI = { GPIOE , GPIO_PIN_15};
const Gpio_Pin GAIN_POT_NSS = { GPIOB , GPIO_PIN_10};
//const Gpio_Pin NC_1 = { GPIOC, GPIO_Pin_0 }; // this is the Closure Sensor Pin near the 3v3 regulator, fyi
//const Gpio_Pin DAC_SWITCHES = { GPIOC, GPIO_Pin_5 }; // currently labeled LIGHT_SENSOR on schem (TODO)
//const Gpio_Pin GSM_PWRKEY = { GPIOC, GPIO_Pin_8 };
@ -233,6 +252,14 @@ void hal_setupPins(void)
gpioInitStructure.Pull = GPIO_NOPULL;
HAL_GPIO_Init(LCD_RESET.port, &gpioInitStructure);
gpioInitStructure.Pin = LCD_LED.pin;
gpioInitStructure.Speed = GPIO_SPEED_LOW;
gpioInitStructure.Mode = GPIO_MODE_OUTPUT_OD;
gpioInitStructure.Alternate = 0;
gpioInitStructure.Pull = GPIO_NOPULL;
HAL_GPIO_Init(LCD_LED.port, &gpioInitStructure);
HAL_GPIO_WritePin(LCD_LED.port, LCD_LED.pin, 0);
// 'DAC' switches
// gpioInitStructure.GPIO_Pin = DAC_SWITCHES.pin;
@ -361,6 +388,72 @@ void hal_setupPins(void)
gpioInitStructure.Pull = GPIO_NOPULL;
HAL_GPIO_Init(dac1.port, &gpioInitStructure);
gpioInitStructure.Pin = REF_CLOCK_DISABLE.pin;
gpioInitStructure.Mode = GPIO_MODE_OUTPUT_PP;
gpioInitStructure.Speed = GPIO_SPEED_LOW;
gpioInitStructure.Pull = GPIO_NOPULL;
HAL_GPIO_Init(REF_CLOCK_DISABLE.port, &gpioInitStructure);
HAL_GPIO_WritePin(REF_CLOCK_DISABLE.port, REF_CLOCK_DISABLE.pin, 1);
gpioInitStructure.Pin = DDS_FSEL.pin;
gpioInitStructure.Mode = GPIO_MODE_OUTPUT_PP;
gpioInitStructure.Speed = GPIO_SPEED_LOW;
gpioInitStructure.Pull = GPIO_NOPULL;
HAL_GPIO_Init(DDS_FSEL.port, &gpioInitStructure);
HAL_GPIO_WritePin(DDS_FSEL.port, DDS_FSEL.pin, 0);
gpioInitStructure.Pin = DDS_PSEL.pin;
gpioInitStructure.Mode = GPIO_MODE_OUTPUT_PP;
gpioInitStructure.Speed = GPIO_SPEED_LOW;
gpioInitStructure.Pull = GPIO_NOPULL;
HAL_GPIO_Init(DDS_PSEL.port, &gpioInitStructure);
HAL_GPIO_WritePin(DDS_PSEL.port, DDS_PSEL.pin, 0);
gpioInitStructure.Pin = RX_MUX.pin;
gpioInitStructure.Mode = GPIO_MODE_OUTPUT_PP;
gpioInitStructure.Speed = GPIO_SPEED_LOW;
gpioInitStructure.Pull = GPIO_NOPULL;
HAL_GPIO_Init(RX_MUX.port, &gpioInitStructure);
HAL_GPIO_WritePin(RX_MUX.port, RX_MUX.pin, 1);
gpioInitStructure.Pin = TX_RF_SWITCH_A.pin;
gpioInitStructure.Mode = GPIO_MODE_OUTPUT_PP;
gpioInitStructure.Speed = GPIO_SPEED_LOW;
gpioInitStructure.Pull = GPIO_NOPULL;
HAL_GPIO_Init(TX_RF_SWITCH_A.port, &gpioInitStructure);
HAL_GPIO_WritePin(TX_RF_SWITCH_A.port, TX_RF_SWITCH_A.pin, 0); //0 to route to TX SMA connector
gpioInitStructure.Pin = TX_RF_SWITCH_B.pin;
gpioInitStructure.Mode = GPIO_MODE_OUTPUT_PP;
gpioInitStructure.Speed = GPIO_SPEED_LOW;
gpioInitStructure.Pull = GPIO_NOPULL;
HAL_GPIO_Init(TX_RF_SWITCH_B.port, &gpioInitStructure);
HAL_GPIO_WritePin(TX_RF_SWITCH_B.port, TX_RF_SWITCH_B.pin, 1); //always reverse of above.
gpioInitStructure.Pin = GAIN_POT_MOSI.pin;
gpioInitStructure.Mode = GPIO_MODE_OUTPUT_PP;
gpioInitStructure.Speed = GPIO_SPEED_LOW;
gpioInitStructure.Pull = GPIO_NOPULL;
HAL_GPIO_Init(GAIN_POT_MOSI.port, &gpioInitStructure);
HAL_GPIO_WritePin(GAIN_POT_MOSI.port, GAIN_POT_MOSI.pin, 1);
gpioInitStructure.Pin = GAIN_POT_SCLK.pin;
gpioInitStructure.Mode = GPIO_MODE_OUTPUT_PP;
gpioInitStructure.Speed = GPIO_SPEED_LOW;
gpioInitStructure.Pull = GPIO_NOPULL;
HAL_GPIO_Init(GAIN_POT_SCLK.port, &gpioInitStructure);
HAL_GPIO_WritePin(GAIN_POT_SCLK.port, GAIN_POT_SCLK.pin, 1);
gpioInitStructure.Pin = GAIN_POT_NSS.pin;
gpioInitStructure.Mode = GPIO_MODE_OUTPUT_PP;
gpioInitStructure.Speed = GPIO_SPEED_LOW;
gpioInitStructure.Pull = GPIO_NOPULL;
HAL_GPIO_Init(GAIN_POT_NSS.port, &gpioInitStructure);
HAL_GPIO_WritePin(GAIN_POT_NSS.port, GAIN_POT_NSS.pin, 1);
// Power Switch
// gpioInitStructure.GPIO_Pin = POWER_SWITCH.pin;
// gpioInitStructure.GPIO_Speed = GPIO_Speed_2MHz;

View File

@ -89,6 +89,39 @@ int ifShift = 0;
float fftMaxMaxMax = 20;
float fftMaxMaxMin = 0.2;
/** System Clock Configuration
*/
void SystemClock_Config(void)
{
RCC_ClkInitTypeDef RCC_ClkInitStruct;
RCC_OscInitTypeDef RCC_OscInitStruct;
__PWR_CLK_ENABLE();
__HAL_PWR_VOLTAGESCALING_CONFIG(PWR_REGULATOR_VOLTAGE_SCALE1);
RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSE;
RCC_OscInitStruct.HSEState = RCC_HSE_ON;
RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON;
RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_HSE;
RCC_OscInitStruct.PLL.PLLM = 15;
RCC_OscInitStruct.PLL.PLLN = 210;
RCC_OscInitStruct.PLL.PLLP = RCC_PLLP_DIV2;
RCC_OscInitStruct.PLL.PLLQ = 7;
HAL_RCC_OscConfig(&RCC_OscInitStruct);
RCC_ClkInitStruct.ClockType = RCC_CLOCKTYPE_SYSCLK|RCC_CLOCKTYPE_PCLK1
|RCC_CLOCKTYPE_PCLK2;
RCC_ClkInitStruct.SYSCLKSource = RCC_SYSCLKSOURCE_PLLCLK;
RCC_ClkInitStruct.AHBCLKDivider = RCC_SYSCLK_DIV1;
RCC_ClkInitStruct.APB1CLKDivider = RCC_HCLK_DIV4;
RCC_ClkInitStruct.APB2CLKDivider = RCC_HCLK_DIV2;
HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_5);
}
void polarToRect(float m, float a, float32_t* x, float32_t* y)
{
*y = m * arm_sin_f32(a);
@ -228,6 +261,7 @@ void setupPeripheralPower()
__GPIOB_CLK_ENABLE();
__GPIOC_CLK_ENABLE();
__GPIOD_CLK_ENABLE();
__GPIOE_CLK_ENABLE();
}
@ -334,6 +368,7 @@ int isFwd;
//int sampleCounter = 0;
//const int FFT_SIZE = 256;
float observerA, observerB, observerC;
int dcOffset = 1533;
void captureSamples()
{
@ -346,8 +381,8 @@ int isFwd;
{
case 0:
samplesA[sampleIndex*2] = ((uhADCxConvertedValue - 2048)/4096.0); // - 2048;
samplesA[sampleIndex*2 + 1] = ((uhADCxConvertedValue2 - 2048)/4096.0); // - 2048;//0.0;
samplesA[sampleIndex*2] = ((uhADCxConvertedValue - dcOffset)/4096.0); // - 2048;
samplesA[sampleIndex*2 + 1] = ((uhADCxConvertedValue2 - dcOffset)/4096.0); // - 2048;//0.0;
if(uhADCxConvertedValue > maxAmplitude) maxAmplitude = uhADCxConvertedValue;
if(uhADCxConvertedValue2 > maxAmplitude) maxAmplitude = uhADCxConvertedValue2;
@ -375,8 +410,8 @@ int isFwd;
case 1:
samplesB[sampleIndex*2] = ((uhADCxConvertedValue - 2048)/4096.0); // - 2048;
samplesB[sampleIndex*2 + 1] = ((uhADCxConvertedValue2 - 2048)/4096.0); // - 2048;//0.0;
samplesB[sampleIndex*2] = ((uhADCxConvertedValue - dcOffset)/4096.0); // - 2048;
samplesB[sampleIndex*2 + 1] = ((uhADCxConvertedValue2 - dcOffset)/4096.0); // - 2048;//0.0;
if(uhADCxConvertedValue > maxAmplitude) maxAmplitude = uhADCxConvertedValue;
if(uhADCxConvertedValue2 > maxAmplitude) maxAmplitude = uhADCxConvertedValue2;
@ -404,8 +439,8 @@ int isFwd;
case 2:
samplesC[sampleIndex*2] = ((uhADCxConvertedValue - 2048)/4096.0); // - 2048;
samplesC[sampleIndex*2 + 1] = ((uhADCxConvertedValue2 - 2048)/4096.0); // - 2048;//0.0;
samplesC[sampleIndex*2] = ((uhADCxConvertedValue - dcOffset)/4096.0); // - 2048;
samplesC[sampleIndex*2 + 1] = ((uhADCxConvertedValue2 - dcOffset)/4096.0); // - 2048;//0.0;
if(uhADCxConvertedValue > maxAmplitude) maxAmplitude = uhADCxConvertedValue;
if(uhADCxConvertedValue2 > maxAmplitude) maxAmplitude = uhADCxConvertedValue2;
@ -486,10 +521,57 @@ void zeroSampleBank(float *samples)
for(; i < FFT_BUFFER_SIZE; i++) samples[i] = 0;
}
void setGainPot(uint8_t a, uint8_t b)
{
uint8_t i;
//pull NSS low
HAL_GPIO_WritePin(GAIN_POT_NSS.port, GAIN_POT_NSS.pin, 0);
//choose first register
HAL_GPIO_WritePin(GAIN_POT_MOSI.port, GAIN_POT_MOSI.pin, 0);
HAL_GPIO_WritePin(GAIN_POT_SCLK.port, GAIN_POT_SCLK.pin, 0);
HAL_GPIO_WritePin(GAIN_POT_SCLK.port, GAIN_POT_SCLK.pin, 1);
for(i = 0; i < 8; i++)
{
HAL_GPIO_WritePin(GAIN_POT_MOSI.port, GAIN_POT_MOSI.pin, (a >> (7-i)) & 1);
HAL_GPIO_WritePin(GAIN_POT_SCLK.port, GAIN_POT_SCLK.pin, 0);
HAL_GPIO_WritePin(GAIN_POT_SCLK.port, GAIN_POT_SCLK.pin, 1);
}
HAL_GPIO_WritePin(GAIN_POT_NSS.port, GAIN_POT_NSS.pin, 1);
HAL_GPIO_WritePin(GAIN_POT_NSS.port, GAIN_POT_NSS.pin, 0);
//choose first register
HAL_GPIO_WritePin(GAIN_POT_MOSI.port, GAIN_POT_MOSI.pin, 1);
HAL_GPIO_WritePin(GAIN_POT_SCLK.port, GAIN_POT_SCLK.pin, 0);
HAL_GPIO_WritePin(GAIN_POT_SCLK.port, GAIN_POT_SCLK.pin, 1);
for(i = 0; i < 8; i++)
{
HAL_GPIO_WritePin(GAIN_POT_MOSI.port, GAIN_POT_MOSI.pin, (b >> (7-i)) & 1);
HAL_GPIO_WritePin(GAIN_POT_SCLK.port, GAIN_POT_SCLK.pin, 0);
HAL_GPIO_WritePin(GAIN_POT_SCLK.port, GAIN_POT_SCLK.pin, 1);
}
HAL_GPIO_WritePin(GAIN_POT_NSS.port, GAIN_POT_NSS.pin, 1);
}
int
main(int argc, char* argv[])
{
HAL_Init();
SystemClock_Config();
//HAL_RCC_OscConfig()
// RCC_ClkInitStruct clockInitStructure;
// clockInitStructure.
@ -527,13 +609,13 @@ main(int argc, char* argv[])
Encoder();
Adafruit_ILI9340_begin();
Adafruit_ILI9340_setRotation(3);
Adafruit_ILI9340_setRotation(1);
Adafruit_GFX_fillScreen(ILI9340_BLACK);
Adafruit_GFX_fillScreen(ILI9340_BLACK);
Adafruit_GFX_setTextSize(3);
Adafruit_GFX_setTextWrap(1);
Adafruit_GFX_setTextColor(ILI9340_WHITE, ILI9340_BLACK);
Adafruit_ILI9340_setVerticalScrollDefinition(200,120,0);
Adafruit_ILI9340_setVerticalScrollDefinition(0,120,200);
initAdc();
adcConfigured = 1;
@ -547,6 +629,8 @@ main(int argc, char* argv[])
updateDisplay(1);
setGainPot(128, 128);
//MAIN LOOP - Lowest Priority
while(1)
{
@ -692,7 +776,7 @@ void updateDisplay(uint8_t force)
if(force)
{
Adafruit_GFX_drawColorBitmap(180, 2, psdrLogo, 86,20, MASKWHITE);
//Adafruit_GFX_drawColorBitmap(180, 2, psdrLogo, 86,20, MASKWHITE);
Adafruit_GFX_drawColorBitmap(150, 90, bitmapMode, 40,12, MASKWHITE);
Adafruit_GFX_fillTriangle(126,119,136,124,136,114,ILI9340_WHITE);
Adafruit_GFX_drawColorBitmap(150, 136, bitmapFilter, 47,12, MASKWHITE);
@ -850,7 +934,7 @@ void drawWaterfall()
waterfallScanLine++;
if(waterfallScanLine > 119) waterfallScanLine = 0;
Adafruit_ILI9340_setVertialScrollStartAddress((119 - waterfallScanLine) + 200);
Adafruit_ILI9340_setVertialScrollStartAddress((/*119 -*/ waterfallScanLine) /*+ 200*/);
}
void processStream()
@ -1131,7 +1215,7 @@ uint32_t uwPrescalerValue = 0;
TIM_TypeDef timTimBase;
//TIM_HandleTypeDef timHandle;
/* Definition for TIMx's NVIC */
#define TIMx_IRQn TIM3_IRQn
#define TIMx_IRQn 29 //TIM3_IRQn
#define TIMx_IRQHandler TIM3_IRQHandler
void TIM_Try(void)
{
@ -1174,10 +1258,10 @@ void TIM_Try(void)
/*##-2- Configure the NVIC for TIMx #########################################*/
/* Set the TIMx priority */
HAL_NVIC_SetPriority(TIM4_IRQn, 2, 4);
HAL_NVIC_SetPriority(30 /*TIM4_IRQn*/, 2, 4);
/* Enable the TIMx global Interrupt */
HAL_NVIC_EnableIRQ(TIM4_IRQn);
HAL_NVIC_EnableIRQ(30 /*TIM4_IRQn*/);