From 4e2b8213893d74ac473f23093b803d0d5b30a6c7 Mon Sep 17 00:00:00 2001 From: eddyem Date: Thu, 1 Feb 2018 12:35:14 +0300 Subject: [PATCH] Add data to Readme --- STM32/steppers/Makefile | 2 +- STM32/steppers/Readme.md | 116 +++++++++++++++++++++++------------- STM32/steppers/steppers.bin | Bin 7948 -> 8032 bytes 3 files changed, 75 insertions(+), 43 deletions(-) diff --git a/STM32/steppers/Makefile b/STM32/steppers/Makefile index 148c4db..a7b076b 100644 --- a/STM32/steppers/Makefile +++ b/STM32/steppers/Makefile @@ -5,7 +5,7 @@ BOOTSPEED ?= 115200 FAMILY = F0 # MCU code MCU = F030x4 -DEFS = -DEBUG +#DEFS = -DEBUG # change this linking script depending on particular MCU model, # for example, if you have STM32F103VBT6, you should write: LDSCRIPT = ld/stm32f030f.ld diff --git a/STM32/steppers/Readme.md b/STM32/steppers/Readme.md index 4ce81e2..2e9c4fa 100644 --- a/STM32/steppers/Readme.md +++ b/STM32/steppers/Readme.md @@ -54,27 +54,27 @@ Getters returning more than one field ends with `DATAEND` meaning that's all dat * **M** - motor's voltage (*100 Volts), e.g. `VMOT=1193` * **C** - get *current configuration*, e.g. -``` - CONFSZ=36 - DEVID=0 - V12NUM=1 - V12DEN=10 - I12NUM=1 - I12DEN=1 - V33NUM=1 - V33DEN=1 - ESWTHR=150 - MOT0SPD=60 - MOT1SPD=60 - USARTSPD=115200 - REVERSE0=0 - REVERSE1=0 - MAXSTEPS0=0 - MAXSTEPS1=0 - DATAEND -``` + ``` + CONFSZ=36 + DEVID=0 + V12NUM=1 + V12DEN=10 + I12NUM=1 + I12DEN=1 + V33NUM=1 + V33DEN=1 + ESWTHR=150 + MOT0SPD=60 + MOT1SPD=60 + USARTSPD=115200 + REVERSE0=0 + REVERSE1=0 + MAXSTEPS0=0 + MAXSTEPS1=0 + DATAEND + ``` -All variables here are fields of `user_conf` struct. + All variables here are fields of `user_conf` struct. * **R** - get *raw ADC* values: @@ -85,34 +85,64 @@ All variables here are fields of `user_conf` struct. * 4 - inner temperature * 5 - vref -E.g.: + E.g.: -``` -ADC[0]=4095 -ADC[1]=2340 -ADC[2]=4095 -ADC[3]=4087 -ADC[4]=1665 -ADC[5]=1532 -DATAEND -``` + ``` + ADC[0]=4095 + ADC[1]=2340 + ADC[2]=4095 + ADC[3]=4087 + ADC[4]=1665 + ADC[5]=1532 + DATAEND + ``` -* **S** - get *motors' status*, e.g. +* **S** - get *motors' status*. + + Values of `MOTORx` (state of given motor) can be one of following: + * **ACCEL** - start moving with acceleration + * **DECEL** - moving with deceleration + * **MOVE** - moving with constant speed + * **MOVETO0** - move towards 0 endswitch (negative direction) + * **MOVETO1** - move towards 1 endswitch (positive direction) + * **MVSLOW** - moving with slowest constant speed + * **SLEEP** - don't moving (normal state) + * **STOP** - stop motor right now (by demand) + * **STOPZERO** - stop motor and zero its position (on end-switch) + * **UNKNOWN** - something wrong + + Values of `ESWxy` (state of end-switch `y` of motor `x`) can be: + * **BTN** - user button pressed + * **ERR** - wrong ADC value + * **HALL** - hall switch activated + * **RLSD** - no actions + + If reset occurs there's two additional fields on first request after reset: + * **WDGRESET=1** - watchdog's reset occured + * **SOFTRESET=1** - software (by user's demand) reset occured + + There also two fields: + * **POSx** - position of given motor (negative values means that initialisation need) + * **STEPSLEFTx** - (only when moving) amount of steps left + + + E.g.: + ``` + SOFTRESET=1 + MOTOR0=SLEEP + POS0=-1 + ESW00=ERR + ESW01=BTN + MOTOR1=SLEEP + POS1=-1 + ESW10=HALL + ESW11=HALL + ``` + -``` -SOFTRESET=1 -MOTOR0=STOP -POS0=-1 -ESW00=ERR -ESW01=BTN -MOTOR1=STOP -POS1=-1 -ESW10=HALL -ESW11=HALL -``` * **T** - get *MCU temperature*, e.g. `TEMP=365` @@ -163,3 +193,5 @@ procedure you should reboot it or (if there's only one device on the bus) call i The USART speed will be changed after next reset (e.g. by *MCU software reboot* command), so it don't work without storing in the flash. Check it twice before writing as wrong numbers can make device lost until next re-flashing. + +[//]: # (generate html with command `markdown Readme.md > readme.html) diff --git a/STM32/steppers/steppers.bin b/STM32/steppers/steppers.bin index b592b40dfb3c89b63b5f7ee97d12e18dff404e2b..9d8c0186c37d7eaee00003ef73173a8e012dadf7 100755 GIT binary patch delta 2310 zcmah~4NP0t6+ZXbCJ&Pz11W)oAOD2l;-XrkCEaK;g43r5CX_(ZF-U}if@)HABTFW^ zT~d1?>)84mUZ;@JpG0F@R+1_)L(QsejoMCXv?+bw)CG^N0<{>rHrdmepS7_52Lxa z_la9>+OPeO{N;Q|Fqw1HIqh)%x9!YwaUF>llp^8l>`i62u#TNq9uq1}$CFN_LnvTB zQZ5Uz+_`z?7Gge$Rc=<9!%j^5r*hUboXKNQIHA&u$q_yit z)Jq$CNP9?klQDZ%CpX1@IO!`Mk1q32JTiG4Pa9|@P11jYY(Cu^Cemv3VH%KXrG7tO z8cxX)X;r!xE0ub!^i0}1lOnBEC++bRbI+^f8jxIpLCHm1r2*+lq$<|$gMXH8C$INX zl(Yu)_3{;8sO66bZw}&(D$`JMRUrp zjs@!a>Bp_dB`WKXI~pHsAnlDL-^?$Q2ZH&1q?O_*e@~KT==>;Rl{Z)xAonM+ojAtN zlTO#nE?@D$7O$7IXOr7u8%zefDXdu$_7=iEN{5lFL3Ra5dnRc|0BK3R4z5oo9ck^~ zIN2HaURm<>!S~}tZ>Y{gvAoG`o?LaSr#H445s$*_XUIH`2nF)!jR>d1PxiHe_Yzg` zX@}jEz4)ne%~}%fPw|?zPP4)CdZm`)Ez^%g^5xeOXg#|zdp`9mNDR`M)X>H12QUeKxtk`{T+&4dn3! zZy#y(xCsF#Ua#}=uzRmX%K}1GRmC(4U!4ed$>Bs7F6H+NylMLqXy25XI$^oEfNg6B z5dPr;X_j<&Z_(O9b{EC3CVc20OYHRo`${e(ibWH4&zzd+`9f_f+~(<2TRfzm zPS`Oy7xhNjvUH~}rYLbFMCIn#vI(ZlTJNx3PS4eI2{yPzeq_(bQ_6K~aYr<548d5H zF3f?%aHLYcGIbBO)`kt;pZa7e&B_T@xfThns=a((%`Bf)y+}?@r>k84$Bxk{2B{3v zxv2tbMk$l}diho5z2!yWgLp=v%1-bt<|PI9YISAYnkgJLIPju?-P_(X-_r zOy$VEQw%HiM7I3IRJMEwczo)Tq@f;jKnO+Wh39pWfxA%P8h{s@*Xta&Lk@xu0=q=~ zMS!M}-76jwm{qyDsv@%sXZypPG3!uP*dG4s@H_@N)*>;*6@0lip>7Bov+vLQq>_Lu z_)_hMalf=KSQ;cxLS?5(3&DFvWdp|SG3Bi7^M@dG`r0}p&Tj_$Avqmw0eAiOU36!L8V_!e#hQrYvcP=tK*Uv2 zH_rOHO}?l0Z0~lU4z=+K;KO4WpBW>Ea^A48PGw{MoyFb~5{GbioWG2bC-N7C@IWSsFWd&N-p2MW zY-6|Bk3v6Wy^-V7Th?xu_ZD0D=EJi{>=8+v0cQX@lKyKc@qdFZ-lE^P;^yXmxBP~D z9lRAd1T+Fi(Hu_$F90tBL%H z40ttI1LuL~!2C;0xas9!5sX2%+rUn6K6pKNJ$M5cudejZr_2|I^XeLRH0^9?*x9s+ Z$hxy-OY@GFrmdSsjuahb8H^Y_{{v)<`f~sP delta 2231 zcmah~4Qy0Z7C!fN3a>xF*h=jzZF$pa>EN_F*xkxXVA~mddDEd#sID!DOpU8kaAUKe z7DZ<^U@Ypcl&7KHc3pQDfmk5YQnHaHkcE&KNO&VZGL&e^Zr`v`HZMUeoq5yoyF;@o zk~qni@0@eL`*ZF+XWq!7w-#B+O486hBpv|v0bO^^3K4f`^2hBP({BxO!B640`FGYt zGrx;p`=0&d^{_xs-gn}(;J}epEOWyw65G{c;a99zT`kOFe^56H)fwv(rRo~N#(txI zB1H1fjWeeZ@ye`vk;d#2G2@iFFQY$;&wVyMztvKn^Tar_TZklPw5VN{ikyexhh?s= z9XxKy6bimBCb19#E071IQbcC4`uUXYcjcCl$X(o!WI|?De?Rr*1w6XL#ziFZ5es}{ z=yUlod8z!cY@v~%%^yib#+f8@#d z67!+|PeLNM``7>(UnCYvWL!?zaRM^Fp2(n1MQ{lhU!Od{7YQ=5upX;WpUIl-n-M1` z(>5w=VlOGHfmJbYN8N(qfqd7^i!V;zkhg=m$t7x%OVF}hq&;#vQB( zkn_t(0ExVs2)2>&Uno9+;&@s?j+KfdKt_8)a$J3!j7#QYP_`xPY40qwZ$rCpQoFnc z;_Le64xj4*t-*D#w%GN@NCPG;hiEhI@h~R52>abz6H4d#N%~pflG>0v+u4`oPu3P= zy;aJ(*5mp^nCFD{Qu2IkKI~H1G;t=TF3l|oZA^=0h%4(=4@K)@{b8HZr=uvP)L7-j z4p=K-4JT(RU9cNqpHJo~Z|cWnUa`%n+)d~ZvI@0(U>^id03*N#M$+R&B%X$ir$r%? zbQLzQ`b~(V>gz<_Gsm!i0=7^*ldjQ-6@xc{PM`zvEx-DFz_*7pPu2-rivzVK7!eTgiS<*3S4JJ!;kKbM1BYXT*(Jj|4^(^5<`*NHYTQFV= z`}w%LlZ+8uS6`frj}!c**)OgQR0M>YnyOf&MlnZglv=&!Y250XIPUCo8&`LHOmUYA@qQJCLojYSQvsag|C zv`yzt|AJYdoK(kii$hz{kkd5Q!=tW*;IwMl(G2Gl&Eh1@r(2cXqgLeu;P0ahky?Ga z^4{olrEm1se-Vj&xVN1^2Oft%5WiCbE&^Wx5+DMVz}>)nz&d2DCr8Ezt1cVtpSDh5 z_p0|;tFl^=)~TDRu{yQE`phqPkE8!0O)^s*!S_76HYb=GyD{#SX9pa?KYRWi^~HRwFO$% zy5M!%eZ;&iPloNy!L8g1M1yk>58FQxm^T^-JG$D2S&mn2wfjqz7WAMuG0jnHmsDS# z!&c}o^mVy=0)@V4z!v1Ih8_Qs)WA&jwLDkBF_~9zDs?Cnne1sb zR5-WfGOBhbE{yY!F?h0YLI~~3BJpo`z(4K~yMUN}TYNkG7qV}y5x;HhPV3$l3;lm{ zDVM}oMYJHe0LTRd;QJF!=lsxr=r*5g??bE%_#Y0n2XG_#`9Lk80F6L1@D%WDNr=QE z7-c{uz+0H#;s)5+;7#D^;4NVOiF^ypKa=l(?*{jQ3&1}`q`?ctTi6sLhVgF!ycE!Z