From dfa761ca083a4b6d3c085457a8eaaa533e60d846 Mon Sep 17 00:00:00 2001 From: Tristan Krause Date: Wed, 3 Apr 2019 13:35:12 +0200 Subject: [PATCH] DAC revised --- firmware/B15F.elf | Bin 19192 -> 19192 bytes firmware/B15F.hex | 4 ++-- firmware/spi.cpp | 2 +- firmware/spi.h | 2 +- firmware/tlc5615.h | 12 +++++++++++- 5 files changed, 15 insertions(+), 5 deletions(-) diff --git a/firmware/B15F.elf b/firmware/B15F.elf index d8fe0abaaa2233798c385f0bfe2719c1deebf64d..bbdcc71b3d28ad6b021b39ceb41970ccca19be50 100755 GIT binary patch delta 1727 zcmZ9MUr1C@5Qpd9U9HSw6{*$CBqEAR`m+j2Nf<@i5~e`}LM4?1Aw7r{MRzl(MM4TO z5-NJI5|IctEUidzPa7o9`Au&&Ua?!cjnBQbANVQKfA5_ zpGv~9%JTBmmy-HIr#d8(BO>`?OC9rLvqYAA+yuw6M0R+58a``_L_O|=7gzwJl=z+i z--ZX!^Yw?|5!YKJg8$2qI5Pysaj+MOtj0+bnhXg3fMX^96e2Q}&JK%=8iM)o4Ljkk zL?k4|aFPSWSW&&Tu$l0tu!Ds~9V*xmaM%xbBB(BT2p(dx0>NBZ1rq`POR%4iR-_A# z7G)092d}dd5~pgach3n348!flhR*`_m+(lj$R00&w*mV{coSDt?b(0BlguOfvu(*G z`6z3Zp50l=g2*}j!znBk@SS-gUtm3996rJcmU?^uj&luhk59Sr07LKeJY1A7QUPoH zHP|e9FFaWI-|ol*7S>t`jYq(eXK)!k;3x0~_J@{q0yYJ|2Y4F3MuPqoMYBczJ7q~1BPT2E?6wmtNsoF&si`to`7eZ5H6x&TD=XX;d z}{YC}a0`^BL=zW+4o$cYP8uJB!>|yiL+xkasPT15!cRC*J@$MF@m5kpRrR6Vof{hJ qYGNl29&O#$mddW)ZlxNxKF&%-Yff6$@vbYi4F!F!vMcNrOyn=+)T!kF delta 1728 zcmZ9MT}TyC5XWcly;i1{iujdXr68g#EG;TZ$`H~-O+%uB5TYn5U+fFZRUcF$#4`IJ zq=!Po41!CB5n@6SQ9bxz^%8_25fbe1NXAOGc*64nKNf+x~-XR>&av| zl(#K^Yvg;lD#JdtP-K;eBuhZ{1w{&CME1CR5^fBLq`Q0>PPG754*u;vz5x%Qw-~$X zJ%mTpnUx4X_xZmHiYFjND?Y34Y(yV_tg=7=ln;`NX){6JS$EaY1%SYfcDlBvPf)fw0^o(2J%w&wVkgBkzrwnW&-vzjy>0ZWGA^~{8qz!>Z;ZSe$b3jXl%EPR^;y(3FoAo3?k zgr+$Ot%IX8U{BALun}g+NZM)90eFfGy`ek}-=w7ju0R_+!m}=|xEn6SzZ}+zd*Kf} z(=u30nOXmqHx>&}jB zyN6xjZMw9tgGQ8I&KK|{GVw@)BcbkC#R;Tni(vGs*F_FJkkg3@K diff --git a/firmware/B15F.hex b/firmware/B15F.hex index 4b2a03d..a972993 100644 --- a/firmware/B15F.hex +++ b/firmware/B15F.hex @@ -483,6 +483,6 @@ :101E2000FF1F0024001C0BBE0790F691E02D0994C3 :041E3000F894FFCF54 :101E34000102010301020201010103030209626FAD -:101E4400617264696E666F2E680031333A33303ADA -:101E54003339004170722020332032303139000090 +:101E4400617264696E666F2E680031333A33343AD6 +:101E54003535004170722020332032303139000092 :00000001FF diff --git a/firmware/spi.cpp b/firmware/spi.cpp index 24579db..1c191ed 100644 --- a/firmware/spi.cpp +++ b/firmware/spi.cpp @@ -60,7 +60,7 @@ void SPI::transfer(SPIADR adr) volatile handleTransfer(); } -void SPI::wait() volatile +void SPI::wait() const volatile { while(active); } diff --git a/firmware/spi.h b/firmware/spi.h index dbdaa93..7e4580b 100644 --- a/firmware/spi.h +++ b/firmware/spi.h @@ -43,7 +43,7 @@ public: * Blockiert, bis laufende SPI Vorgänge beendet sind * Ist SPI gerade inaktiv, wird die Methode sofort beendet */ - void wait(void) volatile; + void wait(void) const volatile; /** * SPI Puffer Größe diff --git a/firmware/tlc5615.h b/firmware/tlc5615.h index e680339..4004e62 100644 --- a/firmware/tlc5615.h +++ b/firmware/tlc5615.h @@ -6,12 +6,22 @@ class TLC5615 { public: + /** + * Erzeugt ein neues DAC Objekt mit fester Referenz zur SPI Verbindung + * und fester SPI-'Adresse' + */ TLC5615(volatile SPI&, SPIADR adr); + + /** + * Setzt den 10 Bit Wert dieses DACs via SPI + */ void setValue(uint16_t) const volatile; - private: + // Referenz zur SPI Verbindung volatile SPI& spi; + + // SPI-'Adresse' dieses DACs const SPIADR adr; };