From bb5cfb8cacd53431267c106cda1009e56e2defe2 Mon Sep 17 00:00:00 2001 From: jim Date: Thu, 1 Nov 2007 23:49:30 +0000 Subject: [PATCH] add dac/adc skeletons git-svn-id: https://bucket.mit.edu/svn/nilm/zoom@5457 ddd99763-3ecb-0310-9145-efcb8ce7c51f --- firmware/adc.c | 17 +++++++++++++++++ firmware/adc.h | 11 +++++++++++ firmware/dac.c | 12 ++++++++++++ firmware/dac.h | 9 +++++++++ firmware/zoom.mcp | 16 ++++++++++++---- firmware/zoom.mcw | Bin 33280 -> 49152 bytes 6 files changed, 61 insertions(+), 4 deletions(-) create mode 100644 firmware/adc.c create mode 100644 firmware/adc.h create mode 100644 firmware/dac.c create mode 100644 firmware/dac.h diff --git a/firmware/adc.c b/firmware/adc.c new file mode 100644 index 0000000..8ffa0b4 --- /dev/null +++ b/firmware/adc.c @@ -0,0 +1,17 @@ +#include "config.h" +#include "adc.h" + +/* Initialize ADC */ +void adc_init(void) +{ + // TODO (SPI) +} + +/* Read the result of the previous + conversion and start a new one */ +uint32_t adc_read(void) +{ + // TODO. + // can we separate read/start conversion? + // unclear +} \ No newline at end of file diff --git a/firmware/adc.h b/firmware/adc.h new file mode 100644 index 0000000..2686d1b --- /dev/null +++ b/firmware/adc.h @@ -0,0 +1,11 @@ +#ifndef ADC_H +#define ADC_H + +/* Initialize ADC */ +void adc_init(void); + +/* Read the result of the previous + conversion and start a new one */ +uint32_t adc_read(void); + +#endif diff --git a/firmware/dac.c b/firmware/dac.c new file mode 100644 index 0000000..479b371 --- /dev/null +++ b/firmware/dac.c @@ -0,0 +1,12 @@ +#include "config.h" +#include "dac.h" + +void dac_init(void) +{ + // TODO +} + +void dac_write(uint16_t val) +{ + // TODO +} \ No newline at end of file diff --git a/firmware/dac.h b/firmware/dac.h new file mode 100644 index 0000000..ad002d6 --- /dev/null +++ b/firmware/dac.h @@ -0,0 +1,9 @@ +#ifndef DAC_H +#define DAC_H + +#include + +void dac_init(void); +void dac_write(uint16_t val); + +#endif diff --git a/firmware/zoom.mcp b/firmware/zoom.mcp index bca32e8..1e6a2ef 100644 --- a/firmware/zoom.mcp +++ b/firmware/zoom.mcp @@ -25,15 +25,23 @@ file_004=no file_005=no file_006=no file_007=no +file_008=no +file_009=no +file_010=no +file_011=no [FILE_INFO] file_000=zoom.c file_001=config.c file_002=uart.c file_003=util.c -file_004=config.h -file_005=uart.h -file_006=util.h -file_007=p33fj256gp710.gld +file_004=dac.c +file_005=adc.c +file_006=config.h +file_007=uart.h +file_008=util.h +file_009=dac.h +file_010=adc.h +file_011=p33fj256gp710.gld [SUITE_INFO] suite_guid={479DDE59-4D56-455E-855E-FFF59A3DB57E} suite_state= diff --git a/firmware/zoom.mcw b/firmware/zoom.mcw index 2793d202d80f5b15fb9ccf3be542158d0b9bd676..484190bdf189beddae20339ead95f7575244d498 100644 GIT binary patch literal 49152 zcmeHQ33OD|8Gd06sS6}A2?!FXt+<7RuoN_wWM)WEVx~zXsf@~F=8;5Za~4M8P-0!0 zT3QjLrY@}(Tdi7+wJPqmYDqoE13k6d(YA@_RO>mO_O!JY3Yvc3TQV;pmYD=Z^uIaZ zyu1JRes_KM!GHJcp3-~Q!_)edA?7?~tnxwsBxQolKMQt3HNmX0!6@7 zU>a~TFddiyoC3@Qih)_cY~ZuNslexe&jY6cbAZ!I;2eNyiF0AE0L}xx2rLCEfhxcOI044{G?{uOgufWt!leZ9j3^txLi(lv zJ;vh8K35EvL+@Liuk=mt$r_8m=hMdR8OV~)XS#VT%ras+Q2T%q z#%~a1AOp3Eil?fyq*bQbBalzgn>pBEC_kvIRoWo077_z+XVM1KMj)T#lw+4>2f#U; zZDNgowj;+s=YdH;y5rv(XMDCIo!vd!@z1%4u0EY=omiFzu1fwo{x?Y=+)r>edBmI?| zijxex6ZSg~6eP2H>B9PA%Gwgn)9rjx#;fny%kpo%v3MWy?qYbG}ln*XMb}?MB=+ z7+@?{cwAxfY5392xW$ND*OvT}h>bK7*J^|Tvu=D^PSy^6e7!`_@U zI9Uq&PUMel_57@IQ1&zM_app0JSocxW89udo}ORnd%4QH8;ra*BX0M3eTkuQna?Zt zKlyq$!rOd(3A%^IVcz$y-lpt9oUse;pMBp|znOB!HH!Pmdk*}aOSK zS8qYU?~y(M*bUH#(d0o~mZ;<3xk};ozQnm%#Y!&vA7vILo0Yx4%2S$OTB&5g z|8B&g|GwtJB;&E~b#5z2W`n;o*1n;0mTT)rjBD?o+4&{oi{ZByJFDUeg~`cC_qzvA zO8WjWD>(uFJUWoK17|!{J?rVY8*PE5jlg`oiW^6OYZGMe25X$-=^b`1T zul8%lzQoQ++^yy5?yjP#%6x=%U}N_V;=R_fKhX&{_j`=ng)yQiTXlEyZ)aq!W?U=^ zMSG37Mb3Q*w$~iEIi?ujr_4@rjx@|zeSM*QW8UK^E*i1-eNI10H}YcHUIaKlY(bfs z*IxKveRW?V8~zNx33kS(DF*cV!2g>4`}8=RUyKz@w`BCQTiK1ZZg2m_{!RUFDKBJ{ z_HaaI+Zz4XsrSw}`mV7LiK4FDiTLnrfL{!MZE&~fJ-QP90k}tNRzRwXyfnax{G#an ze)w#FEgf@;GDhFev1_yK(n*79Ro`ncZXM*YzNyigP7bL!`6Jl>@cpC_{hh`M>1#0R zTktoMJt#(f7CQC7JCUC0ke~2v*Djemz9(x>!^Eb!C-*S=fEm5~%=f>Akj_0IO%-N3 z4eh;7pY_Kjkt%&Y8oR|JVMbmp?|Ae;fp-TYpU7N{z!PseSFWI_3lW z&ApjfnI#DD0`~o1Nx&QK;Kq2AW>u|wMP=35%N@>nm*h05ks$V+&NkH_YFVMJjaAGq zpEuaIF%+&SU%V)1MP)fhvL}BYtdzGel4g5v)kQn5f39xF;_~Y{o6e%zH8H}#$DV<~`ez1ffJ&$Er$7T4_0G_kDwPgS zwxwOy`>9w@Ta3}mH}u~aB}h;IR1xG`dT$K*mex4x-ip{tcW5j1|BOd8>d3ToDh*B5 zeP;DzZ%jUv{-;J=1B+kRXgf5A4|h{O_4!b@+hm|;`zopwQ+#*)Eo=3hM|8buOJ{DI z^e4yR@SF_&OBVNhrjv9UB0a-G!=&_IS@q9M6O^TY zDI0lFYtgXvZ;#$W{+G7h^C+K`Ynh`_|4Imd)~tUyv=*1^+KR0bW%kS&f&Q(lAi~mr zWhfC^7T5J2nJR@Ev=-_Dg~lP%qbd}NL8;I{us0sjQlZsaP>ZO3cw7|KpkS!V9Yy3- z)s9Nv`YJcH9mOIczh8@7lB271D$St|r_!9duolFl%I#ERYONacw(73sLAp&VCDIzv z)OB@1s9f@{t6Q%{*7`#UcD7TUG4$4U^B@Yo-1-Zz=7c~n6eQCvQu&FG})^=AaOw8 zux(=(r`ru_saCPe8m2|cOP6KTBGJmAPxI-G6K&A0h-*Qw;Upcd_2|yEA)i*UD2F}6 z%buZkD%}(P-15{jFx7tPb`(3#zCJV?D}g;1%Ma1rsXW|P7DEa$OfgI^q)#QcQV*`h z!BsGPkkrs~28&s8Yan7|uGAv)GGLX>-k=7;eyzdFA&fka%xFysf{2vE9I50iyy&K zbjStA+HJ`GjoN0>DAqzV;)&N{RQ7MfzGz@AO}(@j4p0u_VK+9fcDwA~K8E|ZvU#Z& zF#G$|@NZ?t0{1xZehDjV>CFCd3|A1&bINYs>wq*p`;2=Z zc)tYC4#&ZdrmJf&(r;DVxNm~)Uc~R5fV*B0&ig6$Ae`~rPP(DyJwHtzlrySbs?^G2Zn;U`BSGV zt(0e$FCXE&^Wt?=M(2Y@`QCy12Ha=Ev^2ci#*)J_GLM}lPF*JN=-G+**F7;m=>{*u z-HF4x@lG5*pPE>ur?bk={H-%>${;^>qrsDHa4Xb(UuvlQ9@V`QBkMQ3PeuC8vD9yF zMT-%;F__=vfQGT(SHkfzqWhzGi4-pp2z=;QBVE>!{`s`OzaEY6AH0mp`u=e^+SfkM z9gh4m&Er^>e>E!mRp1)nTHre1df;n7C-8OP2H+dOX5gE^w}2agEx=6xSGR4z&A@ix z+rTYA7w{c`^T%z#?Z6$tcY*H#cLH|--v@X<-Q9Tp0QjNlz8B9Q0rvs-0}lW{1|9?+ z0=j{Rfu8`606zsD1s($)2X+Ea08au>0Z#+Z0M7!?0nYUYDHc==L{*J^s{GQ4o>cP$&=!09qfruT(rc5dUv37~a5 zxpC^pBLF$?`}m*t)!?j;?>rlE);AHLv7g%<*?!~0NwIZKEdAzKI`7+#0sc1n%FFl% zq6>~%ziCAYq~9D%{f1{JmjnCIe;(r^0rSz#H`W&_qt9@$lywUKAK@7IF4c~P;@7o@ zFyCBi_8aycF~Wc_APfit!hkR!3Kdcyo_k2=t2S`EZK{?Gc z1;=&;)sIijnbVT##N??#$7p-CZKCT*!*a=%sj8jBwc!1Z%r9kB)y|m{QXG-ABb^QW zOasK0eezTEPcwFD#bknYzx%`t-!c)xiOM7yiwUxmMcs4e@XZ6V{jN`*=t?FPg1k)g zGAVsZ->P*r2Ngsj6+^BItAP|98FG0bqrq^WfBpR6w`2l!2)GIQZ|nasN8E8xahW`x zOhTki3bZ=WW+8SU$ydT>2>yjYLLc}?zg|J|um!)np#fd8Z4dNiky9Z><~ zIQIf?T<*Y_mAGm@DgF43?{d$dk(SRtT3sw>1cLQ;_T!s6Q#D~!))(2`kzdT&qEfXF z<2m$KKwY!~DhsAdj)Tb4hw~h2H@@7}jX;}!$Q}{7jdaudRFyIg;iNno(pxB^PX+K5 zU{()4w(W|bTxW6X(BD<;MhtuLZrLrf8uA&?tahZ4;}eM)LDhqVUqjHd&&TBk=>0zj z6nR1>kTerX;})yL2u3Dh**=(@*EDGMJ&MzVKeVZkvr!A+#}JK?=$($rKaE3P0NZ7p z8+EkhQZXJk|K95%)c`v}a+X-k#cNMGyAgsSmf@FaoV+6GVcrJMSvF<*<%h*<9xK;d z6Zb|nJ@Ka3)bxHM@gV1LvuDD8@c`c+o>pIOapIk}3;9;@X`2D4P z)p@r>v5M9+e&@n_Kg(Ba8D(248XYsSB+-~$#hDont>m?Gmv^f z7QiP0H5f}W?igs=rMJwsBeq?Rpc63UMa`>jk;+EDb7AR}&1|6mW^~?k