From 19cda0b3ccbd0eea2a426aba4c3c0557d6ff77f0 Mon Sep 17 00:00:00 2001 From: "Christian L. V. Madsen" Date: Sat, 9 Nov 2024 16:57:07 +0100 Subject: [PATCH] working uart isr and working on uart/cm msg system.. --- .gitmodules | 3 + .vs/storno_cqp6xx_digital_xtal/v14/.atsuo | Bin 61440 -> 78848 bytes storno_cqp6xx_digital_xtal/Debug/Makefile | 13 + storno_cqp6xx_digital_xtal/Debug/main.o | Bin 14740 -> 13100 bytes storno_cqp6xx_digital_xtal/Debug/makedep.mk | 2 + .../Debug/storno_cqp6xx_digital_xtal.elf | Bin 57020 -> 56828 bytes .../Debug/storno_cqp6xx_digital_xtal.hex | 327 +- .../Debug/storno_cqp6xx_digital_xtal.lss | 2622 +++++++++-------- .../Debug/storno_cqp6xx_digital_xtal.map | 181 +- .../Debug/storno_cqp6xx_digital_xtal.srec | 327 +- storno_cqp6xx_digital_xtal/avr_uart_driver | 2 +- storno_cqp6xx_digital_xtal/cm_msg | 1 + .../storno_cqp6xx_digital_xtal.cproj | 13 + 13 files changed, 1768 insertions(+), 1723 deletions(-) create mode 160000 storno_cqp6xx_digital_xtal/cm_msg diff --git a/.gitmodules b/.gitmodules index 975d033..4508e7b 100644 --- a/.gitmodules +++ b/.gitmodules @@ -10,3 +10,6 @@ [submodule "storno_cqp6xx_digital_xtal/avr_gpio_driver"] path = storno_cqp6xx_digital_xtal/avr_gpio_driver url = https://OZ1CM@bitbucket.org/oz1cm/avr_gpio_driver.git +[submodule "storno_cqp6xx_digital_xtal/cm_msg"] + path = storno_cqp6xx_digital_xtal/cm_msg + url = https://OZ1CM@bitbucket.org/oz1cm/cm_msg.git diff --git a/.vs/storno_cqp6xx_digital_xtal/v14/.atsuo b/.vs/storno_cqp6xx_digital_xtal/v14/.atsuo index 7349d5cb5c2b342a0552edada6f34890f75438b6..fd84d6b0bf12001c1b338cdc65c9d53624655fa1 100644 GIT binary patch literal 78848 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 Z?(>%~#^_`k8)Wq3pT{yiuViYi`wtqO$JYP= diff --git a/storno_cqp6xx_digital_xtal/Debug/Makefile b/storno_cqp6xx_digital_xtal/Debug/Makefile index ac44ed1..20411c4 100644 --- a/storno_cqp6xx_digital_xtal/Debug/Makefile +++ b/storno_cqp6xx_digital_xtal/Debug/Makefile @@ -36,6 +36,7 @@ SUBDIRS := \ ../avr_gpio_driver/ \ ../avr_i2c_driver/ \ ../avr_uart_driver/ \ +../cm_msg_sync/ \ ../si5351_driver/ \ ../si5351_driver/include/ @@ -45,6 +46,7 @@ C_SRCS += \ ../avr_gpio_driver/avr_gpio.c \ ../avr_i2c_driver/avr_i2c.c \ ../avr_uart_driver/avr_uart.c \ +../cm_msg_sync/cm_msg_sync.c \ ../cqm6xx_app.c \ ../main.c \ ../si5351_driver/si5351_driver.c @@ -60,6 +62,7 @@ OBJS += \ avr_gpio_driver/avr_gpio.o \ avr_i2c_driver/avr_i2c.o \ avr_uart_driver/avr_uart.o \ +cm_msg_sync/cm_msg_sync.o \ cqm6xx_app.o \ main.o \ si5351_driver/si5351_driver.o @@ -68,6 +71,7 @@ OBJS_AS_ARGS += \ avr_gpio_driver/avr_gpio.o \ avr_i2c_driver/avr_i2c.o \ avr_uart_driver/avr_uart.o \ +cm_msg_sync/cm_msg_sync.o \ cqm6xx_app.o \ main.o \ si5351_driver/si5351_driver.o @@ -76,6 +80,7 @@ C_DEPS += \ avr_gpio_driver/avr_gpio.d \ avr_i2c_driver/avr_i2c.d \ avr_uart_driver/avr_uart.d \ +cm_msg_sync/cm_msg_sync.d \ cqm6xx_app.d \ main.d \ si5351_driver/si5351_driver.d @@ -84,6 +89,7 @@ C_DEPS_AS_ARGS += \ avr_gpio_driver/avr_gpio.d \ avr_i2c_driver/avr_i2c.d \ avr_uart_driver/avr_uart.d \ +cm_msg_sync/cm_msg_sync.d \ cqm6xx_app.d \ main.d \ si5351_driver/si5351_driver.d @@ -123,6 +129,13 @@ avr_uart_driver/avr_uart.o: ../avr_uart_driver/avr_uart.c @echo Finished building: $< +cm_msg_sync/cm_msg_sync.o: ../cm_msg_sync/cm_msg_sync.c + @echo Building file: $< + @echo Invoking: AVR/GNU C Compiler : 5.4.0 + $(QUOTE)C:\Program Files (x86)\Atmel\Studio\7.0\toolchain\avr8\avr8-gnu-toolchain\bin\avr-gcc.exe$(QUOTE) -x c -funsigned-char -funsigned-bitfields -DDEBUG -I"C:\Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATtiny_DFP\1.10.348\include" -Og -ffunction-sections -fdata-sections -fpack-struct -fshort-enums -g2 -Wall -mmcu=attiny402 -B "C:\Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATtiny_DFP\1.10.348\gcc\dev\attiny402" -c -std=gnu99 -MD -MP -MF "$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -MT"$(@:%.o=%.o)" -o "$@" "$<" + @echo Finished building: $< + + ./cqm6xx_app.o: .././cqm6xx_app.c @echo Building file: $< @echo Invoking: AVR/GNU C Compiler : 5.4.0 diff --git a/storno_cqp6xx_digital_xtal/Debug/main.o b/storno_cqp6xx_digital_xtal/Debug/main.o index 9ad9687b334efe96c37e1a6819fd40131f962a40..aa1dc5c5b9b4e83acda910c173db4ba5842ebed4 100644 GIT binary patch literal 13100 zcmcIqd6-nymA|i+ZlIfHX+cnyf<{H9i{9vNP(rWL9ePVwgJL@0v#6@>uA#cRtp&l% z0KtW5V8UYDMxzp3#$DqQ9TzmwF`}YIGfsvNh`UM5e5f(TjrpB>&ReR}lgvN!zVE&F zJLjHz&bjBFd)|GoYEyIDS%zUK>o8PEIh0aO3zd2gja6D;zM8J4sspM|K{W)3v#7N1gGB+Nbs%E>y~+?fSG!AV)tuMjkbI^=0E3xOt2*MEE@Z zcrv3ro_wM_K0n=9Y|9$W;f67~!83*_k!BTsPoAd?qWNCmy!&xyy(eEny-S2Tg#*%loH3j#iPMHW@?xJMw`K9r==T|AxHQ#zRwJg&A5yihRwK~85D5wcN_T!SN{2jwktcdkk_%i zlY2RqcQM1Uyqg)0$INgn z-@pvV@{P=JS>AIkTi$!KZTS`!%C{qRD>Iz=xQ!W3RQ{D2j&HX!!}0A7W;njx$qdK0 zyO`nf?VjV{6QXioz0ZouPg%(E?Ez*uzCFkc$G3-=;rRA2GaTQ3#tg@|N0{OG_9!!4 zzCCs?`}V}`wr~5ikSlGU;$Ds`Pcy@D<>%bRvHS~WxC}kp1_KDfbMsJ6I5nPsbHw`C z&%GSIFR&qJh%Yk3G4v8MoFN`yhRgCR53=Q7{iAL9bt)w8mHBICIF|o|8IGYhnBmg< zn}yJa5gmNZ)_Z8A-oqpH9vP|kw|}Mgt*xYYjQ^d@DBQZD`roBNA&;4Qk12zr_`V)6 zO_zrmA81A%4-n;l+Fk<1bpma7ObvYn0J^!IX^VOD*gg z%~#BDM)Nhx%V>@I}0?Eo6#!gn8xcl5F?#s*@0%OzH2r#qhoZqL>MS$7y(*1Mj4*)D#Q? z;&;(le8@wkrfQBcMQ^?|CN3Su8ti+I*JvhfKt0%s2ovbt)1~&7{^#q5nd3nw2-O+lcQrFj1Pn8~nX4zIW%I zO|$a)b{qX9Gs}p2#+=8JH$w9H9Lbw)N$SN?cSGtUmy{pNldQ5v@6MYysoBK&H^^xR zo&%VGbCxmS8Iy8&C8O}FnP)6<#9D>5R0T-w>qN>B*|bt~sKJ;((~g=&1al^q5uZ78 zowp-j&`p$$v%7 zoq^5;Q;bszTZ^ejpwlv+Z%8O^9<%9x+nf4$jRtaZ@1_<@c%eEM3EZ0$(b@>)Ngvae{K%d!YP}HDQ zz>-0BI3|}BlF_;3^O=QP>x$TMrAl%+w92f*t9H@L10O`_j3bf=T?UBosBJd(s%?jf zr;i!9a(}yB4M^K)w-+#EkBZaP_@Zc>!h1fjGJ?T{K^0ljJDeKoPlX2qeepyr9hkqq zw))iGaAq);=uKy`(fCkrO|YytGc=Tl420v!-tf9qt-h4@C$ptF{N8vnlE_A5z1d7W z@&BV*k=G01gBh=gn9)>xT`a}CbbL|eqH zir*b@ywa>O%T%aU&s^uqp01TWu)L~awOLuAx?|~BYF#W!4pp0xp=2gClyJGjW~sHx z>}+mOiJ@eFKwq-Sbi6+qiw5Yck63kvkvrP<5IIs|mM^9VLRkeVGusisNMbGgt1_G7 z>F}CFER+dnVjS>F5vS<4cJ$ETC>{0495>jyb_7c&gRgI~ z1BIo1*8G-ISl#rRc&0BNOGMGH4^oj#d?;C(j_Et`qTx)~O%I17YoR%njbzZuc4Nux zV44C~GkW0aWff31n8~3FP&bBB$su!nCY+#xz_X&KRA-T%0?JQG5@bMAY#k*7MV36W zW>;fb(6law6A9PKwWOfW%1Dz_vNhDLQ8pdQ#3O4rxYkGoJIhIKWvvxHy*!|<+|D4< z-PP1#C#bbFo4Q+9HKQJMH+L-WX)&wX>+RJ^IUozwEa$|_(QhXu7bPOk>8WpH3bm=h zq?|Ez9X1hoS3-7&dd!|qv!S!Ir>(QTskvKqucz`r?wPGk-K&st)u?`|t+UOn*VhJR zk`f5$nxH4ZGHC^nBTu2jR9VZP;_Vc5Udd9I>{4j9b)Ic0!QzUgQrY1Q>9GP2eUc26 z2WiTXv{*pw7n!wIJabB2b(N(QZdaORuI0_%+2x(J+}}oI0J3Ul_}57>-#!*&WT6*5xgFHPeHIymkdf4{9(R8HguiWKdU2OGVDG$}4Ks zP&R`nPjfPif*?gpS5+G2XjPSFLFzTlaZa79(M1yMMRtL5(#Y}WJuWD^l z-L#5VafTp)SFGmTum_74DVp5cU9IKyD$IE(Shdf3##&<@u{3J2G@OW+@$%F2YAFEG z+M$h@=9+9A58n#Gq}TIqwzhXQH`RAEHrwsFYrg^m)a%W)g0WCtj#as94q`|~vsf>c z6_^#Q_}feu#jmR>~Lj`N6sInJzzB6AE(k!^&dNC{VW)*sVRo1om7Kz zz3)lKGRtEbv$dkpY+e^jX3V}}+0gxsYQdY7GJ6e}W@d00RgWrv+KfhW3g|heewfpI zq0UnFGt~P-CruZ*($rZQu1ee^iX@z!dRaHc*Tti{2 zV(=tHLRL@_gM+l+1X-?^`iSSM&Y@b&>1f+UB*iG3$cj<9Rb1OD^c>`Dy5h<7=;~{A z7risB;ss=75wbJ>hJu)bhs0C4u?%tGdlv6I&${TQsxBda*MrgVjMS z*P5EzQ+d;d_Za&6b_@qzh&RnE40!h9U5DO3t%Ke>>x;bCdFqRN*Lxer&uAzztv2gU zFPqlkQ%8?knC{-3Uzv%v-;A{w{WeP9-oBwJx*R=59~+mtX!^Fb%te;~^Y7HeJbLVO zyN&4@+#H`q`s2J)leCv#=LqVo12cx>z*{MX{fZ_tRFpmFH{a2s$!?PLH6sfTnoR$S0|fj_n%JzGnn|&j|Xl z5%g<9lg>$q-MH0O4sIl)1P~o6dM1Zqo(Rhexk`w511K6X!Ph}1A@~O9Obea{e4*gw_-gY#!LOn3m4e&h^IpM^K>nwKW3ctS-~q_L zEI0vMzZUF45Dp673ZLH+d_3eo7aXS#gV0Ok>Vgk>f?FU{DEKdsDHi-0zD=DbSi!e4 z!Bc^&1upW6<9tcsG3bw&3p~=6!;HiM~G;dLkKiKs zxleEz^t>W?I^y%D;A!B0EO;_7K56OkZiJqxf)|5-s$kN&MDVk~D+JTeT)l#;fCmLv zz|W0>4fwf3@J8tTiD1(CfZ)e5N6!epo90XK7RbCOcqw##CYYAtIK-XiXdLX$6nqcv zLBWS1zfADuh+&uD0~mK$@C4wL;AOCNk>Ch?xI*wJ=zEJLkFh)=n0~Z+UhvzP)Bh6O z3!Q%uya)HM1eaj!MbJw=e+8Yh1wRe>GQmHD&IZB%34c}!-hy%W34R>>3k2`S{riHq zL*^R6Pa-CF2%e8vJt5cw9}Wm!ji~fD)?&XAvyB%2k;F)3uydpw4WsSF#N9- zya4j8g71Z%a|OSQv8)xm8u*_C{|fgVf|tS1n*^T+KkpYj9r}MRIEMJWF8CAp^SAM*M4;7t+yKKLgKeiFV_34R=7ZxBptE+n`TV~h&E6>&}pZimkA39f_A zD+C{co;`wJ!~I^t^lyfz1ZQFQRl#3C|677D1*Y60pZjp9|F#i6gz-)k9L0T(;EnLJ zLU1K~s}tM+{hfjrLWcT~o&xxs5j-FIFBAMZ`d%Y=GyJ?;F!{4j@MD;-R|W3`pXxj5 z+>X9~7CZyBv=B7$I}wKy1y6$fX@c*9p2dRifDcqdN&W@+e74{ZFy21Fg~+9>;11}y zSn&Ct;lqc5>DQMp1!v$x0d$dXXF&c0 z!8gIyse*@~vsUn2_(to8^bM;yK*_z--E3cenBb%EeZq5l%WAHnC{f}g>CkKi4Up*$d;UxS`U1*{YB*bbf%CoFJHN(({=5 zu7X&ZVCviK;Tk^{Qbl7-yZ*}_@d?xR zlrXi^KET4Xy(Ww$s7`U=(*?tfs&rxf&Ix&%cetVWUt;{eMtbO=cZ7h*5N+`-->5JB zGuPs82A&Q1iQr!0BnydnBFj$39nH>{OZE@0Sjg5`({x82oj{%reF%c z%?61Z)USKQ1ke46g+-$DWeuO~`-ae6DNcUo??{$w}X}y!lv_pdQ{QHbx<1}b8r&Ia?!{CCP(=<2It?C z)9+G{qx_?T^wGRohh=vG7?g8$(r_Lec^jBsUx`mA<@cF5-FB}7ZRr5CagPfVpXA;m z1#(z@IzhYbHX(uUMa?0*D9yIr^MI{BfNB#qK<~I17EF(ji=s}qPzO0Ixg=<}-A@pJ z_27|Rn78d-1Z?#IRChvOfPfrU+eXlCeTh=kT<}OA4V&8Neicru51@Jh`e-d%ht;+V z47a`=&_`>H^wI0KrSEoNs}G<$2z@WR7#6%)`qYsSj@zJ*=7jW-eM=wJW9n0ela4!4 z3>S}>H)?+hr(5nFe21W1vkq#b^MKqf{xlR(cTSUCI-bYr9&c07iQjS3Ms84TwsIa& s4M6T70XfJf9d!3-#FsYM4S+#0qZJNG-KBi3{DQ%{iyeX~Cv+dZtoJm9R1`m^&Nivd5;>@J9 z>IbzVlv;#RQMrN-6a>W=A`c&^fTBDq=%@GsiuWoaC?eGhQtbV$z1E&{5~JRK?)kns z=eO2gd#$zCUVEK=&Pguq=-h5umNJK>qROF^8mL$5IW*R3fl76jTA~gd^%Whe@SQwx zR23Cn_rqh)9DD5Ur|*7b_Y<=o`_|LnI&k8e6YBBi-(GlP;>2;w`VjDm-V^s(au5mQ#-(e2#yI(d#Pwpj92Ju>NG)4;+K($Jac2`LoxZSlN4^`I=_yr26*z zOO^6ypM2Wg5{+j#c`QG1z4~;?xwv?&A|iaAf>b&u4F~$D!Ba>L9$x`nxW~aU&EbY3 z-QX$Gly3L6UWN98Y9sG!yOHQHPX2>9-GN^ro$}g?JidDWv!G`Y6PUz271Kyd%_g~1 zXe$=EYjG{PmxwuZn&;c#|8ESP)l^MY6BN?o)=ffsn5-7k%VbDMAComg7BE>Wq@T$; zAqz`s44#T2W;bYGJQcH*aUsUVJFFEw@aQXJdYuL9he>3mfS6ImL z?M`MmzI~M$j&FA{!}0BIW;njx!wko_dzs<*_BCd>eEY^m_=LFKw-yzenEI-H$m!a={pACKg6L~`qQxR~lk4LzdqxVrZ7|j`jYk7q=n~-P6r^;Gcg!@o?(LT+6yByU3e zD}w6taoQO+q#^SuNyFCTnzVcq)3CtkqfIsdx*| zR=vdujA9vKPJ_%Ja$Go#B7->=PLngo5mvid=Z&W#Dp}WJU4n+9J^nW9*8G%rShC;Z zKHIHdV)5kXc&APdOsc5ZWxWGEc>`9s>KS0Y?U`W%rujbJO%$GeCnU>!g&UV)d#{&x zVURi_)0o=Cl*LqtU6M^-VZ-ksdM3?*=N8KwgNn15Ah=Y+TOD}&AUMmg^Mv^4X#?s* z(kiuFbFBF~O2nYUdu_mDt>Bg=dUK{RH=>4=;^8DflohC?upF@hAe6P5;^#TyTUiMY z%wdIJ1+}UkCs_Pj8W*5*!X`0lv)K&xi^Y9d~&OdU@N*%M{oaS!> zf3u74J$lon>-=*^d^ zO5zMdPCJkTxS2XwBc7s+!@G9|-lNR3HalX^2x}{|-UDr~6HA84=Go*3BBE`RNwuE5 zu;x;lpvDowoO!wiGv{pQDYqc#CaN|#E&eXc)l_(nizq5{6Z2d|VUx1TtTmK_5kui&uw{&yyxy9jf%&G8EB?{^laZvulxb?p+WrZ><_nM`d0)kM>Jf1g;k;( z{b-~i1RS*jz@FvE=ALHaD3_jSn;is|Rx9DBSSmdb+nZ_9 zr>f!fWYrY@Kq?&{olGPLCUdFL{~y(=ZSz2{IK18EaEo?0>NwmRi(izLakTX1QtAD6 z`}W>}P%u;-tgUM@u5Q9`6h(r7ovMl3iA-v5Qh3=^eQkY6Ses;Yj`(COlQZ&a48aM; z>2+HoIU3s^9HB|e<`Q@<1&ldQjpx#J)ioe6k75l3Qe}!6u#lGVcZ@ac+h@lnCO|_c z$&)!y*sP$`=#21|Azgjg<>J0g=OTUfDQgy*G0P&g#Pa%P%|n}SmS3MsaQ0}9XBK0R z=?OmiLl>RP_1UBKdUaom&OVR#6$KL(RKQGpOuJ^M(y5&4ite*}Lw2aq4mGIg`B6LE z9qzNcTB5sD$L0ZuBHiAejOVfgW2ty%+~yo}xY^uzCOvM)-!VbsPo#!Zx!9<^4=1GK zKW%DH4o(i6IQDjShSL+1x#;+0CZ4o&YIn3H(g#bK$#_n+b?&OS+rv>i+Sk(8p~fah zbE)Y5bZ#Wn8^ba%N*sQp<|lK>OcuJLeLa!x9=oNt*Y1tKn4X2Zd0KNVc7aZUBP4T@e%3g)ep~+#Y#%2m$)Yv^8 zt#%h?Dn5D={- z$naQ=6_~6glZrItGO=`aD4DU7d-LM}-wX+|qoL?uMfg zjV80vTq=Iie%CsyVb{&_YJ#gKlzL4;Sty@qlSnPS0Lesedv`ve%_?t?g!?;CS|T0Y zJNkCobzLp_g-(efYu*lVqE0cCPhzf?MDFQp>12vaSdPj;t4#@I>${ANS#c#Y>V)0b zW4HG7^mX>Mw0A^QWFJ)=a?=jCNBWVE4Jgm5v!~N;(dSlWlalt<9c_J)P7pt!T=Jfj2=PG&Nb6FJgj z=8N-3duCFLvMNjYmK9SdP4#w@nTRRnwxLchL=TN}bK7-kHqppGX>C^4;y7;T=2K6<8r}U6Ij)8H>e7Qt2d_)#ccz zm@=GDO_Lg*%;6T-k&dCPNL5skJ-wZJ7O8&I&}ORNG#^d?T%(7{MqQ2p>hn2}aZ)x9 zYm9B$vKL8Ueoj!KB ztGA=QrMnHcD&AR48(<9vsMj}F4qY*51K|w1jt6a4s7^$xY_&C*J-y+e3S(9`&l(St z_ro*fo=kmLw2{gStr9cb8H8a)GEg?#Iwj2ffzTDssV0+Iq;`8tUkj}r+QNkN#wwf4 z?MUYAa7~-tu{W8{*+UaZJ}ua3Vl#E!G*E1-^SN!?xv>eS^Dcxi1?Epm* z6_*m1q29{&i91eA>p7;}0Q1f^u}?I~kbCsPZBOk@CG;}aYfj%3MZnS7J$3s=8`j-X z*F4s;P3PuDvycxh?xz@SjcYN14CxgDI&ujcB zCr@rOucij9CYczl44dxYba%^RrFOKnZ4Okn^hfL_8+$Dqdpx_(JTBX{!G<6TS7T$- zdfxTX(;FU})M*@edb@OWNx<`IJmKMWNB*G4d;LyRIP{p`QtG|I(^BfY(c3y_X=|yS z7ZyOz^ycuXmrol^S1&z6x(=_rP%td|QjYgm>P?1${$;>hT{OLW-R7bzfa_fJhCC+l z^65sL9jnv*ab9JRw3i-vT?c#PFueRNBG2&h-%+?|cl1b~c|pP=ULEngINJ3)<~+kI zZ?Fx+s}>okuU@rKwF`$d&&MPDTZE>$nGgT_g{BM5@8C3gVj6v58htfriWfzuO#S)v z$EUS_aT@)NY4i_-CLLv%%_pa|zch_DFDz_3+H3E$ZPY=4P6m;V9U8Q?_3A6?q>UZ2 z#_vqxv7L!2Pe*z|xt|B8?(Ky#&w10In5UN{*TzUcT$*Yyh0vv8>cfGn-;@oNZ71+n zVKf=b*n`t=sSg1e`QfBKv;ihz5n*g0}#BmlK!Qm3IZ>R$ROR#@k)^%`V*S!VzE}-kZ}wIp#sCzYW(t_!+xz1vYjE zfW7264wCcA7zcrko&@m&IN`|PM>@+cJ&d_R1mT0{K5pzzSx3BQ2kKTq%zz~n#ikDzZ{ z@OSa9i`EkH>+$mJV!=g_xkPXli{QOR9(s-m9s>WXg3It8?E%3rVz56F{3P%Tg6HF1 z?;C=$aHZf9jH^-bE8uSzJOci1!4nv7LhxQ-@|ASH8~Cu`r{LT5 zf*-^fZxy@AXwulfVxNeiP(> zCU`aQ^Map(Z+{bf9Ck|(Bl2wrbgmFgI;#cu!-p0l0~`^23^H-Szk|-4U@CE!3w{Oh zxn6KBuAdcr8)Ef!!F`ZyUh2U@qp zza4nH;M*{#=L!BU=5a*uTIks?_)%OB3w|6rKPq?w{JCB5x$yZu!M}$;PYCuSmcJH! z9Q;=VkK*dX7|0*`d$)yxAIDs*6MQ9NwOR0|Aiqm+5BwhxJO=;A1TTf2O9Y?9Sgtl0 zWBH`uJK+DFg0F-B-xWLwJwFxvpBT$?g1g|)Yl6RwYYF<3&zrzsCin~RGbs2e$ZQi# zIrSF7^f@RY_&t!x2rh@82L%5B{G);!z`sfGW$^7wf=4m-`vg->`k~<4fKLd%2XX$R z;6>2+hTxqT7p*t)|7P%)3;qn+Hwva(-d4feV7FWF4T!%jcm*)kQ_@q7zLyA|K%9>V zj^lcx;OF4m7X-J%w{Hk8f&NDXQw=^Lm~!e*g8vLZ>F-#`Rx!rDQ1Eg1dA4BkXN%wq zpr>2#+2CI&_+z+c1wRYBhXkJoogWtbDfoYj-~))&R|QXEj1LMvioQP<{4U7<+Q?vj zUl#l{_zHT-=Ytr>T)__jFBeSTI;#Y~89KKJ-Uk1734RSa-zxZ8_>dC(Bgjwy$MsKw>5q3#3+{y7QuHCa z1JEB3O!2P~ybSzy!4&^~!6z}sA;JCd;a!61o_JVr3;e%c@S7n+b&zb;!Txsy{{drp zNbtkpKPGqqu0Ixh7xesG@TKs9?q{TD9J%z0;Mve`!8Y;fuc+nu1)Kzjx1yBc%!cENNHq*`Oa4juai)AJ3jbCSOc*J}vl zN5=;R(=*RU2+z}ObrWI8)4t$Kg315;MScik-xExIf9c{sd!m{7KQuxi_Un{sB_!hxCfxjlW6ZkQ~wAVc$nD(20B`i8m3I9Uy3lJFc zhsH9OFvfca#<-NQ$gdRsAm%Gb82#y}7yc>a?Kv*oDtHUzx4UqUVES)}s0&{pcop&| z=E83mOt#W4e6is3;P<;+_%gv;u$B+GF!eWc4VN^=lKOcAPV|ZZX`*wQ3=2i<@kaU5c9- z??-`6A3*gJ=%ck|4%7A_Fx>j?fj)Y7MEYphMjyTZGkpNn8_>6efE=dnv!LDjPC_58 zUD8Lj%ILcv*z^HZ3+LmWGDBQw&*s**8b$mRc%%{hb0L2er}f z=W;c2xt080NW`=Z$vr1>hJP#M+6{p#`9#OB@pJnZK;qN9k$+T=sg2w~xbkZVP>n$D qBmp_dCLMHjg+aXtyUk$Gy>2mnq>tiAIcC-*pxU?^<0T-6(f7Z(B%z!D diff --git a/storno_cqp6xx_digital_xtal/Debug/makedep.mk b/storno_cqp6xx_digital_xtal/Debug/makedep.mk index a247ef4..c5edc89 100644 --- a/storno_cqp6xx_digital_xtal/Debug/makedep.mk +++ b/storno_cqp6xx_digital_xtal/Debug/makedep.mk @@ -8,6 +8,8 @@ avr_i2c_driver\avr_i2c.c avr_uart_driver\avr_uart.c +cm_msg_sync\cm_msg_sync.c + cqm6xx_app.c main.c diff --git a/storno_cqp6xx_digital_xtal/Debug/storno_cqp6xx_digital_xtal.elf b/storno_cqp6xx_digital_xtal/Debug/storno_cqp6xx_digital_xtal.elf index 73fb5fcf10f40796b91283be82c2c060375c963c..a8d71e9ee0127ce59a508a4389a48d06ad864feb 100644 GIT binary patch delta 17032 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 delta 17247 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 diff --git a/storno_cqp6xx_digital_xtal/Debug/storno_cqp6xx_digital_xtal.hex b/storno_cqp6xx_digital_xtal/Debug/storno_cqp6xx_digital_xtal.hex index 87940b6..5617f4b 100644 --- a/storno_cqp6xx_digital_xtal/Debug/storno_cqp6xx_digital_xtal.hex +++ b/storno_cqp6xx_digital_xtal/Debug/storno_cqp6xx_digital_xtal.hex @@ -1,10 +1,10 @@ :1000000019C033C032C031C030C02FC02EC02DC087 :100010002CC02BC02AC029C028C027C026C025C09C -:1000200024C023C022C021C020C01FC041C11DC0A8 +:1000200024C023C022C021C020C01FC06CC11DC07D :100030001CC01BC011241FBECFEFCDBFDFE3DEBF4E :100040002FE3A6E0BFE301C01D92AF30B207E1F796 -:100050001FE3A0E0BFE3E6EBFCE002C005900D92D9 -:10006000A630B107D9F769D224C6CACF81110DC015 +:100050001FE3A0E0BFE3EEECFCE002C005900D92D0 +:10006000A630B107D9F77CD230C6CACF81110DC0F6 :100070002091080430E002C0359527956A95E2F793 :1000800081E020FF80E090E0089580E090E0089516 :10009000E0E1F8E084818860848381E085830895CD @@ -41,166 +41,167 @@ :1002800081F0FC01002319F0013031F00DC08281B2 :1002900061DF80E090E00AC0828113DF80E090E0BF :1002A00005C08FEF9FEF02C080E090E00F910895AE -:1002B0001F920F920FB60F9211248F938091000816 -:1002C0008093063F8F910F900FBE0F901F9018954F -:1002D000CF93DF931F92CDB7DEB7E0E0F8E08CE676 -:1002E00095E08087918783E0878380EC8683848193 -:1002F000882324F48091000889838981E0E0F4E078 -:1003000080E4818380E8828378940F90DF91CF919D -:1003100008959091040895FFFCCF809302080895FA -:10032000FC0122813381232B21F0892B21F481E0F0 -:10033000089581E0089580E00895CF93DF93EC0164 -:10034000EFDF811132C089819881891771F1813085 -:1003500019F08230B1F029C081E493E00197F1F700 -:10036000000040E060E08A819B81E9D181E493E074 -:100370000197F1F7000041E061E08A819B81DFD1C4 -:1003800014C081E493E00197F1F7000041E060E0E0 -:100390008A819B81D4D181E493E00197F1F7000039 -:1003A00040E061E08A819B81CAD1DF91CF910895BD -:1003B000AF92BF92CF92DF92EF92FF920F931F9373 -:1003C000CF93DF93EC01ACDF81119AC0898181303A -:1003D00009F47FC020F0823009F487C091C088837F -:1003E00081E493E00197F1F7000060E08A819B814E -:1003F000F4D181E493E00197F1F700000F2EFBE5C3 -:10040000AF2EF8E4BF2EF0E1CF2ED12CF02D16EF59 -:10041000E12E1CE2F12E00E010E023E43DE040E09C -:1004200050E060E08A819B811BD281E493E00197D8 -:10043000F1F700000F2EF0ECAF2EF8E4BF2EF0E144 -:10044000CF2ED12CF02D12E0E12E1FE3F12E00E093 -:1004500010E028EC3CE040E050E061E08A819B81C4 -:10046000FFD181E493E00197F1F70000A12CB12CBA -:100470006501A394E12CF12C870122E130E040E0FA -:1004800050E060E08A819B81CFD081E493E00197C6 -:10049000F1F7000020E430E040E050E061E08A81C4 -:1004A0009B81C2D081E493E00197F1F7000040E026 -:1004B00060E08A819B8163D181E493E00197F1F749 -:1004C000000040E061E08A819B8159D181E089830D -:1004D00017C0CE0132DF8981888363E080E0C6DD0A -:1004E000019771F482E089830BC0CE0126DF8981F8 -:1004F000888363E080E0BADD892B11F481E0898391 -:10050000DF91CF911F910F91FF90EF90DF90CF90EF -:10051000BF90AF900895FC016115710531F0892BF2 -:1005200021F0118210826283738308958091040800 -:100530008823E4F7809100080895CF93DF93CDB727 -:10054000DEB7CB55D109CDBFDEBF80E090E05EDEE7 -:1005500040E660E070E0CE01019672DE4EE351E0CD -:10056000BE016F5F7F4FCE010496D8D1BE016C5F94 -:100570007F4F87E09FE3CFDFABDE82E7CADE82E713 -:10058000C8DE8AE0C6DE8DE0C4DE8091063F8823A7 -:1005900019F087E09FE30CDFC9DF8093063FB9DEE7 -:1005A00025E186E195E0215080409040E1F7EDCFD4 -:1005B0008F929F92AF92BF92CF92DF92EF92FF9273 -:1005C0000F931F93CF93DF93EC01862E5A0168019E -:1005D0007901C801019643D2982E192FFC0181920E -:1005E000CF01A601B5015CD3EA81FB81A701960189 -:1005F0002F5F3F4F4F4F5F4F01E0692D712F888173 -:1006000099810995892D912FC2D280E090E0DF91E8 -:10061000CF911F910F91FF90EF90DF90CF90BF90FF -:10062000AF909F908F900895AF92BF92CF92DF923C -:10063000EF92FF920F931F93FC01862FBA01A9013D -:100640004450510961097E4F440F551F661F771FA3 -:10065000440F551F661F771F440F551F661F771FD6 +:1002B000CF93DF931F92CDB7DEB7F894E0E0F8E07C +:1002C0008CE695E08087918783E0878380EC868346 +:1002D00080E885838481882324F4809100088983C1 +:1002E0008981E0E0F4E080E4818380E8828378948F +:1002F0000F90DF91CF9108959091040895FFFCCF66 +:100300008093020808951F920F920FB60F92112446 +:100310002F933F934F935F936F937F938F939F930D +:10032000AF93BF93EF93FF93809100088093063FB4 +:10033000E3DFFF91EF91BF91AF919F918F917F91FB +:100340006F915F914F913F912F910F900FBE0F9042 +:100350001F901895FC0122813381232B21F0892BDA +:1003600021F481E0089581E0089580E00895CF931D +:10037000DF93EC01EFDF811132C089819881891709 +:1003800071F1813019F08230B1F029C081E493E03D +:100390000197F1F7000040E060E08A819B81DBD1AA +:1003A00081E493E00197F1F7000041E061E08A8188 +:1003B0009B81D1D114C081E493E00197F1F7000053 +:1003C00041E060E08A819B81C6D181E493E001979E +:1003D000F1F7000040E061E08A819B81BCD1DF91B0 +:1003E000CF910895AF92BF92CF92DF92EF92FF929A +:1003F0000F931F93CF93DF93EC01ACDF81119AC071 +:100400008981813009F47FC020F0823009F487C0EF +:1004100091C0888381E493E00197F1F7000060E0E8 +:100420008A819B81E6D181E493E00197F1F7000096 +:100430000F2EFBE5AF2EF8E4BF2EF0E1CF2ED12C2E +:10044000F02D16EFE12E1CE2F12E00E010E023E487 +:100450003DE040E050E060E08A819B810DD281E484 +:1004600093E00197F1F700000F2EF0ECAF2EF8E4C7 +:10047000BF2EF0E1CF2ED12CF02D12E0E12E1FE3A4 +:10048000F12E00E010E028EC3CE040E050E061E0BC +:100490008A819B81F1D181E493E00197F1F700001B +:1004A000A12CB12C6501A394E12CF12C870122E150 +:1004B00030E040E050E060E08A819B81C1D081E47F +:1004C00093E00197F1F7000020E430E040E050E0D5 +:1004D00061E08A819B81B4D081E493E00197F1F7D8 +:1004E000000040E060E08A819B8155D181E493E087 +:1004F0000197F1F7000040E061E08A819B814BD1D8 +:1005000081E0898317C0CE0132DF8981888363E06F +:1005100080E0ACDD019771F482E089830BC0CE01ED +:1005200026DF8981888363E080E0A0DD892B11F4D8 +:1005300081E08983DF91CF911F910F91FF90EF9020 +:10054000DF90CF90BF90AF900895FC0161157105C9 +:1005500031F0892B21F01182108262837383089518 +:10056000CF93DF93CDB7DEB7CB55D109CDBFDEBF7B +:1005700080E090E04BDE40E660E070E0CE01019666 +:100580005FDE4EE351E0BE016F5F7F4FCE01049608 +:10059000D1D1BE016C5F7F4F87E09FE3D6DF88DE5D +:1005A00082E7AADE82E7A8DE8AE0A6DE8DE0A4DE8E +:1005B00087E09FE317DF2AE684E091E02150804046 +:1005C0009040E1F700C0F4CF8F929F92AF92BF921C +:1005D000CF92DF92EF92FF920F931F93CF93DF930F +:1005E000EC01862E5A0168017901C801019643D2B7 +:1005F000982E192FFC018192CF01A601B5015CD381 +:10060000EA81FB81A70196012F5F3F4F4F4F5F4F5C +:1006100001E0692D712F888199810995892D912F8C +:10062000C2D280E090E0DF91CF911F910F91FF90B7 +:10063000EF90DF90CF90BF90AF909F908F900895F4 +:10064000AF92BF92CF92DF92EF92FF920F931F93E0 +:10065000FC01862FBA01A9014450510961097E4F5E :10066000440F551F661F771F440F551F661F771FC6 :10067000440F551F661F771F440F551F661F771FB6 -:10068000882319F0813049F14FC0962F937086A1CD -:100690008C7F892B86A357A340A7F2A6E3A6D60199 -:1006A000C501072E7CE0B695A795979587957A9515 -:1006B000D1F7702D83708295807F0370802B81A786 -:1006C000B4A2A5A2AF014C5D5F4F08E010E020E0AE -:1006D00030E06AE2CF016CDF27C0962F937086A5C9 -:1006E0008C7F892B86A757A740ABF2AAE3AAD60135 -:1006F000C501072E7CE0B695A795979587957A95C5 -:10070000D1F7702D83708295807F0370802B81AB31 -:10071000B4A6A5A6AF01445D5F4F08E010E020E05D -:1007200030E062E3CF0144DF80E090E01F910F9161 -:10073000FF90EF90DF90CF90BF90AF9008950F9310 -:100740001F93662319F0613039F00BC0FC0127813B -:1007500040FB20F9278305C0FC01278140FB21F9DC -:100760002783AC01495F5F4F01E010E020E030E0FB -:1007700063E01EDF80E090E01F910F9108950F93DA -:100780001F93662319F06130A1F022C0FC0122857D -:1007900040FB27F933853F7D33872F642287AC01E7 -:1007A000465F5F4F01E010E020E030E060E100DFF5 -:1007B0000FC0FC01238540FB27F92F662387AC017E -:1007C000455F5F4F01E010E020E030E061E1F0DEE6 -:1007D00080E090E01F910F9108950F931F9366237F -:1007E00019F0613039F00AC0FC0121852B7F277F89 -:1007F000218704C0FC01218524602187AC01475F6B -:100800005F4F01E010E020E030E060EFD1DE80E0FB -:1008100090E01F910F9108950F931F9331E06111A4 -:1008200001C030E0FC01E95AFF4F208130FB25F97F -:10083000208331E0411101C030E0AC01495A5F4FE3 -:10084000FA01208130FB27F9208301E010E020E04D -:1008500030E061EBADDE80E090E01F910F910895F4 -:10086000AF92BF92CF92DF92EF92FF920F931F93BE -:10087000CF93DF93EC01662319F0613001F13DC0A5 -:1008800042708E898C7F482B4E8B3F8B288FD801EE -:10089000C70188279927AF70BB27FA8EEB8E8A2F66 -:1008A0008F70898FBC8AAD8A08E010E020E030E0CC -:1008B000AE014C5E5F4F6AE1CE017ADE1EC042702F -:1008C0008E8D8C7F482B4E8F3F8F28A3D801C70178 -:1008D00088279927AF70BB27FAA2EBA28A2F8F70C7 -:1008E00089A3BC8EAD8E08E010E020E030E0AE01C0 -:1008F000445E5F4F62E2CE015BDE41E061E0CE012B -:100900008BDF80E090E0DF91CF911F910F91FF90FE -:10091000EF90DF90CF90BF90AF900895EF92FF924D -:100920000F931F93CF93DF931F92CDB7DEB700973E -:1009300009F485C06115710509F484C0411551059C -:1009400009F483C07C01DC016D937C9311971296AE -:100950004D935C931397FC01349684E5DF011D925F -:100960008A95E9F78FEF898301E010E020E030E01D -:10097000AE014F5F5F4F63E0C7011ADE80E88983F5 -:1009800001E010E020E030E0AE014F5F5F4F60E13A -:10099000C7010EDE01E010E020E030E0AE014F5F65 -:1009A0005F4F61E1C70104DE01E010E020E030E0CC -:1009B000AE014F5F5F4F62E1C701FADD01E010E079 -:1009C00020E030E0AE014F5F5F4F63E1C701F0DD33 -:1009D00001E010E020E030E0AE014F5F5F4F64E1E6 -:1009E000C701E6DD01E010E020E030E0AE014F5F3E -:1009F0005F4F65E1C701DCDD01E010E020E030E0A1 -:100A0000AE014F5F5F4F66E1C701D2DD01E010E04C -:100A100020E030E0AE014F5F5F4F67E1C701C8DD06 -:100A200080EC898301E010E020E030E0AE014F5F10 -:100A30005F4F67EBC701BCDD80E090E008C08FEF3F -:100A40009FEF05C08FEF9FEF02C08FEF9FEF0F90DA -:100A5000DF91CF911F910F91FF90EF9008950F9329 -:100A60001F93CF93DF938230910510F482E090E0E2 -:100A7000E0910D3FF0910E3F20E030E0A0E0B0E0CB -:100A8000309719F14081518102811381481759072C -:100A9000C8F08417950769F4109731F012960C93FB -:100AA000129713961C9327C000930D3F10930E3F8F -:100AB00022C02115310519F04217530718F49A0185 -:100AC000BD01EF01DF01F801DBCF21153105F9F0A0 -:100AD000281B390B2430310580F48A819B816115F4 -:100AE000710521F0FB018283938304C080930D3F45 -:100AF00090930E3FFE01329644C0FE01E20FF31FB9 -:100B00008193919322503109288339833AC02091EF -:100B10000B3F30910C3F232B41F42091023F309149 -:100B2000033F20930B3F30930C3F2091003F3091C7 -:100B3000013F2115310541F42DB73EB74091043FE7 -:100B40005091053F241B350BE0910B3FF0910C3F7A -:100B5000E217F307A0F42E1B3F0B2817390778F094 -:100B6000AC014E5F5F4F2417350748F04E0F5F1FF3 -:100B700040930B3F50930C3F8193919302C0E0E070 -:100B8000F0E0CF01DF91CF911F910F910895CF93A6 -:100B9000DF93009709F481C0FC013297128213821F -:100BA000A0910D3FB0910E3F109781F420813181CB -:100BB000820F931F20910B3F30910C3F281739076C -:100BC00051F5E0930B3FF0930C3F67C0ED0120E03F -:100BD00030E0CE17DF0740F44A815B819E0141156A -:100BE0005105F1F0EA01F5CFC283D38340815181F1 -:100BF000840F951FC817D90759F488819981840FEC -:100C0000951F0296808391838A819B81828393833F -:100C10002115310529F4E0930D3FF0930E3F3DC0BF -:100C2000E901EA83FB8349915991C40FD51FEC1761 -:100C3000FD0761F480819181840F951F0296E9017F -:100C400088839983828193818A839B83E0E0F0E0AB -:100C500012968D919C911397009719F0FD01DC017C -:100C6000F7CF8D919C9111979D012E5F3F4F820F81 -:100C7000931F20910B3F30910C3F2817390769F4DF -:100C8000309729F410920D3F10920E3F02C012824D -:100C90001382A0930B3FB0930C3FDF91CF91089547 -:100CA000FB01DC0102C001900D9241505040D8F789 -:060CB0000895F894FFCF47 -:060CB60000000F3F2000CA +:10068000440F551F661F771F440F551F661F771FA6 +:10069000440F551F661F771F882319F0813049F1D9 +:1006A0004FC0962F937086A18C7F892B86A357A36A +:1006B00040A7F2A6E3A6D601C501072E7CE0B695B9 +:1006C000A795979587957A95D1F7702D8370829528 +:1006D000807F0370802B81A7B4A2A5A2AF014C5DDF +:1006E0005F4F08E010E020E030E06AE2CF016CDF0D +:1006F00027C0962F937086A58C7F892B86A757A736 +:1007000040ABF2AAE3AAD601C501072E7CE0B6955C +:10071000A795979587957A95D1F7702D83708295D7 +:10072000807F0370802B81ABB4A6A5A6AF01445D8A +:100730005F4F08E010E020E030E062E3CF0144DFEB +:1007400080E090E01F910F91FF90EF90DF90CF90AD +:10075000BF90AF9008950F931F93662319F06130F7 +:1007600039F00BC0FC01278140FB20F9278305C02D +:10077000FC01278140FB21F92783AC01495F5F4FD2 +:1007800001E010E020E030E063E01EDF80E090E078 +:100790001F910F9108950F931F93662319F06130F5 +:1007A000A1F022C0FC01228540FB27F933853F7D63 +:1007B00033872F642287AC01465F5F4F01E010E072 +:1007C00020E030E060E100DF0FC0FC01238540FB4A +:1007D00027F92F662387AC01455F5F4F01E010E0EA +:1007E00020E030E061E1F0DE80E090E01F910F91C9 +:1007F00008950F931F93662319F0613039F00AC0F2 +:10080000FC0121852B7F277F218704C0FC012185E6 +:1008100024602187AC01475F5F4F01E010E020E0DA +:1008200030E060EFD1DE80E090E01F910F910895FD +:100830000F931F9331E0611101C030E0FC01E95AD0 +:10084000FF4F208130FB25F9208331E0411101C0A9 +:1008500030E0AC01495A5F4FFA01208130FB27F9A3 +:10086000208301E010E020E030E061EBADDE80E0CD +:1008700090E01F910F910895AF92BF92CF92DF92B7 +:10088000EF92FF920F931F93CF93DF93EC016623B8 +:1008900019F0613001F13DC042708E898C7F482B88 +:1008A0004E8B3F8B288FD801C70188279927AF70BF +:1008B000BB27FA8EEB8E8A2F8F70898FBC8AAD8A08 +:1008C00008E010E020E030E0AE014C5E5F4F6AE1EE +:1008D000CE017ADE1EC042708E8D8C7F482B4E8FEB +:1008E0003F8F28A3D801C70188279927AF70BB275E +:1008F000FAA2EBA28A2F8F7089A3BC8EAD8E08E07E +:1009000010E020E030E0AE01445E5F4F62E2CE01D5 +:100910005BDE41E061E0CE018BDF80E090E0DF91C3 +:10092000CF911F910F91FF90EF90DF90CF90BF90EC +:10093000AF900895EF92FF920F931F93CF93DF93A1 +:100940001F92CDB7DEB7009709F485C06115710518 +:1009500009F484C04115510509F483C07C01DC0110 +:100960006D937C93119712964D935C931397FC01B2 +:10097000349684E5DF011D928A95E9F78FEF89832C +:1009800001E010E020E030E0AE014F5F5F4F63E038 +:10099000C7011ADE80E8898301E010E020E030E042 +:1009A000AE014F5F5F4F60E1C7010EDE01E010E076 +:1009B00020E030E0AE014F5F5F4F61E1C70104DE30 +:1009C00001E010E020E030E0AE014F5F5F4F62E1F8 +:1009D000C701FADD01E010E020E030E0AE014F5F3A +:1009E0005F4F63E1C701F0DD01E010E020E030E09F +:1009F000AE014F5F5F4F64E1C701E6DD01E010E04B +:100A000020E030E0AE014F5F5F4F65E1C701DCDD04 +:100A100001E010E020E030E0AE014F5F5F4F66E1A3 +:100A2000C701D2DD01E010E020E030E0AE014F5F11 +:100A30005F4F67E1C701C8DD80EC898301E010E00A +:100A400020E030E0AE014F5F5F4F67EBC701BCDDD8 +:100A500080E090E008C08FEF9FEF05C08FEF9FEF21 +:100A600002C08FEF9FEF0F90DF91CF911F910F91F9 +:100A7000FF90EF9008950F931F93CF93DF938230F1 +:100A8000910510F482E090E0E0910D3FF0910E3F6F +:100A900020E030E0A0E0B0E0309719F140815181D2 +:100AA0000281138148175907C8F08417950769F424 +:100AB000109731F012960C93129713961C9327C03F +:100AC00000930D3F10930E3F22C02115310519F000 +:100AD0004217530718F49A01BD01EF01DF01F80135 +:100AE000DBCF21153105F9F0281B390B24303105F6 +:100AF00080F48A819B816115710521F0FB0182835D +:100B0000938304C080930D3F90930E3FFE01329675 +:100B100044C0FE01E20FF31F8193919322503109EB +:100B2000288339833AC020910B3F30910C3F232B0F +:100B300041F42091023F3091033F20930B3F3093CB +:100B40000C3F2091003F3091013F2115310541F4C8 +:100B50002DB73EB74091043F5091053F241B350B04 +:100B6000E0910B3FF0910C3FE217F307A0F42E1B2E +:100B70003F0B2817390778F0AC014E5F5F4F241701 +:100B8000350748F04E0F5F1F40930B3F50930C3FCB +:100B90008193919302C0E0E0F0E0CF01DF91CF912B +:100BA0001F910F910895CF93DF93009709F481C0AF +:100BB000FC01329712821382A0910D3FB0910E3F3B +:100BC000109781F420813181820F931F20910B3F78 +:100BD00030910C3F2817390751F5E0930B3FF09304 +:100BE0000C3F67C0ED0120E030E0CE17DF0740F496 +:100BF0004A815B819E0141155105F1F0EA01F5CF73 +:100C0000C283D38340815181840F951FC817D907B0 +:100C100059F488819981840F951F0296808391836E +:100C20008A819B81828393832115310529F4E09386 +:100C30000D3FF0930E3F3DC0E901EA83FB834991EC +:100C40005991C40FD51FEC17FD0761F48081918184 +:100C5000840F951F0296E90188839983828193818D +:100C60008A839B83E0E0F0E012968D919C9113972C +:100C7000009719F0FD01DC01F7CF8D919C91119740 +:100C80009D012E5F3F4F820F931F20910B3F3091AC +:100C90000C3F2817390769F4309729F410920D3F5B +:100CA00010920E3F02C012821382A0930B3FB093AA +:100CB0000C3FDF91CF910895FB01DC0102C0019050 +:0E0CC0000D9241505040D8F70895F894FFCFA0 +:060CCE0000000F3F2000B2 :00000001FF diff --git a/storno_cqp6xx_digital_xtal/Debug/storno_cqp6xx_digital_xtal.lss b/storno_cqp6xx_digital_xtal/Debug/storno_cqp6xx_digital_xtal.lss index 69de0aa..74ebb25 100644 --- a/storno_cqp6xx_digital_xtal/Debug/storno_cqp6xx_digital_xtal.lss +++ b/storno_cqp6xx_digital_xtal/Debug/storno_cqp6xx_digital_xtal.lss @@ -3,31 +3,31 @@ storno_cqp6xx_digital_xtal.elf: file format elf32-avr Sections: Idx Name Size VMA LMA File off Algn - 0 .data 00000006 00803f00 00000cb6 00000d4a 2**0 + 0 .data 00000006 00803f00 00000cce 00000d62 2**0 CONTENTS, ALLOC, LOAD, DATA - 1 .text 00000cb6 00000000 00000000 00000094 2**1 + 1 .text 00000cce 00000000 00000000 00000094 2**1 CONTENTS, ALLOC, LOAD, READONLY, CODE - 2 .bss 00000009 00803f06 00803f06 00000d50 2**0 + 2 .bss 00000009 00803f06 00803f06 00000d68 2**0 ALLOC - 3 .comment 00000030 00000000 00000000 00000d50 2**0 + 3 .comment 00000030 00000000 00000000 00000d68 2**0 CONTENTS, READONLY - 4 .note.gnu.avr.deviceinfo 0000003c 00000000 00000000 00000d80 2**2 + 4 .note.gnu.avr.deviceinfo 0000003c 00000000 00000000 00000d98 2**2 CONTENTS, READONLY - 5 .debug_aranges 00000198 00000000 00000000 00000dbc 2**0 + 5 .debug_aranges 000001a0 00000000 00000000 00000dd4 2**0 CONTENTS, READONLY, DEBUGGING - 6 .debug_info 00004c94 00000000 00000000 00000f54 2**0 + 6 .debug_info 00004b29 00000000 00000000 00000f74 2**0 CONTENTS, READONLY, DEBUGGING - 7 .debug_abbrev 00001b4f 00000000 00000000 00005be8 2**0 + 7 .debug_abbrev 00001b2d 00000000 00000000 00005a9d 2**0 CONTENTS, READONLY, DEBUGGING - 8 .debug_line 0000129b 00000000 00000000 00007737 2**0 + 8 .debug_line 0000126c 00000000 00000000 000075ca 2**0 CONTENTS, READONLY, DEBUGGING - 9 .debug_frame 000004ec 00000000 00000000 000089d4 2**2 + 9 .debug_frame 00000534 00000000 00000000 00008838 2**2 CONTENTS, READONLY, DEBUGGING - 10 .debug_str 00001eaa 00000000 00000000 00008ec0 2**0 + 10 .debug_str 00001ec6 00000000 00000000 00008d6c 2**0 CONTENTS, READONLY, DEBUGGING - 11 .debug_loc 00001c53 00000000 00000000 0000ad6a 2**0 + 11 .debug_loc 00001ce2 00000000 00000000 0000ac32 2**0 CONTENTS, READONLY, DEBUGGING - 12 .debug_ranges 00000138 00000000 00000000 0000c9bd 2**0 + 12 .debug_ranges 00000140 00000000 00000000 0000c914 2**0 CONTENTS, READONLY, DEBUGGING Disassembly of section .text: @@ -55,7 +55,7 @@ Disassembly of section .text: 26: 21 c0 rjmp .+66 ; 0x6a <__bad_interrupt> 28: 20 c0 rjmp .+64 ; 0x6a <__bad_interrupt> 2a: 1f c0 rjmp .+62 ; 0x6a <__bad_interrupt> - 2c: 41 c1 rjmp .+642 ; 0x2b0 <__vector_22> + 2c: 6c c1 rjmp .+728 ; 0x306 <__vector_22> 2e: 1d c0 rjmp .+58 ; 0x6a <__bad_interrupt> 30: 1c c0 rjmp .+56 ; 0x6a <__bad_interrupt> 32: 1b c0 rjmp .+54 ; 0x6a <__bad_interrupt> @@ -86,7 +86,7 @@ Disassembly of section .text: 50: 1f e3 ldi r17, 0x3F ; 63 52: a0 e0 ldi r26, 0x00 ; 0 54: bf e3 ldi r27, 0x3F ; 63 - 56: e6 eb ldi r30, 0xB6 ; 182 + 56: ee ec ldi r30, 0xCE ; 206 58: fc e0 ldi r31, 0x0C ; 12 5a: 02 c0 rjmp .+4 ; 0x60 <__do_copy_data+0x10> 5c: 05 90 lpm r0, Z+ @@ -94,8 +94,8 @@ Disassembly of section .text: 60: a6 30 cpi r26, 0x06 ; 6 62: b1 07 cpc r27, r17 64: d9 f7 brne .-10 ; 0x5c <__do_copy_data+0xc> - 66: 69 d2 rcall .+1234 ; 0x53a
- 68: 24 c6 rjmp .+3144 ; 0xcb2 <_exit> + 66: 7c d2 rcall .+1272 ; 0x560
+ 68: 30 c6 rjmp .+3168 ; 0xcca <_exit> 0000006a <__bad_interrupt>: 6a: ca cf rjmp .-108 ; 0x0 <__vectors> @@ -658,713 +658,711 @@ int cm_i2c_transfer(cm_i2c_device_t *inst, uint8_t *data, uint32_t len, i2c_setg 2ac: 0f 91 pop r16 2ae: 08 95 ret -000002b0 <__vector_22>: +000002b0 : + + // Process the received data as needed (e.g., store in a buffer) +} + + +void cm_uart_init(){ + 2b0: cf 93 push r28 + 2b2: df 93 push r29 + 2b4: 1f 92 push r1 + 2b6: cd b7 in r28, 0x3d ; 61 + 2b8: de b7 in r29, 0x3e ; 62 + + //For interrupt-driven USART operation, global interrupts must be disabled during the initialization + cli(); + 2ba: f8 94 cli + + // Calculate and set baud rate register (3.33 MHz / (16 * 9600) - 1) + uint16_t baud = 1388;//(F_CPU / (16 * BAUD_RATE)) - 1; + USART0.BAUD = baud; + 2bc: e0 e0 ldi r30, 0x00 ; 0 + 2be: f8 e0 ldi r31, 0x08 ; 8 + 2c0: 8c e6 ldi r24, 0x6C ; 108 + 2c2: 95 e0 ldi r25, 0x05 ; 5 + 2c4: 80 87 std Z+8, r24 ; 0x08 + 2c6: 91 87 std Z+9, r25 ; 0x09 + + // Configure USART0 for 8-bit data, no parity, 1 stop bit + USART0.CTRLC = USART_CMODE_ASYNCHRONOUS_gc | // Asynchronous mode + 2c8: 83 e0 ldi r24, 0x03 ; 3 + 2ca: 87 83 std Z+7, r24 ; 0x07 + USART_CHSIZE_8BIT_gc | // 8-bit character size + USART_PMODE_DISABLED_gc; // No parity + + // Enable receiver, transmitter, and receive complete interrupt + USART0.CTRLB = USART_RXEN_bm | // Enable receiver + 2cc: 80 ec ldi r24, 0xC0 ; 192 + 2ce: 86 83 std Z+6, r24 ; 0x06 + USART_TXEN_bm; // Enable transmitter + + + USART0.CTRLA = USART_RXCIE_bm; // Enable receive interrupt + 2d0: 80 e8 ldi r24, 0x80 ; 128 + 2d2: 85 83 std Z+5, r24 ; 0x05 + + // Clear any existing receive complete interrupt flag by reading RXDATAL + if (USART0.STATUS & USART_RXCIF_bm) { + 2d4: 84 81 ldd r24, Z+4 ; 0x04 + 2d6: 88 23 and r24, r24 + 2d8: 24 f4 brge .+8 ; 0x2e2 + volatile uint8_t dummy = USART0.RXDATAL; // Read RXDATAL to clear the flag + 2da: 80 91 00 08 lds r24, 0x0800 ; 0x800800 <__RODATA_PM_OFFSET__+0x7f8800> + 2de: 89 83 std Y+1, r24 ; 0x01 + (void)dummy; // Silence unused variable warning + 2e0: 89 81 ldd r24, Y+1 ; 0x01 + } + + PORTA.DIRSET = (1 << 6); // Set PA1 (TX) as output + 2e2: e0 e0 ldi r30, 0x00 ; 0 + 2e4: f4 e0 ldi r31, 0x04 ; 4 + 2e6: 80 e4 ldi r24, 0x40 ; 64 + 2e8: 81 83 std Z+1, r24 ; 0x01 + PORTA.DIRCLR = (1 << 7); // Set PA2 (RX) as input + 2ea: 80 e8 ldi r24, 0x80 ; 128 + 2ec: 82 83 std Z+2, r24 ; 0x02 + // Enable global interrupts + sei(); + 2ee: 78 94 sei + + +} + 2f0: 0f 90 pop r0 + 2f2: df 91 pop r29 + 2f4: cf 91 pop r28 + 2f6: 08 95 ret + +000002f8 : + + +void cm_uart_send(uint8_t data) { + // Wait until the Data Register Empty flag (DREIF) is set, indicating it's ready for new data + while (!(USART0.STATUS & USART_DREIF_bm)); + 2f8: 90 91 04 08 lds r25, 0x0804 ; 0x800804 <__RODATA_PM_OFFSET__+0x7f8804> + 2fc: 95 ff sbrs r25, 5 + 2fe: fc cf rjmp .-8 ; 0x2f8 + + // Load the data into the transmit register + USART0.TXDATAL = data; + 300: 80 93 02 08 sts 0x0802, r24 ; 0x800802 <__RODATA_PM_OFFSET__+0x7f8802> + 304: 08 95 ret + +00000306 <__vector_22>: #ifdef AVR_ATTINY_402 #define BAUD_RATE 9600 extern uint8_t received_data; ISR(USART0_RXC_vect) { - 2b0: 1f 92 push r1 - 2b2: 0f 92 push r0 - 2b4: 0f b6 in r0, 0x3f ; 63 - 2b6: 0f 92 push r0 - 2b8: 11 24 eor r1, r1 - 2ba: 8f 93 push r24 + 306: 1f 92 push r1 + 308: 0f 92 push r0 + 30a: 0f b6 in r0, 0x3f ; 63 + 30c: 0f 92 push r0 + 30e: 11 24 eor r1, r1 + 310: 2f 93 push r18 + 312: 3f 93 push r19 + 314: 4f 93 push r20 + 316: 5f 93 push r21 + 318: 6f 93 push r22 + 31a: 7f 93 push r23 + 31c: 8f 93 push r24 + 31e: 9f 93 push r25 + 320: af 93 push r26 + 322: bf 93 push r27 + 324: ef 93 push r30 + 326: ff 93 push r31 // Read received data received_data = USART0.RXDATAL; - 2bc: 80 91 00 08 lds r24, 0x0800 ; 0x800800 <__RODATA_PM_OFFSET__+0x7f8800> - 2c0: 80 93 06 3f sts 0x3F06, r24 ; 0x803f06 <__data_end> - //cm_uart_send(received_data); + 328: 80 91 00 08 lds r24, 0x0800 ; 0x800800 <__RODATA_PM_OFFSET__+0x7f8800> + 32c: 80 93 06 3f sts 0x3F06, r24 ; 0x803f06 <__data_end> + cm_uart_send(received_data); + 330: e3 df rcall .-58 ; 0x2f8 // Process the received data as needed (e.g., store in a buffer) } - 2c4: 8f 91 pop r24 - 2c6: 0f 90 pop r0 - 2c8: 0f be out 0x3f, r0 ; 63 - 2ca: 0f 90 pop r0 - 2cc: 1f 90 pop r1 - 2ce: 18 95 reti + 332: ff 91 pop r31 + 334: ef 91 pop r30 + 336: bf 91 pop r27 + 338: af 91 pop r26 + 33a: 9f 91 pop r25 + 33c: 8f 91 pop r24 + 33e: 7f 91 pop r23 + 340: 6f 91 pop r22 + 342: 5f 91 pop r21 + 344: 4f 91 pop r20 + 346: 3f 91 pop r19 + 348: 2f 91 pop r18 + 34a: 0f 90 pop r0 + 34c: 0f be out 0x3f, r0 ; 63 + 34e: 0f 90 pop r0 + 350: 1f 90 pop r1 + 352: 18 95 reti -000002d0 : - - -void cm_uart_init(){ - 2d0: cf 93 push r28 - 2d2: df 93 push r29 - 2d4: 1f 92 push r1 - 2d6: cd b7 in r28, 0x3d ; 61 - 2d8: de b7 in r29, 0x3e ; 62 - - // Calculate and set baud rate register (3.33 MHz / (16 * 9600) - 1) - uint16_t baud = 1388;//(F_CPU / (16 * BAUD_RATE)) - 1; - USART0.BAUD = baud; - 2da: e0 e0 ldi r30, 0x00 ; 0 - 2dc: f8 e0 ldi r31, 0x08 ; 8 - 2de: 8c e6 ldi r24, 0x6C ; 108 - 2e0: 95 e0 ldi r25, 0x05 ; 5 - 2e2: 80 87 std Z+8, r24 ; 0x08 - 2e4: 91 87 std Z+9, r25 ; 0x09 - - // Configure USART0 for 8-bit data, no parity, 1 stop bit - USART0.CTRLC = USART_CMODE_ASYNCHRONOUS_gc | // Asynchronous mode - 2e6: 83 e0 ldi r24, 0x03 ; 3 - 2e8: 87 83 std Z+7, r24 ; 0x07 - USART_CHSIZE_8BIT_gc | // 8-bit character size - USART_PMODE_DISABLED_gc; // No parity - - // Enable receiver, transmitter, and receive complete interrupt - USART0.CTRLB = USART_RXEN_bm | // Enable receiver - 2ea: 80 ec ldi r24, 0xC0 ; 192 - 2ec: 86 83 std Z+6, r24 ; 0x06 - USART_TXEN_bm | // Enable transmitter - USART_RXCIE_bm; // Enable receive interrupt - - // Clear any existing receive complete interrupt flag by reading RXDATAL - if (USART0.STATUS & USART_RXCIF_bm) { - 2ee: 84 81 ldd r24, Z+4 ; 0x04 - 2f0: 88 23 and r24, r24 - 2f2: 24 f4 brge .+8 ; 0x2fc - volatile uint8_t dummy = USART0.RXDATAL; // Read RXDATAL to clear the flag - 2f4: 80 91 00 08 lds r24, 0x0800 ; 0x800800 <__RODATA_PM_OFFSET__+0x7f8800> - 2f8: 89 83 std Y+1, r24 ; 0x01 - (void)dummy; // Silence unused variable warning - 2fa: 89 81 ldd r24, Y+1 ; 0x01 - } - - PORTA.DIRSET = (1 << 6); // Set PA1 (TX) as output - 2fc: e0 e0 ldi r30, 0x00 ; 0 - 2fe: f4 e0 ldi r31, 0x04 ; 4 - 300: 80 e4 ldi r24, 0x40 ; 64 - 302: 81 83 std Z+1, r24 ; 0x01 - PORTA.DIRCLR = (1 << 7); // Set PA2 (RX) as input - 304: 80 e8 ldi r24, 0x80 ; 128 - 306: 82 83 std Z+2, r24 ; 0x02 - // Enable global interrupts - //sei(); - sei(); - 308: 78 94 sei - -} - 30a: 0f 90 pop r0 - 30c: df 91 pop r29 - 30e: cf 91 pop r28 - 310: 08 95 ret - -00000312 : - - -void cm_uart_send(uint8_t data) { - // Wait until the Data Register Empty flag (DREIF) is set, indicating it's ready for new data - while (!(USART0.STATUS & USART_DREIF_bm)); - 312: 90 91 04 08 lds r25, 0x0804 ; 0x800804 <__RODATA_PM_OFFSET__+0x7f8804> - 316: 95 ff sbrs r25, 5 - 318: fc cf rjmp .-8 ; 0x312 - - // Load the data into the transmit register - USART0.TXDATAL = data; - 31a: 80 93 02 08 sts 0x0802, r24 ; 0x800802 <__RODATA_PM_OFFSET__+0x7f8802> - 31e: 08 95 ret - -00000320 : +00000354 : #include "avr_global_config.h" #include static uint8_t isStructValid(storno_xtal_app_t *inst){ if(inst->si5351_dev == NULL) return 1; - 320: fc 01 movw r30, r24 - 322: 22 81 ldd r18, Z+2 ; 0x02 - 324: 33 81 ldd r19, Z+3 ; 0x03 - 326: 23 2b or r18, r19 - 328: 21 f0 breq .+8 ; 0x332 + 354: fc 01 movw r30, r24 + 356: 22 81 ldd r18, Z+2 ; 0x02 + 358: 33 81 ldd r19, Z+3 ; 0x03 + 35a: 23 2b or r18, r19 + 35c: 21 f0 breq .+8 ; 0x366 if(inst == NULL)return 1; - 32a: 89 2b or r24, r25 - 32c: 21 f4 brne .+8 ; 0x336 - 32e: 81 e0 ldi r24, 0x01 ; 1 - 330: 08 95 ret + 35e: 89 2b or r24, r25 + 360: 21 f4 brne .+8 ; 0x36a + 362: 81 e0 ldi r24, 0x01 ; 1 + 364: 08 95 ret #include "avr_global_config.h" #include static uint8_t isStructValid(storno_xtal_app_t *inst){ if(inst->si5351_dev == NULL) return 1; - 332: 81 e0 ldi r24, 0x01 ; 1 - 334: 08 95 ret + 366: 81 e0 ldi r24, 0x01 ; 1 + 368: 08 95 ret if(inst == NULL)return 1; return 0; - 336: 80 e0 ldi r24, 0x00 ; 0 + 36a: 80 e0 ldi r24, 0x00 ; 0 } - 338: 08 95 ret + 36c: 08 95 ret -0000033a : +0000036e : static void cqm6xx_app_updateOsc(storno_xtal_app_t *inst){ - 33a: cf 93 push r28 - 33c: df 93 push r29 - 33e: ec 01 movw r28, r24 + 36e: cf 93 push r28 + 370: df 93 push r29 + 372: ec 01 movw r28, r24 // Check Struct if(isStructValid(inst) != 0)return; - 340: ef df rcall .-34 ; 0x320 - 342: 81 11 cpse r24, r1 - 344: 32 c0 rjmp .+100 ; 0x3aa + 374: ef df rcall .-34 ; 0x354 + 376: 81 11 cpse r24, r1 + 378: 32 c0 rjmp .+100 ; 0x3de // We will only do this once, aka when transisioning from RX to TX and TX to RX.. if(inst->state_next == inst->state_now)return; - 346: 89 81 ldd r24, Y+1 ; 0x01 - 348: 98 81 ld r25, Y - 34a: 89 17 cp r24, r25 - 34c: 71 f1 breq .+92 ; 0x3aa + 37a: 89 81 ldd r24, Y+1 ; 0x01 + 37c: 98 81 ld r25, Y + 37e: 89 17 cp r24, r25 + 380: 71 f1 breq .+92 ; 0x3de switch(inst->state_next){ - 34e: 81 30 cpi r24, 0x01 ; 1 - 350: 19 f0 breq .+6 ; 0x358 - 352: 82 30 cpi r24, 0x02 ; 2 - 354: b1 f0 breq .+44 ; 0x382 - 356: 29 c0 rjmp .+82 ; 0x3aa + 382: 81 30 cpi r24, 0x01 ; 1 + 384: 19 f0 breq .+6 ; 0x38c + 386: 82 30 cpi r24, 0x02 ; 2 + 388: b1 f0 breq .+44 ; 0x3b6 + 38a: 29 c0 rjmp .+82 ; 0x3de #else //round up by default __ticks_dc = (uint32_t)(ceil(fabs(__tmp))); #endif __builtin_avr_delay_cycles(__ticks_dc); - 358: 81 e4 ldi r24, 0x41 ; 65 - 35a: 93 e0 ldi r25, 0x03 ; 3 - 35c: 01 97 sbiw r24, 0x01 ; 1 - 35e: f1 f7 brne .-4 ; 0x35c - 360: 00 00 nop + 38c: 81 e4 ldi r24, 0x41 ; 65 + 38e: 93 e0 ldi r25, 0x03 ; 3 + 390: 01 97 sbiw r24, 0x01 ; 1 + 392: f1 f7 brne .-4 ; 0x390 + 394: 00 00 nop case STORNO_APP_RX_MODE: _delay_ms(1); cm_setOutputEnable(inst->si5351_dev,SI5351_OUTPUT_0,SI5351_OUTPUT_ENABLE); // RX - 362: 40 e0 ldi r20, 0x00 ; 0 - 364: 60 e0 ldi r22, 0x00 ; 0 - 366: 8a 81 ldd r24, Y+2 ; 0x02 - 368: 9b 81 ldd r25, Y+3 ; 0x03 - 36a: e9 d1 rcall .+978 ; 0x73e - 36c: 81 e4 ldi r24, 0x41 ; 65 - 36e: 93 e0 ldi r25, 0x03 ; 3 - 370: 01 97 sbiw r24, 0x01 ; 1 - 372: f1 f7 brne .-4 ; 0x370 - 374: 00 00 nop + 396: 40 e0 ldi r20, 0x00 ; 0 + 398: 60 e0 ldi r22, 0x00 ; 0 + 39a: 8a 81 ldd r24, Y+2 ; 0x02 + 39c: 9b 81 ldd r25, Y+3 ; 0x03 + 39e: db d1 rcall .+950 ; 0x756 + 3a0: 81 e4 ldi r24, 0x41 ; 65 + 3a2: 93 e0 ldi r25, 0x03 ; 3 + 3a4: 01 97 sbiw r24, 0x01 ; 1 + 3a6: f1 f7 brne .-4 ; 0x3a4 + 3a8: 00 00 nop _delay_ms(1); cm_setOutputEnable(inst->si5351_dev,SI5351_OUTPUT_1,SI5351_OUTPUT_DISABLE); // TX - 376: 41 e0 ldi r20, 0x01 ; 1 - 378: 61 e0 ldi r22, 0x01 ; 1 - 37a: 8a 81 ldd r24, Y+2 ; 0x02 - 37c: 9b 81 ldd r25, Y+3 ; 0x03 - 37e: df d1 rcall .+958 ; 0x73e + 3aa: 41 e0 ldi r20, 0x01 ; 1 + 3ac: 61 e0 ldi r22, 0x01 ; 1 + 3ae: 8a 81 ldd r24, Y+2 ; 0x02 + 3b0: 9b 81 ldd r25, Y+3 ; 0x03 + 3b2: d1 d1 rcall .+930 ; 0x756 break; - 380: 14 c0 rjmp .+40 ; 0x3aa - 382: 81 e4 ldi r24, 0x41 ; 65 - 384: 93 e0 ldi r25, 0x03 ; 3 - 386: 01 97 sbiw r24, 0x01 ; 1 - 388: f1 f7 brne .-4 ; 0x386 - 38a: 00 00 nop + 3b4: 14 c0 rjmp .+40 ; 0x3de + 3b6: 81 e4 ldi r24, 0x41 ; 65 + 3b8: 93 e0 ldi r25, 0x03 ; 3 + 3ba: 01 97 sbiw r24, 0x01 ; 1 + 3bc: f1 f7 brne .-4 ; 0x3ba + 3be: 00 00 nop case STORNO_APP_TX_MODE: _delay_ms(1); cm_setOutputEnable(inst->si5351_dev,SI5351_OUTPUT_0,SI5351_OUTPUT_DISABLE); // RX - 38c: 41 e0 ldi r20, 0x01 ; 1 - 38e: 60 e0 ldi r22, 0x00 ; 0 - 390: 8a 81 ldd r24, Y+2 ; 0x02 - 392: 9b 81 ldd r25, Y+3 ; 0x03 - 394: d4 d1 rcall .+936 ; 0x73e - 396: 81 e4 ldi r24, 0x41 ; 65 - 398: 93 e0 ldi r25, 0x03 ; 3 - 39a: 01 97 sbiw r24, 0x01 ; 1 - 39c: f1 f7 brne .-4 ; 0x39a - 39e: 00 00 nop + 3c0: 41 e0 ldi r20, 0x01 ; 1 + 3c2: 60 e0 ldi r22, 0x00 ; 0 + 3c4: 8a 81 ldd r24, Y+2 ; 0x02 + 3c6: 9b 81 ldd r25, Y+3 ; 0x03 + 3c8: c6 d1 rcall .+908 ; 0x756 + 3ca: 81 e4 ldi r24, 0x41 ; 65 + 3cc: 93 e0 ldi r25, 0x03 ; 3 + 3ce: 01 97 sbiw r24, 0x01 ; 1 + 3d0: f1 f7 brne .-4 ; 0x3ce + 3d2: 00 00 nop _delay_ms(1); cm_setOutputEnable(inst->si5351_dev,SI5351_OUTPUT_1,SI5351_OUTPUT_ENABLE); // TX - 3a0: 40 e0 ldi r20, 0x00 ; 0 - 3a2: 61 e0 ldi r22, 0x01 ; 1 - 3a4: 8a 81 ldd r24, Y+2 ; 0x02 - 3a6: 9b 81 ldd r25, Y+3 ; 0x03 - 3a8: ca d1 rcall .+916 ; 0x73e + 3d4: 40 e0 ldi r20, 0x00 ; 0 + 3d6: 61 e0 ldi r22, 0x01 ; 1 + 3d8: 8a 81 ldd r24, Y+2 ; 0x02 + 3da: 9b 81 ldd r25, Y+3 ; 0x03 + 3dc: bc d1 rcall .+888 ; 0x756 break; } } - 3aa: df 91 pop r29 - 3ac: cf 91 pop r28 - 3ae: 08 95 ret + 3de: df 91 pop r29 + 3e0: cf 91 pop r28 + 3e2: 08 95 ret -000003b0 : +000003e4 : void cqm6xx_app_statemachine(storno_xtal_app_t *inst){ - 3b0: af 92 push r10 - 3b2: bf 92 push r11 - 3b4: cf 92 push r12 - 3b6: df 92 push r13 - 3b8: ef 92 push r14 - 3ba: ff 92 push r15 - 3bc: 0f 93 push r16 - 3be: 1f 93 push r17 - 3c0: cf 93 push r28 - 3c2: df 93 push r29 - 3c4: ec 01 movw r28, r24 + 3e4: af 92 push r10 + 3e6: bf 92 push r11 + 3e8: cf 92 push r12 + 3ea: df 92 push r13 + 3ec: ef 92 push r14 + 3ee: ff 92 push r15 + 3f0: 0f 93 push r16 + 3f2: 1f 93 push r17 + 3f4: cf 93 push r28 + 3f6: df 93 push r29 + 3f8: ec 01 movw r28, r24 // Check Struct if(isStructValid(inst) != 0)return; - 3c6: ac df rcall .-168 ; 0x320 - 3c8: 81 11 cpse r24, r1 - 3ca: 9a c0 rjmp .+308 ; 0x500 <__LOCK_REGION_LENGTH__+0x100> + 3fa: ac df rcall .-168 ; 0x354 + 3fc: 81 11 cpse r24, r1 + 3fe: 9a c0 rjmp .+308 ; 0x534 <__LOCK_REGION_LENGTH__+0x134> switch (inst->state_next) - 3cc: 89 81 ldd r24, Y+1 ; 0x01 - 3ce: 81 30 cpi r24, 0x01 ; 1 - 3d0: 09 f4 brne .+2 ; 0x3d4 - 3d2: 7f c0 rjmp .+254 ; 0x4d2 <__LOCK_REGION_LENGTH__+0xd2> - 3d4: 20 f0 brcs .+8 ; 0x3de - 3d6: 82 30 cpi r24, 0x02 ; 2 - 3d8: 09 f4 brne .+2 ; 0x3dc - 3da: 87 c0 rjmp .+270 ; 0x4ea <__LOCK_REGION_LENGTH__+0xea> - 3dc: 91 c0 rjmp .+290 ; 0x500 <__LOCK_REGION_LENGTH__+0x100> + 400: 89 81 ldd r24, Y+1 ; 0x01 + 402: 81 30 cpi r24, 0x01 ; 1 + 404: 09 f4 brne .+2 ; 0x408 <__LOCK_REGION_LENGTH__+0x8> + 406: 7f c0 rjmp .+254 ; 0x506 <__LOCK_REGION_LENGTH__+0x106> + 408: 20 f0 brcs .+8 ; 0x412 <__LOCK_REGION_LENGTH__+0x12> + 40a: 82 30 cpi r24, 0x02 ; 2 + 40c: 09 f4 brne .+2 ; 0x410 <__LOCK_REGION_LENGTH__+0x10> + 40e: 87 c0 rjmp .+270 ; 0x51e <__LOCK_REGION_LENGTH__+0x11e> + 410: 91 c0 rjmp .+290 ; 0x534 <__LOCK_REGION_LENGTH__+0x134> { case STORNO_APP_PROGRAM_OSC: // Program PLL values here: inst->state_now = inst->state_next; - 3de: 88 83 st Y, r24 - 3e0: 81 e4 ldi r24, 0x41 ; 65 - 3e2: 93 e0 ldi r25, 0x03 ; 3 - 3e4: 01 97 sbiw r24, 0x01 ; 1 - 3e6: f1 f7 brne .-4 ; 0x3e4 - 3e8: 00 00 nop + 412: 88 83 st Y, r24 + 414: 81 e4 ldi r24, 0x41 ; 65 + 416: 93 e0 ldi r25, 0x03 ; 3 + 418: 01 97 sbiw r24, 0x01 ; 1 + 41a: f1 f7 brne .-4 ; 0x418 <__LOCK_REGION_LENGTH__+0x18> + 41c: 00 00 nop _delay_ms(1); cm_setInputSource(inst->si5351_dev, SI5351_CLK_SOURCE_XTAL); - 3ea: 60 e0 ldi r22, 0x00 ; 0 - 3ec: 8a 81 ldd r24, Y+2 ; 0x02 - 3ee: 9b 81 ldd r25, Y+3 ; 0x03 - 3f0: f4 d1 rcall .+1000 ; 0x7da - 3f2: 81 e4 ldi r24, 0x41 ; 65 - 3f4: 93 e0 ldi r25, 0x03 ; 3 - 3f6: 01 97 sbiw r24, 0x01 ; 1 - 3f8: f1 f7 brne .-4 ; 0x3f6 - 3fa: 00 00 nop + 41e: 60 e0 ldi r22, 0x00 ; 0 + 420: 8a 81 ldd r24, Y+2 ; 0x02 + 422: 9b 81 ldd r25, Y+3 ; 0x03 + 424: e6 d1 rcall .+972 ; 0x7f2 + 426: 81 e4 ldi r24, 0x41 ; 65 + 428: 93 e0 ldi r25, 0x03 ; 3 + 42a: 01 97 sbiw r24, 0x01 ; 1 + 42c: f1 f7 brne .-4 ; 0x42a <__LOCK_REGION_LENGTH__+0x2a> + 42e: 00 00 nop _delay_ms(1); cm_setPllParamRaw(inst->si5351_dev,SI5351_PLL_A, 3395, 11510, 1067099); - 3fc: 0f 2e mov r0, r31 - 3fe: fb e5 ldi r31, 0x5B ; 91 - 400: af 2e mov r10, r31 - 402: f8 e4 ldi r31, 0x48 ; 72 - 404: bf 2e mov r11, r31 - 406: f0 e1 ldi r31, 0x10 ; 16 - 408: cf 2e mov r12, r31 - 40a: d1 2c mov r13, r1 - 40c: f0 2d mov r31, r0 - 40e: 16 ef ldi r17, 0xF6 ; 246 - 410: e1 2e mov r14, r17 - 412: 1c e2 ldi r17, 0x2C ; 44 - 414: f1 2e mov r15, r17 - 416: 00 e0 ldi r16, 0x00 ; 0 - 418: 10 e0 ldi r17, 0x00 ; 0 - 41a: 23 e4 ldi r18, 0x43 ; 67 - 41c: 3d e0 ldi r19, 0x0D ; 13 - 41e: 40 e0 ldi r20, 0x00 ; 0 - 420: 50 e0 ldi r21, 0x00 ; 0 - 422: 60 e0 ldi r22, 0x00 ; 0 - 424: 8a 81 ldd r24, Y+2 ; 0x02 - 426: 9b 81 ldd r25, Y+3 ; 0x03 - 428: 1b d2 rcall .+1078 ; 0x860 - 42a: 81 e4 ldi r24, 0x41 ; 65 - 42c: 93 e0 ldi r25, 0x03 ; 3 - 42e: 01 97 sbiw r24, 0x01 ; 1 - 430: f1 f7 brne .-4 ; 0x42e <__LOCK_REGION_LENGTH__+0x2e> - 432: 00 00 nop + 430: 0f 2e mov r0, r31 + 432: fb e5 ldi r31, 0x5B ; 91 + 434: af 2e mov r10, r31 + 436: f8 e4 ldi r31, 0x48 ; 72 + 438: bf 2e mov r11, r31 + 43a: f0 e1 ldi r31, 0x10 ; 16 + 43c: cf 2e mov r12, r31 + 43e: d1 2c mov r13, r1 + 440: f0 2d mov r31, r0 + 442: 16 ef ldi r17, 0xF6 ; 246 + 444: e1 2e mov r14, r17 + 446: 1c e2 ldi r17, 0x2C ; 44 + 448: f1 2e mov r15, r17 + 44a: 00 e0 ldi r16, 0x00 ; 0 + 44c: 10 e0 ldi r17, 0x00 ; 0 + 44e: 23 e4 ldi r18, 0x43 ; 67 + 450: 3d e0 ldi r19, 0x0D ; 13 + 452: 40 e0 ldi r20, 0x00 ; 0 + 454: 50 e0 ldi r21, 0x00 ; 0 + 456: 60 e0 ldi r22, 0x00 ; 0 + 458: 8a 81 ldd r24, Y+2 ; 0x02 + 45a: 9b 81 ldd r25, Y+3 ; 0x03 + 45c: 0d d2 rcall .+1050 ; 0x878 + 45e: 81 e4 ldi r24, 0x41 ; 65 + 460: 93 e0 ldi r25, 0x03 ; 3 + 462: 01 97 sbiw r24, 0x01 ; 1 + 464: f1 f7 brne .-4 ; 0x462 <__LOCK_REGION_LENGTH__+0x62> + 466: 00 00 nop _delay_ms(1); cm_setPllParamRaw(inst->si5351_dev,SI5351_PLL_B, 3272, 16130, 1067200); - 434: 0f 2e mov r0, r31 - 436: f0 ec ldi r31, 0xC0 ; 192 - 438: af 2e mov r10, r31 - 43a: f8 e4 ldi r31, 0x48 ; 72 - 43c: bf 2e mov r11, r31 - 43e: f0 e1 ldi r31, 0x10 ; 16 - 440: cf 2e mov r12, r31 - 442: d1 2c mov r13, r1 - 444: f0 2d mov r31, r0 - 446: 12 e0 ldi r17, 0x02 ; 2 - 448: e1 2e mov r14, r17 - 44a: 1f e3 ldi r17, 0x3F ; 63 - 44c: f1 2e mov r15, r17 - 44e: 00 e0 ldi r16, 0x00 ; 0 - 450: 10 e0 ldi r17, 0x00 ; 0 - 452: 28 ec ldi r18, 0xC8 ; 200 - 454: 3c e0 ldi r19, 0x0C ; 12 - 456: 40 e0 ldi r20, 0x00 ; 0 - 458: 50 e0 ldi r21, 0x00 ; 0 - 45a: 61 e0 ldi r22, 0x01 ; 1 - 45c: 8a 81 ldd r24, Y+2 ; 0x02 - 45e: 9b 81 ldd r25, Y+3 ; 0x03 - 460: ff d1 rcall .+1022 ; 0x860 - 462: 81 e4 ldi r24, 0x41 ; 65 - 464: 93 e0 ldi r25, 0x03 ; 3 - 466: 01 97 sbiw r24, 0x01 ; 1 - 468: f1 f7 brne .-4 ; 0x466 <__LOCK_REGION_LENGTH__+0x66> - 46a: 00 00 nop + 468: 0f 2e mov r0, r31 + 46a: f0 ec ldi r31, 0xC0 ; 192 + 46c: af 2e mov r10, r31 + 46e: f8 e4 ldi r31, 0x48 ; 72 + 470: bf 2e mov r11, r31 + 472: f0 e1 ldi r31, 0x10 ; 16 + 474: cf 2e mov r12, r31 + 476: d1 2c mov r13, r1 + 478: f0 2d mov r31, r0 + 47a: 12 e0 ldi r17, 0x02 ; 2 + 47c: e1 2e mov r14, r17 + 47e: 1f e3 ldi r17, 0x3F ; 63 + 480: f1 2e mov r15, r17 + 482: 00 e0 ldi r16, 0x00 ; 0 + 484: 10 e0 ldi r17, 0x00 ; 0 + 486: 28 ec ldi r18, 0xC8 ; 200 + 488: 3c e0 ldi r19, 0x0C ; 12 + 48a: 40 e0 ldi r20, 0x00 ; 0 + 48c: 50 e0 ldi r21, 0x00 ; 0 + 48e: 61 e0 ldi r22, 0x01 ; 1 + 490: 8a 81 ldd r24, Y+2 ; 0x02 + 492: 9b 81 ldd r25, Y+3 ; 0x03 + 494: f1 d1 rcall .+994 ; 0x878 + 496: 81 e4 ldi r24, 0x41 ; 65 + 498: 93 e0 ldi r25, 0x03 ; 3 + 49a: 01 97 sbiw r24, 0x01 ; 1 + 49c: f1 f7 brne .-4 ; 0x49a <__LOCK_REGION_LENGTH__+0x9a> + 49e: 00 00 nop _delay_ms(1); cm_setOutputMultiSynth(inst->si5351_dev,SI5351_OUTPUT_0, 18, 0, 1); - 46c: a1 2c mov r10, r1 - 46e: b1 2c mov r11, r1 - 470: 65 01 movw r12, r10 - 472: a3 94 inc r10 - 474: e1 2c mov r14, r1 - 476: f1 2c mov r15, r1 - 478: 87 01 movw r16, r14 - 47a: 22 e1 ldi r18, 0x12 ; 18 - 47c: 30 e0 ldi r19, 0x00 ; 0 - 47e: 40 e0 ldi r20, 0x00 ; 0 - 480: 50 e0 ldi r21, 0x00 ; 0 - 482: 60 e0 ldi r22, 0x00 ; 0 - 484: 8a 81 ldd r24, Y+2 ; 0x02 - 486: 9b 81 ldd r25, Y+3 ; 0x03 - 488: cf d0 rcall .+414 ; 0x628 - 48a: 81 e4 ldi r24, 0x41 ; 65 - 48c: 93 e0 ldi r25, 0x03 ; 3 - 48e: 01 97 sbiw r24, 0x01 ; 1 - 490: f1 f7 brne .-4 ; 0x48e <__LOCK_REGION_LENGTH__+0x8e> - 492: 00 00 nop + 4a0: a1 2c mov r10, r1 + 4a2: b1 2c mov r11, r1 + 4a4: 65 01 movw r12, r10 + 4a6: a3 94 inc r10 + 4a8: e1 2c mov r14, r1 + 4aa: f1 2c mov r15, r1 + 4ac: 87 01 movw r16, r14 + 4ae: 22 e1 ldi r18, 0x12 ; 18 + 4b0: 30 e0 ldi r19, 0x00 ; 0 + 4b2: 40 e0 ldi r20, 0x00 ; 0 + 4b4: 50 e0 ldi r21, 0x00 ; 0 + 4b6: 60 e0 ldi r22, 0x00 ; 0 + 4b8: 8a 81 ldd r24, Y+2 ; 0x02 + 4ba: 9b 81 ldd r25, Y+3 ; 0x03 + 4bc: c1 d0 rcall .+386 ; 0x640 + 4be: 81 e4 ldi r24, 0x41 ; 65 + 4c0: 93 e0 ldi r25, 0x03 ; 3 + 4c2: 01 97 sbiw r24, 0x01 ; 1 + 4c4: f1 f7 brne .-4 ; 0x4c2 <__LOCK_REGION_LENGTH__+0xc2> + 4c6: 00 00 nop _delay_ms(1); cm_setOutputMultiSynth(inst->si5351_dev,SI5351_OUTPUT_1, 64, 0, 1); - 494: 20 e4 ldi r18, 0x40 ; 64 - 496: 30 e0 ldi r19, 0x00 ; 0 - 498: 40 e0 ldi r20, 0x00 ; 0 - 49a: 50 e0 ldi r21, 0x00 ; 0 - 49c: 61 e0 ldi r22, 0x01 ; 1 - 49e: 8a 81 ldd r24, Y+2 ; 0x02 - 4a0: 9b 81 ldd r25, Y+3 ; 0x03 - 4a2: c2 d0 rcall .+388 ; 0x628 - 4a4: 81 e4 ldi r24, 0x41 ; 65 - 4a6: 93 e0 ldi r25, 0x03 ; 3 - 4a8: 01 97 sbiw r24, 0x01 ; 1 - 4aa: f1 f7 brne .-4 ; 0x4a8 <__LOCK_REGION_LENGTH__+0xa8> - 4ac: 00 00 nop + 4c8: 20 e4 ldi r18, 0x40 ; 64 + 4ca: 30 e0 ldi r19, 0x00 ; 0 + 4cc: 40 e0 ldi r20, 0x00 ; 0 + 4ce: 50 e0 ldi r21, 0x00 ; 0 + 4d0: 61 e0 ldi r22, 0x01 ; 1 + 4d2: 8a 81 ldd r24, Y+2 ; 0x02 + 4d4: 9b 81 ldd r25, Y+3 ; 0x03 + 4d6: b4 d0 rcall .+360 ; 0x640 + 4d8: 81 e4 ldi r24, 0x41 ; 65 + 4da: 93 e0 ldi r25, 0x03 ; 3 + 4dc: 01 97 sbiw r24, 0x01 ; 1 + 4de: f1 f7 brne .-4 ; 0x4dc <__LOCK_REGION_LENGTH__+0xdc> + 4e0: 00 00 nop _delay_ms(1); cm_setCLKControl(inst->si5351_dev,SI5351_OUTPUT_0,SI5351_CLK_POWER_UP); - 4ae: 40 e0 ldi r20, 0x00 ; 0 - 4b0: 60 e0 ldi r22, 0x00 ; 0 - 4b2: 8a 81 ldd r24, Y+2 ; 0x02 - 4b4: 9b 81 ldd r25, Y+3 ; 0x03 - 4b6: 63 d1 rcall .+710 ; 0x77e - 4b8: 81 e4 ldi r24, 0x41 ; 65 - 4ba: 93 e0 ldi r25, 0x03 ; 3 - 4bc: 01 97 sbiw r24, 0x01 ; 1 - 4be: f1 f7 brne .-4 ; 0x4bc <__LOCK_REGION_LENGTH__+0xbc> - 4c0: 00 00 nop + 4e2: 40 e0 ldi r20, 0x00 ; 0 + 4e4: 60 e0 ldi r22, 0x00 ; 0 + 4e6: 8a 81 ldd r24, Y+2 ; 0x02 + 4e8: 9b 81 ldd r25, Y+3 ; 0x03 + 4ea: 55 d1 rcall .+682 ; 0x796 + 4ec: 81 e4 ldi r24, 0x41 ; 65 + 4ee: 93 e0 ldi r25, 0x03 ; 3 + 4f0: 01 97 sbiw r24, 0x01 ; 1 + 4f2: f1 f7 brne .-4 ; 0x4f0 <__LOCK_REGION_LENGTH__+0xf0> + 4f4: 00 00 nop _delay_ms(1); cm_setCLKControl(inst->si5351_dev,SI5351_OUTPUT_1,SI5351_CLK_POWER_UP); - 4c2: 40 e0 ldi r20, 0x00 ; 0 - 4c4: 61 e0 ldi r22, 0x01 ; 1 - 4c6: 8a 81 ldd r24, Y+2 ; 0x02 - 4c8: 9b 81 ldd r25, Y+3 ; 0x03 - 4ca: 59 d1 rcall .+690 ; 0x77e + 4f6: 40 e0 ldi r20, 0x00 ; 0 + 4f8: 61 e0 ldi r22, 0x01 ; 1 + 4fa: 8a 81 ldd r24, Y+2 ; 0x02 + 4fc: 9b 81 ldd r25, Y+3 ; 0x03 + 4fe: 4b d1 rcall .+662 ; 0x796 // if ok, then go to RX mode: inst->state_next = STORNO_APP_RX_MODE; - 4cc: 81 e0 ldi r24, 0x01 ; 1 - 4ce: 89 83 std Y+1, r24 ; 0x01 + 500: 81 e0 ldi r24, 0x01 ; 1 + 502: 89 83 std Y+1, r24 ; 0x01 break; - 4d0: 17 c0 rjmp .+46 ; 0x500 <__LOCK_REGION_LENGTH__+0x100> + 504: 17 c0 rjmp .+46 ; 0x534 <__LOCK_REGION_LENGTH__+0x134> case STORNO_APP_RX_MODE: // If we just came from another state, then Enable RX osc here.. cqm6xx_app_updateOsc(inst); - 4d2: ce 01 movw r24, r28 - 4d4: 32 df rcall .-412 ; 0x33a + 506: ce 01 movw r24, r28 + 508: 32 df rcall .-412 ; 0x36e // Update state now.. inst->state_now = inst->state_next; - 4d6: 89 81 ldd r24, Y+1 ; 0x01 - 4d8: 88 83 st Y, r24 + 50a: 89 81 ldd r24, Y+1 ; 0x01 + 50c: 88 83 st Y, r24 // If PTT is hold, then disable RX osc, and go to STORNO_APP_TX_MODE, to enable tx osc. if(gpio_get_level(GPIO_PORTA,GPIO_PIN_PTT) == GPIO_LEVEL_SET) inst->state_next = STORNO_APP_TX_MODE; - 4da: 63 e0 ldi r22, 0x03 ; 3 - 4dc: 80 e0 ldi r24, 0x00 ; 0 - 4de: c6 dd rcall .-1140 ; 0x6c - 4e0: 01 97 sbiw r24, 0x01 ; 1 - 4e2: 71 f4 brne .+28 ; 0x500 <__LOCK_REGION_LENGTH__+0x100> - 4e4: 82 e0 ldi r24, 0x02 ; 2 - 4e6: 89 83 std Y+1, r24 ; 0x01 - 4e8: 0b c0 rjmp .+22 ; 0x500 <__LOCK_REGION_LENGTH__+0x100> + 50e: 63 e0 ldi r22, 0x03 ; 3 + 510: 80 e0 ldi r24, 0x00 ; 0 + 512: ac dd rcall .-1192 ; 0x6c + 514: 01 97 sbiw r24, 0x01 ; 1 + 516: 71 f4 brne .+28 ; 0x534 <__LOCK_REGION_LENGTH__+0x134> + 518: 82 e0 ldi r24, 0x02 ; 2 + 51a: 89 83 std Y+1, r24 ; 0x01 + 51c: 0b c0 rjmp .+22 ; 0x534 <__LOCK_REGION_LENGTH__+0x134> break; case STORNO_APP_TX_MODE: // If we just came from another state, then Enable TX osc here.. cqm6xx_app_updateOsc(inst); - 4ea: ce 01 movw r24, r28 - 4ec: 26 df rcall .-436 ; 0x33a + 51e: ce 01 movw r24, r28 + 520: 26 df rcall .-436 ; 0x36e // Update state now.. inst->state_now = inst->state_next; - 4ee: 89 81 ldd r24, Y+1 ; 0x01 - 4f0: 88 83 st Y, r24 + 522: 89 81 ldd r24, Y+1 ; 0x01 + 524: 88 83 st Y, r24 // If PTT is released, then disable TX osc, and go to STORNO_APP_RX_MODE, to enable rx osc. if(gpio_get_level(GPIO_PORTA,GPIO_PIN_PTT) == GPIO_LEVEL_RESET) inst->state_next = STORNO_APP_RX_MODE; - 4f2: 63 e0 ldi r22, 0x03 ; 3 - 4f4: 80 e0 ldi r24, 0x00 ; 0 - 4f6: ba dd rcall .-1164 ; 0x6c - 4f8: 89 2b or r24, r25 - 4fa: 11 f4 brne .+4 ; 0x500 <__LOCK_REGION_LENGTH__+0x100> - 4fc: 81 e0 ldi r24, 0x01 ; 1 - 4fe: 89 83 std Y+1, r24 ; 0x01 + 526: 63 e0 ldi r22, 0x03 ; 3 + 528: 80 e0 ldi r24, 0x00 ; 0 + 52a: a0 dd rcall .-1216 ; 0x6c + 52c: 89 2b or r24, r25 + 52e: 11 f4 brne .+4 ; 0x534 <__LOCK_REGION_LENGTH__+0x134> + 530: 81 e0 ldi r24, 0x01 ; 1 + 532: 89 83 std Y+1, r24 ; 0x01 default: break; } } - 500: df 91 pop r29 - 502: cf 91 pop r28 - 504: 1f 91 pop r17 - 506: 0f 91 pop r16 - 508: ff 90 pop r15 - 50a: ef 90 pop r14 - 50c: df 90 pop r13 - 50e: cf 90 pop r12 - 510: bf 90 pop r11 - 512: af 90 pop r10 - 514: 08 95 ret + 534: df 91 pop r29 + 536: cf 91 pop r28 + 538: 1f 91 pop r17 + 53a: 0f 91 pop r16 + 53c: ff 90 pop r15 + 53e: ef 90 pop r14 + 540: df 90 pop r13 + 542: cf 90 pop r12 + 544: bf 90 pop r11 + 546: af 90 pop r10 + 548: 08 95 ret -00000516 : +0000054a : void cqm6xx_app_init(storno_xtal_app_t *inst, void *si5351_dev){ - 516: fc 01 movw r30, r24 + 54a: fc 01 movw r30, r24 if(si5351_dev == NULL) return; - 518: 61 15 cp r22, r1 - 51a: 71 05 cpc r23, r1 - 51c: 31 f0 breq .+12 ; 0x52a + 54c: 61 15 cp r22, r1 + 54e: 71 05 cpc r23, r1 + 550: 31 f0 breq .+12 ; 0x55e if(inst == NULL)return; - 51e: 89 2b or r24, r25 - 520: 21 f0 breq .+8 ; 0x52a + 552: 89 2b or r24, r25 + 554: 21 f0 breq .+8 ; 0x55e inst->state_next = STORNO_APP_PROGRAM_OSC; - 522: 11 82 std Z+1, r1 ; 0x01 + 556: 11 82 std Z+1, r1 ; 0x01 inst->state_now = STORNO_APP_PROGRAM_OSC; - 524: 10 82 st Z, r1 + 558: 10 82 st Z, r1 inst->si5351_dev = si5351_dev; - 526: 62 83 std Z+2, r22 ; 0x02 - 528: 73 83 std Z+3, r23 ; 0x03 - 52a: 08 95 ret + 55a: 62 83 std Z+2, r22 ; 0x02 + 55c: 73 83 std Z+3, r23 ; 0x03 + 55e: 08 95 ret -0000052c : +00000560
: -storno_xtal_app_t storno_xtal_app; -uint8_t received_data = 0; -uint8_t uart_receive(void) { - while (!(USART0.STATUS & USART_RXCIF_bm)); // Wait for data to be received - 52c: 80 91 04 08 lds r24, 0x0804 ; 0x800804 <__RODATA_PM_OFFSET__+0x7f8804> - 530: 88 23 and r24, r24 - 532: e4 f7 brge .-8 ; 0x52c - return USART0.RXDATAL; - 534: 80 91 00 08 lds r24, 0x0800 ; 0x800800 <__RODATA_PM_OFFSET__+0x7f8800> -} - 538: 08 95 ret - -0000053a
: int main(void) { - 53a: cf 93 push r28 - 53c: df 93 push r29 - 53e: cd b7 in r28, 0x3d ; 61 - 540: de b7 in r29, 0x3e ; 62 - 542: cb 55 subi r28, 0x5B ; 91 - 544: d1 09 sbc r29, r1 - 546: cd bf out 0x3d, r28 ; 61 - 548: de bf out 0x3e, r29 ; 62 + 560: cf 93 push r28 + 562: df 93 push r29 + 564: cd b7 in r28, 0x3d ; 61 + 566: de b7 in r29, 0x3e ; 62 + 568: cb 55 subi r28, 0x5B ; 91 + 56a: d1 09 sbc r29, r1 + 56c: cd bf out 0x3d, r28 ; 61 + 56e: de bf out 0x3e, r29 ; 62 /* Replace with your application code */ // Init Periphials cm_i2c_init(NULL); - 54a: 80 e0 ldi r24, 0x00 ; 0 - 54c: 90 e0 ldi r25, 0x00 ; 0 - 54e: 5e de rcall .-836 ; 0x20c + 570: 80 e0 ldi r24, 0x00 ; 0 + 572: 90 e0 ldi r25, 0x00 ; 0 + 574: 4b de rcall .-874 ; 0x20c // Add devices cm_i2c_device_t si5351_i2c; cm_i2c_addDev(&si5351_i2c,NULL,0x60); - 550: 40 e6 ldi r20, 0x60 ; 96 - 552: 60 e0 ldi r22, 0x00 ; 0 - 554: 70 e0 ldi r23, 0x00 ; 0 - 556: ce 01 movw r24, r28 - 558: 01 96 adiw r24, 0x01 ; 1 - 55a: 72 de rcall .-796 ; 0x240 + 576: 40 e6 ldi r20, 0x60 ; 96 + 578: 60 e0 ldi r22, 0x00 ; 0 + 57a: 70 e0 ldi r23, 0x00 ; 0 + 57c: ce 01 movw r24, r28 + 57e: 01 96 adiw r24, 0x01 ; 1 + 580: 5f de rcall .-834 ; 0x240 // Init Devices: si5351_driver si5351_dev; cm_si5351_init(&si5351_dev,&si5351_i2c,(setGet_I2C_Event_fpt)cm_i2c_transfer); - 55c: 4e e3 ldi r20, 0x3E ; 62 - 55e: 51 e0 ldi r21, 0x01 ; 1 - 560: be 01 movw r22, r28 - 562: 6f 5f subi r22, 0xFF ; 255 - 564: 7f 4f sbci r23, 0xFF ; 255 - 566: ce 01 movw r24, r28 - 568: 04 96 adiw r24, 0x04 ; 4 - 56a: d8 d1 rcall .+944 ; 0x91c + 582: 4e e3 ldi r20, 0x3E ; 62 + 584: 51 e0 ldi r21, 0x01 ; 1 + 586: be 01 movw r22, r28 + 588: 6f 5f subi r22, 0xFF ; 255 + 58a: 7f 4f sbci r23, 0xFF ; 255 + 58c: ce 01 movw r24, r28 + 58e: 04 96 adiw r24, 0x04 ; 4 + 590: d1 d1 rcall .+930 ; 0x934 cqm6xx_app_init(&storno_xtal_app, &si5351_dev); - 56c: be 01 movw r22, r28 - 56e: 6c 5f subi r22, 0xFC ; 252 - 570: 7f 4f sbci r23, 0xFF ; 255 - 572: 87 e0 ldi r24, 0x07 ; 7 - 574: 9f e3 ldi r25, 0x3F ; 63 - 576: cf df rcall .-98 ; 0x516 + 592: be 01 movw r22, r28 + 594: 6c 5f subi r22, 0xFC ; 252 + 596: 7f 4f sbci r23, 0xFF ; 255 + 598: 87 e0 ldi r24, 0x07 ; 7 + 59a: 9f e3 ldi r25, 0x3F ; 63 + 59c: d6 df rcall .-84 ; 0x54a cm_uart_init(); - 578: ab de rcall .-682 ; 0x2d0 + 59e: 88 de rcall .-752 ; 0x2b0 cm_uart_send('r'); - 57a: 82 e7 ldi r24, 0x72 ; 114 - 57c: ca de rcall .-620 ; 0x312 + 5a0: 82 e7 ldi r24, 0x72 ; 114 + 5a2: aa de rcall .-684 ; 0x2f8 cm_uart_send('r'); - 57e: 82 e7 ldi r24, 0x72 ; 114 - 580: c8 de rcall .-624 ; 0x312 + 5a4: 82 e7 ldi r24, 0x72 ; 114 + 5a6: a8 de rcall .-688 ; 0x2f8 cm_uart_send('\n'); - 582: 8a e0 ldi r24, 0x0A ; 10 - 584: c6 de rcall .-628 ; 0x312 + 5a8: 8a e0 ldi r24, 0x0A ; 10 + 5aa: a6 de rcall .-692 ; 0x2f8 cm_uart_send('\r'); - 586: 8d e0 ldi r24, 0x0D ; 13 - 588: c4 de rcall .-632 ; 0x312 + 5ac: 8d e0 ldi r24, 0x0D ; 13 + 5ae: a4 de rcall .-696 ; 0x2f8 while (1) { - //cqm6xx_app_statemachine(&storno_xtal_app); - if(received_data != 0){ - 58a: 80 91 06 3f lds r24, 0x3F06 ; 0x803f06 <__data_end> - 58e: 88 23 and r24, r24 - 590: 19 f0 breq .+6 ; 0x598 - - cqm6xx_app_statemachine(&storno_xtal_app); - 592: 87 e0 ldi r24, 0x07 ; 7 - 594: 9f e3 ldi r25, 0x3F ; 63 - 596: 0c df rcall .-488 ; 0x3b0 - - } - received_data = uart_receive(); - 598: c9 df rcall .-110 ; 0x52c - 59a: 80 93 06 3f sts 0x3F06, r24 ; 0x803f06 <__data_end> - cm_uart_send(received_data); - 59e: b9 de rcall .-654 ; 0x312 - 5a0: 25 e1 ldi r18, 0x15 ; 21 - 5a2: 86 e1 ldi r24, 0x16 ; 22 - 5a4: 95 e0 ldi r25, 0x05 ; 5 - 5a6: 21 50 subi r18, 0x01 ; 1 - 5a8: 80 40 sbci r24, 0x00 ; 0 - 5aa: 90 40 sbci r25, 0x00 ; 0 - 5ac: e1 f7 brne .-8 ; 0x5a6 - 5ae: ed cf rjmp .-38 ; 0x58a -000005b0 : + cqm6xx_app_statemachine(&storno_xtal_app); + 5b0: 87 e0 ldi r24, 0x07 ; 7 + 5b2: 9f e3 ldi r25, 0x3F ; 63 + 5b4: 17 df rcall .-466 ; 0x3e4 + 5b6: 2a e6 ldi r18, 0x6A ; 106 + 5b8: 84 e0 ldi r24, 0x04 ; 4 + 5ba: 91 e0 ldi r25, 0x01 ; 1 + 5bc: 21 50 subi r18, 0x01 ; 1 + 5be: 80 40 sbci r24, 0x00 ; 0 + 5c0: 90 40 sbci r25, 0x00 ; 0 + 5c2: e1 f7 brne .-8 ; 0x5bc + 5c4: 00 c0 rjmp .+0 ; 0x5c6 + 5c6: f4 cf rjmp .-24 ; 0x5b0 + +000005c8 : // Read Device Status register: readRegister(inst,0x00, (uint8_t *) &inst->device_data.deviceStatus, sizeof(si5351_deviceStat_t)); return inst->device_data.deviceStatus.REVID; } - 5b0: 8f 92 push r8 - 5b2: 9f 92 push r9 - 5b4: af 92 push r10 - 5b6: bf 92 push r11 - 5b8: cf 92 push r12 - 5ba: df 92 push r13 - 5bc: ef 92 push r14 - 5be: ff 92 push r15 - 5c0: 0f 93 push r16 - 5c2: 1f 93 push r17 - 5c4: cf 93 push r28 - 5c6: df 93 push r29 - 5c8: ec 01 movw r28, r24 - 5ca: 86 2e mov r8, r22 - 5cc: 5a 01 movw r10, r20 - 5ce: 68 01 movw r12, r16 - 5d0: 79 01 movw r14, r18 - 5d2: c8 01 movw r24, r16 - 5d4: 01 96 adiw r24, 0x01 ; 1 - 5d6: 43 d2 rcall .+1158 ; 0xa5e - 5d8: 98 2e mov r9, r24 - 5da: 19 2f mov r17, r25 - 5dc: fc 01 movw r30, r24 - 5de: 81 92 st Z+, r8 - 5e0: cf 01 movw r24, r30 - 5e2: a6 01 movw r20, r12 - 5e4: b5 01 movw r22, r10 - 5e6: 5c d3 rcall .+1720 ; 0xca0 - 5e8: ea 81 ldd r30, Y+2 ; 0x02 - 5ea: fb 81 ldd r31, Y+3 ; 0x03 - 5ec: a7 01 movw r20, r14 - 5ee: 96 01 movw r18, r12 - 5f0: 2f 5f subi r18, 0xFF ; 255 - 5f2: 3f 4f sbci r19, 0xFF ; 255 - 5f4: 4f 4f sbci r20, 0xFF ; 255 - 5f6: 5f 4f sbci r21, 0xFF ; 255 - 5f8: 01 e0 ldi r16, 0x01 ; 1 - 5fa: 69 2d mov r22, r9 - 5fc: 71 2f mov r23, r17 - 5fe: 88 81 ld r24, Y - 600: 99 81 ldd r25, Y+1 ; 0x01 - 602: 09 95 icall - 604: 89 2d mov r24, r9 - 606: 91 2f mov r25, r17 - 608: c2 d2 rcall .+1412 ; 0xb8e - 60a: 80 e0 ldi r24, 0x00 ; 0 - 60c: 90 e0 ldi r25, 0x00 ; 0 - 60e: df 91 pop r29 - 610: cf 91 pop r28 - 612: 1f 91 pop r17 - 614: 0f 91 pop r16 - 616: ff 90 pop r15 - 618: ef 90 pop r14 - 61a: df 90 pop r13 - 61c: cf 90 pop r12 - 61e: bf 90 pop r11 - 620: af 90 pop r10 - 622: 9f 90 pop r9 - 624: 8f 90 pop r8 - 626: 08 95 ret + 5c8: 8f 92 push r8 + 5ca: 9f 92 push r9 + 5cc: af 92 push r10 + 5ce: bf 92 push r11 + 5d0: cf 92 push r12 + 5d2: df 92 push r13 + 5d4: ef 92 push r14 + 5d6: ff 92 push r15 + 5d8: 0f 93 push r16 + 5da: 1f 93 push r17 + 5dc: cf 93 push r28 + 5de: df 93 push r29 + 5e0: ec 01 movw r28, r24 + 5e2: 86 2e mov r8, r22 + 5e4: 5a 01 movw r10, r20 + 5e6: 68 01 movw r12, r16 + 5e8: 79 01 movw r14, r18 + 5ea: c8 01 movw r24, r16 + 5ec: 01 96 adiw r24, 0x01 ; 1 + 5ee: 43 d2 rcall .+1158 ; 0xa76 + 5f0: 98 2e mov r9, r24 + 5f2: 19 2f mov r17, r25 + 5f4: fc 01 movw r30, r24 + 5f6: 81 92 st Z+, r8 + 5f8: cf 01 movw r24, r30 + 5fa: a6 01 movw r20, r12 + 5fc: b5 01 movw r22, r10 + 5fe: 5c d3 rcall .+1720 ; 0xcb8 + 600: ea 81 ldd r30, Y+2 ; 0x02 + 602: fb 81 ldd r31, Y+3 ; 0x03 + 604: a7 01 movw r20, r14 + 606: 96 01 movw r18, r12 + 608: 2f 5f subi r18, 0xFF ; 255 + 60a: 3f 4f sbci r19, 0xFF ; 255 + 60c: 4f 4f sbci r20, 0xFF ; 255 + 60e: 5f 4f sbci r21, 0xFF ; 255 + 610: 01 e0 ldi r16, 0x01 ; 1 + 612: 69 2d mov r22, r9 + 614: 71 2f mov r23, r17 + 616: 88 81 ld r24, Y + 618: 99 81 ldd r25, Y+1 ; 0x01 + 61a: 09 95 icall + 61c: 89 2d mov r24, r9 + 61e: 91 2f mov r25, r17 + 620: c2 d2 rcall .+1412 ; 0xba6 + 622: 80 e0 ldi r24, 0x00 ; 0 + 624: 90 e0 ldi r25, 0x00 ; 0 + 626: df 91 pop r29 + 628: cf 91 pop r28 + 62a: 1f 91 pop r17 + 62c: 0f 91 pop r16 + 62e: ff 90 pop r15 + 630: ef 90 pop r14 + 632: df 90 pop r13 + 634: cf 90 pop r12 + 636: bf 90 pop r11 + 638: af 90 pop r10 + 63a: 9f 90 pop r9 + 63c: 8f 90 pop r8 + 63e: 08 95 ret -00000628 : - 628: af 92 push r10 - 62a: bf 92 push r11 - 62c: cf 92 push r12 - 62e: df 92 push r13 - 630: ef 92 push r14 - 632: ff 92 push r15 - 634: 0f 93 push r16 - 636: 1f 93 push r17 - 638: fc 01 movw r30, r24 - 63a: 86 2f mov r24, r22 - 63c: ba 01 movw r22, r20 - 63e: a9 01 movw r20, r18 - 640: 44 50 subi r20, 0x04 ; 4 - 642: 51 09 sbc r21, r1 - 644: 61 09 sbc r22, r1 - 646: 7e 4f sbci r23, 0xFE ; 254 - 648: 44 0f add r20, r20 - 64a: 55 1f adc r21, r21 - 64c: 66 1f adc r22, r22 - 64e: 77 1f adc r23, r23 - 650: 44 0f add r20, r20 - 652: 55 1f adc r21, r21 - 654: 66 1f adc r22, r22 - 656: 77 1f adc r23, r23 - 658: 44 0f add r20, r20 - 65a: 55 1f adc r21, r21 - 65c: 66 1f adc r22, r22 - 65e: 77 1f adc r23, r23 +00000640 : + 640: af 92 push r10 + 642: bf 92 push r11 + 644: cf 92 push r12 + 646: df 92 push r13 + 648: ef 92 push r14 + 64a: ff 92 push r15 + 64c: 0f 93 push r16 + 64e: 1f 93 push r17 + 650: fc 01 movw r30, r24 + 652: 86 2f mov r24, r22 + 654: ba 01 movw r22, r20 + 656: a9 01 movw r20, r18 + 658: 44 50 subi r20, 0x04 ; 4 + 65a: 51 09 sbc r21, r1 + 65c: 61 09 sbc r22, r1 + 65e: 7e 4f sbci r23, 0xFE ; 254 660: 44 0f add r20, r20 662: 55 1f adc r21, r21 664: 66 1f adc r22, r22 @@ -1381,423 +1379,419 @@ int main(void) 67a: 55 1f adc r21, r21 67c: 66 1f adc r22, r22 67e: 77 1f adc r23, r23 - 680: 88 23 and r24, r24 - 682: 19 f0 breq .+6 ; 0x68a - 684: 81 30 cpi r24, 0x01 ; 1 - 686: 49 f1 breq .+82 ; 0x6da - 688: 4f c0 rjmp .+158 ; 0x728 - 68a: 96 2f mov r25, r22 - 68c: 93 70 andi r25, 0x03 ; 3 - 68e: 86 a1 ldd r24, Z+38 ; 0x26 - 690: 8c 7f andi r24, 0xFC ; 252 - 692: 89 2b or r24, r25 - 694: 86 a3 std Z+38, r24 ; 0x26 - 696: 57 a3 std Z+39, r21 ; 0x27 - 698: 40 a7 std Z+40, r20 ; 0x28 - 69a: f2 a6 std Z+42, r15 ; 0x2a - 69c: e3 a6 std Z+43, r14 ; 0x2b - 69e: d6 01 movw r26, r12 - 6a0: c5 01 movw r24, r10 - 6a2: 07 2e mov r0, r23 - 6a4: 7c e0 ldi r23, 0x0C ; 12 - 6a6: b6 95 lsr r27 - 6a8: a7 95 ror r26 - 6aa: 97 95 ror r25 - 6ac: 87 95 ror r24 - 6ae: 7a 95 dec r23 - 6b0: d1 f7 brne .-12 ; 0x6a6 - 6b2: 70 2d mov r23, r0 - 6b4: 83 70 andi r24, 0x03 ; 3 - 6b6: 82 95 swap r24 - 6b8: 80 7f andi r24, 0xF0 ; 240 - 6ba: 03 70 andi r16, 0x03 ; 3 - 6bc: 80 2b or r24, r16 - 6be: 81 a7 std Z+41, r24 ; 0x29 - 6c0: b4 a2 std Z+36, r11 ; 0x24 - 6c2: a5 a2 std Z+37, r10 ; 0x25 - 6c4: af 01 movw r20, r30 - 6c6: 4c 5d subi r20, 0xDC ; 220 - 6c8: 5f 4f sbci r21, 0xFF ; 255 - 6ca: 08 e0 ldi r16, 0x08 ; 8 - 6cc: 10 e0 ldi r17, 0x00 ; 0 - 6ce: 20 e0 ldi r18, 0x00 ; 0 - 6d0: 30 e0 ldi r19, 0x00 ; 0 - 6d2: 6a e2 ldi r22, 0x2A ; 42 - 6d4: cf 01 movw r24, r30 - 6d6: 6c df rcall .-296 ; 0x5b0 - 6d8: 27 c0 rjmp .+78 ; 0x728 - 6da: 96 2f mov r25, r22 - 6dc: 93 70 andi r25, 0x03 ; 3 - 6de: 86 a5 ldd r24, Z+46 ; 0x2e - 6e0: 8c 7f andi r24, 0xFC ; 252 - 6e2: 89 2b or r24, r25 - 6e4: 86 a7 std Z+46, r24 ; 0x2e - 6e6: 57 a7 std Z+47, r21 ; 0x2f - 6e8: 40 ab std Z+48, r20 ; 0x30 - 6ea: f2 aa std Z+50, r15 ; 0x32 - 6ec: e3 aa std Z+51, r14 ; 0x33 - 6ee: d6 01 movw r26, r12 - 6f0: c5 01 movw r24, r10 - 6f2: 07 2e mov r0, r23 - 6f4: 7c e0 ldi r23, 0x0C ; 12 - 6f6: b6 95 lsr r27 - 6f8: a7 95 ror r26 - 6fa: 97 95 ror r25 - 6fc: 87 95 ror r24 - 6fe: 7a 95 dec r23 - 700: d1 f7 brne .-12 ; 0x6f6 - 702: 70 2d mov r23, r0 - 704: 83 70 andi r24, 0x03 ; 3 - 706: 82 95 swap r24 - 708: 80 7f andi r24, 0xF0 ; 240 - 70a: 03 70 andi r16, 0x03 ; 3 - 70c: 80 2b or r24, r16 - 70e: 81 ab std Z+49, r24 ; 0x31 - 710: b4 a6 std Z+44, r11 ; 0x2c - 712: a5 a6 std Z+45, r10 ; 0x2d - 714: af 01 movw r20, r30 - 716: 44 5d subi r20, 0xD4 ; 212 - 718: 5f 4f sbci r21, 0xFF ; 255 - 71a: 08 e0 ldi r16, 0x08 ; 8 - 71c: 10 e0 ldi r17, 0x00 ; 0 - 71e: 20 e0 ldi r18, 0x00 ; 0 - 720: 30 e0 ldi r19, 0x00 ; 0 - 722: 62 e3 ldi r22, 0x32 ; 50 - 724: cf 01 movw r24, r30 - 726: 44 df rcall .-376 ; 0x5b0 - 728: 80 e0 ldi r24, 0x00 ; 0 - 72a: 90 e0 ldi r25, 0x00 ; 0 - 72c: 1f 91 pop r17 - 72e: 0f 91 pop r16 - 730: ff 90 pop r15 - 732: ef 90 pop r14 - 734: df 90 pop r13 - 736: cf 90 pop r12 - 738: bf 90 pop r11 - 73a: af 90 pop r10 - 73c: 08 95 ret + 680: 44 0f add r20, r20 + 682: 55 1f adc r21, r21 + 684: 66 1f adc r22, r22 + 686: 77 1f adc r23, r23 + 688: 44 0f add r20, r20 + 68a: 55 1f adc r21, r21 + 68c: 66 1f adc r22, r22 + 68e: 77 1f adc r23, r23 + 690: 44 0f add r20, r20 + 692: 55 1f adc r21, r21 + 694: 66 1f adc r22, r22 + 696: 77 1f adc r23, r23 + 698: 88 23 and r24, r24 + 69a: 19 f0 breq .+6 ; 0x6a2 + 69c: 81 30 cpi r24, 0x01 ; 1 + 69e: 49 f1 breq .+82 ; 0x6f2 + 6a0: 4f c0 rjmp .+158 ; 0x740 + 6a2: 96 2f mov r25, r22 + 6a4: 93 70 andi r25, 0x03 ; 3 + 6a6: 86 a1 ldd r24, Z+38 ; 0x26 + 6a8: 8c 7f andi r24, 0xFC ; 252 + 6aa: 89 2b or r24, r25 + 6ac: 86 a3 std Z+38, r24 ; 0x26 + 6ae: 57 a3 std Z+39, r21 ; 0x27 + 6b0: 40 a7 std Z+40, r20 ; 0x28 + 6b2: f2 a6 std Z+42, r15 ; 0x2a + 6b4: e3 a6 std Z+43, r14 ; 0x2b + 6b6: d6 01 movw r26, r12 + 6b8: c5 01 movw r24, r10 + 6ba: 07 2e mov r0, r23 + 6bc: 7c e0 ldi r23, 0x0C ; 12 + 6be: b6 95 lsr r27 + 6c0: a7 95 ror r26 + 6c2: 97 95 ror r25 + 6c4: 87 95 ror r24 + 6c6: 7a 95 dec r23 + 6c8: d1 f7 brne .-12 ; 0x6be + 6ca: 70 2d mov r23, r0 + 6cc: 83 70 andi r24, 0x03 ; 3 + 6ce: 82 95 swap r24 + 6d0: 80 7f andi r24, 0xF0 ; 240 + 6d2: 03 70 andi r16, 0x03 ; 3 + 6d4: 80 2b or r24, r16 + 6d6: 81 a7 std Z+41, r24 ; 0x29 + 6d8: b4 a2 std Z+36, r11 ; 0x24 + 6da: a5 a2 std Z+37, r10 ; 0x25 + 6dc: af 01 movw r20, r30 + 6de: 4c 5d subi r20, 0xDC ; 220 + 6e0: 5f 4f sbci r21, 0xFF ; 255 + 6e2: 08 e0 ldi r16, 0x08 ; 8 + 6e4: 10 e0 ldi r17, 0x00 ; 0 + 6e6: 20 e0 ldi r18, 0x00 ; 0 + 6e8: 30 e0 ldi r19, 0x00 ; 0 + 6ea: 6a e2 ldi r22, 0x2A ; 42 + 6ec: cf 01 movw r24, r30 + 6ee: 6c df rcall .-296 ; 0x5c8 + 6f0: 27 c0 rjmp .+78 ; 0x740 + 6f2: 96 2f mov r25, r22 + 6f4: 93 70 andi r25, 0x03 ; 3 + 6f6: 86 a5 ldd r24, Z+46 ; 0x2e + 6f8: 8c 7f andi r24, 0xFC ; 252 + 6fa: 89 2b or r24, r25 + 6fc: 86 a7 std Z+46, r24 ; 0x2e + 6fe: 57 a7 std Z+47, r21 ; 0x2f + 700: 40 ab std Z+48, r20 ; 0x30 + 702: f2 aa std Z+50, r15 ; 0x32 + 704: e3 aa std Z+51, r14 ; 0x33 + 706: d6 01 movw r26, r12 + 708: c5 01 movw r24, r10 + 70a: 07 2e mov r0, r23 + 70c: 7c e0 ldi r23, 0x0C ; 12 + 70e: b6 95 lsr r27 + 710: a7 95 ror r26 + 712: 97 95 ror r25 + 714: 87 95 ror r24 + 716: 7a 95 dec r23 + 718: d1 f7 brne .-12 ; 0x70e + 71a: 70 2d mov r23, r0 + 71c: 83 70 andi r24, 0x03 ; 3 + 71e: 82 95 swap r24 + 720: 80 7f andi r24, 0xF0 ; 240 + 722: 03 70 andi r16, 0x03 ; 3 + 724: 80 2b or r24, r16 + 726: 81 ab std Z+49, r24 ; 0x31 + 728: b4 a6 std Z+44, r11 ; 0x2c + 72a: a5 a6 std Z+45, r10 ; 0x2d + 72c: af 01 movw r20, r30 + 72e: 44 5d subi r20, 0xD4 ; 212 + 730: 5f 4f sbci r21, 0xFF ; 255 + 732: 08 e0 ldi r16, 0x08 ; 8 + 734: 10 e0 ldi r17, 0x00 ; 0 + 736: 20 e0 ldi r18, 0x00 ; 0 + 738: 30 e0 ldi r19, 0x00 ; 0 + 73a: 62 e3 ldi r22, 0x32 ; 50 + 73c: cf 01 movw r24, r30 + 73e: 44 df rcall .-376 ; 0x5c8 + 740: 80 e0 ldi r24, 0x00 ; 0 + 742: 90 e0 ldi r25, 0x00 ; 0 + 744: 1f 91 pop r17 + 746: 0f 91 pop r16 + 748: ff 90 pop r15 + 74a: ef 90 pop r14 + 74c: df 90 pop r13 + 74e: cf 90 pop r12 + 750: bf 90 pop r11 + 752: af 90 pop r10 + 754: 08 95 ret -0000073e : - 73e: 0f 93 push r16 - 740: 1f 93 push r17 - 742: 66 23 and r22, r22 - 744: 19 f0 breq .+6 ; 0x74c - 746: 61 30 cpi r22, 0x01 ; 1 - 748: 39 f0 breq .+14 ; 0x758 - 74a: 0b c0 rjmp .+22 ; 0x762 - 74c: fc 01 movw r30, r24 - 74e: 27 81 ldd r18, Z+7 ; 0x07 - 750: 40 fb bst r20, 0 - 752: 20 f9 bld r18, 0 - 754: 27 83 std Z+7, r18 ; 0x07 - 756: 05 c0 rjmp .+10 ; 0x762 - 758: fc 01 movw r30, r24 - 75a: 27 81 ldd r18, Z+7 ; 0x07 - 75c: 40 fb bst r20, 0 - 75e: 21 f9 bld r18, 1 - 760: 27 83 std Z+7, r18 ; 0x07 - 762: ac 01 movw r20, r24 - 764: 49 5f subi r20, 0xF9 ; 249 - 766: 5f 4f sbci r21, 0xFF ; 255 - 768: 01 e0 ldi r16, 0x01 ; 1 - 76a: 10 e0 ldi r17, 0x00 ; 0 - 76c: 20 e0 ldi r18, 0x00 ; 0 - 76e: 30 e0 ldi r19, 0x00 ; 0 - 770: 63 e0 ldi r22, 0x03 ; 3 - 772: 1e df rcall .-452 ; 0x5b0 - 774: 80 e0 ldi r24, 0x00 ; 0 - 776: 90 e0 ldi r25, 0x00 ; 0 - 778: 1f 91 pop r17 - 77a: 0f 91 pop r16 - 77c: 08 95 ret +00000756 : + 756: 0f 93 push r16 + 758: 1f 93 push r17 + 75a: 66 23 and r22, r22 + 75c: 19 f0 breq .+6 ; 0x764 + 75e: 61 30 cpi r22, 0x01 ; 1 + 760: 39 f0 breq .+14 ; 0x770 + 762: 0b c0 rjmp .+22 ; 0x77a + 764: fc 01 movw r30, r24 + 766: 27 81 ldd r18, Z+7 ; 0x07 + 768: 40 fb bst r20, 0 + 76a: 20 f9 bld r18, 0 + 76c: 27 83 std Z+7, r18 ; 0x07 + 76e: 05 c0 rjmp .+10 ; 0x77a + 770: fc 01 movw r30, r24 + 772: 27 81 ldd r18, Z+7 ; 0x07 + 774: 40 fb bst r20, 0 + 776: 21 f9 bld r18, 1 + 778: 27 83 std Z+7, r18 ; 0x07 + 77a: ac 01 movw r20, r24 + 77c: 49 5f subi r20, 0xF9 ; 249 + 77e: 5f 4f sbci r21, 0xFF ; 255 + 780: 01 e0 ldi r16, 0x01 ; 1 + 782: 10 e0 ldi r17, 0x00 ; 0 + 784: 20 e0 ldi r18, 0x00 ; 0 + 786: 30 e0 ldi r19, 0x00 ; 0 + 788: 63 e0 ldi r22, 0x03 ; 3 + 78a: 1e df rcall .-452 ; 0x5c8 + 78c: 80 e0 ldi r24, 0x00 ; 0 + 78e: 90 e0 ldi r25, 0x00 ; 0 + 790: 1f 91 pop r17 + 792: 0f 91 pop r16 + 794: 08 95 ret -0000077e : - 77e: 0f 93 push r16 - 780: 1f 93 push r17 - 782: 66 23 and r22, r22 - 784: 19 f0 breq .+6 ; 0x78c - 786: 61 30 cpi r22, 0x01 ; 1 - 788: a1 f0 breq .+40 ; 0x7b2 - 78a: 22 c0 rjmp .+68 ; 0x7d0 - 78c: fc 01 movw r30, r24 - 78e: 22 85 ldd r18, Z+10 ; 0x0a - 790: 40 fb bst r20, 0 - 792: 27 f9 bld r18, 7 - 794: 33 85 ldd r19, Z+11 ; 0x0b - 796: 3f 7d andi r19, 0xDF ; 223 - 798: 33 87 std Z+11, r19 ; 0x0b - 79a: 2f 64 ori r18, 0x4F ; 79 - 79c: 22 87 std Z+10, r18 ; 0x0a - 79e: ac 01 movw r20, r24 - 7a0: 46 5f subi r20, 0xF6 ; 246 - 7a2: 5f 4f sbci r21, 0xFF ; 255 - 7a4: 01 e0 ldi r16, 0x01 ; 1 - 7a6: 10 e0 ldi r17, 0x00 ; 0 - 7a8: 20 e0 ldi r18, 0x00 ; 0 - 7aa: 30 e0 ldi r19, 0x00 ; 0 - 7ac: 60 e1 ldi r22, 0x10 ; 16 - 7ae: 00 df rcall .-512 ; 0x5b0 - 7b0: 0f c0 rjmp .+30 ; 0x7d0 - 7b2: fc 01 movw r30, r24 - 7b4: 23 85 ldd r18, Z+11 ; 0x0b - 7b6: 40 fb bst r20, 0 - 7b8: 27 f9 bld r18, 7 - 7ba: 2f 66 ori r18, 0x6F ; 111 - 7bc: 23 87 std Z+11, r18 ; 0x0b - 7be: ac 01 movw r20, r24 - 7c0: 45 5f subi r20, 0xF5 ; 245 - 7c2: 5f 4f sbci r21, 0xFF ; 255 - 7c4: 01 e0 ldi r16, 0x01 ; 1 - 7c6: 10 e0 ldi r17, 0x00 ; 0 - 7c8: 20 e0 ldi r18, 0x00 ; 0 - 7ca: 30 e0 ldi r19, 0x00 ; 0 - 7cc: 61 e1 ldi r22, 0x11 ; 17 - 7ce: f0 de rcall .-544 ; 0x5b0 - 7d0: 80 e0 ldi r24, 0x00 ; 0 - 7d2: 90 e0 ldi r25, 0x00 ; 0 - 7d4: 1f 91 pop r17 - 7d6: 0f 91 pop r16 - 7d8: 08 95 ret +00000796 : + 796: 0f 93 push r16 + 798: 1f 93 push r17 + 79a: 66 23 and r22, r22 + 79c: 19 f0 breq .+6 ; 0x7a4 + 79e: 61 30 cpi r22, 0x01 ; 1 + 7a0: a1 f0 breq .+40 ; 0x7ca + 7a2: 22 c0 rjmp .+68 ; 0x7e8 + 7a4: fc 01 movw r30, r24 + 7a6: 22 85 ldd r18, Z+10 ; 0x0a + 7a8: 40 fb bst r20, 0 + 7aa: 27 f9 bld r18, 7 + 7ac: 33 85 ldd r19, Z+11 ; 0x0b + 7ae: 3f 7d andi r19, 0xDF ; 223 + 7b0: 33 87 std Z+11, r19 ; 0x0b + 7b2: 2f 64 ori r18, 0x4F ; 79 + 7b4: 22 87 std Z+10, r18 ; 0x0a + 7b6: ac 01 movw r20, r24 + 7b8: 46 5f subi r20, 0xF6 ; 246 + 7ba: 5f 4f sbci r21, 0xFF ; 255 + 7bc: 01 e0 ldi r16, 0x01 ; 1 + 7be: 10 e0 ldi r17, 0x00 ; 0 + 7c0: 20 e0 ldi r18, 0x00 ; 0 + 7c2: 30 e0 ldi r19, 0x00 ; 0 + 7c4: 60 e1 ldi r22, 0x10 ; 16 + 7c6: 00 df rcall .-512 ; 0x5c8 + 7c8: 0f c0 rjmp .+30 ; 0x7e8 + 7ca: fc 01 movw r30, r24 + 7cc: 23 85 ldd r18, Z+11 ; 0x0b + 7ce: 40 fb bst r20, 0 + 7d0: 27 f9 bld r18, 7 + 7d2: 2f 66 ori r18, 0x6F ; 111 + 7d4: 23 87 std Z+11, r18 ; 0x0b + 7d6: ac 01 movw r20, r24 + 7d8: 45 5f subi r20, 0xF5 ; 245 + 7da: 5f 4f sbci r21, 0xFF ; 255 + 7dc: 01 e0 ldi r16, 0x01 ; 1 + 7de: 10 e0 ldi r17, 0x00 ; 0 + 7e0: 20 e0 ldi r18, 0x00 ; 0 + 7e2: 30 e0 ldi r19, 0x00 ; 0 + 7e4: 61 e1 ldi r22, 0x11 ; 17 + 7e6: f0 de rcall .-544 ; 0x5c8 + 7e8: 80 e0 ldi r24, 0x00 ; 0 + 7ea: 90 e0 ldi r25, 0x00 ; 0 + 7ec: 1f 91 pop r17 + 7ee: 0f 91 pop r16 + 7f0: 08 95 ret -000007da : - 7da: 0f 93 push r16 - 7dc: 1f 93 push r17 - 7de: 66 23 and r22, r22 - 7e0: 19 f0 breq .+6 ; 0x7e8 - 7e2: 61 30 cpi r22, 0x01 ; 1 - 7e4: 39 f0 breq .+14 ; 0x7f4 - 7e6: 0a c0 rjmp .+20 ; 0x7fc - 7e8: fc 01 movw r30, r24 - 7ea: 21 85 ldd r18, Z+9 ; 0x09 - 7ec: 2b 7f andi r18, 0xFB ; 251 - 7ee: 27 7f andi r18, 0xF7 ; 247 - 7f0: 21 87 std Z+9, r18 ; 0x09 - 7f2: 04 c0 rjmp .+8 ; 0x7fc - 7f4: fc 01 movw r30, r24 - 7f6: 21 85 ldd r18, Z+9 ; 0x09 - 7f8: 24 60 ori r18, 0x04 ; 4 - 7fa: 21 87 std Z+9, r18 ; 0x09 - 7fc: ac 01 movw r20, r24 - 7fe: 47 5f subi r20, 0xF7 ; 247 - 800: 5f 4f sbci r21, 0xFF ; 255 - 802: 01 e0 ldi r16, 0x01 ; 1 - 804: 10 e0 ldi r17, 0x00 ; 0 - 806: 20 e0 ldi r18, 0x00 ; 0 - 808: 30 e0 ldi r19, 0x00 ; 0 - 80a: 60 ef ldi r22, 0xF0 ; 240 - 80c: d1 de rcall .-606 ; 0x5b0 - 80e: 80 e0 ldi r24, 0x00 ; 0 - 810: 90 e0 ldi r25, 0x00 ; 0 - 812: 1f 91 pop r17 - 814: 0f 91 pop r16 - 816: 08 95 ret +000007f2 : + 7f2: 0f 93 push r16 + 7f4: 1f 93 push r17 + 7f6: 66 23 and r22, r22 + 7f8: 19 f0 breq .+6 ; 0x800 + 7fa: 61 30 cpi r22, 0x01 ; 1 + 7fc: 39 f0 breq .+14 ; 0x80c + 7fe: 0a c0 rjmp .+20 ; 0x814 + 800: fc 01 movw r30, r24 + 802: 21 85 ldd r18, Z+9 ; 0x09 + 804: 2b 7f andi r18, 0xFB ; 251 + 806: 27 7f andi r18, 0xF7 ; 247 + 808: 21 87 std Z+9, r18 ; 0x09 + 80a: 04 c0 rjmp .+8 ; 0x814 + 80c: fc 01 movw r30, r24 + 80e: 21 85 ldd r18, Z+9 ; 0x09 + 810: 24 60 ori r18, 0x04 ; 4 + 812: 21 87 std Z+9, r18 ; 0x09 + 814: ac 01 movw r20, r24 + 816: 47 5f subi r20, 0xF7 ; 247 + 818: 5f 4f sbci r21, 0xFF ; 255 + 81a: 01 e0 ldi r16, 0x01 ; 1 + 81c: 10 e0 ldi r17, 0x00 ; 0 + 81e: 20 e0 ldi r18, 0x00 ; 0 + 820: 30 e0 ldi r19, 0x00 ; 0 + 822: 60 ef ldi r22, 0xF0 ; 240 + 824: d1 de rcall .-606 ; 0x5c8 + 826: 80 e0 ldi r24, 0x00 ; 0 + 828: 90 e0 ldi r25, 0x00 ; 0 + 82a: 1f 91 pop r17 + 82c: 0f 91 pop r16 + 82e: 08 95 ret -00000818 : - 818: 0f 93 push r16 - 81a: 1f 93 push r17 - 81c: 31 e0 ldi r19, 0x01 ; 1 - 81e: 61 11 cpse r22, r1 - 820: 01 c0 rjmp .+2 ; 0x824 - 822: 30 e0 ldi r19, 0x00 ; 0 - 824: fc 01 movw r30, r24 - 826: e9 5a subi r30, 0xA9 ; 169 - 828: ff 4f sbci r31, 0xFF ; 255 - 82a: 20 81 ld r18, Z - 82c: 30 fb bst r19, 0 - 82e: 25 f9 bld r18, 5 - 830: 20 83 st Z, r18 - 832: 31 e0 ldi r19, 0x01 ; 1 - 834: 41 11 cpse r20, r1 - 836: 01 c0 rjmp .+2 ; 0x83a - 838: 30 e0 ldi r19, 0x00 ; 0 - 83a: ac 01 movw r20, r24 - 83c: 49 5a subi r20, 0xA9 ; 169 - 83e: 5f 4f sbci r21, 0xFF ; 255 - 840: fa 01 movw r30, r20 +00000830 : + 830: 0f 93 push r16 + 832: 1f 93 push r17 + 834: 31 e0 ldi r19, 0x01 ; 1 + 836: 61 11 cpse r22, r1 + 838: 01 c0 rjmp .+2 ; 0x83c + 83a: 30 e0 ldi r19, 0x00 ; 0 + 83c: fc 01 movw r30, r24 + 83e: e9 5a subi r30, 0xA9 ; 169 + 840: ff 4f sbci r31, 0xFF ; 255 842: 20 81 ld r18, Z 844: 30 fb bst r19, 0 - 846: 27 f9 bld r18, 7 + 846: 25 f9 bld r18, 5 848: 20 83 st Z, r18 - 84a: 01 e0 ldi r16, 0x01 ; 1 - 84c: 10 e0 ldi r17, 0x00 ; 0 - 84e: 20 e0 ldi r18, 0x00 ; 0 + 84a: 31 e0 ldi r19, 0x01 ; 1 + 84c: 41 11 cpse r20, r1 + 84e: 01 c0 rjmp .+2 ; 0x852 850: 30 e0 ldi r19, 0x00 ; 0 - 852: 61 eb ldi r22, 0xB1 ; 177 - 854: ad de rcall .-678 ; 0x5b0 - 856: 80 e0 ldi r24, 0x00 ; 0 - 858: 90 e0 ldi r25, 0x00 ; 0 - 85a: 1f 91 pop r17 - 85c: 0f 91 pop r16 - 85e: 08 95 ret + 852: ac 01 movw r20, r24 + 854: 49 5a subi r20, 0xA9 ; 169 + 856: 5f 4f sbci r21, 0xFF ; 255 + 858: fa 01 movw r30, r20 + 85a: 20 81 ld r18, Z + 85c: 30 fb bst r19, 0 + 85e: 27 f9 bld r18, 7 + 860: 20 83 st Z, r18 + 862: 01 e0 ldi r16, 0x01 ; 1 + 864: 10 e0 ldi r17, 0x00 ; 0 + 866: 20 e0 ldi r18, 0x00 ; 0 + 868: 30 e0 ldi r19, 0x00 ; 0 + 86a: 61 eb ldi r22, 0xB1 ; 177 + 86c: ad de rcall .-678 ; 0x5c8 + 86e: 80 e0 ldi r24, 0x00 ; 0 + 870: 90 e0 ldi r25, 0x00 ; 0 + 872: 1f 91 pop r17 + 874: 0f 91 pop r16 + 876: 08 95 ret -00000860 : - 860: af 92 push r10 - 862: bf 92 push r11 - 864: cf 92 push r12 - 866: df 92 push r13 - 868: ef 92 push r14 - 86a: ff 92 push r15 - 86c: 0f 93 push r16 - 86e: 1f 93 push r17 - 870: cf 93 push r28 - 872: df 93 push r29 - 874: ec 01 movw r28, r24 - 876: 66 23 and r22, r22 - 878: 19 f0 breq .+6 ; 0x880 - 87a: 61 30 cpi r22, 0x01 ; 1 - 87c: 01 f1 breq .+64 ; 0x8be - 87e: 3d c0 rjmp .+122 ; 0x8fa - 880: 42 70 andi r20, 0x02 ; 2 - 882: 8e 89 ldd r24, Y+22 ; 0x16 - 884: 8c 7f andi r24, 0xFC ; 252 - 886: 48 2b or r20, r24 - 888: 4e 8b std Y+22, r20 ; 0x16 - 88a: 3f 8b std Y+23, r19 ; 0x17 - 88c: 28 8f std Y+24, r18 ; 0x18 - 88e: d8 01 movw r26, r16 - 890: c7 01 movw r24, r14 - 892: 88 27 eor r24, r24 - 894: 99 27 eor r25, r25 - 896: af 70 andi r26, 0x0F ; 15 - 898: bb 27 eor r27, r27 - 89a: fa 8e std Y+26, r15 ; 0x1a - 89c: eb 8e std Y+27, r14 ; 0x1b - 89e: 8a 2f mov r24, r26 - 8a0: 8f 70 andi r24, 0x0F ; 15 - 8a2: 89 8f std Y+25, r24 ; 0x19 - 8a4: bc 8a std Y+20, r11 ; 0x14 - 8a6: ad 8a std Y+21, r10 ; 0x15 - 8a8: 08 e0 ldi r16, 0x08 ; 8 - 8aa: 10 e0 ldi r17, 0x00 ; 0 - 8ac: 20 e0 ldi r18, 0x00 ; 0 - 8ae: 30 e0 ldi r19, 0x00 ; 0 - 8b0: ae 01 movw r20, r28 - 8b2: 4c 5e subi r20, 0xEC ; 236 - 8b4: 5f 4f sbci r21, 0xFF ; 255 - 8b6: 6a e1 ldi r22, 0x1A ; 26 - 8b8: ce 01 movw r24, r28 - 8ba: 7a de rcall .-780 ; 0x5b0 - 8bc: 1e c0 rjmp .+60 ; 0x8fa - 8be: 42 70 andi r20, 0x02 ; 2 - 8c0: 8e 8d ldd r24, Y+30 ; 0x1e - 8c2: 8c 7f andi r24, 0xFC ; 252 - 8c4: 48 2b or r20, r24 - 8c6: 4e 8f std Y+30, r20 ; 0x1e - 8c8: 3f 8f std Y+31, r19 ; 0x1f - 8ca: 28 a3 std Y+32, r18 ; 0x20 - 8cc: d8 01 movw r26, r16 - 8ce: c7 01 movw r24, r14 - 8d0: 88 27 eor r24, r24 - 8d2: 99 27 eor r25, r25 - 8d4: af 70 andi r26, 0x0F ; 15 - 8d6: bb 27 eor r27, r27 - 8d8: fa a2 std Y+34, r15 ; 0x22 - 8da: eb a2 std Y+35, r14 ; 0x23 - 8dc: 8a 2f mov r24, r26 - 8de: 8f 70 andi r24, 0x0F ; 15 - 8e0: 89 a3 std Y+33, r24 ; 0x21 - 8e2: bc 8e std Y+28, r11 ; 0x1c - 8e4: ad 8e std Y+29, r10 ; 0x1d - 8e6: 08 e0 ldi r16, 0x08 ; 8 - 8e8: 10 e0 ldi r17, 0x00 ; 0 - 8ea: 20 e0 ldi r18, 0x00 ; 0 - 8ec: 30 e0 ldi r19, 0x00 ; 0 - 8ee: ae 01 movw r20, r28 - 8f0: 44 5e subi r20, 0xE4 ; 228 - 8f2: 5f 4f sbci r21, 0xFF ; 255 - 8f4: 62 e2 ldi r22, 0x22 ; 34 - 8f6: ce 01 movw r24, r28 - 8f8: 5b de rcall .-842 ; 0x5b0 - 8fa: 41 e0 ldi r20, 0x01 ; 1 - 8fc: 61 e0 ldi r22, 0x01 ; 1 - 8fe: ce 01 movw r24, r28 - 900: 8b df rcall .-234 ; 0x818 - 902: 80 e0 ldi r24, 0x00 ; 0 - 904: 90 e0 ldi r25, 0x00 ; 0 - 906: df 91 pop r29 - 908: cf 91 pop r28 - 90a: 1f 91 pop r17 - 90c: 0f 91 pop r16 - 90e: ff 90 pop r15 - 910: ef 90 pop r14 - 912: df 90 pop r13 - 914: cf 90 pop r12 - 916: bf 90 pop r11 - 918: af 90 pop r10 - 91a: 08 95 ret +00000878 : + 878: af 92 push r10 + 87a: bf 92 push r11 + 87c: cf 92 push r12 + 87e: df 92 push r13 + 880: ef 92 push r14 + 882: ff 92 push r15 + 884: 0f 93 push r16 + 886: 1f 93 push r17 + 888: cf 93 push r28 + 88a: df 93 push r29 + 88c: ec 01 movw r28, r24 + 88e: 66 23 and r22, r22 + 890: 19 f0 breq .+6 ; 0x898 + 892: 61 30 cpi r22, 0x01 ; 1 + 894: 01 f1 breq .+64 ; 0x8d6 + 896: 3d c0 rjmp .+122 ; 0x912 + 898: 42 70 andi r20, 0x02 ; 2 + 89a: 8e 89 ldd r24, Y+22 ; 0x16 + 89c: 8c 7f andi r24, 0xFC ; 252 + 89e: 48 2b or r20, r24 + 8a0: 4e 8b std Y+22, r20 ; 0x16 + 8a2: 3f 8b std Y+23, r19 ; 0x17 + 8a4: 28 8f std Y+24, r18 ; 0x18 + 8a6: d8 01 movw r26, r16 + 8a8: c7 01 movw r24, r14 + 8aa: 88 27 eor r24, r24 + 8ac: 99 27 eor r25, r25 + 8ae: af 70 andi r26, 0x0F ; 15 + 8b0: bb 27 eor r27, r27 + 8b2: fa 8e std Y+26, r15 ; 0x1a + 8b4: eb 8e std Y+27, r14 ; 0x1b + 8b6: 8a 2f mov r24, r26 + 8b8: 8f 70 andi r24, 0x0F ; 15 + 8ba: 89 8f std Y+25, r24 ; 0x19 + 8bc: bc 8a std Y+20, r11 ; 0x14 + 8be: ad 8a std Y+21, r10 ; 0x15 + 8c0: 08 e0 ldi r16, 0x08 ; 8 + 8c2: 10 e0 ldi r17, 0x00 ; 0 + 8c4: 20 e0 ldi r18, 0x00 ; 0 + 8c6: 30 e0 ldi r19, 0x00 ; 0 + 8c8: ae 01 movw r20, r28 + 8ca: 4c 5e subi r20, 0xEC ; 236 + 8cc: 5f 4f sbci r21, 0xFF ; 255 + 8ce: 6a e1 ldi r22, 0x1A ; 26 + 8d0: ce 01 movw r24, r28 + 8d2: 7a de rcall .-780 ; 0x5c8 + 8d4: 1e c0 rjmp .+60 ; 0x912 + 8d6: 42 70 andi r20, 0x02 ; 2 + 8d8: 8e 8d ldd r24, Y+30 ; 0x1e + 8da: 8c 7f andi r24, 0xFC ; 252 + 8dc: 48 2b or r20, r24 + 8de: 4e 8f std Y+30, r20 ; 0x1e + 8e0: 3f 8f std Y+31, r19 ; 0x1f + 8e2: 28 a3 std Y+32, r18 ; 0x20 + 8e4: d8 01 movw r26, r16 + 8e6: c7 01 movw r24, r14 + 8e8: 88 27 eor r24, r24 + 8ea: 99 27 eor r25, r25 + 8ec: af 70 andi r26, 0x0F ; 15 + 8ee: bb 27 eor r27, r27 + 8f0: fa a2 std Y+34, r15 ; 0x22 + 8f2: eb a2 std Y+35, r14 ; 0x23 + 8f4: 8a 2f mov r24, r26 + 8f6: 8f 70 andi r24, 0x0F ; 15 + 8f8: 89 a3 std Y+33, r24 ; 0x21 + 8fa: bc 8e std Y+28, r11 ; 0x1c + 8fc: ad 8e std Y+29, r10 ; 0x1d + 8fe: 08 e0 ldi r16, 0x08 ; 8 + 900: 10 e0 ldi r17, 0x00 ; 0 + 902: 20 e0 ldi r18, 0x00 ; 0 + 904: 30 e0 ldi r19, 0x00 ; 0 + 906: ae 01 movw r20, r28 + 908: 44 5e subi r20, 0xE4 ; 228 + 90a: 5f 4f sbci r21, 0xFF ; 255 + 90c: 62 e2 ldi r22, 0x22 ; 34 + 90e: ce 01 movw r24, r28 + 910: 5b de rcall .-842 ; 0x5c8 + 912: 41 e0 ldi r20, 0x01 ; 1 + 914: 61 e0 ldi r22, 0x01 ; 1 + 916: ce 01 movw r24, r28 + 918: 8b df rcall .-234 ; 0x830 + 91a: 80 e0 ldi r24, 0x00 ; 0 + 91c: 90 e0 ldi r25, 0x00 ; 0 + 91e: df 91 pop r29 + 920: cf 91 pop r28 + 922: 1f 91 pop r17 + 924: 0f 91 pop r16 + 926: ff 90 pop r15 + 928: ef 90 pop r14 + 92a: df 90 pop r13 + 92c: cf 90 pop r12 + 92e: bf 90 pop r11 + 930: af 90 pop r10 + 932: 08 95 ret -0000091c : +00000934 : int cm_si5351_init(si5351_driver *inst, void *i2c_transfer_inst, setGet_I2C_Event_fpt i2c_transfer_evt){ - 91c: ef 92 push r14 - 91e: ff 92 push r15 - 920: 0f 93 push r16 - 922: 1f 93 push r17 - 924: cf 93 push r28 - 926: df 93 push r29 - 928: 1f 92 push r1 - 92a: cd b7 in r28, 0x3d ; 61 - 92c: de b7 in r29, 0x3e ; 62 + 934: ef 92 push r14 + 936: ff 92 push r15 + 938: 0f 93 push r16 + 93a: 1f 93 push r17 + 93c: cf 93 push r28 + 93e: df 93 push r29 + 940: 1f 92 push r1 + 942: cd b7 in r28, 0x3d ; 61 + 944: de b7 in r29, 0x3e ; 62 if(inst == NULL)return -1; - 92e: 00 97 sbiw r24, 0x00 ; 0 - 930: 09 f4 brne .+2 ; 0x934 - 932: 85 c0 rjmp .+266 ; 0xa3e + 946: 00 97 sbiw r24, 0x00 ; 0 + 948: 09 f4 brne .+2 ; 0x94c + 94a: 85 c0 rjmp .+266 ; 0xa56 if(i2c_transfer_inst == NULL)return -1; - 934: 61 15 cp r22, r1 - 936: 71 05 cpc r23, r1 - 938: 09 f4 brne .+2 ; 0x93c - 93a: 84 c0 rjmp .+264 ; 0xa44 + 94c: 61 15 cp r22, r1 + 94e: 71 05 cpc r23, r1 + 950: 09 f4 brne .+2 ; 0x954 + 952: 84 c0 rjmp .+264 ; 0xa5c if(i2c_transfer_evt == NULL)return -1; - 93c: 41 15 cp r20, r1 - 93e: 51 05 cpc r21, r1 - 940: 09 f4 brne .+2 ; 0x944 - 942: 83 c0 rjmp .+262 ; 0xa4a - 944: 7c 01 movw r14, r24 + 954: 41 15 cp r20, r1 + 956: 51 05 cpc r21, r1 + 958: 09 f4 brne .+2 ; 0x95c + 95a: 83 c0 rjmp .+262 ; 0xa62 + 95c: 7c 01 movw r14, r24 inst->i2c_transfer_inst = i2c_transfer_inst; - 946: dc 01 movw r26, r24 - 948: 6d 93 st X+, r22 - 94a: 7c 93 st X, r23 - 94c: 11 97 sbiw r26, 0x01 ; 1 + 95e: dc 01 movw r26, r24 + 960: 6d 93 st X+, r22 + 962: 7c 93 st X, r23 + 964: 11 97 sbiw r26, 0x01 ; 1 inst->i2c_transfer_evt = i2c_transfer_evt; - 94e: 12 96 adiw r26, 0x02 ; 2 - 950: 4d 93 st X+, r20 - 952: 5c 93 st X, r21 - 954: 13 97 sbiw r26, 0x03 ; 3 + 966: 12 96 adiw r26, 0x02 ; 2 + 968: 4d 93 st X+, r20 + 96a: 5c 93 st X, r21 + 96c: 13 97 sbiw r26, 0x03 ; 3 int ret = 0; memset(&(inst->device_data),0x00,sizeof(si5351_data)); - 956: fc 01 movw r30, r24 - 958: 34 96 adiw r30, 0x04 ; 4 - 95a: 84 e5 ldi r24, 0x54 ; 84 - 95c: df 01 movw r26, r30 - 95e: 1d 92 st X+, r1 - 960: 8a 95 dec r24 - 962: e9 f7 brne .-6 ; 0x95e + 96e: fc 01 movw r30, r24 + 970: 34 96 adiw r30, 0x04 ; 4 + 972: 84 e5 ldi r24, 0x54 ; 84 + 974: df 01 movw r26, r30 + 976: 1d 92 st X+, r1 + 978: 8a 95 dec r24 + 97a: e9 f7 brne .-6 ; 0x976 /* Disable all outputs setting CLKx_DIS high */ uint8_t temp = 0xff; - 964: 8f ef ldi r24, 0xFF ; 255 - 966: 89 83 std Y+1, r24 ; 0x01 - writeRegister(inst,SI5351_REG_OUTPUT_ENABLE_CONTROL,&temp,1); - 968: 01 e0 ldi r16, 0x01 ; 1 - 96a: 10 e0 ldi r17, 0x00 ; 0 - 96c: 20 e0 ldi r18, 0x00 ; 0 - 96e: 30 e0 ldi r19, 0x00 ; 0 - 970: ae 01 movw r20, r28 - 972: 4f 5f subi r20, 0xFF ; 255 - 974: 5f 4f sbci r21, 0xFF ; 255 - 976: 63 e0 ldi r22, 0x03 ; 3 - 978: c7 01 movw r24, r14 - 97a: 1a de rcall .-972 ; 0x5b0 - - /* Power down all output drivers */ - temp = 0x80; - 97c: 80 e8 ldi r24, 0x80 ; 128 + 97c: 8f ef ldi r24, 0xFF ; 255 97e: 89 83 std Y+1, r24 ; 0x01 - writeRegister(inst,SI5351_REG_CLK_0_CONTROL,&temp,1); + writeRegister(inst,SI5351_REG_OUTPUT_ENABLE_CONTROL,&temp,1); 980: 01 e0 ldi r16, 0x01 ; 1 982: 10 e0 ldi r17, 0x00 ; 0 984: 20 e0 ldi r18, 0x00 ; 0 @@ -1805,92 +1799,92 @@ int cm_si5351_init(si5351_driver *inst, void *i2c_transfer_inst, setGet_I2C_Even 988: ae 01 movw r20, r28 98a: 4f 5f subi r20, 0xFF ; 255 98c: 5f 4f sbci r21, 0xFF ; 255 - 98e: 60 e1 ldi r22, 0x10 ; 16 + 98e: 63 e0 ldi r22, 0x03 ; 3 990: c7 01 movw r24, r14 - 992: 0e de rcall .-996 ; 0x5b0 + 992: 1a de rcall .-972 ; 0x5c8 + + /* Power down all output drivers */ + temp = 0x80; + 994: 80 e8 ldi r24, 0x80 ; 128 + 996: 89 83 std Y+1, r24 ; 0x01 + writeRegister(inst,SI5351_REG_CLK_0_CONTROL,&temp,1); + 998: 01 e0 ldi r16, 0x01 ; 1 + 99a: 10 e0 ldi r17, 0x00 ; 0 + 99c: 20 e0 ldi r18, 0x00 ; 0 + 99e: 30 e0 ldi r19, 0x00 ; 0 + 9a0: ae 01 movw r20, r28 + 9a2: 4f 5f subi r20, 0xFF ; 255 + 9a4: 5f 4f sbci r21, 0xFF ; 255 + 9a6: 60 e1 ldi r22, 0x10 ; 16 + 9a8: c7 01 movw r24, r14 + 9aa: 0e de rcall .-996 ; 0x5c8 writeRegister(inst,SI5351_REG_CLK_1_CONTROL,&temp,1); - 994: 01 e0 ldi r16, 0x01 ; 1 - 996: 10 e0 ldi r17, 0x00 ; 0 - 998: 20 e0 ldi r18, 0x00 ; 0 - 99a: 30 e0 ldi r19, 0x00 ; 0 - 99c: ae 01 movw r20, r28 - 99e: 4f 5f subi r20, 0xFF ; 255 - 9a0: 5f 4f sbci r21, 0xFF ; 255 - 9a2: 61 e1 ldi r22, 0x11 ; 17 - 9a4: c7 01 movw r24, r14 - 9a6: 04 de rcall .-1016 ; 0x5b0 + 9ac: 01 e0 ldi r16, 0x01 ; 1 + 9ae: 10 e0 ldi r17, 0x00 ; 0 + 9b0: 20 e0 ldi r18, 0x00 ; 0 + 9b2: 30 e0 ldi r19, 0x00 ; 0 + 9b4: ae 01 movw r20, r28 + 9b6: 4f 5f subi r20, 0xFF ; 255 + 9b8: 5f 4f sbci r21, 0xFF ; 255 + 9ba: 61 e1 ldi r22, 0x11 ; 17 + 9bc: c7 01 movw r24, r14 + 9be: 04 de rcall .-1016 ; 0x5c8 writeRegister(inst,SI5351_REG_CLK_2_CONTROL,&temp,1); - 9a8: 01 e0 ldi r16, 0x01 ; 1 - 9aa: 10 e0 ldi r17, 0x00 ; 0 - 9ac: 20 e0 ldi r18, 0x00 ; 0 - 9ae: 30 e0 ldi r19, 0x00 ; 0 - 9b0: ae 01 movw r20, r28 - 9b2: 4f 5f subi r20, 0xFF ; 255 - 9b4: 5f 4f sbci r21, 0xFF ; 255 - 9b6: 62 e1 ldi r22, 0x12 ; 18 - 9b8: c7 01 movw r24, r14 - 9ba: fa dd rcall .-1036 ; 0x5b0 + 9c0: 01 e0 ldi r16, 0x01 ; 1 + 9c2: 10 e0 ldi r17, 0x00 ; 0 + 9c4: 20 e0 ldi r18, 0x00 ; 0 + 9c6: 30 e0 ldi r19, 0x00 ; 0 + 9c8: ae 01 movw r20, r28 + 9ca: 4f 5f subi r20, 0xFF ; 255 + 9cc: 5f 4f sbci r21, 0xFF ; 255 + 9ce: 62 e1 ldi r22, 0x12 ; 18 + 9d0: c7 01 movw r24, r14 + 9d2: fa dd rcall .-1036 ; 0x5c8 writeRegister(inst,SI5351_REG_CLK_3_CONTROL,&temp,1); - 9bc: 01 e0 ldi r16, 0x01 ; 1 - 9be: 10 e0 ldi r17, 0x00 ; 0 - 9c0: 20 e0 ldi r18, 0x00 ; 0 - 9c2: 30 e0 ldi r19, 0x00 ; 0 - 9c4: ae 01 movw r20, r28 - 9c6: 4f 5f subi r20, 0xFF ; 255 - 9c8: 5f 4f sbci r21, 0xFF ; 255 - 9ca: 63 e1 ldi r22, 0x13 ; 19 - 9cc: c7 01 movw r24, r14 - 9ce: f0 dd rcall .-1056 ; 0x5b0 + 9d4: 01 e0 ldi r16, 0x01 ; 1 + 9d6: 10 e0 ldi r17, 0x00 ; 0 + 9d8: 20 e0 ldi r18, 0x00 ; 0 + 9da: 30 e0 ldi r19, 0x00 ; 0 + 9dc: ae 01 movw r20, r28 + 9de: 4f 5f subi r20, 0xFF ; 255 + 9e0: 5f 4f sbci r21, 0xFF ; 255 + 9e2: 63 e1 ldi r22, 0x13 ; 19 + 9e4: c7 01 movw r24, r14 + 9e6: f0 dd rcall .-1056 ; 0x5c8 writeRegister(inst,SI5351_REG_CLK_4_CONTROL,&temp,1); - 9d0: 01 e0 ldi r16, 0x01 ; 1 - 9d2: 10 e0 ldi r17, 0x00 ; 0 - 9d4: 20 e0 ldi r18, 0x00 ; 0 - 9d6: 30 e0 ldi r19, 0x00 ; 0 - 9d8: ae 01 movw r20, r28 - 9da: 4f 5f subi r20, 0xFF ; 255 - 9dc: 5f 4f sbci r21, 0xFF ; 255 - 9de: 64 e1 ldi r22, 0x14 ; 20 - 9e0: c7 01 movw r24, r14 - 9e2: e6 dd rcall .-1076 ; 0x5b0 + 9e8: 01 e0 ldi r16, 0x01 ; 1 + 9ea: 10 e0 ldi r17, 0x00 ; 0 + 9ec: 20 e0 ldi r18, 0x00 ; 0 + 9ee: 30 e0 ldi r19, 0x00 ; 0 + 9f0: ae 01 movw r20, r28 + 9f2: 4f 5f subi r20, 0xFF ; 255 + 9f4: 5f 4f sbci r21, 0xFF ; 255 + 9f6: 64 e1 ldi r22, 0x14 ; 20 + 9f8: c7 01 movw r24, r14 + 9fa: e6 dd rcall .-1076 ; 0x5c8 writeRegister(inst,SI5351_REG_CLK_5_CONTROL,&temp,1); - 9e4: 01 e0 ldi r16, 0x01 ; 1 - 9e6: 10 e0 ldi r17, 0x00 ; 0 - 9e8: 20 e0 ldi r18, 0x00 ; 0 - 9ea: 30 e0 ldi r19, 0x00 ; 0 - 9ec: ae 01 movw r20, r28 - 9ee: 4f 5f subi r20, 0xFF ; 255 - 9f0: 5f 4f sbci r21, 0xFF ; 255 - 9f2: 65 e1 ldi r22, 0x15 ; 21 - 9f4: c7 01 movw r24, r14 - 9f6: dc dd rcall .-1096 ; 0x5b0 + 9fc: 01 e0 ldi r16, 0x01 ; 1 + 9fe: 10 e0 ldi r17, 0x00 ; 0 + a00: 20 e0 ldi r18, 0x00 ; 0 + a02: 30 e0 ldi r19, 0x00 ; 0 + a04: ae 01 movw r20, r28 + a06: 4f 5f subi r20, 0xFF ; 255 + a08: 5f 4f sbci r21, 0xFF ; 255 + a0a: 65 e1 ldi r22, 0x15 ; 21 + a0c: c7 01 movw r24, r14 + a0e: dc dd rcall .-1096 ; 0x5c8 writeRegister(inst,SI5351_REG_CLK_6_CONTROL,&temp,1); - 9f8: 01 e0 ldi r16, 0x01 ; 1 - 9fa: 10 e0 ldi r17, 0x00 ; 0 - 9fc: 20 e0 ldi r18, 0x00 ; 0 - 9fe: 30 e0 ldi r19, 0x00 ; 0 - a00: ae 01 movw r20, r28 - a02: 4f 5f subi r20, 0xFF ; 255 - a04: 5f 4f sbci r21, 0xFF ; 255 - a06: 66 e1 ldi r22, 0x16 ; 22 - a08: c7 01 movw r24, r14 - a0a: d2 dd rcall .-1116 ; 0x5b0 + a10: 01 e0 ldi r16, 0x01 ; 1 + a12: 10 e0 ldi r17, 0x00 ; 0 + a14: 20 e0 ldi r18, 0x00 ; 0 + a16: 30 e0 ldi r19, 0x00 ; 0 + a18: ae 01 movw r20, r28 + a1a: 4f 5f subi r20, 0xFF ; 255 + a1c: 5f 4f sbci r21, 0xFF ; 255 + a1e: 66 e1 ldi r22, 0x16 ; 22 + a20: c7 01 movw r24, r14 + a22: d2 dd rcall .-1116 ; 0x5c8 writeRegister(inst,SI5351_REG_CLK_7_CONTROL,&temp,1); - a0c: 01 e0 ldi r16, 0x01 ; 1 - a0e: 10 e0 ldi r17, 0x00 ; 0 - a10: 20 e0 ldi r18, 0x00 ; 0 - a12: 30 e0 ldi r19, 0x00 ; 0 - a14: ae 01 movw r20, r28 - a16: 4f 5f subi r20, 0xFF ; 255 - a18: 5f 4f sbci r21, 0xFF ; 255 - a1a: 67 e1 ldi r22, 0x17 ; 23 - a1c: c7 01 movw r24, r14 - a1e: c8 dd rcall .-1136 ; 0x5b0 - - temp = SI5351_CRYSTAL_LOAD_10PF; - a20: 80 ec ldi r24, 0xC0 ; 192 - a22: 89 83 std Y+1, r24 ; 0x01 - - writeRegister(inst,SI5351_REG_CRYSTAL_LOAD_CAPACITANCE,&temp,1); a24: 01 e0 ldi r16, 0x01 ; 1 a26: 10 e0 ldi r17, 0x00 ; 0 a28: 20 e0 ldi r18, 0x00 ; 0 @@ -1898,316 +1892,332 @@ int cm_si5351_init(si5351_driver *inst, void *i2c_transfer_inst, setGet_I2C_Even a2c: ae 01 movw r20, r28 a2e: 4f 5f subi r20, 0xFF ; 255 a30: 5f 4f sbci r21, 0xFF ; 255 - a32: 67 eb ldi r22, 0xB7 ; 183 + a32: 67 e1 ldi r22, 0x17 ; 23 a34: c7 01 movw r24, r14 - a36: bc dd rcall .-1160 ; 0x5b0 + a36: c8 dd rcall .-1136 ; 0x5c8 + + temp = SI5351_CRYSTAL_LOAD_10PF; + a38: 80 ec ldi r24, 0xC0 ; 192 + a3a: 89 83 std Y+1, r24 ; 0x01 + + writeRegister(inst,SI5351_REG_CRYSTAL_LOAD_CAPACITANCE,&temp,1); + a3c: 01 e0 ldi r16, 0x01 ; 1 + a3e: 10 e0 ldi r17, 0x00 ; 0 + a40: 20 e0 ldi r18, 0x00 ; 0 + a42: 30 e0 ldi r19, 0x00 ; 0 + a44: ae 01 movw r20, r28 + a46: 4f 5f subi r20, 0xFF ; 255 + a48: 5f 4f sbci r21, 0xFF ; 255 + a4a: 67 eb ldi r22, 0xB7 ; 183 + a4c: c7 01 movw r24, r14 + a4e: bc dd rcall .-1160 ; 0x5c8 return ret; - a38: 80 e0 ldi r24, 0x00 ; 0 - a3a: 90 e0 ldi r25, 0x00 ; 0 - a3c: 08 c0 rjmp .+16 ; 0xa4e + a50: 80 e0 ldi r24, 0x00 ; 0 + a52: 90 e0 ldi r25, 0x00 ; 0 + a54: 08 c0 rjmp .+16 ; 0xa66 return inst->device_data.deviceStatus.REVID; } int cm_si5351_init(si5351_driver *inst, void *i2c_transfer_inst, setGet_I2C_Event_fpt i2c_transfer_evt){ if(inst == NULL)return -1; - a3e: 8f ef ldi r24, 0xFF ; 255 - a40: 9f ef ldi r25, 0xFF ; 255 - a42: 05 c0 rjmp .+10 ; 0xa4e + a56: 8f ef ldi r24, 0xFF ; 255 + a58: 9f ef ldi r25, 0xFF ; 255 + a5a: 05 c0 rjmp .+10 ; 0xa66 if(i2c_transfer_inst == NULL)return -1; - a44: 8f ef ldi r24, 0xFF ; 255 - a46: 9f ef ldi r25, 0xFF ; 255 - a48: 02 c0 rjmp .+4 ; 0xa4e + a5c: 8f ef ldi r24, 0xFF ; 255 + a5e: 9f ef ldi r25, 0xFF ; 255 + a60: 02 c0 rjmp .+4 ; 0xa66 if(i2c_transfer_evt == NULL)return -1; - a4a: 8f ef ldi r24, 0xFF ; 255 - a4c: 9f ef ldi r25, 0xFF ; 255 + a62: 8f ef ldi r24, 0xFF ; 255 + a64: 9f ef ldi r25, 0xFF ; 255 writeRegister(inst,SI5351_REG_CRYSTAL_LOAD_CAPACITANCE,&temp,1); return ret; } - a4e: 0f 90 pop r0 - a50: df 91 pop r29 - a52: cf 91 pop r28 - a54: 1f 91 pop r17 - a56: 0f 91 pop r16 - a58: ff 90 pop r15 - a5a: ef 90 pop r14 - a5c: 08 95 ret + a66: 0f 90 pop r0 + a68: df 91 pop r29 + a6a: cf 91 pop r28 + a6c: 1f 91 pop r17 + a6e: 0f 91 pop r16 + a70: ff 90 pop r15 + a72: ef 90 pop r14 + a74: 08 95 ret -00000a5e : - a5e: 0f 93 push r16 - a60: 1f 93 push r17 - a62: cf 93 push r28 - a64: df 93 push r29 - a66: 82 30 cpi r24, 0x02 ; 2 - a68: 91 05 cpc r25, r1 - a6a: 10 f4 brcc .+4 ; 0xa70 - a6c: 82 e0 ldi r24, 0x02 ; 2 - a6e: 90 e0 ldi r25, 0x00 ; 0 - a70: e0 91 0d 3f lds r30, 0x3F0D ; 0x803f0d <__flp> - a74: f0 91 0e 3f lds r31, 0x3F0E ; 0x803f0e <__flp+0x1> - a78: 20 e0 ldi r18, 0x00 ; 0 - a7a: 30 e0 ldi r19, 0x00 ; 0 - a7c: a0 e0 ldi r26, 0x00 ; 0 - a7e: b0 e0 ldi r27, 0x00 ; 0 - a80: 30 97 sbiw r30, 0x00 ; 0 - a82: 19 f1 breq .+70 ; 0xaca - a84: 40 81 ld r20, Z - a86: 51 81 ldd r21, Z+1 ; 0x01 - a88: 02 81 ldd r16, Z+2 ; 0x02 - a8a: 13 81 ldd r17, Z+3 ; 0x03 - a8c: 48 17 cp r20, r24 - a8e: 59 07 cpc r21, r25 - a90: c8 f0 brcs .+50 ; 0xac4 - a92: 84 17 cp r24, r20 - a94: 95 07 cpc r25, r21 - a96: 69 f4 brne .+26 ; 0xab2 - a98: 10 97 sbiw r26, 0x00 ; 0 - a9a: 31 f0 breq .+12 ; 0xaa8 - a9c: 12 96 adiw r26, 0x02 ; 2 - a9e: 0c 93 st X, r16 - aa0: 12 97 sbiw r26, 0x02 ; 2 - aa2: 13 96 adiw r26, 0x03 ; 3 - aa4: 1c 93 st X, r17 - aa6: 27 c0 rjmp .+78 ; 0xaf6 - aa8: 00 93 0d 3f sts 0x3F0D, r16 ; 0x803f0d <__flp> - aac: 10 93 0e 3f sts 0x3F0E, r17 ; 0x803f0e <__flp+0x1> - ab0: 22 c0 rjmp .+68 ; 0xaf6 - ab2: 21 15 cp r18, r1 - ab4: 31 05 cpc r19, r1 - ab6: 19 f0 breq .+6 ; 0xabe - ab8: 42 17 cp r20, r18 - aba: 53 07 cpc r21, r19 - abc: 18 f4 brcc .+6 ; 0xac4 - abe: 9a 01 movw r18, r20 - ac0: bd 01 movw r22, r26 - ac2: ef 01 movw r28, r30 - ac4: df 01 movw r26, r30 - ac6: f8 01 movw r30, r16 - ac8: db cf rjmp .-74 ; 0xa80 +00000a76 : + a76: 0f 93 push r16 + a78: 1f 93 push r17 + a7a: cf 93 push r28 + a7c: df 93 push r29 + a7e: 82 30 cpi r24, 0x02 ; 2 + a80: 91 05 cpc r25, r1 + a82: 10 f4 brcc .+4 ; 0xa88 + a84: 82 e0 ldi r24, 0x02 ; 2 + a86: 90 e0 ldi r25, 0x00 ; 0 + a88: e0 91 0d 3f lds r30, 0x3F0D ; 0x803f0d <__flp> + a8c: f0 91 0e 3f lds r31, 0x3F0E ; 0x803f0e <__flp+0x1> + a90: 20 e0 ldi r18, 0x00 ; 0 + a92: 30 e0 ldi r19, 0x00 ; 0 + a94: a0 e0 ldi r26, 0x00 ; 0 + a96: b0 e0 ldi r27, 0x00 ; 0 + a98: 30 97 sbiw r30, 0x00 ; 0 + a9a: 19 f1 breq .+70 ; 0xae2 + a9c: 40 81 ld r20, Z + a9e: 51 81 ldd r21, Z+1 ; 0x01 + aa0: 02 81 ldd r16, Z+2 ; 0x02 + aa2: 13 81 ldd r17, Z+3 ; 0x03 + aa4: 48 17 cp r20, r24 + aa6: 59 07 cpc r21, r25 + aa8: c8 f0 brcs .+50 ; 0xadc + aaa: 84 17 cp r24, r20 + aac: 95 07 cpc r25, r21 + aae: 69 f4 brne .+26 ; 0xaca + ab0: 10 97 sbiw r26, 0x00 ; 0 + ab2: 31 f0 breq .+12 ; 0xac0 + ab4: 12 96 adiw r26, 0x02 ; 2 + ab6: 0c 93 st X, r16 + ab8: 12 97 sbiw r26, 0x02 ; 2 + aba: 13 96 adiw r26, 0x03 ; 3 + abc: 1c 93 st X, r17 + abe: 27 c0 rjmp .+78 ; 0xb0e + ac0: 00 93 0d 3f sts 0x3F0D, r16 ; 0x803f0d <__flp> + ac4: 10 93 0e 3f sts 0x3F0E, r17 ; 0x803f0e <__flp+0x1> + ac8: 22 c0 rjmp .+68 ; 0xb0e aca: 21 15 cp r18, r1 acc: 31 05 cpc r19, r1 - ace: f9 f0 breq .+62 ; 0xb0e - ad0: 28 1b sub r18, r24 - ad2: 39 0b sbc r19, r25 - ad4: 24 30 cpi r18, 0x04 ; 4 - ad6: 31 05 cpc r19, r1 - ad8: 80 f4 brcc .+32 ; 0xafa - ada: 8a 81 ldd r24, Y+2 ; 0x02 - adc: 9b 81 ldd r25, Y+3 ; 0x03 - ade: 61 15 cp r22, r1 - ae0: 71 05 cpc r23, r1 - ae2: 21 f0 breq .+8 ; 0xaec - ae4: fb 01 movw r30, r22 - ae6: 82 83 std Z+2, r24 ; 0x02 - ae8: 93 83 std Z+3, r25 ; 0x03 - aea: 04 c0 rjmp .+8 ; 0xaf4 - aec: 80 93 0d 3f sts 0x3F0D, r24 ; 0x803f0d <__flp> - af0: 90 93 0e 3f sts 0x3F0E, r25 ; 0x803f0e <__flp+0x1> - af4: fe 01 movw r30, r28 - af6: 32 96 adiw r30, 0x02 ; 2 - af8: 44 c0 rjmp .+136 ; 0xb82 - afa: fe 01 movw r30, r28 - afc: e2 0f add r30, r18 - afe: f3 1f adc r31, r19 - b00: 81 93 st Z+, r24 - b02: 91 93 st Z+, r25 - b04: 22 50 subi r18, 0x02 ; 2 - b06: 31 09 sbc r19, r1 - b08: 28 83 st Y, r18 - b0a: 39 83 std Y+1, r19 ; 0x01 - b0c: 3a c0 rjmp .+116 ; 0xb82 - b0e: 20 91 0b 3f lds r18, 0x3F0B ; 0x803f0b <__brkval> - b12: 30 91 0c 3f lds r19, 0x3F0C ; 0x803f0c <__brkval+0x1> - b16: 23 2b or r18, r19 - b18: 41 f4 brne .+16 ; 0xb2a - b1a: 20 91 02 3f lds r18, 0x3F02 ; 0x803f02 <__malloc_heap_start> - b1e: 30 91 03 3f lds r19, 0x3F03 ; 0x803f03 <__malloc_heap_start+0x1> - b22: 20 93 0b 3f sts 0x3F0B, r18 ; 0x803f0b <__brkval> - b26: 30 93 0c 3f sts 0x3F0C, r19 ; 0x803f0c <__brkval+0x1> - b2a: 20 91 00 3f lds r18, 0x3F00 ; 0x803f00 <__DATA_REGION_ORIGIN__> - b2e: 30 91 01 3f lds r19, 0x3F01 ; 0x803f01 <__DATA_REGION_ORIGIN__+0x1> - b32: 21 15 cp r18, r1 - b34: 31 05 cpc r19, r1 - b36: 41 f4 brne .+16 ; 0xb48 - b38: 2d b7 in r18, 0x3d ; 61 - b3a: 3e b7 in r19, 0x3e ; 62 - b3c: 40 91 04 3f lds r20, 0x3F04 ; 0x803f04 <__malloc_margin> - b40: 50 91 05 3f lds r21, 0x3F05 ; 0x803f05 <__malloc_margin+0x1> - b44: 24 1b sub r18, r20 - b46: 35 0b sbc r19, r21 - b48: e0 91 0b 3f lds r30, 0x3F0B ; 0x803f0b <__brkval> - b4c: f0 91 0c 3f lds r31, 0x3F0C ; 0x803f0c <__brkval+0x1> - b50: e2 17 cp r30, r18 - b52: f3 07 cpc r31, r19 - b54: a0 f4 brcc .+40 ; 0xb7e - b56: 2e 1b sub r18, r30 - b58: 3f 0b sbc r19, r31 - b5a: 28 17 cp r18, r24 - b5c: 39 07 cpc r19, r25 - b5e: 78 f0 brcs .+30 ; 0xb7e - b60: ac 01 movw r20, r24 - b62: 4e 5f subi r20, 0xFE ; 254 - b64: 5f 4f sbci r21, 0xFF ; 255 - b66: 24 17 cp r18, r20 - b68: 35 07 cpc r19, r21 - b6a: 48 f0 brcs .+18 ; 0xb7e - b6c: 4e 0f add r20, r30 - b6e: 5f 1f adc r21, r31 - b70: 40 93 0b 3f sts 0x3F0B, r20 ; 0x803f0b <__brkval> - b74: 50 93 0c 3f sts 0x3F0C, r21 ; 0x803f0c <__brkval+0x1> - b78: 81 93 st Z+, r24 - b7a: 91 93 st Z+, r25 - b7c: 02 c0 rjmp .+4 ; 0xb82 - b7e: e0 e0 ldi r30, 0x00 ; 0 - b80: f0 e0 ldi r31, 0x00 ; 0 - b82: cf 01 movw r24, r30 - b84: df 91 pop r29 - b86: cf 91 pop r28 - b88: 1f 91 pop r17 - b8a: 0f 91 pop r16 - b8c: 08 95 ret + ace: 19 f0 breq .+6 ; 0xad6 + ad0: 42 17 cp r20, r18 + ad2: 53 07 cpc r21, r19 + ad4: 18 f4 brcc .+6 ; 0xadc + ad6: 9a 01 movw r18, r20 + ad8: bd 01 movw r22, r26 + ada: ef 01 movw r28, r30 + adc: df 01 movw r26, r30 + ade: f8 01 movw r30, r16 + ae0: db cf rjmp .-74 ; 0xa98 + ae2: 21 15 cp r18, r1 + ae4: 31 05 cpc r19, r1 + ae6: f9 f0 breq .+62 ; 0xb26 + ae8: 28 1b sub r18, r24 + aea: 39 0b sbc r19, r25 + aec: 24 30 cpi r18, 0x04 ; 4 + aee: 31 05 cpc r19, r1 + af0: 80 f4 brcc .+32 ; 0xb12 + af2: 8a 81 ldd r24, Y+2 ; 0x02 + af4: 9b 81 ldd r25, Y+3 ; 0x03 + af6: 61 15 cp r22, r1 + af8: 71 05 cpc r23, r1 + afa: 21 f0 breq .+8 ; 0xb04 + afc: fb 01 movw r30, r22 + afe: 82 83 std Z+2, r24 ; 0x02 + b00: 93 83 std Z+3, r25 ; 0x03 + b02: 04 c0 rjmp .+8 ; 0xb0c + b04: 80 93 0d 3f sts 0x3F0D, r24 ; 0x803f0d <__flp> + b08: 90 93 0e 3f sts 0x3F0E, r25 ; 0x803f0e <__flp+0x1> + b0c: fe 01 movw r30, r28 + b0e: 32 96 adiw r30, 0x02 ; 2 + b10: 44 c0 rjmp .+136 ; 0xb9a + b12: fe 01 movw r30, r28 + b14: e2 0f add r30, r18 + b16: f3 1f adc r31, r19 + b18: 81 93 st Z+, r24 + b1a: 91 93 st Z+, r25 + b1c: 22 50 subi r18, 0x02 ; 2 + b1e: 31 09 sbc r19, r1 + b20: 28 83 st Y, r18 + b22: 39 83 std Y+1, r19 ; 0x01 + b24: 3a c0 rjmp .+116 ; 0xb9a + b26: 20 91 0b 3f lds r18, 0x3F0B ; 0x803f0b <__brkval> + b2a: 30 91 0c 3f lds r19, 0x3F0C ; 0x803f0c <__brkval+0x1> + b2e: 23 2b or r18, r19 + b30: 41 f4 brne .+16 ; 0xb42 + b32: 20 91 02 3f lds r18, 0x3F02 ; 0x803f02 <__malloc_heap_start> + b36: 30 91 03 3f lds r19, 0x3F03 ; 0x803f03 <__malloc_heap_start+0x1> + b3a: 20 93 0b 3f sts 0x3F0B, r18 ; 0x803f0b <__brkval> + b3e: 30 93 0c 3f sts 0x3F0C, r19 ; 0x803f0c <__brkval+0x1> + b42: 20 91 00 3f lds r18, 0x3F00 ; 0x803f00 <__DATA_REGION_ORIGIN__> + b46: 30 91 01 3f lds r19, 0x3F01 ; 0x803f01 <__DATA_REGION_ORIGIN__+0x1> + b4a: 21 15 cp r18, r1 + b4c: 31 05 cpc r19, r1 + b4e: 41 f4 brne .+16 ; 0xb60 + b50: 2d b7 in r18, 0x3d ; 61 + b52: 3e b7 in r19, 0x3e ; 62 + b54: 40 91 04 3f lds r20, 0x3F04 ; 0x803f04 <__malloc_margin> + b58: 50 91 05 3f lds r21, 0x3F05 ; 0x803f05 <__malloc_margin+0x1> + b5c: 24 1b sub r18, r20 + b5e: 35 0b sbc r19, r21 + b60: e0 91 0b 3f lds r30, 0x3F0B ; 0x803f0b <__brkval> + b64: f0 91 0c 3f lds r31, 0x3F0C ; 0x803f0c <__brkval+0x1> + b68: e2 17 cp r30, r18 + b6a: f3 07 cpc r31, r19 + b6c: a0 f4 brcc .+40 ; 0xb96 + b6e: 2e 1b sub r18, r30 + b70: 3f 0b sbc r19, r31 + b72: 28 17 cp r18, r24 + b74: 39 07 cpc r19, r25 + b76: 78 f0 brcs .+30 ; 0xb96 + b78: ac 01 movw r20, r24 + b7a: 4e 5f subi r20, 0xFE ; 254 + b7c: 5f 4f sbci r21, 0xFF ; 255 + b7e: 24 17 cp r18, r20 + b80: 35 07 cpc r19, r21 + b82: 48 f0 brcs .+18 ; 0xb96 + b84: 4e 0f add r20, r30 + b86: 5f 1f adc r21, r31 + b88: 40 93 0b 3f sts 0x3F0B, r20 ; 0x803f0b <__brkval> + b8c: 50 93 0c 3f sts 0x3F0C, r21 ; 0x803f0c <__brkval+0x1> + b90: 81 93 st Z+, r24 + b92: 91 93 st Z+, r25 + b94: 02 c0 rjmp .+4 ; 0xb9a + b96: e0 e0 ldi r30, 0x00 ; 0 + b98: f0 e0 ldi r31, 0x00 ; 0 + b9a: cf 01 movw r24, r30 + b9c: df 91 pop r29 + b9e: cf 91 pop r28 + ba0: 1f 91 pop r17 + ba2: 0f 91 pop r16 + ba4: 08 95 ret -00000b8e : - b8e: cf 93 push r28 - b90: df 93 push r29 - b92: 00 97 sbiw r24, 0x00 ; 0 - b94: 09 f4 brne .+2 ; 0xb98 - b96: 81 c0 rjmp .+258 ; 0xc9a - b98: fc 01 movw r30, r24 - b9a: 32 97 sbiw r30, 0x02 ; 2 - b9c: 12 82 std Z+2, r1 ; 0x02 - b9e: 13 82 std Z+3, r1 ; 0x03 - ba0: a0 91 0d 3f lds r26, 0x3F0D ; 0x803f0d <__flp> - ba4: b0 91 0e 3f lds r27, 0x3F0E ; 0x803f0e <__flp+0x1> - ba8: 10 97 sbiw r26, 0x00 ; 0 - baa: 81 f4 brne .+32 ; 0xbcc - bac: 20 81 ld r18, Z - bae: 31 81 ldd r19, Z+1 ; 0x01 - bb0: 82 0f add r24, r18 - bb2: 93 1f adc r25, r19 - bb4: 20 91 0b 3f lds r18, 0x3F0B ; 0x803f0b <__brkval> - bb8: 30 91 0c 3f lds r19, 0x3F0C ; 0x803f0c <__brkval+0x1> - bbc: 28 17 cp r18, r24 - bbe: 39 07 cpc r19, r25 - bc0: 51 f5 brne .+84 ; 0xc16 - bc2: e0 93 0b 3f sts 0x3F0B, r30 ; 0x803f0b <__brkval> - bc6: f0 93 0c 3f sts 0x3F0C, r31 ; 0x803f0c <__brkval+0x1> - bca: 67 c0 rjmp .+206 ; 0xc9a - bcc: ed 01 movw r28, r26 - bce: 20 e0 ldi r18, 0x00 ; 0 - bd0: 30 e0 ldi r19, 0x00 ; 0 - bd2: ce 17 cp r28, r30 - bd4: df 07 cpc r29, r31 - bd6: 40 f4 brcc .+16 ; 0xbe8 - bd8: 4a 81 ldd r20, Y+2 ; 0x02 - bda: 5b 81 ldd r21, Y+3 ; 0x03 - bdc: 9e 01 movw r18, r28 - bde: 41 15 cp r20, r1 - be0: 51 05 cpc r21, r1 - be2: f1 f0 breq .+60 ; 0xc20 - be4: ea 01 movw r28, r20 - be6: f5 cf rjmp .-22 ; 0xbd2 - be8: c2 83 std Z+2, r28 ; 0x02 - bea: d3 83 std Z+3, r29 ; 0x03 - bec: 40 81 ld r20, Z - bee: 51 81 ldd r21, Z+1 ; 0x01 - bf0: 84 0f add r24, r20 - bf2: 95 1f adc r25, r21 - bf4: c8 17 cp r28, r24 - bf6: d9 07 cpc r29, r25 - bf8: 59 f4 brne .+22 ; 0xc10 - bfa: 88 81 ld r24, Y - bfc: 99 81 ldd r25, Y+1 ; 0x01 - bfe: 84 0f add r24, r20 - c00: 95 1f adc r25, r21 - c02: 02 96 adiw r24, 0x02 ; 2 - c04: 80 83 st Z, r24 - c06: 91 83 std Z+1, r25 ; 0x01 - c08: 8a 81 ldd r24, Y+2 ; 0x02 - c0a: 9b 81 ldd r25, Y+3 ; 0x03 - c0c: 82 83 std Z+2, r24 ; 0x02 - c0e: 93 83 std Z+3, r25 ; 0x03 - c10: 21 15 cp r18, r1 - c12: 31 05 cpc r19, r1 - c14: 29 f4 brne .+10 ; 0xc20 - c16: e0 93 0d 3f sts 0x3F0D, r30 ; 0x803f0d <__flp> - c1a: f0 93 0e 3f sts 0x3F0E, r31 ; 0x803f0e <__flp+0x1> - c1e: 3d c0 rjmp .+122 ; 0xc9a - c20: e9 01 movw r28, r18 - c22: ea 83 std Y+2, r30 ; 0x02 - c24: fb 83 std Y+3, r31 ; 0x03 - c26: 49 91 ld r20, Y+ - c28: 59 91 ld r21, Y+ - c2a: c4 0f add r28, r20 - c2c: d5 1f adc r29, r21 - c2e: ec 17 cp r30, r28 - c30: fd 07 cpc r31, r29 - c32: 61 f4 brne .+24 ; 0xc4c - c34: 80 81 ld r24, Z - c36: 91 81 ldd r25, Z+1 ; 0x01 - c38: 84 0f add r24, r20 - c3a: 95 1f adc r25, r21 - c3c: 02 96 adiw r24, 0x02 ; 2 - c3e: e9 01 movw r28, r18 - c40: 88 83 st Y, r24 - c42: 99 83 std Y+1, r25 ; 0x01 - c44: 82 81 ldd r24, Z+2 ; 0x02 - c46: 93 81 ldd r25, Z+3 ; 0x03 - c48: 8a 83 std Y+2, r24 ; 0x02 - c4a: 9b 83 std Y+3, r25 ; 0x03 - c4c: e0 e0 ldi r30, 0x00 ; 0 - c4e: f0 e0 ldi r31, 0x00 ; 0 - c50: 12 96 adiw r26, 0x02 ; 2 - c52: 8d 91 ld r24, X+ - c54: 9c 91 ld r25, X - c56: 13 97 sbiw r26, 0x03 ; 3 - c58: 00 97 sbiw r24, 0x00 ; 0 - c5a: 19 f0 breq .+6 ; 0xc62 - c5c: fd 01 movw r30, r26 - c5e: dc 01 movw r26, r24 - c60: f7 cf rjmp .-18 ; 0xc50 - c62: 8d 91 ld r24, X+ - c64: 9c 91 ld r25, X - c66: 11 97 sbiw r26, 0x01 ; 1 - c68: 9d 01 movw r18, r26 - c6a: 2e 5f subi r18, 0xFE ; 254 - c6c: 3f 4f sbci r19, 0xFF ; 255 - c6e: 82 0f add r24, r18 - c70: 93 1f adc r25, r19 - c72: 20 91 0b 3f lds r18, 0x3F0B ; 0x803f0b <__brkval> - c76: 30 91 0c 3f lds r19, 0x3F0C ; 0x803f0c <__brkval+0x1> - c7a: 28 17 cp r18, r24 - c7c: 39 07 cpc r19, r25 - c7e: 69 f4 brne .+26 ; 0xc9a - c80: 30 97 sbiw r30, 0x00 ; 0 - c82: 29 f4 brne .+10 ; 0xc8e - c84: 10 92 0d 3f sts 0x3F0D, r1 ; 0x803f0d <__flp> - c88: 10 92 0e 3f sts 0x3F0E, r1 ; 0x803f0e <__flp+0x1> - c8c: 02 c0 rjmp .+4 ; 0xc92 - c8e: 12 82 std Z+2, r1 ; 0x02 - c90: 13 82 std Z+3, r1 ; 0x03 - c92: a0 93 0b 3f sts 0x3F0B, r26 ; 0x803f0b <__brkval> - c96: b0 93 0c 3f sts 0x3F0C, r27 ; 0x803f0c <__brkval+0x1> - c9a: df 91 pop r29 - c9c: cf 91 pop r28 - c9e: 08 95 ret +00000ba6 : + ba6: cf 93 push r28 + ba8: df 93 push r29 + baa: 00 97 sbiw r24, 0x00 ; 0 + bac: 09 f4 brne .+2 ; 0xbb0 + bae: 81 c0 rjmp .+258 ; 0xcb2 + bb0: fc 01 movw r30, r24 + bb2: 32 97 sbiw r30, 0x02 ; 2 + bb4: 12 82 std Z+2, r1 ; 0x02 + bb6: 13 82 std Z+3, r1 ; 0x03 + bb8: a0 91 0d 3f lds r26, 0x3F0D ; 0x803f0d <__flp> + bbc: b0 91 0e 3f lds r27, 0x3F0E ; 0x803f0e <__flp+0x1> + bc0: 10 97 sbiw r26, 0x00 ; 0 + bc2: 81 f4 brne .+32 ; 0xbe4 + bc4: 20 81 ld r18, Z + bc6: 31 81 ldd r19, Z+1 ; 0x01 + bc8: 82 0f add r24, r18 + bca: 93 1f adc r25, r19 + bcc: 20 91 0b 3f lds r18, 0x3F0B ; 0x803f0b <__brkval> + bd0: 30 91 0c 3f lds r19, 0x3F0C ; 0x803f0c <__brkval+0x1> + bd4: 28 17 cp r18, r24 + bd6: 39 07 cpc r19, r25 + bd8: 51 f5 brne .+84 ; 0xc2e + bda: e0 93 0b 3f sts 0x3F0B, r30 ; 0x803f0b <__brkval> + bde: f0 93 0c 3f sts 0x3F0C, r31 ; 0x803f0c <__brkval+0x1> + be2: 67 c0 rjmp .+206 ; 0xcb2 + be4: ed 01 movw r28, r26 + be6: 20 e0 ldi r18, 0x00 ; 0 + be8: 30 e0 ldi r19, 0x00 ; 0 + bea: ce 17 cp r28, r30 + bec: df 07 cpc r29, r31 + bee: 40 f4 brcc .+16 ; 0xc00 + bf0: 4a 81 ldd r20, Y+2 ; 0x02 + bf2: 5b 81 ldd r21, Y+3 ; 0x03 + bf4: 9e 01 movw r18, r28 + bf6: 41 15 cp r20, r1 + bf8: 51 05 cpc r21, r1 + bfa: f1 f0 breq .+60 ; 0xc38 + bfc: ea 01 movw r28, r20 + bfe: f5 cf rjmp .-22 ; 0xbea + c00: c2 83 std Z+2, r28 ; 0x02 + c02: d3 83 std Z+3, r29 ; 0x03 + c04: 40 81 ld r20, Z + c06: 51 81 ldd r21, Z+1 ; 0x01 + c08: 84 0f add r24, r20 + c0a: 95 1f adc r25, r21 + c0c: c8 17 cp r28, r24 + c0e: d9 07 cpc r29, r25 + c10: 59 f4 brne .+22 ; 0xc28 + c12: 88 81 ld r24, Y + c14: 99 81 ldd r25, Y+1 ; 0x01 + c16: 84 0f add r24, r20 + c18: 95 1f adc r25, r21 + c1a: 02 96 adiw r24, 0x02 ; 2 + c1c: 80 83 st Z, r24 + c1e: 91 83 std Z+1, r25 ; 0x01 + c20: 8a 81 ldd r24, Y+2 ; 0x02 + c22: 9b 81 ldd r25, Y+3 ; 0x03 + c24: 82 83 std Z+2, r24 ; 0x02 + c26: 93 83 std Z+3, r25 ; 0x03 + c28: 21 15 cp r18, r1 + c2a: 31 05 cpc r19, r1 + c2c: 29 f4 brne .+10 ; 0xc38 + c2e: e0 93 0d 3f sts 0x3F0D, r30 ; 0x803f0d <__flp> + c32: f0 93 0e 3f sts 0x3F0E, r31 ; 0x803f0e <__flp+0x1> + c36: 3d c0 rjmp .+122 ; 0xcb2 + c38: e9 01 movw r28, r18 + c3a: ea 83 std Y+2, r30 ; 0x02 + c3c: fb 83 std Y+3, r31 ; 0x03 + c3e: 49 91 ld r20, Y+ + c40: 59 91 ld r21, Y+ + c42: c4 0f add r28, r20 + c44: d5 1f adc r29, r21 + c46: ec 17 cp r30, r28 + c48: fd 07 cpc r31, r29 + c4a: 61 f4 brne .+24 ; 0xc64 + c4c: 80 81 ld r24, Z + c4e: 91 81 ldd r25, Z+1 ; 0x01 + c50: 84 0f add r24, r20 + c52: 95 1f adc r25, r21 + c54: 02 96 adiw r24, 0x02 ; 2 + c56: e9 01 movw r28, r18 + c58: 88 83 st Y, r24 + c5a: 99 83 std Y+1, r25 ; 0x01 + c5c: 82 81 ldd r24, Z+2 ; 0x02 + c5e: 93 81 ldd r25, Z+3 ; 0x03 + c60: 8a 83 std Y+2, r24 ; 0x02 + c62: 9b 83 std Y+3, r25 ; 0x03 + c64: e0 e0 ldi r30, 0x00 ; 0 + c66: f0 e0 ldi r31, 0x00 ; 0 + c68: 12 96 adiw r26, 0x02 ; 2 + c6a: 8d 91 ld r24, X+ + c6c: 9c 91 ld r25, X + c6e: 13 97 sbiw r26, 0x03 ; 3 + c70: 00 97 sbiw r24, 0x00 ; 0 + c72: 19 f0 breq .+6 ; 0xc7a + c74: fd 01 movw r30, r26 + c76: dc 01 movw r26, r24 + c78: f7 cf rjmp .-18 ; 0xc68 + c7a: 8d 91 ld r24, X+ + c7c: 9c 91 ld r25, X + c7e: 11 97 sbiw r26, 0x01 ; 1 + c80: 9d 01 movw r18, r26 + c82: 2e 5f subi r18, 0xFE ; 254 + c84: 3f 4f sbci r19, 0xFF ; 255 + c86: 82 0f add r24, r18 + c88: 93 1f adc r25, r19 + c8a: 20 91 0b 3f lds r18, 0x3F0B ; 0x803f0b <__brkval> + c8e: 30 91 0c 3f lds r19, 0x3F0C ; 0x803f0c <__brkval+0x1> + c92: 28 17 cp r18, r24 + c94: 39 07 cpc r19, r25 + c96: 69 f4 brne .+26 ; 0xcb2 + c98: 30 97 sbiw r30, 0x00 ; 0 + c9a: 29 f4 brne .+10 ; 0xca6 + c9c: 10 92 0d 3f sts 0x3F0D, r1 ; 0x803f0d <__flp> + ca0: 10 92 0e 3f sts 0x3F0E, r1 ; 0x803f0e <__flp+0x1> + ca4: 02 c0 rjmp .+4 ; 0xcaa + ca6: 12 82 std Z+2, r1 ; 0x02 + ca8: 13 82 std Z+3, r1 ; 0x03 + caa: a0 93 0b 3f sts 0x3F0B, r26 ; 0x803f0b <__brkval> + cae: b0 93 0c 3f sts 0x3F0C, r27 ; 0x803f0c <__brkval+0x1> + cb2: df 91 pop r29 + cb4: cf 91 pop r28 + cb6: 08 95 ret -00000ca0 : - ca0: fb 01 movw r30, r22 - ca2: dc 01 movw r26, r24 - ca4: 02 c0 rjmp .+4 ; 0xcaa - ca6: 01 90 ld r0, Z+ - ca8: 0d 92 st X+, r0 - caa: 41 50 subi r20, 0x01 ; 1 - cac: 50 40 sbci r21, 0x00 ; 0 - cae: d8 f7 brcc .-10 ; 0xca6 - cb0: 08 95 ret +00000cb8 : + cb8: fb 01 movw r30, r22 + cba: dc 01 movw r26, r24 + cbc: 02 c0 rjmp .+4 ; 0xcc2 + cbe: 01 90 ld r0, Z+ + cc0: 0d 92 st X+, r0 + cc2: 41 50 subi r20, 0x01 ; 1 + cc4: 50 40 sbci r21, 0x00 ; 0 + cc6: d8 f7 brcc .-10 ; 0xcbe + cc8: 08 95 ret -00000cb2 <_exit>: - cb2: f8 94 cli +00000cca <_exit>: + cca: f8 94 cli -00000cb4 <__stop_program>: - cb4: ff cf rjmp .-2 ; 0xcb4 <__stop_program> +00000ccc <__stop_program>: + ccc: ff cf rjmp .-2 ; 0xccc <__stop_program> diff --git a/storno_cqp6xx_digital_xtal/Debug/storno_cqp6xx_digital_xtal.map b/storno_cqp6xx_digital_xtal/Debug/storno_cqp6xx_digital_xtal.map index d2281b0..eaf59a3 100644 --- a/storno_cqp6xx_digital_xtal/Debug/storno_cqp6xx_digital_xtal.map +++ b/storno_cqp6xx_digital_xtal/Debug/storno_cqp6xx_digital_xtal.map @@ -79,6 +79,10 @@ Discarded input sections .text 0x00000000 0x0 avr_uart_driver/avr_uart.o .data 0x00000000 0x0 avr_uart_driver/avr_uart.o .bss 0x00000000 0x0 avr_uart_driver/avr_uart.o + .text.cm_uart_receive + 0x00000000 0x10 avr_uart_driver/avr_uart.o + .text.cm_uart_receive_busyWait + 0x00000000 0xe avr_uart_driver/avr_uart.o .text 0x00000000 0x0 cqm6xx_app.o .data 0x00000000 0x0 cqm6xx_app.o .bss 0x00000000 0x0 cqm6xx_app.o @@ -392,7 +396,7 @@ END GROUP .rela.plt *(.rela.plt) -.text 0x00000000 0xcb6 +.text 0x00000000 0xcce *(.vectors) .vectors 0x00000000 0x34 C:/Program Files (x86)/Atmel/Studio/7.0/Packs/atmel/ATtiny_DFP/1.10.348/gcc/dev/attiny402/avrxmega3/short-calls/crtattiny402.o 0x00000000 __vector_default @@ -504,65 +508,62 @@ END GROUP .text.cm_i2c_transfer 0x0000027c 0x34 avr_i2c_driver/avr_i2c.o 0x0000027c cm_i2c_transfer - .text.__vector_22 - 0x000002b0 0x20 avr_uart_driver/avr_uart.o - 0x000002b0 __vector_22 .text.cm_uart_init - 0x000002d0 0x42 avr_uart_driver/avr_uart.o - 0x000002d0 cm_uart_init + 0x000002b0 0x48 avr_uart_driver/avr_uart.o + 0x000002b0 cm_uart_init .text.cm_uart_send - 0x00000312 0xe avr_uart_driver/avr_uart.o - 0x00000312 cm_uart_send + 0x000002f8 0xe avr_uart_driver/avr_uart.o + 0x000002f8 cm_uart_send + .text.__vector_22 + 0x00000306 0x4e avr_uart_driver/avr_uart.o + 0x00000306 __vector_22 .text.isStructValid - 0x00000320 0x1a cqm6xx_app.o + 0x00000354 0x1a cqm6xx_app.o .text.cqm6xx_app_updateOsc - 0x0000033a 0x76 cqm6xx_app.o + 0x0000036e 0x76 cqm6xx_app.o .text.cqm6xx_app_statemachine - 0x000003b0 0x166 cqm6xx_app.o - 0x000003b0 cqm6xx_app_statemachine + 0x000003e4 0x166 cqm6xx_app.o + 0x000003e4 cqm6xx_app_statemachine .text.cqm6xx_app_init - 0x00000516 0x16 cqm6xx_app.o - 0x00000516 cqm6xx_app_init - .text.uart_receive - 0x0000052c 0xe main.o - 0x0000052c uart_receive - .text.main 0x0000053a 0x76 main.o - 0x0000053a main + 0x0000054a 0x16 cqm6xx_app.o + 0x0000054a cqm6xx_app_init + .text.main 0x00000560 0x68 main.o + 0x00000560 main .text.writeRegister - 0x000005b0 0x78 si5351_driver/si5351_driver.o + 0x000005c8 0x78 si5351_driver/si5351_driver.o .text.cm_setOutputMultiSynth - 0x00000628 0x116 si5351_driver/si5351_driver.o - 0x00000628 cm_setOutputMultiSynth + 0x00000640 0x116 si5351_driver/si5351_driver.o + 0x00000640 cm_setOutputMultiSynth .text.cm_setOutputEnable - 0x0000073e 0x40 si5351_driver/si5351_driver.o - 0x0000073e cm_setOutputEnable + 0x00000756 0x40 si5351_driver/si5351_driver.o + 0x00000756 cm_setOutputEnable .text.cm_setCLKControl - 0x0000077e 0x5c si5351_driver/si5351_driver.o - 0x0000077e cm_setCLKControl + 0x00000796 0x5c si5351_driver/si5351_driver.o + 0x00000796 cm_setCLKControl .text.cm_setInputSource - 0x000007da 0x3e si5351_driver/si5351_driver.o - 0x000007da cm_setInputSource + 0x000007f2 0x3e si5351_driver/si5351_driver.o + 0x000007f2 cm_setInputSource .text.cm_resetPLLs - 0x00000818 0x48 si5351_driver/si5351_driver.o - 0x00000818 cm_resetPLLs + 0x00000830 0x48 si5351_driver/si5351_driver.o + 0x00000830 cm_resetPLLs .text.cm_setPllParamRaw - 0x00000860 0xbc si5351_driver/si5351_driver.o - 0x00000860 cm_setPllParamRaw + 0x00000878 0xbc si5351_driver/si5351_driver.o + 0x00000878 cm_setPllParamRaw .text.cm_si5351_init - 0x0000091c 0x142 si5351_driver/si5351_driver.o - 0x0000091c cm_si5351_init + 0x00000934 0x142 si5351_driver/si5351_driver.o + 0x00000934 cm_si5351_init .text.avr-libc - 0x00000a5e 0x242 c:/program files (x86)/atmel/studio/7.0/toolchain/avr8/avr8-gnu-toolchain/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(malloc.o) - 0x00000a5e malloc - 0x00000b8e free + 0x00000a76 0x242 c:/program files (x86)/atmel/studio/7.0/toolchain/avr8/avr8-gnu-toolchain/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(malloc.o) + 0x00000a76 malloc + 0x00000ba6 free .text.avr-libc - 0x00000ca0 0x12 c:/program files (x86)/atmel/studio/7.0/toolchain/avr8/avr8-gnu-toolchain/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(memcpy.o) - 0x00000ca0 memcpy - 0x00000cb2 . = ALIGN (0x2) + 0x00000cb8 0x12 c:/program files (x86)/atmel/studio/7.0/toolchain/avr8/avr8-gnu-toolchain/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(memcpy.o) + 0x00000cb8 memcpy + 0x00000cca . = ALIGN (0x2) *(.fini9) - .fini9 0x00000cb2 0x0 c:/program files (x86)/atmel/studio/7.0/toolchain/avr8/avr8-gnu-toolchain/bin/../lib/gcc/avr/5.4.0/avrxmega3/short-calls\libgcc.a(_exit.o) - 0x00000cb2 _exit - 0x00000cb2 exit + .fini9 0x00000cca 0x0 c:/program files (x86)/atmel/studio/7.0/toolchain/avr8/avr8-gnu-toolchain/bin/../lib/gcc/avr/5.4.0/avrxmega3/short-calls\libgcc.a(_exit.o) + 0x00000cca _exit + 0x00000cca exit *(.fini9) *(.fini8) *(.fini8) @@ -581,16 +582,16 @@ END GROUP *(.fini1) *(.fini1) *(.fini0) - .fini0 0x00000cb2 0x4 c:/program files (x86)/atmel/studio/7.0/toolchain/avr8/avr8-gnu-toolchain/bin/../lib/gcc/avr/5.4.0/avrxmega3/short-calls\libgcc.a(_exit.o) + .fini0 0x00000cca 0x4 c:/program files (x86)/atmel/studio/7.0/toolchain/avr8/avr8-gnu-toolchain/bin/../lib/gcc/avr/5.4.0/avrxmega3/short-calls\libgcc.a(_exit.o) *(.fini0) - 0x00000cb6 _etext = . + 0x00000cce _etext = . .rodata *(.rodata) *(.rodata*) *(.gnu.linkonce.r*) -.data 0x00803f00 0x6 load address 0x00000cb6 +.data 0x00803f00 0x6 load address 0x00000cce 0x00803f00 PROVIDE (__data_start, .) *(.data) .data 0x00803f00 0x6 c:/program files (x86)/atmel/studio/7.0/toolchain/avr8/avr8-gnu-toolchain/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(malloc.o) @@ -617,8 +618,8 @@ END GROUP 0x00803f0b __brkval 0x00803f0d __flp 0x00803f0f PROVIDE (__bss_end, .) - 0x00000cb6 __data_load_start = LOADADDR (.data) - 0x00000cbc __data_load_end = (__data_load_start + SIZEOF (.data)) + 0x00000cce __data_load_start = LOADADDR (.data) + 0x00000cd4 __data_load_end = (__data_load_start + SIZEOF (.data)) .noinit 0x00803f0f 0x0 [!provide] PROVIDE (__noinit_start, .) @@ -695,87 +696,87 @@ END GROUP .debug_sfnames *(.debug_sfnames) -.debug_aranges 0x00000000 0x198 +.debug_aranges 0x00000000 0x1a0 *(.debug_aranges) .debug_aranges 0x00000000 0x30 avr_gpio_driver/avr_gpio.o .debug_aranges 0x00000030 0x68 avr_i2c_driver/avr_i2c.o .debug_aranges - 0x00000098 0x30 avr_uart_driver/avr_uart.o + 0x00000098 0x40 avr_uart_driver/avr_uart.o .debug_aranges - 0x000000c8 0x38 cqm6xx_app.o + 0x000000d8 0x38 cqm6xx_app.o .debug_aranges - 0x00000100 0x28 main.o + 0x00000110 0x20 main.o .debug_aranges - 0x00000128 0x70 si5351_driver/si5351_driver.o + 0x00000130 0x70 si5351_driver/si5351_driver.o .debug_pubnames *(.debug_pubnames) -.debug_info 0x00000000 0x4c94 +.debug_info 0x00000000 0x4b29 *(.debug_info .gnu.linkonce.wi.*) .debug_info 0x00000000 0x11d6 C:/Program Files (x86)/Atmel/Studio/7.0/Packs/atmel/ATtiny_DFP/1.10.348/gcc/dev/attiny402/avrxmega3/short-calls/crtattiny402.o .debug_info 0x000011d6 0x320 avr_gpio_driver/avr_gpio.o .debug_info 0x000014f6 0x6da avr_i2c_driver/avr_i2c.o - .debug_info 0x00001bd0 0x474 avr_uart_driver/avr_uart.o - .debug_info 0x00002044 0x7dc cqm6xx_app.o - .debug_info 0x00002820 0xe8f main.o - .debug_info 0x000036af 0x15e5 si5351_driver/si5351_driver.o + .debug_info 0x00001bd0 0x4b5 avr_uart_driver/avr_uart.o + .debug_info 0x00002085 0x7dc cqm6xx_app.o + .debug_info 0x00002861 0xce3 main.o + .debug_info 0x00003544 0x15e5 si5351_driver/si5351_driver.o -.debug_abbrev 0x00000000 0x1b4f +.debug_abbrev 0x00000000 0x1b2d *(.debug_abbrev) .debug_abbrev 0x00000000 0x10de C:/Program Files (x86)/Atmel/Studio/7.0/Packs/atmel/ATtiny_DFP/1.10.348/gcc/dev/attiny402/avrxmega3/short-calls/crtattiny402.o .debug_abbrev 0x000010de 0x107 avr_gpio_driver/avr_gpio.o .debug_abbrev 0x000011e5 0x1bb avr_i2c_driver/avr_i2c.o - .debug_abbrev 0x000013a0 0x16e avr_uart_driver/avr_uart.o - .debug_abbrev 0x0000150e 0x1b1 cqm6xx_app.o - .debug_abbrev 0x000016bf 0x246 main.o - .debug_abbrev 0x00001905 0x24a si5351_driver/si5351_driver.o + .debug_abbrev 0x000013a0 0x1ad avr_uart_driver/avr_uart.o + .debug_abbrev 0x0000154d 0x1b1 cqm6xx_app.o + .debug_abbrev 0x000016fe 0x1e5 main.o + .debug_abbrev 0x000018e3 0x24a si5351_driver/si5351_driver.o -.debug_line 0x00000000 0x129b +.debug_line 0x00000000 0x126c *(.debug_line .debug_line.* .debug_line_end) .debug_line 0x00000000 0x136 C:/Program Files (x86)/Atmel/Studio/7.0/Packs/atmel/ATtiny_DFP/1.10.348/gcc/dev/attiny402/avrxmega3/short-calls/crtattiny402.o .debug_line 0x00000136 0x196 avr_gpio_driver/avr_gpio.o .debug_line 0x000002cc 0x3ff avr_i2c_driver/avr_i2c.o - .debug_line 0x000006cb 0x186 avr_uart_driver/avr_uart.o - .debug_line 0x00000851 0x319 cqm6xx_app.o - .debug_line 0x00000b6a 0x261 main.o - .debug_line 0x00000dcb 0x4d0 si5351_driver/si5351_driver.o + .debug_line 0x000006cb 0x1e8 avr_uart_driver/avr_uart.o + .debug_line 0x000008b3 0x319 cqm6xx_app.o + .debug_line 0x00000bcc 0x1d0 main.o + .debug_line 0x00000d9c 0x4d0 si5351_driver/si5351_driver.o -.debug_frame 0x00000000 0x4ec +.debug_frame 0x00000000 0x534 *(.debug_frame) .debug_frame 0x00000000 0x44 avr_gpio_driver/avr_gpio.o .debug_frame 0x00000044 0x118 avr_i2c_driver/avr_i2c.o - .debug_frame 0x0000015c 0x64 avr_uart_driver/avr_uart.o - .debug_frame 0x000001c0 0x94 cqm6xx_app.o - .debug_frame 0x00000254 0x44 main.o - .debug_frame 0x00000298 0x254 si5351_driver/si5351_driver.o + .debug_frame 0x0000015c 0xbc avr_uart_driver/avr_uart.o + .debug_frame 0x00000218 0x94 cqm6xx_app.o + .debug_frame 0x000002ac 0x34 main.o + .debug_frame 0x000002e0 0x254 si5351_driver/si5351_driver.o -.debug_str 0x00000000 0x1eaa +.debug_str 0x00000000 0x1ec6 *(.debug_str) .debug_str 0x00000000 0x7a9 C:/Program Files (x86)/Atmel/Studio/7.0/Packs/atmel/ATtiny_DFP/1.10.348/gcc/dev/attiny402/avrxmega3/short-calls/crtattiny402.o .debug_str 0x000007a9 0x2d1 avr_gpio_driver/avr_gpio.o 0x315 (size before relaxing) .debug_str 0x00000a7a 0x2ab avr_i2c_driver/avr_i2c.o 0x502 (size before relaxing) - .debug_str 0x00000d25 0x226 avr_uart_driver/avr_uart.o - 0x497 (size before relaxing) - .debug_str 0x00000f4b 0x2d7 cqm6xx_app.o + .debug_str 0x00000d25 0x24f avr_uart_driver/avr_uart.o + 0x4c0 (size before relaxing) + .debug_str 0x00000f74 0x2d7 cqm6xx_app.o 0x4bb (size before relaxing) - .debug_str 0x00001222 0x90c main.o - 0xcfe (size before relaxing) - .debug_str 0x00001b2e 0x37c si5351_driver/si5351_driver.o + .debug_str 0x0000124b 0x8ff main.o + 0xc39 (size before relaxing) + .debug_str 0x00001b4a 0x37c si5351_driver/si5351_driver.o 0xf91 (size before relaxing) -.debug_loc 0x00000000 0x1c53 +.debug_loc 0x00000000 0x1ce2 *(.debug_loc) .debug_loc 0x00000000 0xae avr_gpio_driver/avr_gpio.o .debug_loc 0x000000ae 0x73d avr_i2c_driver/avr_i2c.o - .debug_loc 0x000007eb 0x84 avr_uart_driver/avr_uart.o - .debug_loc 0x0000086f 0x49c cqm6xx_app.o - .debug_loc 0x00000d0b 0x48 main.o - .debug_loc 0x00000d53 0xf00 si5351_driver/si5351_driver.o + .debug_loc 0x000007eb 0x113 avr_uart_driver/avr_uart.o + .debug_loc 0x000008fe 0x49c cqm6xx_app.o + .debug_loc 0x00000d9a 0x48 main.o + .debug_loc 0x00000de2 0xf00 si5351_driver/si5351_driver.o .debug_macinfo *(.debug_macinfo) @@ -795,14 +796,14 @@ END GROUP .debug_pubtypes *(.debug_pubtypes) -.debug_ranges 0x00000000 0x138 +.debug_ranges 0x00000000 0x140 *(.debug_ranges) .debug_ranges 0x00000000 0x20 avr_gpio_driver/avr_gpio.o .debug_ranges 0x00000020 0x58 avr_i2c_driver/avr_i2c.o - .debug_ranges 0x00000078 0x20 avr_uart_driver/avr_uart.o - .debug_ranges 0x00000098 0x28 cqm6xx_app.o - .debug_ranges 0x000000c0 0x18 main.o - .debug_ranges 0x000000d8 0x60 si5351_driver/si5351_driver.o + .debug_ranges 0x00000078 0x30 avr_uart_driver/avr_uart.o + .debug_ranges 0x000000a8 0x28 cqm6xx_app.o + .debug_ranges 0x000000d0 0x10 main.o + .debug_ranges 0x000000e0 0x60 si5351_driver/si5351_driver.o .debug_macro *(.debug_macro) diff --git a/storno_cqp6xx_digital_xtal/Debug/storno_cqp6xx_digital_xtal.srec b/storno_cqp6xx_digital_xtal/Debug/storno_cqp6xx_digital_xtal.srec index ce5e847..112fdcd 100644 --- a/storno_cqp6xx_digital_xtal/Debug/storno_cqp6xx_digital_xtal.srec +++ b/storno_cqp6xx_digital_xtal/Debug/storno_cqp6xx_digital_xtal.srec @@ -1,11 +1,11 @@ S022000073746F726E6F5F6371703678785F6469676974616C5F7874616C2E737265633F S113000019C033C032C031C030C02FC02EC02DC083 S11300102CC02BC02AC029C028C027C026C025C098 -S113002024C023C022C021C020C01FC041C11DC0A4 +S113002024C023C022C021C020C01FC06CC11DC079 S11300301CC01BC011241FBECFEFCDBFDFE3DEBF4A S11300402FE3A6E0BFE301C01D92AF30B207E1F792 -S11300501FE3A0E0BFE3E6EBFCE002C005900D92D5 -S1130060A630B107D9F769D224C6CACF81110DC011 +S11300501FE3A0E0BFE3EEECFCE002C005900D92CC +S1130060A630B107D9F77CD230C6CACF81110DC0F2 S11300702091080430E002C0359527956A95E2F78F S113008081E020FF80E090E0089580E090E0089512 S1130090E0E1F8E084818860848381E085830895C9 @@ -42,166 +42,167 @@ S1130270CF911F910F91FF90EF9008950F930097E6 S113028081F0FC01002319F0013031F00DC08281AE S113029061DF80E090E00AC0828113DF80E090E0BB S11302A005C08FEF9FEF02C080E090E00F910895AA -S11302B01F920F920FB60F9211248F938091000812 -S11302C08093063F8F910F900FBE0F901F9018954B -S11302D0CF93DF931F92CDB7DEB7E0E0F8E08CE672 -S11302E095E08087918783E0878380EC868384818F -S11302F0882324F48091000889838981E0E0F4E074 -S113030080E4818380E8828378940F90DF91CF9199 -S113031008959091040895FFFCCF809302080895F6 -S1130320FC0122813381232B21F0892B21F481E0EC -S1130330089581E0089580E00895CF93DF93EC0160 -S1130340EFDF811132C089819881891771F1813081 -S113035019F08230B1F029C081E493E00197F1F7FC -S1130360000040E060E08A819B81E9D181E493E070 -S11303700197F1F7000041E061E08A819B81DFD1C0 -S113038014C081E493E00197F1F7000041E060E0DC -S11303908A819B81D4D181E493E00197F1F7000035 -S11303A040E061E08A819B81CAD1DF91CF910895B9 -S11303B0AF92BF92CF92DF92EF92FF920F931F936F -S11303C0CF93DF93EC01ACDF81119AC08981813036 -S11303D009F47FC020F0823009F487C091C088837B -S11303E081E493E00197F1F7000060E08A819B814A -S11303F0F4D181E493E00197F1F700000F2EFBE5BF -S1130400AF2EF8E4BF2EF0E1CF2ED12CF02D16EF55 -S1130410E12E1CE2F12E00E010E023E43DE040E098 -S113042050E060E08A819B811BD281E493E00197D4 -S1130430F1F700000F2EF0ECAF2EF8E4BF2EF0E140 -S1130440CF2ED12CF02D12E0E12E1FE3F12E00E08F -S113045010E028EC3CE040E050E061E08A819B81C0 -S1130460FFD181E493E00197F1F70000A12CB12CB6 -S11304706501A394E12CF12C870122E130E040E0F6 -S113048050E060E08A819B81CFD081E493E00197C2 -S1130490F1F7000020E430E040E050E061E08A81C0 -S11304A09B81C2D081E493E00197F1F7000040E022 -S11304B060E08A819B8163D181E493E00197F1F745 -S11304C0000040E061E08A819B8159D181E0898309 -S11304D017C0CE0132DF8981888363E080E0C6DD06 -S11304E0019771F482E089830BC0CE0126DF8981F4 -S11304F0888363E080E0BADD892B11F481E089838D -S1130500DF91CF911F910F91FF90EF90DF90CF90EB -S1130510BF90AF900895FC016115710531F0892BEE -S113052021F01182108262837383089580910408FC -S11305308823E4F7809100080895CF93DF93CDB723 -S1130540DEB7CB55D109CDBFDEBF80E090E05EDEE3 -S113055040E660E070E0CE01019672DE4EE351E0C9 -S1130560BE016F5F7F4FCE010496D8D1BE016C5F90 -S11305707F4F87E09FE3CFDFABDE82E7CADE82E70F -S1130580C8DE8AE0C6DE8DE0C4DE8091063F8823A3 -S113059019F087E09FE30CDFC9DF8093063FB9DEE3 -S11305A025E186E195E0215080409040E1F7EDCFD0 -S11305B08F929F92AF92BF92CF92DF92EF92FF926F -S11305C00F931F93CF93DF93EC01862E5A0168019A -S11305D07901C801019643D2982E192FFC0181920A -S11305E0CF01A601B5015CD3EA81FB81A701960185 -S11305F02F5F3F4F4F4F5F4F01E0692D712F88816F -S113060099810995892D912FC2D280E090E0DF91E4 -S1130610CF911F910F91FF90EF90DF90CF90BF90FB -S1130620AF909F908F900895AF92BF92CF92DF9238 -S1130630EF92FF920F931F93FC01862FBA01A90139 -S11306404450510961097E4F440F551F661F771F9F -S1130650440F551F661F771F440F551F661F771FD2 +S11302B0CF93DF931F92CDB7DEB7F894E0E0F8E078 +S11302C08CE695E08087918783E0878380EC868342 +S11302D080E885838481882324F4809100088983BD +S11302E08981E0E0F4E080E4818380E8828378948B +S11302F00F90DF91CF9108959091040895FFFCCF62 +S11303008093020808951F920F920FB60F92112442 +S11303102F933F934F935F936F937F938F939F9309 +S1130320AF93BF93EF93FF93809100088093063FB0 +S1130330E3DFFF91EF91BF91AF919F918F917F91F7 +S11303406F915F914F913F912F910F900FBE0F903E +S11303501F901895FC0122813381232B21F0892BD6 +S113036021F481E0089581E0089580E00895CF9319 +S1130370DF93EC01EFDF811132C089819881891705 +S113038071F1813019F08230B1F029C081E493E039 +S11303900197F1F7000040E060E08A819B81DBD1A6 +S11303A081E493E00197F1F7000041E061E08A8184 +S11303B09B81D1D114C081E493E00197F1F700004F +S11303C041E060E08A819B81C6D181E493E001979A +S11303D0F1F7000040E061E08A819B81BCD1DF91AC +S11303E0CF910895AF92BF92CF92DF92EF92FF9296 +S11303F00F931F93CF93DF93EC01ACDF81119AC06D +S11304008981813009F47FC020F0823009F487C0EB +S113041091C0888381E493E00197F1F7000060E0E4 +S11304208A819B81E6D181E493E00197F1F7000092 +S11304300F2EFBE5AF2EF8E4BF2EF0E1CF2ED12C2A +S1130440F02D16EFE12E1CE2F12E00E010E023E483 +S11304503DE040E050E060E08A819B810DD281E480 +S113046093E00197F1F700000F2EF0ECAF2EF8E4C3 +S1130470BF2EF0E1CF2ED12CF02D12E0E12E1FE3A0 +S1130480F12E00E010E028EC3CE040E050E061E0B8 +S11304908A819B81F1D181E493E00197F1F7000017 +S11304A0A12CB12C6501A394E12CF12C870122E14C +S11304B030E040E050E060E08A819B81C1D081E47B +S11304C093E00197F1F7000020E430E040E050E0D1 +S11304D061E08A819B81B4D081E493E00197F1F7D4 +S11304E0000040E060E08A819B8155D181E493E083 +S11304F00197F1F7000040E061E08A819B814BD1D4 +S113050081E0898317C0CE0132DF8981888363E06B +S113051080E0ACDD019771F482E089830BC0CE01E9 +S113052026DF8981888363E080E0A0DD892B11F4D4 +S113053081E08983DF91CF911F910F91FF90EF901C +S1130540DF90CF90BF90AF900895FC0161157105C5 +S113055031F0892B21F01182108262837383089514 +S1130560CF93DF93CDB7DEB7CB55D109CDBFDEBF77 +S113057080E090E04BDE40E660E070E0CE01019662 +S11305805FDE4EE351E0BE016F5F7F4FCE01049604 +S1130590D1D1BE016C5F7F4F87E09FE3D6DF88DE59 +S11305A082E7AADE82E7A8DE8AE0A6DE8DE0A4DE8A +S11305B087E09FE317DF2AE684E091E02150804042 +S11305C09040E1F700C0F4CF8F929F92AF92BF9218 +S11305D0CF92DF92EF92FF920F931F93CF93DF930B +S11305E0EC01862E5A0168017901C801019643D2B3 +S11305F0982E192FFC018192CF01A601B5015CD37D +S1130600EA81FB81A70196012F5F3F4F4F4F5F4F58 +S113061001E0692D712F888199810995892D912F88 +S1130620C2D280E090E0DF91CF911F910F91FF90B3 +S1130630EF90DF90CF90BF90AF909F908F900895F0 +S1130640AF92BF92CF92DF92EF92FF920F931F93DC +S1130650FC01862FBA01A9014450510961097E4F5A S1130660440F551F661F771F440F551F661F771FC2 S1130670440F551F661F771F440F551F661F771FB2 -S1130680882319F0813049F14FC0962F937086A1C9 -S11306908C7F892B86A357A340A7F2A6E3A6D60195 -S11306A0C501072E7CE0B695A795979587957A9511 -S11306B0D1F7702D83708295807F0370802B81A782 -S11306C0B4A2A5A2AF014C5D5F4F08E010E020E0AA -S11306D030E06AE2CF016CDF27C0962F937086A5C5 -S11306E08C7F892B86A757A740ABF2AAE3AAD60131 -S11306F0C501072E7CE0B695A795979587957A95C1 -S1130700D1F7702D83708295807F0370802B81AB2D -S1130710B4A6A5A6AF01445D5F4F08E010E020E059 -S113072030E062E3CF0144DF80E090E01F910F915D -S1130730FF90EF90DF90CF90BF90AF9008950F930C -S11307401F93662319F0613039F00BC0FC01278137 -S113075040FB20F9278305C0FC01278140FB21F9D8 -S11307602783AC01495F5F4F01E010E020E030E0F7 -S113077063E01EDF80E090E01F910F9108950F93D6 -S11307801F93662319F06130A1F022C0FC01228579 -S113079040FB27F933853F7D33872F642287AC01E3 -S11307A0465F5F4F01E010E020E030E060E100DFF1 -S11307B00FC0FC01238540FB27F92F662387AC017A -S11307C0455F5F4F01E010E020E030E061E1F0DEE2 -S11307D080E090E01F910F9108950F931F9366237B -S11307E019F0613039F00AC0FC0121852B7F277F85 -S11307F0218704C0FC01218524602187AC01475F67 -S11308005F4F01E010E020E030E060EFD1DE80E0F7 -S113081090E01F910F9108950F931F9331E06111A0 -S113082001C030E0FC01E95AFF4F208130FB25F97B -S1130830208331E0411101C030E0AC01495A5F4FDF -S1130840FA01208130FB27F9208301E010E020E049 -S113085030E061EBADDE80E090E01F910F910895F0 -S1130860AF92BF92CF92DF92EF92FF920F931F93BA -S1130870CF93DF93EC01662319F0613001F13DC0A1 -S113088042708E898C7F482B4E8B3F8B288FD801EA -S1130890C70188279927AF70BB27FA8EEB8E8A2F62 -S11308A08F70898FBC8AAD8A08E010E020E030E0C8 -S11308B0AE014C5E5F4F6AE1CE017ADE1EC042702B -S11308C08E8D8C7F482B4E8F3F8F28A3D801C70174 -S11308D088279927AF70BB27FAA2EBA28A2F8F70C3 -S11308E089A3BC8EAD8E08E010E020E030E0AE01BC -S11308F0445E5F4F62E2CE015BDE41E061E0CE0127 -S11309008BDF80E090E0DF91CF911F910F91FF90FA -S1130910EF90DF90CF90BF90AF900895EF92FF9249 -S11309200F931F93CF93DF931F92CDB7DEB700973A -S113093009F485C06115710509F484C04115510598 -S113094009F483C07C01DC016D937C9311971296AA -S11309504D935C931397FC01349684E5DF011D925B -S11309608A95E9F78FEF898301E010E020E030E019 -S1130970AE014F5F5F4F63E0C7011ADE80E88983F1 -S113098001E010E020E030E0AE014F5F5F4F60E136 -S1130990C7010EDE01E010E020E030E0AE014F5F61 -S11309A05F4F61E1C70104DE01E010E020E030E0C8 -S11309B0AE014F5F5F4F62E1C701FADD01E010E075 -S11309C020E030E0AE014F5F5F4F63E1C701F0DD2F -S11309D001E010E020E030E0AE014F5F5F4F64E1E2 -S11309E0C701E6DD01E010E020E030E0AE014F5F3A -S11309F05F4F65E1C701DCDD01E010E020E030E09D -S1130A00AE014F5F5F4F66E1C701D2DD01E010E048 -S1130A1020E030E0AE014F5F5F4F67E1C701C8DD02 -S1130A2080EC898301E010E020E030E0AE014F5F0C -S1130A305F4F67EBC701BCDD80E090E008C08FEF3B -S1130A409FEF05C08FEF9FEF02C08FEF9FEF0F90D6 -S1130A50DF91CF911F910F91FF90EF9008950F9325 -S1130A601F93CF93DF938230910510F482E090E0DE -S1130A70E0910D3FF0910E3F20E030E0A0E0B0E0C7 -S1130A80309719F140815181028113814817590728 -S1130A90C8F08417950769F4109731F012960C93F7 -S1130AA0129713961C9327C000930D3F10930E3F8B -S1130AB022C02115310519F04217530718F49A0181 -S1130AC0BD01EF01DF01F801DBCF21153105F9F09C -S1130AD0281B390B2430310580F48A819B816115F0 -S1130AE0710521F0FB018283938304C080930D3F41 -S1130AF090930E3FFE01329644C0FE01E20FF31FB5 -S1130B008193919322503109288339833AC02091EB -S1130B100B3F30910C3F232B41F42091023F309145 -S1130B20033F20930B3F30930C3F2091003F3091C3 -S1130B30013F2115310541F42DB73EB74091043FE3 -S1130B405091053F241B350BE0910B3FF0910C3F76 -S1130B50E217F307A0F42E1B3F0B2817390778F090 -S1130B60AC014E5F5F4F2417350748F04E0F5F1FEF -S1130B7040930B3F50930C3F8193919302C0E0E06C -S1130B80F0E0CF01DF91CF911F910F910895CF93A2 -S1130B90DF93009709F481C0FC013297128213821B -S1130BA0A0910D3FB0910E3F109781F420813181C7 -S1130BB0820F931F20910B3F30910C3F2817390768 -S1130BC051F5E0930B3FF0930C3F67C0ED0120E03B -S1130BD030E0CE17DF0740F44A815B819E01411566 -S1130BE05105F1F0EA01F5CFC283D38340815181ED -S1130BF0840F951FC817D90759F488819981840FE8 -S1130C00951F0296808391838A819B81828393833B -S1130C102115310529F4E0930D3FF0930E3F3DC0BB -S1130C20E901EA83FB8349915991C40FD51FEC175D -S1130C30FD0761F480819181840F951F0296E9017B -S1130C4088839983828193818A839B83E0E0F0E0A7 -S1130C5012968D919C911397009719F0FD01DC0178 -S1130C60F7CF8D919C9111979D012E5F3F4F820F7D -S1130C70931F20910B3F30910C3F2817390769F4DB -S1130C80309729F410920D3F10920E3F02C0128249 -S1130C901382A0930B3FB0930C3FDF91CF91089543 -S1130CA0FB01DC0102C001900D9241505040D8F785 -S1090CB00895F894FFCF43 -S1090CB600000F3F2000C6 +S1130680440F551F661F771F440F551F661F771FA2 +S1130690440F551F661F771F882319F0813049F1D5 +S11306A04FC0962F937086A18C7F892B86A357A366 +S11306B040A7F2A6E3A6D601C501072E7CE0B695B5 +S11306C0A795979587957A95D1F7702D8370829524 +S11306D0807F0370802B81A7B4A2A5A2AF014C5DDB +S11306E05F4F08E010E020E030E06AE2CF016CDF09 +S11306F027C0962F937086A58C7F892B86A757A732 +S113070040ABF2AAE3AAD601C501072E7CE0B69558 +S1130710A795979587957A95D1F7702D83708295D3 +S1130720807F0370802B81ABB4A6A5A6AF01445D86 +S11307305F4F08E010E020E030E062E3CF0144DFE7 +S113074080E090E01F910F91FF90EF90DF90CF90A9 +S1130750BF90AF9008950F931F93662319F06130F3 +S113076039F00BC0FC01278140FB20F9278305C029 +S1130770FC01278140FB21F92783AC01495F5F4FCE +S113078001E010E020E030E063E01EDF80E090E074 +S11307901F910F9108950F931F93662319F06130F1 +S11307A0A1F022C0FC01228540FB27F933853F7D5F +S11307B033872F642287AC01465F5F4F01E010E06E +S11307C020E030E060E100DF0FC0FC01238540FB46 +S11307D027F92F662387AC01455F5F4F01E010E0E6 +S11307E020E030E061E1F0DE80E090E01F910F91C5 +S11307F008950F931F93662319F0613039F00AC0EE +S1130800FC0121852B7F277F218704C0FC012185E2 +S113081024602187AC01475F5F4F01E010E020E0D6 +S113082030E060EFD1DE80E090E01F910F910895F9 +S11308300F931F9331E0611101C030E0FC01E95ACC +S1130840FF4F208130FB25F9208331E0411101C0A5 +S113085030E0AC01495A5F4FFA01208130FB27F99F +S1130860208301E010E020E030E061EBADDE80E0C9 +S113087090E01F910F910895AF92BF92CF92DF92B3 +S1130880EF92FF920F931F93CF93DF93EC016623B4 +S113089019F0613001F13DC042708E898C7F482B84 +S11308A04E8B3F8B288FD801C70188279927AF70BB +S11308B0BB27FA8EEB8E8A2F8F70898FBC8AAD8A04 +S11308C008E010E020E030E0AE014C5E5F4F6AE1EA +S11308D0CE017ADE1EC042708E8D8C7F482B4E8FE7 +S11308E03F8F28A3D801C70188279927AF70BB275A +S11308F0FAA2EBA28A2F8F7089A3BC8EAD8E08E07A +S113090010E020E030E0AE01445E5F4F62E2CE01D1 +S11309105BDE41E061E0CE018BDF80E090E0DF91BF +S1130920CF911F910F91FF90EF90DF90CF90BF90E8 +S1130930AF900895EF92FF920F931F93CF93DF939D +S11309401F92CDB7DEB7009709F485C06115710514 +S113095009F484C04115510509F483C07C01DC010C +S11309606D937C93119712964D935C931397FC01AE +S1130970349684E5DF011D928A95E9F78FEF898328 +S113098001E010E020E030E0AE014F5F5F4F63E034 +S1130990C7011ADE80E8898301E010E020E030E03E +S11309A0AE014F5F5F4F60E1C7010EDE01E010E072 +S11309B020E030E0AE014F5F5F4F61E1C70104DE2C +S11309C001E010E020E030E0AE014F5F5F4F62E1F4 +S11309D0C701FADD01E010E020E030E0AE014F5F36 +S11309E05F4F63E1C701F0DD01E010E020E030E09B +S11309F0AE014F5F5F4F64E1C701E6DD01E010E047 +S1130A0020E030E0AE014F5F5F4F65E1C701DCDD00 +S1130A1001E010E020E030E0AE014F5F5F4F66E19F +S1130A20C701D2DD01E010E020E030E0AE014F5F0D +S1130A305F4F67E1C701C8DD80EC898301E010E006 +S1130A4020E030E0AE014F5F5F4F67EBC701BCDDD4 +S1130A5080E090E008C08FEF9FEF05C08FEF9FEF1D +S1130A6002C08FEF9FEF0F90DF91CF911F910F91F5 +S1130A70FF90EF9008950F931F93CF93DF938230ED +S1130A80910510F482E090E0E0910D3FF0910E3F6B +S1130A9020E030E0A0E0B0E0309719F140815181CE +S1130AA00281138148175907C8F08417950769F420 +S1130AB0109731F012960C93129713961C9327C03B +S1130AC000930D3F10930E3F22C02115310519F0FC +S1130AD04217530718F49A01BD01EF01DF01F80131 +S1130AE0DBCF21153105F9F0281B390B24303105F2 +S1130AF080F48A819B816115710521F0FB01828359 +S1130B00938304C080930D3F90930E3FFE01329671 +S1130B1044C0FE01E20FF31F8193919322503109E7 +S1130B20288339833AC020910B3F30910C3F232B0B +S1130B3041F42091023F3091033F20930B3F3093C7 +S1130B400C3F2091003F3091013F2115310541F4C4 +S1130B502DB73EB74091043F5091053F241B350B00 +S1130B60E0910B3FF0910C3FE217F307A0F42E1B2A +S1130B703F0B2817390778F0AC014E5F5F4F2417FD +S1130B80350748F04E0F5F1F40930B3F50930C3FC7 +S1130B908193919302C0E0E0F0E0CF01DF91CF9127 +S1130BA01F910F910895CF93DF93009709F481C0AB +S1130BB0FC01329712821382A0910D3FB0910E3F37 +S1130BC0109781F420813181820F931F20910B3F74 +S1130BD030910C3F2817390751F5E0930B3FF09300 +S1130BE00C3F67C0ED0120E030E0CE17DF0740F492 +S1130BF04A815B819E0141155105F1F0EA01F5CF6F +S1130C00C283D38340815181840F951FC817D907AC +S1130C1059F488819981840F951F0296808391836A +S1130C208A819B81828393832115310529F4E09382 +S1130C300D3FF0930E3F3DC0E901EA83FB834991E8 +S1130C405991C40FD51FEC17FD0761F48081918180 +S1130C50840F951F0296E901888399838281938189 +S1130C608A839B83E0E0F0E012968D919C91139728 +S1130C70009719F0FD01DC01F7CF8D919C9111973C +S1130C809D012E5F3F4F820F931F20910B3F3091A8 +S1130C900C3F2817390769F4309729F410920D3F57 +S1130CA010920E3F02C012821382A0930B3FB093A6 +S1130CB00C3FDF91CF910895FB01DC0102C001904C +S1110CC00D9241505040D8F70895F894FFCF9C +S1090CCE00000F3F2000AE S9030000FC diff --git a/storno_cqp6xx_digital_xtal/avr_uart_driver b/storno_cqp6xx_digital_xtal/avr_uart_driver index eddc1d9..504b48b 160000 --- a/storno_cqp6xx_digital_xtal/avr_uart_driver +++ b/storno_cqp6xx_digital_xtal/avr_uart_driver @@ -1 +1 @@ -Subproject commit eddc1d974a0f4bac9c002a8ed19baf603e4eb8d4 +Subproject commit 504b48b1b14fd8ff7e89e102e97fb7298e41c6c8 diff --git a/storno_cqp6xx_digital_xtal/cm_msg b/storno_cqp6xx_digital_xtal/cm_msg new file mode 160000 index 0000000..37137d5 --- /dev/null +++ b/storno_cqp6xx_digital_xtal/cm_msg @@ -0,0 +1 @@ +Subproject commit 37137d5fa498f8dd14f44ebefc2067e97ba0849e diff --git a/storno_cqp6xx_digital_xtal/storno_cqp6xx_digital_xtal.cproj b/storno_cqp6xx_digital_xtal/storno_cqp6xx_digital_xtal.cproj index 8281922..293ba4b 100644 --- a/storno_cqp6xx_digital_xtal/storno_cqp6xx_digital_xtal.cproj +++ b/storno_cqp6xx_digital_xtal/storno_cqp6xx_digital_xtal.cproj @@ -168,6 +168,12 @@ compile + + compile + + + compile + compile @@ -191,6 +197,7 @@ + @@ -216,6 +223,12 @@ compile + + compile + + + compile + compile