From bd80e3dbf7fbc0fcc43502e68d5cb92ae4ab1125 Mon Sep 17 00:00:00 2001
From: Tristan Krause <tristan.krause@stud.htwk-leipzig.de>
Date: Fri, 29 Mar 2019 14:54:38 +0100
Subject: [PATCH] Jede Menge Kommentare

---
 Makefile         |   2 +-
 drv/b15f.cpp     |  49 +++++++++-------
 drv/b15f.h       | 142 ++++++++++++++++++++++++++++++++++++++++-------
 drv/b15f.o       | Bin 28288 -> 31024 bytes
 gnuplotscript.gp |  34 ++++++------
 main             | Bin 56416 -> 56816 bytes
 test_plot        | Bin 256 -> 1140 bytes
 7 files changed, 169 insertions(+), 58 deletions(-)

diff --git a/Makefile b/Makefile
index 39e260b..e9a3e0f 100644
--- a/Makefile
+++ b/Makefile
@@ -14,7 +14,7 @@ OBJECTS = main.o drv/usart.o drv/b15f.o drv/plottyfile.o drv/dot.o
 
 COMPILE = $(COMPILER_PATH) $(CFLAGS)
 
-B15F: clean $(OBJECTS)
+B15F: $(OBJECTS)
 	@echo "Linking..."
 	$(COMPILE) $(OBJECTS) -o $(OUTPUT) $(LDFLAGS)
 
diff --git a/drv/b15f.cpp b/drv/b15f.cpp
index f503a71..67b041c 100644
--- a/drv/b15f.cpp
+++ b/drv/b15f.cpp
@@ -10,13 +10,23 @@ B15F::B15F()
 void B15F::init()
 {
 	
+	std::string device = exec("bash -c 'ls /dev/ttyUSB*'");
+	while(device.find(' ') != std::string::npos || device.find('\n') != std::string::npos || device.find('\t') != std::string::npos)
+		device.pop_back();
+			
+	if(device.length() == 0)
+		throw DriverException("Adapter nicht gefunden");
+		
+	std::cout << PRE << "Verwende Adapter: " << device << std::endl;
+	
+	
+	
 	std::cout << PRE << "Stelle Verbindung mit Adapter her... " << std::flush;
 	usart.setBaudrate(BAUDRATE);
-	usart.openDevice(SERIAL_DEVICE);	
+	usart.openDevice(device);	
 	std::cout << "OK" << std::endl;
 	
 	
-	delay_ms(1);
 
 	std::cout << PRE << "Teste Verbindung... " << std::flush;	
 	uint8_t tries = 3;
@@ -197,34 +207,19 @@ bool B15F::analogSequence(uint8_t channel_a, uint16_t* buffer_a, uint32_t offset
 	uint8_t aw = usart.readByte();
 	
 	if(aw != MSG_OK)
-	{
-		throw DriverException("Out of sync");
-	}
+		throw DriverException("Mikrocontroller nicht synchron");
 	
-	//uint8_t block[5]; // 4 Datenbyte + crc	
 	for(uint16_t i = 0; i < count; i++)
 	{
-		/*bool crc_ok = usart.readBlock(&block[0], 0);
-		
-		if (!crc_ok)
-		{
-			std::cout << PRE <<  "bad crc" << std::endl;
-			return analogSequence(channel_a, buffer_a, offset_a, channel_b, buffer_b, offset_b, start, delta, count);
-		}*/
 		buffer_a[i] = usart.readInt();
 		buffer_b[i] = usart.readInt();
-		//std::cout << buffer_a[i] << " - " << buffer_b[i] << std::endl;
-		
-		/*buffer_a[i] = ((uint16_t) block[0]) | (((uint16_t) block[1]) << 8);
-		buffer_b[i] = ((uint16_t) block[2]) | (((uint16_t) block[3]) << 8);*/
 	}
 	
 	aw = usart.readByte();		
 	if(aw == MSG_OK)
 		return aw;
-	
-	std::cout << PRE <<  "Da ging etwas verloren" << std::endl;
-	
+		
+	throw DriverException("Sequenz unterbrochen");
 }
 
 void B15F::delay_ms(uint16_t ms)
@@ -236,6 +231,20 @@ void B15F::delay_us(uint16_t us)
 {
 	std::this_thread::sleep_for(std::chrono::microseconds(us));
 }
+
+// https://stackoverflow.com/a/478960
+std::string B15F::exec(std::string cmd) {
+    std::array<char, 128> buffer;
+    std::string result;
+    std::unique_ptr<FILE, decltype(&pclose)> pipe(popen(cmd.c_str(), "r"), pclose);
+    if (!pipe) {
+        throw std::runtime_error("popen() failed!");
+    }
+    while (fgets(buffer.data(), buffer.size(), pipe.get()) != nullptr) {
+        result += buffer.data();
+    }
+    return result;
+}
 	
 B15F& B15F::getInstance(void)
 {
diff --git a/drv/b15f.h b/drv/b15f.h
index 132c4c8..4a12632 100644
--- a/drv/b15f.h
+++ b/drv/b15f.h
@@ -21,25 +21,49 @@
 class B15F
 {
 private:
-	B15F(void); // privater Konstruktor
+	// privater Konstruktor
+	B15F(void);
 public:
-	// Grundfunktionen
-	void init(void);
-	void reconnect(void);
-	void discard(void);
-	bool testConnection(void);
-	bool testIntConv(void);
-	std::vector<std::string> getBoardInfo(void);
 	
-	// Board Befehle
-	bool digitalWrite0(uint8_t);
-	bool digitalWrite1(uint8_t);
-	uint8_t digitalRead0(void);
-	uint8_t digitalRead1(void);
-	bool analogWrite0(uint16_t);
-	bool analogWrite1(uint16_t);
-	uint16_t analogRead(uint8_t);
-	bool analogSequence(uint8_t channel_a, uint16_t* buffer_a, uint32_t offset_a, uint8_t channel_b, uint16_t* buffer_b, uint32_t offset_b, uint16_t start, int16_t delta, uint16_t count);
+	/*************************************
+	 * Grundfunktionen des B15F Treibers *
+	 *************************************/
+	
+	/**
+	 * Initialisiert und testet die Verbindung zum B15
+	 * \throws DriverException
+	 */	 
+	void init(void);
+	
+	/**
+	 * Versucht die Verbindung zum B15 wiederherzustellen
+	 * \throws DriverException
+	 */	 
+	void reconnect(void);
+	
+	/**
+	 * Verwirft Daten im USART Puffer auf dieser Maschine und B15
+	 * \throws DriverException
+	 */	 
+	void discard(void);
+	
+	/**
+	 * Testet die USART Verbindung auf Funktion
+	 * \throws DriverException
+	 */
+	bool testConnection(void);
+	
+	/**
+	 * Testet die Integer Konvertierung der USART Verbindung
+	 * \throws DriverException
+	 */
+	bool testIntConv(void);
+	
+	/**
+	 * Liefert Informationen zur aktuellen Firmware des B15
+	 * \throws DriverException
+	 */
+	std::vector<std::string> getBoardInfo(void);
 	
 	/**
 	 * Lässt den Treiber für eine angegebene Zeit pausieren
@@ -58,14 +82,92 @@ public:
 	 * @throws DriverException
 	 */
 	static B15F& getInstance(void);
+	
+	/**
+	 * Führt ein Befehl auf dieser Maschine aus und liefert stdout zurück
+	 * \param cmd Der Befehl
+	 */
+	static std::string exec(std::string cmd);
+	
+	/*************************************/
+	
+	/*************************
+	 * Steuerbefehle für B15 *
+	 *************************/
+	 
+	/**
+	 * Setzt den Wert des digitalen Ausgabeports 0
+	 * \param port Wert für gesamten Port
+	 * \throws DriverException
+	 */
+	bool digitalWrite0(uint8_t);
+	 
+	/**
+	 * Setzt den Wert des digitalen Ausgabeports 1
+	 * \param port Wert für gesamten Port
+	 * \throws DriverException
+	 */
+	bool digitalWrite1(uint8_t);
+	 
+	/**
+	 * Liest den Wert des digitalen Eingabeports 0
+	 * \return Wert für gesamten Port
+	 * \throws DriverException
+	 */
+	uint8_t digitalRead0(void);
+	 
+	/**
+	 * Liest den Wert des digitalen Eingabeports 1
+	 * \return Wert für gesamten Port
+	 * \throws DriverException
+	 */
+	uint8_t digitalRead1(void);
+	 
+	/**
+	 * Setzt den Wert des Digital-Analog-Converters (DAC / DAU) 0
+	 * \param port 10-Bit Wert
+	 * \throws DriverException
+	 */
+	bool analogWrite0(uint16_t);
+	 
+	/**
+	 * Setzt den Wert des Digital-Analog-Converters (DAC / DAU) 1
+	 * \param port 10-Bit Wert
+	 * \throws DriverException
+	 */
+	bool analogWrite1(uint16_t);
+	 
+	/**
+	 * Liest den Wert des Analog-Digital-Converters (ADC / ADU)
+	 * \param channel Kanalwahl von 0 - 7
+	 * \throws DriverException
+	 */
+	uint16_t analogRead(uint8_t channel);
+	 
+	/**
+	 * \brief Komplexe Analoge Sequenz
+	 * DAC 0 wird auf den Startwert gesetzt und dann schrittweise um Delta inkrementiert.
+	 * Für jeden eingestelleten DAC-Wert werden zwei ADCs (channel_a und channel_b) angesprochen und die Werte übermittelt.
+	 * Die Werte werden in buffer_a für Kanal a und buffer_b für Kanal b gespeichert.
+	 * \param channel_a Auswahl des ADC a, von 0 - 7
+	 * \param buffer_a Speichertort für Werte des Kanals a
+	 * \param offset_a Anzahl an Werten des Kanals a, die im Speicher übersprungen werden sollen
+	 * \param channel_b Auswahl des ADC b, von 0 - 7
+	 * \param buffer_b Speichertort für Werte des Kanals b
+	 * \param offset_b Anzahl an Werten des Kanals b, die im Speicher übersprungen werden 
+	 * \param start Startwert des DACs
+	 * \param delta Schrittweite, mit welcher der DAC inkrementiert wird
+	 * \param count Anzahl an Inkrementierungen
+	 * \throws DriverException
+	 */
+	bool analogSequence(uint8_t channel_a, uint16_t* buffer_a, uint32_t offset_a, uint8_t channel_b, uint16_t* buffer_b, uint32_t offset_b, uint16_t start, int16_t delta, uint16_t count);
+	
+	/*************************/
 
 private:
-	uint16_t timeout = 1000; // ms
-	uint16_t block_timeout = 1; // ms
 	USART usart;
 
 	static B15F* instance;
-	
 
 
 	// CONSTANTS
diff --git a/drv/b15f.o b/drv/b15f.o
index 80956dfa059134caec3fb7df4484dcee49a22499..d0b1584fd82be174df6e9b3e685e68de735fe5fd 100644
GIT binary patch
literal 31024
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
U`)Th}sQ&OKv;MK1!rc1*4};>2k^lez

literal 28288
zcmchA33wdUm2S0KvgHMp41`g_;<nQUDKSFr1xsvEOKQ6sw{2lr#$ZgV-D+6^Nv*W1
zy|4r^l8h_uCeCECkU#=2VKRBimq%tYhVa0VV<VB5HyMXX0tsYr5*9mRF{^nYp!v_O
zdt0ZgyE0CO@7?dKu3P^-+uhDR_g2ZiEfiT<;_+xId9*9E=_iHa9-GcLifp5Hv9?^$
zR^pj>=E?i%xSxUROk5w5*x%q@h3mue`CQ!3lll3$`(%Cr?h9r90(q~-y+-CghWp25
z{zBYqaq$$~7;Fzd>ID?s&>pt_)D|8-Txtxz<TEl?<JwVWWG^TBP9syghy)u}i@z!`
zc8owHyIkC?Lk}+#MH4n`J!@FM7uha7Nj1{+nlt^Ar|I)GfezP~rYjBWKMd<x`}v(I
z^M#1@;-lptm3;F@h))Z=4O~LW(+JUP=K3d3*JZiQUrb)((953mnBoph2};YhP~`7A
zK%D@BgMX;XF0O3U_rF~83sHjXTZ)n0gVwkx4i3FPm7djDe@q{_3lf4*q>r9HH8u6a
zYCH-O!+Olfmf=YYJYi&SEvL#(l={yHU|1nET&N27a+@}Drk@^UYof^nqhY;jSnX90
zC;ByQqS3b_k?PdvX<b&UUs34u8Y|H)ek0Qk1)<9E(h^7(?QIK|-DCIQ!zDT6GPVMn
z)W|d*GctFVoFLmqpEgrNH`i<C<@$laX4&_$Myhk=J%e%3X)LuzMS6uXeAu^nOYpkj
zmf-b=RL2?_uQceuY!aVotTP&pnBPSC)Diu_iOG9}Y^ebCJ*2YoZjX<BUA3yeF-jxZ
zZKZ8usGx7eP_=$vba?9X8}rAHsJ32H`d5q}Bfq+{RCR5G^XxOM_u2we#_(gMq7r#S
z4xK7S9Sym2D)s$O*ZjL6()YiCB1h$44O)i<6dd}~l>YZWs((uV`?1Xnj-ZtfsrG1Z
zgF0Iqn!+AXTqC4fhYryEwuQ$JS-+-{)idVl&^iwOalUczoeOJ@^o+H)!)YASAAH*S
zk32K7XKvOX9BcRyRHM%2o3|X=*Twn+`m@ne>#YOSwq$|odYVHjukM$j7SmGn`7N53
z<Dc=@@eB0_W)ib>Cb(}tj%RHj^}k(S?pmJHKZ{71{rZD{)_m6fcKyZp{%`Qlap*@i
zs0r=9K*LkDw%GOJ?H{~4xY7DCeE5d2HDy;Ol3j-3`BF7FFlak0(_emIu4sS_{>q3o
z*WUscKDQ;)>+f#KbovL7*=cyjgku-#^!;D~w|HoQjJbFS>ibU!Ajnz<`8O3IgB5hy
zR3tMO?g@JJ(bM2<yGCC&L&Gn7BG6g2HtS!aKL|hB+f=f~^RE%lTUZ~!iWR6NJp5RR
zU3Kf(t|07vUpyfjdOy<eeEO+r73p&@E~_6RU#|R5Fq)emVJu_e>1E88IlXM1CE7)K
zG_UOozvH!i;mi8Sr%^t1EBxUF`hj$_QfkN<MvC)vHo|^6i!<cqg)h!?eUE^^c76ZE
zRtsg&M9u?B->eGkzK|{Q*t8wCGBzLE(DOd0H@y9YsVPk}w;0yz#t;7OWZUoW|H@$>
zmT2SPAH0Tj#5nm|<Vp<->rl@V$KWiCnqL|{Z#OpSs1L@%<QZLRybBYGuHOz1IYW3z
z+dZD5eV0S0(2kW7?GD|)x7D9H?O*@9`f0vIvY#rY8FPSEM9i7nU)n?3CdiB6wyIp*
zty?e&CRS0fh9F@IZ8~>RH4#`5|IWaVg(1MjJ!?#jjO~f|XX+zYVjvpX7Jq9bYx+BA
zQdQEUPfV|_eTriQk%{SVH6~j8n@GbrW~!F$o=PvA>?Oa|vS)D>wP-75OXJXcQxU7v
zziGUs%A=VPB_oI+gGh|bb^c8c>ttuciAXl?G0SMqb%Yy!zWqTXbBn(+D5gi?#|TE0
zdnd-pyY`WQawD^;+_-d8r9SdJRS-eI^+vWC5t=sw2LbuL{!J0<sNp$g&RR42oIdgv
zTFw}LPdBVyzfZqog1Cm?^I*BxNB@WiIEyp=dk~zUm|_6y#`5vfYOMcC+3+DW2$aIO
z)=0xibCYPsp<e$?kG{XfKNBm(=+EAtLbdG%zHG`mq>mmZJsC7V;ttsvBvBvz2P(Mz
z@E+V8^D$rKryz3j+tj|oDPbO~_Bj4Y#Bbz(GA6=XG?P8!hzypZ25o4LKSZn-a&uqS
z?f85!PLEGx6kcO4pvfbc%TzxZ<Vk^|o?_-lvYq}q@n~e0!*Glm5#J(oY|-~0dYA?t
z0-Ri^EeeAVoeMbd#B^93$@cnN!`XJ2w}H9}VPtEi(eN{U<YkhH!3xkoX#}G&W1yI#
z(TIPOVO1IvjpZQH#v3c4T|`F_)E^8OP%2K1Sg(ob)blIq{I~Uymq_mLyXgGu{M9=)
zA?q=3#-K@eQU6v`Gz#|(jWQy&`}kF}Ojh<5e;r(WWu)On1v#9Z^q`nO)qy7@(*_8p
z7#R_<Vf{K{y{-CT^3xb>Gxmh4CU1X3Pc~NSHJC}qDH@mU?^Gro^zjai1&V~MLu75v
zHVnsCO?yF@97EycPxGQ+JC@EFg&~d+Oqzy&gjRo2ADIQQqWJjKds9>U$lutj^Ly=W
z;cOr6t-2k1D=`xCeD<bXuZxlK@FLNbhg6-_=sckP$b&An+iOkc*7`6!P34+Qx{<t1
zUBr4P;yFRRHl>fuK=+1+-`C0QRO)wpzf?S8<MJ!`do<z9JuUu5!A}(R80k&prFA*!
zR8MD17H%&hdCemR6fLRY%-u8P_Cg=|CN$F)Lm&AHG_!4nk-g3@`$4X+*yzYDU&LQI
zSwZtwG;PuKC!A@=N}pC6)}Zk2c1PKUhONU7(-vE`qT1P^0fUc}qd*Yr^M{bdzCpEX
zZnuSjRXI6Nmb=>#9C``+PQ~rI?*suh0WDd7Wk}!uT(IWnLLxc>0hOEp(|7cZF3N{)
z@#}DnYvF%e>W}K9A!LfE5CK1S4@y)xez?W@9iEEE{lS{UA^pMUTC5j@62;Y=J+qTy
z|0DY7Z?LL`MlktbA<tjf@iw2_SBf70j_h%`!+!w}1yTCQuOUVRQhc1q&W>2GsB!J+
zN?W+C^kEsX!AnY=w7{ZbnO3YO(w|CF3^eNOBBXFq1HL@5V*62))&Ol|9xa8Md2&No
zHX4sbGT$hpQ7%@<IjD0Gy+yS?3k*U1faz~mEvtqgEs$8|G473q-<S)<`g5s4OK-!3
zd7Xh((pKE?oAe7d8P?`pXin~SQ*H~ckDdoTh`PGj5(tMa=CnR?{-36%jz0_Y5X!X>
z9adn7{mkSy#dC1@6%U<j=p*OBfgL{vYSkOXH}U#N$fgm|?D2Z>AO~*o*jFDZvt6#u
z@ebUhnu6gBPB99jWqsr)-~f@$ae&y#Nd%q%rdDpblEdH83fLI2UXNJss|Kd!3_co#
z#}~aT9dn*PS8fe1oGnNNi#6|m(e?76!m)D6paF52iXY@0w)qS3eY7?h4;}M*G^|)+
z1DC9hWVacH^{%}eo%ztpE$A*pr9)T+##dF&HmqdT#H#AeO@ZZIR;bi?=%UWV_KQq&
z*LY}#4}?C7W5-urgy>;gy<x2~f(SCp+uNGzP}oR2!SPiaY-fkjf*m~_+8|W9xjt+?
z#u_1WbCrR$&|bD9vLa+JLT1|NW+)U9(c<YO$FQD~qR3DGkfK^y>qFBOG_p5VQ&^de
z8?s)_cD<UZUN=@vG>dwn`HEGo*{)hMRV|LHHS?-9+f{2;RkLjK@+|u=Dhag*a(1g4
zQzfU9b>h(U19C=YRXImw7==@rcMWT%k+}^4S2NmiLd81jbV5ow1$x<v&mO1-kA1YE
zX<K81J@M$End<4^cF85tHPLvoA5ZDH>FZDT_WJshrf++!x2H4DTKFLmjkFutWR<XS
z_$7GHWO-inQ63nRW*MVc2C=F6GNeSZJJ81`!`7R&LBsFp7%zrZ>fdpRG5n4v-HXKw
zQGXi(wC2k37Oeg>@gQ2A5w6EDsZ`GCkn}^=3pATg%1T0BGe#D?frVDHUX6&D+b$$D
zb7T4By&`@e9W%c;`5U_=Z#5~Hds9=MIbZS^M?Kmr9ubmIlWa_+w)XUQru(<~()}hL
zQptFCqJOb(&`k99CVZ^CKauuzCsLRAh_9`nxUa|b1v_H{5JF_NwY5Yz%@2Wtrmri}
z-McL@81L?lZA<jm`qn1WfQ6pHo@BqTr_UGa=^u=lH+@1|w_015Hhsx1-{7wPxYiQ$
zZ9^~n66TKBpl^F3)tgM=P<T<N)|8B;I(^~(uB4EkNOi}0yUa^`@nmPhr)^LQWJQH#
z!Hw&ED|=FXJ7TGva@5S1?!!-ecgj~SULC+2dFIvs2@A^mC1sy3)1LJH6nTJ^>t4jl
z_Jp_Wb+2~JE2fw>^_4}QvpdkVcbApjKg09zjIy81(8gy_{+ASXf>R{0UmE_zWT`gc
z3I3#9`zLQ1@}Da`2l;nPLHEyPW#28={%={?<V@}UnN;|_nRj~bEZ4@%%RmG6%Nqik
zcF0rqwK>{bo-wTNhiClS^X44wz${GL`(|H&>~Cf#H0@V&%J$CHUY%2=X?M&m1N!B;
zkPiW~ca>Ql?b|dC@T6ae`!_sgIFfx?4h_5mdEKynX;}Zqu%0Jp*M^rOI3b{cMtk<r
zR=DYimEDA!dA?pV+JTH-lN}JZ_94Ay%Rap(aj#y}_kdoL9@A@XJ;El}Xf^0)daXRq
z$Yv|?U<@BUF)>OxA5=_?o{3x?az@QzBO9uu?HzVnqg6zj9j(JHJpB9#AU<T_qk>aU
z81bjXB5!ZX?kOi4nwHJ9HA~-$Y1ys?_uvrD$UI8=F(WS%M;T%4;IJ{Tf;&B$zRt)d
zj%}v3V9O!4pUwUY$rCHCoQ9uQ3c^@#;XSY$L*%B;&}{XXtCOF#=jqetp2=SeR@6$p
zWim2JO!N5^^?cNhM>4s%XK{Yq6V9CDrz43)@Xq8s#2IMrJW9neKb(A0$RP^uk7@rE
zwockxus5-CS??Lv8(6>Ujf~DZ1{+s&3!Hhl=HHB($8joNW{i&MBj;f7MzV`>vT{t{
z{TU4X@Wf+B?Utu-L%qR4E^Ljj@tlm%v5}bwXLq2rOTyNQNaiNEO^QOSad8F|@w{)&
z60*NW;)bWNCA)=AQGN?mc*K_MY7~&~L}&<U`hIQCDiOq#N35M_HblJGo7ID)9d`Xr
zADK_|*(-f?JdtgxG-`f|DjQjI3ATW*hY!A5HhHl+zcZ}abVguZ34z8txFg?q0tW%_
zQ16UG&hVHIn^^>h<K_}$^a=A7NQUuXGfo%{kEb8SHe1u@HC0YNig-2nD9!Hh!RO14
zA4hn$FFZWq2_Jm13{7Dl1WfpZiNi#djre``NUg#2dh*Jwxeylq(I5+#sr4Y=zI@xr
zTxQ?GLi-Ln>@%{fa4fZ@+&Fl&EbN(xWD;7q;Tf}9wMRH}ncp@EOZ0l2OV|;2q~Z7J
z=fEez8#Iv}*sby4wO|^v1xG08h3eeW7P0zp!u<g1h$XIGEpa%8MtdCgL1Frfli!o$
z96gGz@%wT|8+6!iA2ZD`tc~awoIp{l<farB(Fg{D&&XigfzCgE0->|qhZ+xIFjATs
zZg@<;<9d{=!4cHx4d{$e;O*l*g0xXvW1T#HBQS9m@BlzDj3)oip3_nlb_-^WT8!<I
zyroqJy(+dv6TtF%<5HY3nnwiv<d4w?Jjr020!CY4=5i{Q!M@r_B1jX{nseIu!19(<
z57xZU&Uj+L#7bF6^1&ecj(E8sI{T(Hy^i~CjP>{X`g`KtrZ1Hkh^2ZGDbpv2=x0@P
z^CiCO_N|B}(!Le7OKa;cT(Tl99s{2W)YsN6tFd95gAO7nd2U*-d3IKM&YnB7d>^J#
zC9rcuiKZ!o2%{x|5*93xu(D~`#)(uzzeYvnaLIKQ<;YT52QEq%(~l_Y5oJoY=cd+(
z&^+@iL~*v#Pcr?4AiaSLYpkX<RaD+t(o|8E^)^-b_Lc@Ks&|)#D(Z%3tg2`%>7QLu
z2P9bG0|h9XD#};Q5w`UbFVg*RPYyXoPEHHSF)CWU%Ss9b1?Nz`7n6%Y`U3qx!`_l$
zMb&O^sKPf~8i55nXIJ=u1cmP49IYB;9g?RzpQnX*N;X$iH49?9u6rfzAkjj~ZjwLj
zT~pyJi3zd6igId`?@PLde7bcNzJwwZZTHM6&`}@Zb-hSuOL@a3?YaK*xs;I|m&vkv
z$tUfF9i4f0be<yJUP-sKK;EW`s+NjMRA1|4ddons`tvh1F7EWAU9+W471evo(4V_!
z1S{%?XGSVIN?x8_QNL1*4~(4L_z2G_iJ>4^P!O8qgPwEb!2i6oXSf7HORU+#67(<8
zG)kIu9!*b<hT5r9(p*RVA^J6P+Kf=vySH?>tmKW^m~pG;(040)C0&AKO^+`zRxq~Y
zz*;-!DwPFUgf7YVN!%Unfw5W89#>Wjc(27EFH-NOIjxX)x0IKJFo(RAIeBPJ*}khP
z#ys8$Pf>v(dYw!%Pe_^balqw}i5@Ai(WtoB<BgUUm5G+e*u&K#1Zmm>$Savy8V7s5
zt1EoF$v+I2twWc^XA8f8*<||#NFbX=B>(G${O}@@A6?!Gc636HJv66euLBY`(Ohbk
zj!}Hyw7R15dNGqw;F4%alxnZxwP<1TYII0an7mp=Aqd2)*=vQf&?~&T6D4~3@~bd;
zHTn{)FnPt7Va0Gd3@uDvjlLc$OkVLdSuy-0g&+{GCOlI?nK!pW<rjH1dq0?uk{tSC
ztuT4D1%)6GulCUboIbB8VYujLV2g2i(EhaUQKEiT$*V0=*}S_~yCCmbJ$S{+p`NDi
zUhQMk4=m>u+8H3TUhTp{5QsOoisu)5HSB5~=~D4r*e{I&r&{Nyka%2NFygM1xG$ev
zTPN{42fjf(7xw!#5_gXD>m@GTOio%{;^*fOJ0sR(j4KhdurfQYD;&>aP1Zi5iM5W=
z?-Kd5wN(tG>}?Xi&Vi3g+?F?8n34F-X-MQgD{))ibm138_9I%yG$eBOh+k(bXxe^(
zONYmJekStt)}b(YwTlWtAl|&uJx$`p%qW(;;3$^7w%0Bw^5&w;{35UBW+$CA7bb6R
zHs+UkwORRqeDZ2Ey9<+7qZKDV&Bp{^$VR!U;Uxl}_N#I^(5@Evv|m-@ZUFcKHm@mW
zq_i7&rJc?Dz1s!<x(ogw@P*8uE4@bquA+Y#pF`7e7dfv9`e}duhO}xfx_m*&w4YJ_
zuNrtU`!90A2VL-+T=0ww{*NyB87}yPz!$Q0O4aKL;HR_om-Y^n=+v=Ty<T&{KY@W!
zjDC#^e!UCc?SkLog5TqU|8Ez3%mqK_f{(l4PrKl60$;$^HHwue&4x=V);?#s;0s;w
zW*2<33qAmx`u73ZuVPOJdxj<63VSKp>x8C#RpQi6l$8J8?;`&vF8H%jP9yG=#2ya!
z|0nSw2Yv<|2-!I%akU~YmiSQz9+J3np=!OlUgC|oQ&RX2i4RG9sa>qyDe*Ch(_V|x
z_a%Nrx?Hh00{*zf2c!cK`yt@Z0AI-BF|h{%-VRs3ki}yOV3fY@g1;v41vU|WX|F?R
zH|!`je)hWHUv<I1<AOf|oZA0{tQYNxC_Ups|54Btv*$t=d^>QG-yuFQ(KOm0QQGZ7
z|1}r<4^qz188-g|_DwtKf|p_mB)xTV37|a?r4Qqp$Mz9m7wH_(7pvDY7d%3^95Ygc
zxLxBy-vxXDi-*-pd5a7E{Vuq+6>p<!;{yX)bX8<sQ!o;Z4yLz8!_nxqYnS0o^~!p@
z-7;hS@kB_AUfX6y>Z8$~WKVyOsntfB1N5_mewNbDa{9TLewNWsJ^iepp9cB~)X}f_
z2?)l3;0y@bfZz=X=78V{EQP|g1?Pw@%R}3X7BnvpwXTj+QJZ=3_C(xFrozash(_Z(
zcLoB1CH&QEINoLk0`cxxDr%-;J?3CI9%_r>Cq%cl<<U?`DO%lTE{~hL1`;T(?@UH_
z^mHcrLqgH&0_&FT=#H5#2DU5_1sgUNaOK*5-O811p$*Xu!KO$kimG(>wu;KOnGFeb
zkSfI#X_<hV;yO`4!upCg-4fAsEmzm35?!^?=(e3ZqXUW5V6q=?qRm~=?R6U7QTO8I
zrD)y1v`HK2HFqizGZUfpeSKPAqAxzMOT$1jWAPiK@$MU=U9p~C$VQ(uM5AVRD!C)t
zo7{#M<%v`(nG)UF-oFFyeWU9WgXz9R@md7b01yMWA(g<p^?nQlQTsM?Sv;9GZ7ml^
zqe;{#5$lU$c;h^{*mwx7hdoQ}Q6s6t=$pD|sO{ot>*}_pQL=e$TXK0<Z+ftsw2;01
zN!T8bi8Js1SbuV`H<7^Xx_0gI_O{^q4S^N$-b5^g7sUf<vnk!xg)?%|$98eUj#Q7C
zXxfFg>SjzA3#M>C=P`TG5QC{$f9Et|J?hjcxXGIM&R8_oE38RGa{~y}8^T4#pdc5G
zPx9K5OQB4Tb2bG6OVOKR4xs6JRNDs7qISP+jde!ju|ZSm?@A@|b=z)bMQ6`o9B;wx
zx{D4AETcE>&32#RjR7wTP*J#_O1Jaosu#_Lf)MqrY~mHv2!x4twPi2u?Ag|1#(J-&
z=B=~awn#~Umn@My>mkmbLbmMzULYr(Eo(^(GbXuBDiJ0X76fct?SeX+gH&+U%WSwU
z@yT?8d~bKFc|&(wUGxTXa9V18XQDT@E7~{61WGI|F-)gz{b}I=m!OA|(Vh0ECx4Y^
zgm>H!ZC%;ZiaF4S2~Zzx#b}6bk41ZX2F<7$+ZO6;Yl_|^hR+A%gKd}jL3wo9S0Bv!
z5LkhUfRRS?OL>ti*RK|9M`-(6*7ER|{mE2ctT&3Wmx|HC)C#h;6|~9>tlL1IzJCW?
zvzUQf6ZmQbQ^<_N0SF|Okh4-eCEx{Rsa&E1OSUCU@l6SRQqr_statX{|I61ua@Kum
zlbm%QIyv5_Z6E9(z~@S4m));_srL`miFO+3jbR*1k(jDt_%F-35ak^MgQ!X@-HB#O
zgl?Fg(}B9=K%&1TvAqXU{+eZ-L<ybEa!lC|dDAz5b_}a<M>vl*v%V)e7{wxxSQdu6
zYt9X!e7r^A(aynSv>Oh&7b}$LEYxBrLM3?Iwjv()+6^1mqIp2MGq$y7dteFjgFVrB
zZ)|WdN+AcvRacS%uMJ@y0w6N<%OH_L#x`8|j8i1FKccXk&IA?Sh&&~tr_)}Aw-Sit
zq~C1A0&hoN(Z?lDa_H}x75+(ylbnqVzn$S%GyHQ5-^B2LVE8o*|E|PIFP%y&y$2=k
z)N7y9+4bUjpJVjbGC7kBr@AZoD$XbQbT+B*lZ<`~!{_1LhZ50q`_Fa37crd9WR?6n
z7rc$(QAWQ-;?zDtT<T58ZH#_3qra2UcQE`54EHfy{2>yaN&W(c|2v}(G5jfsQ#-^M
z{w$+k$nX~!&d2i!CWnvblP>h{yWl=D9EomR{vwH!om+9K_P>zfeEctW!LMaF%@HL>
zz00NID;Rz|qhG`D-3;$!_-7g3!tlEoPG<s2?|lrXcLoZ7is5|Ty})ojZt3p^DAA42
zJC8h1pmyW)eICR4yz?`h&$}ju^LC(fJxU~>&&LGA`Fy;A;e0+0Go07!P8a+O4CnLl
zJ{Meled4t9Nk-4@e1_rN&Pj%IJ3mB%k?7WgOZDTq48MWl?F{E~VlH?O!+Cu_&u}j1
zJ{SC34Ciuw%5W~{6&L(NIRBzV#hl*9aNZ8p4Ci{=8P4T&Fr3TjW;mDgd4_X2_qpJe
z@;u6E|G6%BtqXn$!?~R+UGS@1@M{>(>vcE7`S|&tF8Cu1=W-?`PX2-W)f0?9&u=sO
zkAg>y=b1Pkq(tq;=>rVkiZVstz;N!LH!wWT=%W%RJFj5)?TntUr+XN^pV5Dg;a4&I
z%M1@O{62<vF#KB*r~1Yi{#}N5GW-V&PcZx-!?~Xi$b(3d&;4_d;oLvR7|#9h_ZZIQ
z9Ar3`^IL{<IhV|WAxLBopGQp$=i|zB!5?zL-(>iwphJxlOTMBcz0C~&I>Wi%Qu*qV
z#>q}bf40O)4v(XjGd#lRJDHpv4DV(1yuUulaNcf14CmwX4vBvZvTtMZ@02*%zlh=A
zU^u;NQ0?<=hM&*yM<q`69b))g8Ca71ATAYW_Q{O1orhfTJD40kU+!dh2h;lnCWp_L
z|H1IpjQ&xEM;QJx!})l4i{X5J%{mRtNK~&DT&mrw7|!LKFL7$03mE;!8U0#@FL9w?
z;X=QW;au+!lf(V+ml-|xtM@VbYG%*(T<CwmaPDu%8UD9Sj=usANYrk_xKz8XU^ut`
z3W-y@EoAf|hVyz|<$`Zy@_Bu?xX|C>f`69D*~;v>i{ZQ-?qhOzocujTpXWar&i&^v
zm>gc;ql}){>qSOi!|XiiLO;cDZvSaIn31Tz_`cvghI7AtzQn1&czqifJ+E(=;k>@r
zF`VxU;tc2U{|yZ1adnd6Jg&|#oZJ6J7yN4s=j+0^UGQ;+b36Z);oQzA7|!kd9mBbu
zmGUJb^-B*fHIJ$o&f~Wg5_is{D;UnlmBHljakb8cewPdWDJF-{m)#8K<L$Fd&aJFo
z_cEN@c|ViG?fed-r?pVE&m%7MM_lkHnVgR^IWM}<|H%dS%1@c7{TDMiXGom-k=tMG
zf?vesT*%~n!i7G?aNhnmF`T#meGKP*_#qd3zI?$<_Q#n$H4>-#UcvBI7y8XE^ndF@
zpLL->!07q9|1`t-y8kM}*DyQZX7c%Z{Vt<l%joBwfd?dN2i|TUX81aksd0E7!#f#X
z&2S#qT_ka8&ss)*3B#{qc#z>djxreD!RT8hPWJOSYBQtf@oJpW^LlkNoY!lR;XIDI
znc-Z{A0<xpy`9;4)|q%fa<;SI1z*f?F8^|gll(hyseZYh(eGmTFBm<y=NX1`Iqxz#
zd_2th5QHK*?LUj*t5B}&IgjDo{wGNQ65aTEbkYU?UuA+^(DQY{Ys2CkFNnMhcXMBa
zJMCN~=?QParR@Am<@jCXEMYir2lC;RsK2<KG`1;`Jy+sV_S{7v65-qr>=&qwb3br|
z;oJ{ADRI(!0WKx~8Ai|jz>5s$?ei+bc|Y>=e{Scc9-D#e=XP#lIJc8xJW52*#~bA-
zIq{ec3!IPhrBqQQCw<rjzlY)6e(|sMNIBg81#+N}{5<;^eiO=6J73Ijs*A!eW%$hu
zSLepg{#wQ8d4H{A_$^G%)ePtTbtA)@8NGzX_@uhgMM=#kdftOe*)QFj_+r^&_(zbZ
zMD~9gm!e-lAQItRzM2<=WpF8aWJRLkB9|<QOygN(Ww?_2!kg&#GD=lW_?--w$2sB)
z_6~+~dNntxxJuHHoRu<9H=oQC{t21qH^N&P;FEc32kFuTvW(&KC{Z8=!)MAo-8vbr
z>Ov5;AtjO@7CHOpUYRF+w#?J*TQX1h9GR!vF_|ZvE|p%B8Nw<Qh`V~Pr|8x9w4Kxd
zND5cq)9!QN>U&!LK8|=AX<#57b<ht<yqt)Tl>9M?`yKdEi8nfM)d}4Wyis<}J_kM|
z@rNAvn8Xh<oZ3e&f0|EDFe;`?eK*_Uz}0uN^qn^)qSZyt{@KTHHCCzQafZuKS1|mH
z;bhNZfnq$%_E7ey?^+iyoai@5`d)?;kNQqE&2XasoTOL%pyaFXQGe{9|GA`B{h;X8
z_o%aEyAn?Fe<$fTFg(vc)DG_IGh<t|T6_>>-@8>Vh0ls=@!<kK@$8J5F|Bs%;Giae
zT6{#|_C4e@LBW>}>Z?e6UMMA#paL@SW#fNELmy(*rjle>Q6c!e17EFBtpc_90QJvn
zw28IaZE<{RC_b>nS4>-b6Msf>PI*p)ZHsusXRS_A4ingCLH{2=$jWbq59a%)BE9v&
z2>u{HtYQ_%*QO~mJs|soK0J!XQmNRkT!$9_NXM2Sh8xBbMjpmSvCk(9>FB%5UZO7Y
z!LJ&@@j;Wmc^0EIr^9Cab6?}u#*=-0iGEB_{CiP}+Er`YFBBisN=b?CXjdwRuS09M
zrIM)f2asNXf8_pBiENY^wYDzBGo1rS_m#W5@vC*4^HY3qs{ATuklQeg^k4KB@OOfi
zl3F8(zYf=_>NklQNyUG}pT>2n{6nCn#Q6hwK2?4d!*PCkZ*{8tUn1p5y!}b$sq)`T
z%t%~+2cA!r|2xEt#QB4GK2`pQ1b03^#dA)6A214yc+7}L?FjuKEmQ%B{g@jM@=^Rn
zHOXvLfV>~M%+A!wz?b@;>Z00H!Wz9>BmFYWK+aCDJM=1ChH>gq#3Llr$^VYzpOvGu
zGfKaLX-tXwQ-HwJS@wfdu9^>ubUiY~_$wv93^NpYLHp5OuNc2i^4H`z?Tk~uno}w+
z&5^g;IYR=}{uJk^`m6T;DzIYuTc!SsCBM2k_0u_n=zmB18B%|TWF-CMi=6r&1xEUp
z;NoeI)UWn;s!Z_{52crI6|;X#^1mUdrhlCF(|JWP`~Oke|CD4U`~L=)(y!W&{ucn!
zU*f3$KNB$$kG<(x*-d#$^mo35IqUzp<iA@`P5&tUN>12?zf&4``!uV_DL!?l^AyTE
z%-4=d{<j?b%6}+0DfwqO1RVXaO`-lyPtiNu{|4|EYyY8*Hisb@sr}EzrRuNR{|y)Y
zjc4183CXW+PW`XA=zm=5uak_VpWf#=^+!-|h|rw%e?aP2e_trY6wLos;4fDHcclJS
z5{^Xr7vOU0e@W>lB9`jNSfpC}miu+qpZ*S6=+9Bu8Do=u-zRa>|502{{ZrtleU;Ns
zc1Zn-UW&=_EBucx`k#{eRX>ydMMd<_fnsVR=lmOx`pM_<<g9<K<oCi3p7uz7rC*gP
zyVY|I_>1-532DC}3CaFyT#8@G-RPqKUa6mWcvAcdyUIm>{WUg4ha@EZ<VzL5(tn%O
z?`)?dQh%f5S2xvu>i%~w_E-9B4y8}=JD;;I_J2v*uk0lIFT|zz6;A&$IQ4&>QXubD
zK0EVq2QH_R;Gv=k$?qW3nte{hepdXdl)hUP<4*zdZusns`hHRsEBn<meGgk~{ym`j
z59O4o{uHYyepUZsx{3Y)nk-1&r`h*qxY7Q@$xrc-RACd!-zrjwwBHdxIqN?UG{yKU
O=_NkW%Z@@P|9=9Q?N%}X

diff --git a/gnuplotscript.gp b/gnuplotscript.gp
index 76e7727..d611d65 100644
--- a/gnuplotscript.gp
+++ b/gnuplotscript.gp
@@ -8,23 +8,23 @@ set xrange [5:0]
 set x2range [5:0]
 set y2range [0:50]
 set yrange [0:50]
-set label at 2,32 'U_{DS} [V] = 300' right
-set label at 2,31 'U_{DS} [V] = 325' right
-set label at 2,33 'U_{DS} [V] = 350' right
-set label at 2,35 'U_{DS} [V] = 375' right
-set label at 2,21 'U_{DS} [V] = 400' right
-set label at 2,22 'U_{DS} [V] = 425' right
-set label at 2,22 'U_{DS} [V] = 450' right
-set label at 2,22 'U_{DS} [V] = 475' right
-set label at 2,23 'U_{DS} [V] = 500' right
-set label at 2,12 'U_{DS} [V] = 525' right
-set label at 2,5 'U_{DS} [V] = 550' right
-set label at 2,12 'U_{DS} [V] = 575' right
-set label at 2,2 'U_{DS} [V] = 600' right
-set label at 2,12 'U_{DS} [V] = 625' right
-set label at 2,2 'U_{DS} [V] = 650' right
-set label at 2,2 'U_{DS} [V] = 650' right
-set label at 2,2 'U_{DS} [V] = 700' right
+set label at 2,36 'U_{DS} [V] = 300' right
+set label at 2,33 'U_{DS} [V] = 325' right
+set label at 2,36 'U_{DS} [V] = 350' right
+set label at 2,38 'U_{DS} [V] = 375' right
+set label at 2,5 'U_{DS} [V] = 400' right
+set label at 2,23 'U_{DS} [V] = 425' right
+set label at 2,24 'U_{DS} [V] = 450' right
+set label at 2,24 'U_{DS} [V] = 475' right
+set label at 2,12 'U_{DS} [V] = 500' right
+set label at 2,13 'U_{DS} [V] = 525' right
+set label at 2,13 'U_{DS} [V] = 550' right
+set label at 2,13 'U_{DS} [V] = 575' right
+set label at 2,13 'U_{DS} [V] = 600' right
+set label at 2,6 'U_{DS} [V] = 625' right
+set label at 2,6 'U_{DS} [V] = 650' right
+set label at 2,6 'U_{DS} [V] = 675' right
+set label at 2,6 'U_{DS} [V] = 700' right
 set label at 2,2 'U_{DS} [V] = 725' right
 set label at 2,2 'U_{DS} [V] = 725' right
 set y2tics
diff --git a/main b/main
index 8bc0c14860a62e004b9b8d94743710ee3f6001a3..6ab14c5569dbbbd50f674773289f3973ba7ffbae 100755
GIT binary patch
delta 22426
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
Z@I`WP;VuDgk7n|h$#TeNEbYr){|`DB=m7u#

delta 20959
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
CK*9w8

diff --git a/test_plot b/test_plot
index 53376b0b5129b5b02278851ef4f85a04539a493d..9860ede0d4612062b8c3ee8da43962dba46183ef 100644
GIT binary patch
literal 1140
zcmc)EO>5Lp7zN;ynaRu~)7v)FrZ7s>s2PnU+NiUb#UR0nZK$*Iqr23)5J6q|fg_gs
z^$UXH!k-Y_xKP|@DTv@UD;MIzR$B;IH{xky3;G8PJe+&OeP50-dwzb-ot;0sczMv5
z0Guw#I1Wc@;iAgx)^}lHY3AJW&UNeG4S)L{F7&sLf8OKo+5W$?V&~m|KgbRwg@l8W
zMuvm3=|Hx~bx`%FLtO{89{CRH0fjVhpvnQ~1C%xi(nt?bZjnJ|LAC-^NVW@AFW}w)
zwJx*Aq`DtK378=bc$Opfiny~-)+6pEgUpB>$&J{NI@FE0hx~{;A}E81{f6vDqEOa`
zDC>nvi%AuOOtOZk+T;#V^O#iYFsat1-jE%K>^OuPG6zgKMp-FTM2w0SL)OWNQ8i=K
zEwagtp?K7xF7;xl)bL}B1k8{*AUQ#u6eWQw5;U{~BYFbSA|t`5Ss1etjM)h^m%Ku=
zlVGAty#$j!1r#RG2MMO+6uXradug9YabS~{;$SPqAtS|Mvdt7ntQ3w-Zi=Iw6vt?~
z%cSXE3eQh*B1~~o&Jfa^l3`wCxI~LuhAVo8tE~*z=(?HVCf%ajR)#xvhP!TtdtQe7
zoeWE~+|BTym*JtG;SoI!GCYxUyi{_$rw{Z|<oMLe@q;$#r;+2Al}n0U5N<Awd%4u4
z$xbfmG*uN+p8`5VGc>CT=_x&<=k#J!NU!N_Q%LW23F*roA+69Vt<m~^A#GIKr7AT@
o&=`$VlP1)5DWO;NX0%=UMr*X*Y?m9PR!@~a(^p!dRr*f(Z>)X9Y5)KL

literal 256
zcmb332nqMr^$7P#O!9SMWME)$X8h0mpP7+?k%0@yg8&2zCc;3GEHA>Cfo1^!0-6R~