From aec4e43ba8f12002244b129c235b7b291758ca89 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Erik=20T=C3=B3th?= Date: Mon, 13 Oct 2025 20:43:59 +0200 Subject: [PATCH] DAC Software Test - Korrekte Software: Nur noch kleiner offset max. -+5mV --- dev/digital/DAC_MCP4728/DAC_MCP4728.PrjPcb | 4 +- dev/digital/DAC_MCP4728/DAC_MCP4728.SchDoc | Bin 92672 -> 92672 bytes .../History/DAC_MCP4728.~(2).PrjPcb.Zip | Bin 0 -> 5917 bytes .../History/DAC_MCP4728.~(4).SchDoc.Zip | Bin 0 -> 60050 bytes .../__Previews/DAC_MCP4728.SchDocPreview | 6 +-- dev/digital/DAC_MCP4728_Test/src/main.cpp | 45 ++++++++++++++---- .../4layer-1oz-jlc7628-1.2mm.stackup | 0 .../4layer-1oz.RUL | 0 .../JLC04121H-7628_1-2mm.csv | 0 .../JLC04121H-7628_1-2mm.esx | 0 10 files changed, 40 insertions(+), 15 deletions(-) create mode 100644 dev/digital/DAC_MCP4728/History/DAC_MCP4728.~(2).PrjPcb.Zip create mode 100644 dev/digital/DAC_MCP4728/History/DAC_MCP4728.~(4).SchDoc.Zip rename dev/pcb/{DESGIN_RULE_JLCPCB => DESIGN_RULE_JLCPCB}/4layer-1oz-jlc7628-1.2mm.stackup (100%) rename dev/pcb/{DESGIN_RULE_JLCPCB => DESIGN_RULE_JLCPCB}/4layer-1oz.RUL (100%) rename dev/pcb/{DESGIN_RULE_JLCPCB => DESIGN_RULE_JLCPCB}/JLC04121H-7628_1-2mm.csv (100%) rename dev/pcb/{DESGIN_RULE_JLCPCB => DESIGN_RULE_JLCPCB}/JLC04121H-7628_1-2mm.esx (100%) diff --git a/dev/digital/DAC_MCP4728/DAC_MCP4728.PrjPcb b/dev/digital/DAC_MCP4728/DAC_MCP4728.PrjPcb index 6c5c8b0..892853c 100644 --- a/dev/digital/DAC_MCP4728/DAC_MCP4728.PrjPcb +++ b/dev/digital/DAC_MCP4728/DAC_MCP4728.PrjPcb @@ -85,7 +85,7 @@ ActiveProfile=YLWLMSCQ ProfileId0=YLWLMSCQ ProfileName0=Mixed Sim Configuration OutputType0=AdvSimNetlist -ConfigParameters0=OP_Analysis=False|TRAN_Analysis=True|DC_Analysis=False|AC_Analysis=False|TF_Analysis=False|PZ_Analysis=False|Noise_Analysis=False|SP_Analysis=False|TRAN_FourierAnalysis=False|TRAN_StressAnalysis=False|TempSweep_Analysis=False|ParamSweep_Analysis=False|MonteCarlo_Analysis=False|TF_Enabled=False|TF_Source=|TF_Reference=0|PZ_Enabled=False|PZ_Node1=|PZ_Node2=0|PZ_Node3=|PZ_Node4=0|PZ_AnalType=PZ|PZ_TfType=VOL|AnalysesDataSavedIndex=4|DC_ShowMeasTableChart=False|DC_PrimarySource=|DC_PrimaryStart=|DC_PrimaryStop=|DC_PrimaryStep=|DC_EnableSecondary=False|DC_SecondarySource=|DC_SecondaryStart=|DC_SecondaryStop=|DC_SecondaryStep=|Noise_Enabled=False|Noise_Source=|Noise_Output=|Noise_Reference=0|Noise_Start_UserValue=|Noise_Start=1K|Noise_Stop_UserValue=|Noise_Stop=1G|Noise_TestPoints_UserValue=|Noise_TestPoints=10|Noise_PointsPerSummary=0|Noise_SweepType=DEC|SP_Enabled=False|AC_StartFrequency_UserValue=|AC_StartFrequency=1K|AC_StopFrequency_UserValue=|AC_StopFrequency=1G|AC_TestPoints_UserValue=|AC_TestPoints=10|AC_SweepType=DEC|AC_ShowMeasTableChart=False|SP_Port0=|SP_Impedance0_UserValue=|SP_Impedance0=50|SP_Port1=|SP_Impedance1_UserValue=|SP_Impedance1=50|TRAN_StartTime_UserValue=|TRAN_StartTime=0|TRAN_StopTime_UserValue=|TRAN_StopTime=5u|TRAN_StepTime_UserValue=|TRAN_StepTime=0.1u|TRAN_MaxStepTime_UserValue=|TRAN_MaxStepTime=0.1u|TRAN_AlwaysSetDefaults=False|TRAN_DefaultCycles_UserValue=|TRAN_DefaultCycles=5|TRAN_DefaultPointsPerCycle_UserValue=|TRAN_DefaultPointsPerCycle=25|TRAN_UseInitialConditions=False|TRAN_FourierEnabled=False|TRAN_FourierFundFreq_UserValue=|TRAN_FourierFundFreq=1Meg|TRAN_FourierNumHarmonics_UserValue=|TRAN_FourierNumHarmonics=10|TRAN_StressEnabled=False|TRAN_ShowMeasTableChart=False|TempSweep_Start_UserValue=|TempSweep_Start=-10|TempSweep_Stop_UserValue=|TempSweep_Stop=60|TempSweep_Step_UserValue=|TempSweep_Step=10|ParamSweep_Parameter1=|ParamSweep_Type1=LIN|ParamSweep_Start1=|ParamSweep_Stop1=|ParamSweep_Step1=|ParamSweep_SweepType1=False|ParamSweep_SecondaryEnabled=False|ParamSweep_Parameter2=|ParamSweep_Type2=LIN|ParamSweep_Start2=|ParamSweep_Stop2=|ParamSweep_Step2=|ParamSweep_SweepType2=False|MonteCarlo_NumberOfRuns=10|MonteCarlo_DistributionType=GAUSS|MonteCarlo_Seed=-1|MonteCarlo_ResistorTolerance=10%|MonteCarlo_ResistorTolerance_UserValue=10%|MonteCarlo_CapacitorTolerance=10%|MonteCarlo_CapacitorTolerance_UserValue=10%|MonteCarlo_InductorTolerance=10%|MonteCarlo_InductorTolerance_UserValue=10%|MonteCarlo_TransistorTolerance=10%|MonteCarlo_TransistorTolerance_UserValue=10%|MonteCarlo_DCSourceTolerance=10%|MonteCarlo_DCSourceTolerance_UserValue=10%|MonteCarlo_DigitalTpTolerance=10%|MonteCarlo_DigitalTpTolerance_UserValue=10%|Sensitivity_Analysis=False|Sensitivity_GroupDeviationsEnabled=False|Sensitivity_GroupResistorEnabled=True|Sensitivity_GroupResistorDeviation_UserValue=|Sensitivity_GroupResistorDeviation=1m|Sensitivity_GroupCapacitorEnabled=False|Sensitivity_GroupCapacitorDeviation_UserValue=|Sensitivity_GroupCapacitorDeviation=1m|Sensitivity_GroupInductorEnabled=False|Sensitivity_GroupInductorDeviation_UserValue=|Sensitivity_GroupInductorDeviation=1m|Sensitivity_GroupTransistorEnabled=False|Sensitivity_GroupTransistorDeviation_UserValue=|Sensitivity_GroupTransistorDeviation=1m|Sensitivity_GroupDcSourceEnabled=False|Sensitivity_GroupDcSourceDeviation_UserValue=|Sensitivity_GroupDcSourceDeviation=1m|Sensitivity_GroupGlobalParameterEnabled=False|Sensitivity_GroupGlobalParameterDeviation_UserValue=|Sensitivity_GroupGlobalParameterDeviation=1m|Sensitivity_CustomDeviationsEnabled=True|OldCfgLoaded=True|SimViewSetup=ShowActiveSignalsProbes|OPTION_Method=Trapezoidal|OPTION_SpiceRefNode_UserValue=|OPTION_SpiceRefNode=GND|OPTION_DVCC_UserValue=|OPTION_DVCC=5|OPTION_DVDD_UserValue=|OPTION_DVDD=15|InteractiveProbeMode=False|SheetsToNetlist=0 +ConfigParameters0=OP_Analysis=True|TRAN_Analysis=True|DC_Analysis=True|AC_Analysis=True|TF_Analysis=False|PZ_Analysis=False|Noise_Analysis=False|SP_Analysis=False|TRAN_FourierAnalysis=False|TRAN_StressAnalysis=False|TempSweep_Analysis=False|ParamSweep_Analysis=False|MonteCarlo_Analysis=False|TF_Enabled=False|TF_Source=|TF_Reference=0|PZ_Enabled=False|PZ_Node1=|PZ_Node2=0|PZ_Node3=|PZ_Node4=0|PZ_AnalType=PZ|PZ_TfType=VOL|AnalysesDataSavedIndex=4|DC_ShowMeasTableChart=False|DC_PrimarySource=|DC_PrimaryStart=|DC_PrimaryStop=|DC_PrimaryStep=|DC_EnableSecondary=False|DC_SecondarySource=|DC_SecondaryStart=|DC_SecondaryStop=|DC_SecondaryStep=|Noise_Enabled=False|Noise_Source=|Noise_Output=|Noise_Reference=0|Noise_Start_UserValue=|Noise_Start=1K|Noise_Stop_UserValue=|Noise_Stop=1G|Noise_TestPoints_UserValue=|Noise_TestPoints=10|Noise_PointsPerSummary=0|Noise_SweepType=DEC|SP_Enabled=False|AC_StartFrequency_UserValue=|AC_StartFrequency=1K|AC_StopFrequency_UserValue=|AC_StopFrequency=1G|AC_TestPoints_UserValue=|AC_TestPoints=10|AC_SweepType=DEC|AC_ShowMeasTableChart=False|SP_Port0=|SP_Impedance0_UserValue=|SP_Impedance0=50|SP_Port1=|SP_Impedance1_UserValue=|SP_Impedance1=50|TRAN_StartTime_UserValue=|TRAN_StartTime=0|TRAN_StopTime_UserValue=|TRAN_StopTime=5u|TRAN_StepTime_UserValue=|TRAN_StepTime=0.1u|TRAN_MaxStepTime_UserValue=|TRAN_MaxStepTime=0.1u|TRAN_AlwaysSetDefaults=False|TRAN_DefaultCycles_UserValue=|TRAN_DefaultCycles=5|TRAN_DefaultPointsPerCycle_UserValue=|TRAN_DefaultPointsPerCycle=25|TRAN_UseInitialConditions=False|TRAN_FourierEnabled=False|TRAN_FourierFundFreq_UserValue=|TRAN_FourierFundFreq=1Meg|TRAN_FourierNumHarmonics_UserValue=|TRAN_FourierNumHarmonics=10|TRAN_StressEnabled=False|TRAN_ShowMeasTableChart=False|TempSweep_Start_UserValue=|TempSweep_Start=-10|TempSweep_Stop_UserValue=|TempSweep_Stop=60|TempSweep_Step_UserValue=|TempSweep_Step=10|ParamSweep_Parameter1=|ParamSweep_Type1=LIN|ParamSweep_Start1=|ParamSweep_Stop1=|ParamSweep_Step1=|ParamSweep_SweepType1=False|ParamSweep_SecondaryEnabled=False|ParamSweep_Parameter2=|ParamSweep_Type2=LIN|ParamSweep_Start2=|ParamSweep_Stop2=|ParamSweep_Step2=|ParamSweep_SweepType2=False|MonteCarlo_NumberOfRuns=10|MonteCarlo_DistributionType=GAUSS|MonteCarlo_Seed=-1|MonteCarlo_ResistorTolerance=10%|MonteCarlo_ResistorTolerance_UserValue=10%|MonteCarlo_CapacitorTolerance=10%|MonteCarlo_CapacitorTolerance_UserValue=10%|MonteCarlo_InductorTolerance=10%|MonteCarlo_InductorTolerance_UserValue=10%|MonteCarlo_TransistorTolerance=10%|MonteCarlo_TransistorTolerance_UserValue=10%|MonteCarlo_DCSourceTolerance=10%|MonteCarlo_DCSourceTolerance_UserValue=10%|MonteCarlo_DigitalTpTolerance=10%|MonteCarlo_DigitalTpTolerance_UserValue=10%|Sensitivity_Analysis=False|Sensitivity_GroupDeviationsEnabled=False|Sensitivity_GroupResistorEnabled=True|Sensitivity_GroupResistorDeviation_UserValue=|Sensitivity_GroupResistorDeviation=1m|Sensitivity_GroupCapacitorEnabled=False|Sensitivity_GroupCapacitorDeviation_UserValue=|Sensitivity_GroupCapacitorDeviation=1m|Sensitivity_GroupInductorEnabled=False|Sensitivity_GroupInductorDeviation_UserValue=|Sensitivity_GroupInductorDeviation=1m|Sensitivity_GroupTransistorEnabled=False|Sensitivity_GroupTransistorDeviation_UserValue=|Sensitivity_GroupTransistorDeviation=1m|Sensitivity_GroupDcSourceEnabled=False|Sensitivity_GroupDcSourceDeviation_UserValue=|Sensitivity_GroupDcSourceDeviation=1m|Sensitivity_GroupGlobalParameterEnabled=False|Sensitivity_GroupGlobalParameterDeviation_UserValue=|Sensitivity_GroupGlobalParameterDeviation=1m|Sensitivity_CustomDeviationsEnabled=True|OldCfgLoaded=True|SimViewSetup=ShowActiveSignalsProbes|OPTION_Method=Trapezoidal|OPTION_SpiceRefNode_UserValue=|OPTION_SpiceRefNode=GND|OPTION_DVCC_UserValue=|OPTION_DVCC=5|OPTION_DVDD_UserValue=|OPTION_DVDD=15|SheetsToNetlist=0 [OutputGroup1] Name=Netlist Outputs @@ -209,7 +209,7 @@ OutputDocumentPath1= OutputVariantName1= OutputDefault1=0 Configuration1_Name1=OutputConfigurationParameter1 -Configuration1_Item1=OP_Analysis=False|TRAN_Analysis=True|DC_Analysis=False|AC_Analysis=False|TF_Analysis=False|PZ_Analysis=False|Noise_Analysis=False|SP_Analysis=False|TRAN_FourierAnalysis=False|TRAN_StressAnalysis=False|TempSweep_Analysis=False|ParamSweep_Analysis=False|MonteCarlo_Analysis=False|TF_Enabled=False|TF_Source= |TF_Reference=0|PZ_Enabled=False|PZ_Node1= |PZ_Node2=0|PZ_Node3= |PZ_Node4=0|PZ_AnalType=PZ|PZ_TfType=VOL|AnalysesDataSavedIndex=4|DC_ShowMeasTableChart=False|DC_PrimarySource= |DC_PrimaryStart= |DC_PrimaryStop= |DC_PrimaryStep= |DC_EnableSecondary=False|DC_SecondarySource= |DC_SecondaryStart= |DC_SecondaryStop= |DC_SecondaryStep= |Noise_Enabled=False|Noise_Source= |Noise_Output= |Noise_Reference=0|Noise_Start_UserValue= |Noise_Start=1K|Noise_Stop_UserValue= |Noise_Stop=1G|Noise_TestPoints_UserValue= |Noise_TestPoints=10|Noise_PointsPerSummary=0|Noise_SweepType=DEC|SP_Enabled=False|AC_StartFrequency_UserValue= |AC_StartFrequency=1K|AC_StopFrequency_UserValue= |AC_StopFrequency=1G|AC_TestPoints_UserValue= |AC_TestPoints=10|AC_SweepType=DEC|AC_ShowMeasTableChart=False|SP_Port0= |SP_Impedance0_UserValue= |SP_Impedance0=50|SP_Port1= |SP_Impedance1_UserValue= |SP_Impedance1=50|TRAN_StartTime_UserValue= |TRAN_StartTime=0|TRAN_StopTime_UserValue= |TRAN_StopTime=5u|TRAN_StepTime_UserValue= |TRAN_StepTime=0.1u|TRAN_MaxStepTime_UserValue= |TRAN_MaxStepTime=0.1u|TRAN_AlwaysSetDefaults=False|TRAN_DefaultCycles_UserValue= |TRAN_DefaultCycles=5|TRAN_DefaultPointsPerCycle_UserValue= |TRAN_DefaultPointsPerCycle=25|TRAN_UseInitialConditions=False|TRAN_FourierEnabled=False|TRAN_FourierFundFreq_UserValue= |TRAN_FourierFundFreq=1Meg|TRAN_FourierNumHarmonics_UserValue= |TRAN_FourierNumHarmonics=10|TRAN_StressEnabled=False|TRAN_ShowMeasTableChart=False|TempSweep_Start_UserValue= |TempSweep_Start=-10|TempSweep_Stop_UserValue= |TempSweep_Stop=60|TempSweep_Step_UserValue= |TempSweep_Step=10|ParamSweep_Parameter1= |ParamSweep_Type1=LIN|ParamSweep_Start1= |ParamSweep_Stop1= |ParamSweep_Step1= |ParamSweep_SweepType1=False|ParamSweep_SecondaryEnabled=False|ParamSweep_Parameter2= |ParamSweep_Type2=LIN|ParamSweep_Start2= |ParamSweep_Stop2= |ParamSweep_Step2= |ParamSweep_SweepType2=False|MonteCarlo_NumberOfRuns=10|MonteCarlo_DistributionType=GAUSS|MonteCarlo_Seed=-1|MonteCarlo_ResistorTolerance=10%|MonteCarlo_ResistorTolerance_UserValue=10%|MonteCarlo_CapacitorTolerance=10%|MonteCarlo_CapacitorTolerance_UserValue=10%|MonteCarlo_InductorTolerance=10%|MonteCarlo_InductorTolerance_UserValue=10%|MonteCarlo_TransistorTolerance=10%|MonteCarlo_TransistorTolerance_UserValue=10%|MonteCarlo_DCSourceTolerance=10%|MonteCarlo_DCSourceTolerance_UserValue=10%|MonteCarlo_DigitalTpTolerance=10%|MonteCarlo_DigitalTpTolerance_UserValue=10%|Sensitivity_Analysis=False|Sensitivity_GroupDeviationsEnabled=False|Sensitivity_GroupResistorEnabled=True|Sensitivity_GroupResistorDeviation_UserValue= |Sensitivity_GroupResistorDeviation=1m|Sensitivity_GroupCapacitorEnabled=False|Sensitivity_GroupCapacitorDeviation_UserValue= |Sensitivity_GroupCapacitorDeviation=1m|Sensitivity_GroupInductorEnabled=False|Sensitivity_GroupInductorDeviation_UserValue= |Sensitivity_GroupInductorDeviation=1m|Sensitivity_GroupTransistorEnabled=False|Sensitivity_GroupTransistorDeviation_UserValue= |Sensitivity_GroupTransistorDeviation=1m|Sensitivity_GroupDcSourceEnabled=False|Sensitivity_GroupDcSourceDeviation_UserValue= |Sensitivity_GroupDcSourceDeviation=1m|Sensitivity_GroupGlobalParameterEnabled=False|Sensitivity_GroupGlobalParameterDeviation_UserValue= |Sensitivity_GroupGlobalParameterDeviation=1m|Sensitivity_CustomDeviationsEnabled=True|OldCfgLoaded=True|SimViewSetup=ShowActiveSignalsProbes|OPTION_Method=Trapezoidal|OPTION_SpiceRefNode_UserValue= |OPTION_SpiceRefNode=GND|OPTION_DVCC_UserValue= |OPTION_DVCC=5|OPTION_DVDD_UserValue= |OPTION_DVDD=15|InteractiveProbeMode=False|SheetsToNetlist=0|Record=AdvSimNetlistView|SimulationName=Mixed Sim Configuration|ProfileId=YLWLMSCQ +Configuration1_Item1=OP_Analysis=True|TRAN_Analysis=True|DC_Analysis=True|AC_Analysis=True|TF_Analysis=False|PZ_Analysis=False|Noise_Analysis=False|SP_Analysis=False|TRAN_FourierAnalysis=False|TRAN_StressAnalysis=False|TempSweep_Analysis=False|ParamSweep_Analysis=False|MonteCarlo_Analysis=False|TF_Enabled=False|TF_Source= |TF_Reference=0|PZ_Enabled=False|PZ_Node1= |PZ_Node2=0|PZ_Node3= |PZ_Node4=0|PZ_AnalType=PZ|PZ_TfType=VOL|AnalysesDataSavedIndex=4|DC_ShowMeasTableChart=False|DC_PrimarySource= |DC_PrimaryStart= |DC_PrimaryStop= |DC_PrimaryStep= |DC_EnableSecondary=False|DC_SecondarySource= |DC_SecondaryStart= |DC_SecondaryStop= |DC_SecondaryStep= |Noise_Enabled=False|Noise_Source= |Noise_Output= |Noise_Reference=0|Noise_Start_UserValue= |Noise_Start=1K|Noise_Stop_UserValue= |Noise_Stop=1G|Noise_TestPoints_UserValue= |Noise_TestPoints=10|Noise_PointsPerSummary=0|Noise_SweepType=DEC|SP_Enabled=False|AC_StartFrequency_UserValue= |AC_StartFrequency=1K|AC_StopFrequency_UserValue= |AC_StopFrequency=1G|AC_TestPoints_UserValue= |AC_TestPoints=10|AC_SweepType=DEC|AC_ShowMeasTableChart=False|SP_Port0= |SP_Impedance0_UserValue= |SP_Impedance0=50|SP_Port1= |SP_Impedance1_UserValue= |SP_Impedance1=50|TRAN_StartTime_UserValue= |TRAN_StartTime=0|TRAN_StopTime_UserValue= |TRAN_StopTime=5u|TRAN_StepTime_UserValue= |TRAN_StepTime=0.1u|TRAN_MaxStepTime_UserValue= |TRAN_MaxStepTime=0.1u|TRAN_AlwaysSetDefaults=False|TRAN_DefaultCycles_UserValue= |TRAN_DefaultCycles=5|TRAN_DefaultPointsPerCycle_UserValue= |TRAN_DefaultPointsPerCycle=25|TRAN_UseInitialConditions=False|TRAN_FourierEnabled=False|TRAN_FourierFundFreq_UserValue= |TRAN_FourierFundFreq=1Meg|TRAN_FourierNumHarmonics_UserValue= |TRAN_FourierNumHarmonics=10|TRAN_StressEnabled=False|TRAN_ShowMeasTableChart=False|TempSweep_Start_UserValue= |TempSweep_Start=-10|TempSweep_Stop_UserValue= |TempSweep_Stop=60|TempSweep_Step_UserValue= |TempSweep_Step=10|ParamSweep_Parameter1= |ParamSweep_Type1=LIN|ParamSweep_Start1= |ParamSweep_Stop1= |ParamSweep_Step1= |ParamSweep_SweepType1=False|ParamSweep_SecondaryEnabled=False|ParamSweep_Parameter2= |ParamSweep_Type2=LIN|ParamSweep_Start2= |ParamSweep_Stop2= |ParamSweep_Step2= |ParamSweep_SweepType2=False|MonteCarlo_NumberOfRuns=10|MonteCarlo_DistributionType=GAUSS|MonteCarlo_Seed=-1|MonteCarlo_ResistorTolerance=10%|MonteCarlo_ResistorTolerance_UserValue=10%|MonteCarlo_CapacitorTolerance=10%|MonteCarlo_CapacitorTolerance_UserValue=10%|MonteCarlo_InductorTolerance=10%|MonteCarlo_InductorTolerance_UserValue=10%|MonteCarlo_TransistorTolerance=10%|MonteCarlo_TransistorTolerance_UserValue=10%|MonteCarlo_DCSourceTolerance=10%|MonteCarlo_DCSourceTolerance_UserValue=10%|MonteCarlo_DigitalTpTolerance=10%|MonteCarlo_DigitalTpTolerance_UserValue=10%|Sensitivity_Analysis=False|Sensitivity_GroupDeviationsEnabled=False|Sensitivity_GroupResistorEnabled=True|Sensitivity_GroupResistorDeviation_UserValue= |Sensitivity_GroupResistorDeviation=1m|Sensitivity_GroupCapacitorEnabled=False|Sensitivity_GroupCapacitorDeviation_UserValue= |Sensitivity_GroupCapacitorDeviation=1m|Sensitivity_GroupInductorEnabled=False|Sensitivity_GroupInductorDeviation_UserValue= |Sensitivity_GroupInductorDeviation=1m|Sensitivity_GroupTransistorEnabled=False|Sensitivity_GroupTransistorDeviation_UserValue= |Sensitivity_GroupTransistorDeviation=1m|Sensitivity_GroupDcSourceEnabled=False|Sensitivity_GroupDcSourceDeviation_UserValue= |Sensitivity_GroupDcSourceDeviation=1m|Sensitivity_GroupGlobalParameterEnabled=False|Sensitivity_GroupGlobalParameterDeviation_UserValue= |Sensitivity_GroupGlobalParameterDeviation=1m|Sensitivity_CustomDeviationsEnabled=True|OldCfgLoaded=True|SimViewSetup=ShowActiveSignalsProbes|OPTION_Method=Trapezoidal|OPTION_SpiceRefNode_UserValue= |OPTION_SpiceRefNode=GND|OPTION_DVCC_UserValue= |OPTION_DVCC=5|OPTION_DVDD_UserValue= |OPTION_DVDD=15|SheetsToNetlist=0|Record=AdvSimNetlistView|SimulationName=Mixed Sim Configuration|ProfileId=YLWLMSCQ [OutputGroup3] Name=Documentation Outputs diff --git a/dev/digital/DAC_MCP4728/DAC_MCP4728.SchDoc b/dev/digital/DAC_MCP4728/DAC_MCP4728.SchDoc index e85e385679e7f6cacdc998da084bb7c7cd81d7b5..aa1fad0b4638afa77d266c3e11f8ca4e061e0230 100644 GIT binary patch delta 840 zcmY+=O-$2Z7zglmaiMO=h#{a3h%yp0M7I$J8)m@PZKb7K*L7Rl1>{4FhD5$WKwv{a zhO&_Oc$1(UJP;GX^uWc7#*17G2`7p1*Fkd*-s@3(1_TR=#>!$u?PEM4o*^Qs42+c}uxZ^r?!ZERh6^aRq?>ZuShcSX z3b;E!G6BW6gE)$zuzmTD+E4j$A4ZXiFUg}ZxM|--0~||G;fPD@svbp9oaF*Shz~PRvWlVHDd#X%=Gz8W&(Kt`i@-#xpen#z%Y+ zHl(^MSOMe-@r?i-ov!`Jvq=Nd}3HeK@F6(-Mm^1QKnWl%MhxBQg@={(U zvL4pPQ=k-k{>~x04ETw3C(&~zkJ54YJ{eE*KTI9)`MY{F5+v(!qK-=PIhdz2lWZ+) zk7@tYJEtZ3t7!^#vcU-Fb&)dL9H)};Sp1aylEWqNI^KNLSqdF9Er(X|$BagaSmE#e z5J DV;VOn delta 836 zcmY+=OH30%7zglfmAJM*8$&=TAW{-jBvMEz4^yD~=wr9f-Im=pAP+GZ5_yAwNQ)FH zN<-pzl&Bm$7!$#4q8Aer;{`5;gm@5*j{`n}5@S3lA-LUA2$z}p{`1XDeiL3z39qIs zt{4@x#m4d!X_b8f1osIg6@`d`uv=J?=BPvlB^5=mR=IT)qb&g!OUl;col@FZy`ykp zc0cYRaM{h5goXd}KG%QCo!aZU10TIP*AeRR7xx9v^ZGWEz6d=gxc0c1hrCBkil^$C|M1B zXgdW9+H~-<1;T~4`BZti9%gL;XzF>0l);m*4s_wu5a?}|ss_mHORTD3v2Q}k3L)I! zga`eJTn8lsw|7sP&X+;%U?R_g{L)N#H27L>sDzc)4p_h9i7)4Cb#Ymbo+jtK2>Kv#ZacGSC zQM{|S^J4E=-efQul10E2e`n;T+)yDtcLFy3DL`M1iFciZ^!8jKWAuwW$*vFWv!^7+ zb7_oowXi&%z$D0X*Z0X~z)vKrI6EV9kZpx;k!X_sesYh_-_W8AZ}WJV03*^lm~*F! zWEE_Tsdm|2Q~T`iQ)0WrZ>KTNDX~kV4zX=4dR+R;ks^2*Z9eEMhR*4hxK;Q$t&}6> z@bA{b;c~s~F1TYkur$NT4OLJOyDv_{tJut2wX5<67J1z6c={r3spZg{FqF<_JnO%N H%pm^(h0r(5 diff --git a/dev/digital/DAC_MCP4728/History/DAC_MCP4728.~(2).PrjPcb.Zip b/dev/digital/DAC_MCP4728/History/DAC_MCP4728.~(2).PrjPcb.Zip new file mode 100644 index 0000000000000000000000000000000000000000..a8184b8c6b56af975d4f0768ad46cb759ab7509d GIT binary patch literal 5917 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

XFnDi$dO(&f>RektZ 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 20) + { + Serial.print("\n\rError: Es konnte nach 20 Versuchen kein IC gefunden werden. Überprüfe die Verkabelung und starte den ESP neu!"); + for(;;); + } Serial.print("."); delay(100); + attempts++; } Serial.print("\n\rErfolgreich verbunden!"); - mcp.setChannelValue(MCP4728_CHANNEL_A, 0, MCP4728_VREF_INTERNAL, MCP4728_GAIN_2X); + mcp.setChannelValue(MCP4728_CHANNEL_A, 4095, VREF_CONF_IN_USE); Serial.print("\n\rDAC-Kanal A auf 0 gesetzt"); delay(1000); } @@ -46,12 +61,22 @@ void setup() void loop() { - value_mV = 200; - bool success = mcp.setChannelValue(MCP4728_CHANNEL_A, voltage(value_mV)); + button_state_now = digitalRead(PIN_BTN); + if (button_state_now != button_state_old) + { + delay(10); // debounce delay + button_state_now = digitalRead(PIN_BTN); + if (button_state_now != button_state_old) + { + button_state_old = button_state_now; + if (button_state_now == HIGH) + { + if(value_mV < 2000) value_mV += (1000/12); + if(value_mV >= 2000) value_mV = 0; - if (success) Serial.printf("DAC A = %u -> mV: %u\r\n", voltage(value_mV), value_mV); - else Serial.println("Schreibfehler am MCP4728!"); - delay(200); - - //value_mV = value_mV > 0 ? value_mV/2 : VREF_mV; + if (mcp.setChannelValue(MCP4728_CHANNEL_A, voltage(value_mV), VREF_CONF_IN_USE)) Serial.printf("DAC A = %u -> mV: %u\r\n", voltage(value_mV), value_mV); + else Serial.println("Error: Neuer MCP4728 Wert konnte nicht gesetzt werden!"); + } + } + } } diff --git a/dev/pcb/DESGIN_RULE_JLCPCB/4layer-1oz-jlc7628-1.2mm.stackup b/dev/pcb/DESIGN_RULE_JLCPCB/4layer-1oz-jlc7628-1.2mm.stackup similarity index 100% rename from dev/pcb/DESGIN_RULE_JLCPCB/4layer-1oz-jlc7628-1.2mm.stackup rename to dev/pcb/DESIGN_RULE_JLCPCB/4layer-1oz-jlc7628-1.2mm.stackup diff --git a/dev/pcb/DESGIN_RULE_JLCPCB/4layer-1oz.RUL b/dev/pcb/DESIGN_RULE_JLCPCB/4layer-1oz.RUL similarity index 100% rename from dev/pcb/DESGIN_RULE_JLCPCB/4layer-1oz.RUL rename to dev/pcb/DESIGN_RULE_JLCPCB/4layer-1oz.RUL diff --git a/dev/pcb/DESGIN_RULE_JLCPCB/JLC04121H-7628_1-2mm.csv b/dev/pcb/DESIGN_RULE_JLCPCB/JLC04121H-7628_1-2mm.csv similarity index 100% rename from dev/pcb/DESGIN_RULE_JLCPCB/JLC04121H-7628_1-2mm.csv rename to dev/pcb/DESIGN_RULE_JLCPCB/JLC04121H-7628_1-2mm.csv diff --git a/dev/pcb/DESGIN_RULE_JLCPCB/JLC04121H-7628_1-2mm.esx b/dev/pcb/DESIGN_RULE_JLCPCB/JLC04121H-7628_1-2mm.esx similarity index 100% rename from dev/pcb/DESGIN_RULE_JLCPCB/JLC04121H-7628_1-2mm.esx rename to dev/pcb/DESIGN_RULE_JLCPCB/JLC04121H-7628_1-2mm.esx