From 4600e8e838cb4a717b77fb7ef3c3d41b8be3aae5 Mon Sep 17 00:00:00 2001 From: Alexander Heldt Date: Wed, 1 Jan 2025 12:40:01 +0100 Subject: [PATCH] Disable `FLASH` wait states As it blocks the mc from reaching a ready state for unknown reason(s) --- build/final.elf | Bin 62296 -> 62256 bytes build/final.elf.map | 228 ++++++++++++++++++++++---------------------- build/main.S | 97 ++++++++----------- build/main.i | 15 +-- build/main.o | Bin 50452 -> 50412 bytes src/flash.h | 2 +- src/main.c | 5 +- 7 files changed, 167 insertions(+), 180 deletions(-) diff --git a/build/final.elf b/build/final.elf index 6ce76be4c9892667cdbc9c244a1abe97147f9dcb..831ee91ea1f41182a370ec044683149a512ae8e9 100755 GIT binary patch delta 4486 zcmccdjCsQ|<_QvR-qBk+$HB|_Lqo7|ioLgVhMkx47YAqI1RHPZ z3~MiEFx$dgI>X#c`2!=faDu6~bcTtS^Opu=;RJ^LM&8mH%wHIc8MJ?1(D#O#pyM5#p$$^S9Gsx(9hITssp&23?46+IJv&3yOZmeG=E(`l-b!Ax6EY?zD0Qn-m^2Lyp+ErI8RQH@D}%)oiRB<%v(A`6y)4uko7_! z>pw6QgRBR!1wlHKg%kL_r8D@voWC#>3s1f;?8ulqSy9BCaqZ+t5nE~Q|EwMiAO8Me z_Kwc_-Ei+Y!+r(}CIT9z-|r4~MG3e6-}U}6EAMXD-N6Lr zefzr`Dz3EoqG&lYqr_xS$(4+ClYh%Ad$J`mFtBhhU|?VnU_2Sez`()-Vv8_xhchs+ z@Cq<7Fi0@&iD6)1;RA^)Ft$Z8FtG50*eZ;oATl@8*wj$>fp-~>rX9SjT%OcRTE;-VNBBB8u89>D|#hA8$o%pkc^2GIi% z3=E9CybqWdIAj<>CNQ)xGBB_*FtTJYF-+bsE6(UW`MT_8RUTFb4i2yt0)j~l42+^| ze^?ke1i&JKTM`)<7}?lnOkOYN$~bTGS2<0_1C!s10^U%R<@GO zXH~`7*g*0Bhk5cVZ8^aiEDRhepo9gDW1h*9I`W(%tPC6u3=9k*lO1*BB}-TtI6&@z znFq7FW^$#DL-HIZc5td>WRPY6r6(3}*~bnxm>ryS*da+u6j>T<13M%Rl#nIBmNBw} z?P3Sp#9p&mM)#s3BlF~Ueq!}Xi3|*^S{!i<46NGkK&0M646H_m(F_c% z#yOD;46J6)Ll_uX&0RojtJ?_-46N3?F$@f>b~+#t`&l5BPBCE&46M#4K%~nfkgVGi zkgU5-ECU0prwEAcRRPlLeF9{@uWdbui>Y8$sYwG1ulV15!nT@T+|KZ9EpV>{gS<)FqEkU*(Y}h zBrfj&a+<=8C~%xHurhrEiE<}`RPb1XZ00`#a*I$Jh%LMaq+cXB9H!b3WRL7_kX*go zWRP_Vt3XauoC!D37^FqO8l+HA2Bbo?5k!jJ1{o`L9OPW-9FQaA_(7J+TYFn(iRITD&1(2QYavGcYhSFtRc%_GH*x>Aa9@GE2-KM$^rVvB}&c zJ!K_RC1rskqn+_8C{8;Wzk!l>7o#mS^hH=V=R2?F+FVdl%fxtY^SiPDMkYm<$vzeO zY@iZ^`OM_Tiam@oCfilI%Yq6HW)VhKW_<%z9tI{BMnfhh21Z6!83tA+p2>?U*D{Js z4ye*+44K?ewS%!_vSoEDqt4{{)sl=plXq4dFxG5-Rc#%)+3#v5$7I#3N~}o+28M>4 zx8AL0kpq=}j(jZbjE=nQOpUy}PRIEeWEdD2K(*)}=E;7K^cZJMu6?8qb_1y1bL8V_ zXX*nfXJ8OvU|_hxz`(#W`QRgUMv=)cAIUR?uuhJ9EH+u;u>{B=kChp9CdWROXY`p| z`&gZ^X7kd=`izF4;t*UgGB7dlF)%Q^U||4NvY-;1fg4)>!sJ1Gp2@6Fn>|5JWrFH> z!;H`YGGPT9f)COG3PP9(Ao(678w@8Od?IWMDsz!l_^_gy04j}<M4 z6)I?M0F~Ov@*ZgNpz<79z5-3Y28r(o?K6OaNr{1p!JUDj9^8q535234h(zN@qwy2a z_&E#=3_G9}3NU>9Uydf<2#}8{n7ZrObiUQYz!P)3=9k)3lq@fQ<#iVU7Urcpn!>i zp%mJf0~t^QlAk>Fm3$y_@>~iMMT)M?X#Cx1{Nqdv4584*G|1FTAoW`-n`;vxi1K_VJI6^);Z#xFwSmxK75 zS>NnuVN{rW^n)_vj>#`S_%rU9Z23{0@!I6XkLrvqlRH1EGv-X*_)(pab@I)R>Z}o^ z3=9(|vwl)$dRaYL>ysK|#N@zF>Wp(ISAJ4wyf}H`Cw0b@$tORlGtQX&@sm2!i`SE- NKC3b2Om_S%4gf~o-i81G delta 4437 zcmdn+jQPeh<_Qv4Bp&?i}#m!qf!_`aqi-WUpg0r`D zhLe{wm~HPZonhyt{DF~KIKjqSI>Xw_`AdVba00`AOK<56<}VD!4B9_0n0ZTQn0hIH zXebs=F!qklFaoJ!4o)!ej>^#YH1HO7_D<0Co}HoNrTpOo^W+3AZ%wb+^%;{BG`weL zsCy}Yc@R7~LDhS9h6+ey@Zn)uj19EOL$a+bT z^&c3DLDqxV5+I$)!UR^HvPyMqbLd+~QSR9s~9R?%{1M#sszk}DaPPrfg&?5Ur~z`(-2fPsNQfbmlt z0|N^Wh%Lg%9nQeO!YjbUz#zf+G=_nJg%2dIz_>n&fq{h|#8zPx1*s7LsnKA3HQ8H1 zc5;Fg8{@ml`3ka=Tcos9)j|5CKxz{hcYyRsgV-sI(h&>{EHWT{8H^c|Z!5@7{vgH1 zyAY&80i>dVF>o@obU7bK6axbr2S|j4ku_>^hqMA??c|lxL3}B33=ABcAPEje^{C05 zGM0@0Cp*iyGa63rmQiN(nY>;`g-IfD@>LoC`fbq+44k^`kx>i`94hRcaSRNcI_xnC z3=AB~!aZRO42(XkRSXOa5-bcHa~K#H80TcOFffSZq^2-1hVXPSFfcGpEaGX8Vql1X z^2&Iu5*QdF+21gOTz{ia%3u!QKJlw7Iy+s0#Xl&5@odL;8ui$Ix8a7vlT(1 zzElwu>TeZ6p)RPTA_fX)kpfl*4h68k*gzr8VldfTNrzEka)r`n#^sZBl$8x3KG}hk z>_BW-veQCJb|7&D#`TjMl*JieO`f3)^2r`$cV0;10?8&Y?wBl~BF>mGSwjWpZjd-A z8AYhP;*bCZttZ=z$zH04j2V+_RHdariGtCN&4Uf*PBBozU}R;Ruz91ZI2#)%9wk^N zpVO8T+`_`ZkpfB}(74i={8w9^(}0zM!-0W;pfJhha zSOx}GH{K`)23Ggb*m?#AR!>`yQm=&x3=FK^CqNeXrh(Xg&p{ge7lSke@`6NyIzf&I z76OTf?*oZMFoP_MULL`~z#1b3(i`^;Bofa6Vkh>4*hx2n85meo=7F4&>IU*sh6+e; z=I=O$7zWlH+i(U3*4&dIr3Jr11{GZf`KdS$$P|&sAWw+qgPbF=5TswS z7i6D|2*?n**C28EOpr4b7^A^)$iT`Z4{{xM7sxE06p+pQZ$WMm>Ibof_ki?^1c$>^ z8-nbSeFBoJm)irfPGJ?uX^MxUU`mWZS_G^?3I$z3DnwU-NHG?W#Zn(Y&Xt}DV#`^8 zER|0NIY7w-WTbK~NSE4mkQ()aAT^o=AiY|=Az;&)!kHNum>C#Z85VmoY<3Tv%gyA- zve`Cp4cFvJ>D%h*m9%iAta^~M>5;T>q%2nk239I0t?o=2CIwb-sBR7|sbS*01+G3= z7#2-VEH&FKP%gyCr)f~HgK@%S!Rl0LP=Ud0%gCy%4>F3;mWhLbk&#uIft4v^ z^2BNb#u=LrRa-|+PP?nbR$*XhXsEgQ&y_5W&HZ;PS>!Jtmtz zmS@bE9Qs(DamMD_$NG$hpkfeQATls9@G&qju&^?KDoIeq%fJmScVY4%zQ*LcPnvB( z4q}4p;9x=M0GV)v4Z#QL00k7x1d#lS$#b8|8-mJLWYG*XdqE{HvV70vw@>BkL4_}} zr~{f^pg=~JPeGFhmDkAfQ_$pRAn_fc?R`*iC^0ZGxHB-+Gk_ZYFo94s1(9fcP?3YI zJ^@WWhk=3N3e-XYhL8Wt(d1jv_&p4hxt(@+L+G2195I0pyY%kSZkqPGDqU*a~e| zfaK?($uC3WuSVl@oGkki)fo@al)Xjce?{Z}LgOi zVIs7#1~Q-qBtJR#m3$y_@>~iMMT)M?X#Cx1{Nqdv4294pFUZtOAon4I`gov~wb=SOu$#mO5#sACR |= (1 <<9); - ((struct flash *) (0x40023C00U))->ACR &= ~((0b1111) << 0); - ((struct rcc *) (0x40023800U))->CFGR |= ((0x0111) << 0); + + + ((struct rcc *) (0x40023800U))->CFGR |= (((0b10) & (0b11)) << 0); @@ -2396,13 +2397,13 @@ int main(void) { uint16_t counter = ((struct timer *) (0x40000800U))->CNT; -# 89 "src/main.c" 3 4 +# 90 "src/main.c" 3 4 _Bool -# 89 "src/main.c" +# 90 "src/main.c" led_on = -# 89 "src/main.c" 3 4 +# 90 "src/main.c" 3 4 ((_Bool)+0u) -# 89 "src/main.c" +# 90 "src/main.c" ; while(1) { if ((((struct timer *) (0x40000800U))->CNT - counter) >= 250) { diff --git a/build/main.o b/build/main.o index 7cec1a07ccb52dfb4d17a6e6d410f053c681874b..bbbf9b4b30c6cdf4aac91563a5e6bd5616e51c53 100644 GIT binary patch delta 7620 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 delta 7325 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 |= FLASH_ACR_DCEN_ENABLE; FLASH->ACR |= FLASH_ACR_ICEN_ENABLE; + // TODO breaks with these flash settings on; turning off for now // Set latency to be 3 wait states (TODO: understand why exactly 3) - FLASH->ACR &= ~(FLASH_ACR_LATENCY_MASK << FLASH_ACR_LATENCY_BIT); - RCC->CFGR |= (FLASH_ACR_LATENCY_3_WAIT_STATES << FLASH_ACR_LATENCY_BIT); + /* FLASH->ACR &= ~(FLASH_ACR_LATENCY_MASK << FLASH_ACR_LATENCY_BIT); */ + /* RCC->CFGR |= (FLASH_ACR_LATENCY_3_WAIT_STATES << FLASH_ACR_LATENCY_BIT); */ // Use PLL as system clock RCC->CFGR |= RCC_CFGR_SW(RCC_CFGR_SW_PLL);