Har tittat på vad som behövs för att använda FSR tillsammans med heatbed.
Johann har som bekant anslutit FSR-erna till ADCn på T1 på RAMPS som normalt används för heated bed.
Jag vill ha kvar den funktionen och tänker använda T2 på RAMPS.
Med MOTHERBOARD == 33 så är T2 redan definierad, den heter TEMP_1_PIN (pinne A15) i koden.
När TEMP_1_PIN är definierad (som den är) så sker kontinuerligt AD-omvandling av ingången i den vanliga interruptrutinen som kontinuerligt mäter temperaturer och kollar max/min-nivåer.
Temperaturen översamplas, Johann tar ut den efter varje AD-omvandling 0-1023.
Så, allt är redan förberett, T2 mäts hela tiden. Bara att se till att T2-värdet kommer ut till touching_print_surface()-rutinen. Då väljer jag att istället för att göra det ordentligt så gör jag en snabbfix och har kvar Johann's namn på variabler och rutiner (som heter saker med "bed"). Jag ser helt enkelt till att värdet tas från TEMP_1_PIN istället för från TEMP_BED_PIN.
Rad 1141 i temperature.cpp:
Kod: Markera allt
#if defined(TEMP_BED_PIN) && (TEMP_BED_PIN > -1)
raw_temp_bed_sample = ADC;
raw_temp_bed_value += raw_temp_bed_sample;
#endif
Kod: Markera allt
#if defined(TEMP_BED_PIN) && (TEMP_BED_PIN > -1)
raw_temp_bed_value += ADC;
#endif
Kod: Markera allt
#if defined(TEMP_1_PIN) && (TEMP_1_PIN > -1)
raw_temp_1_value += ADC;
#endif
Kod: Markera allt
#if defined(TEMP_1_PIN) && (TEMP_1_PIN > -1)
raw_temp_bed_sample = ADC;
raw_temp_1_value += raw_temp_bed_sample;
#endif
Tycker det borde funka. Det ser jag om nån dag eller två när jag testat.