人妻暴雨中被强制侵犯在线,亚洲国产欧美日韩精品一区二区三区,四虎影免看黄,国产无人区二卡三卡四卡不见星空

 找回密碼
 注冊(cè)會(huì)員

QQ登錄

只需一步,快速開始

搜索
查看: 9382|回復(fù): 10

基于電子積木arduino(AVR)的G代碼解釋器原代碼

[復(fù)制鏈接]
1#
發(fā)表于 2012-8-6 19:48:27 | 只看該作者 |倒序?yàn)g覽 |閱讀模式
基于電子積木arduino的G代碼解釋器原代碼,來源于http://arduino.cc/forum/搜CNC
- E1 `2 ?* O/ g& V: V6 Y9 {我去年收集了許多程序,經(jīng)過測試挑選出可以用,后來沒時(shí)間繼續(xù)研究學(xué)習(xí),現(xiàn)在發(fā)4 V% e5 z& O+ D% f8 E1 F
上來給有用的朋友參考
$ W. E8 I/ q; j  l; P$ j下面是其中的小段源碼
7 n! c$ T0 K5 M" T3 M* ]* r* l//init our variables8 J2 W: y% r: c
long max_delta;
% `$ T1 _( e, K  [long x_counter;& \8 ^6 F5 }6 _* u+ G& N
long y_counter;. m4 `. V2 O  I) t" I: {, K4 h
long z_counter;: E' F; {3 o9 D, G( V* X6 I
bool x_can_step;+ B2 X# O1 K( X: x
bool y_can_step;
4 |; E: z! P% n: J2 w0 J. zbool z_can_step;3 G3 R; X- A7 u5 U$ |
int milli_delay;2 d; Q) t, q2 K! v5 K) |# b
void init_steppers()# R2 q4 B6 [6 L  X  }
{
5 \" p$ S- D2 r& F3 F. _ //turn them off to start.
, D$ B  @# I. b  V6 r2 x4 @ disable_steppers();
& v: i2 l: a5 h4 W9 L
1 ~: T; n/ L" \( U2 T //init our points.
. {1 g0 s4 ?9 ]( t current_units.x = 0.0;
1 s" ]0 P* n" ?, p current_units.y = 0.0;
( g6 ^' P6 f$ U current_units.z = 0.0;; `; h6 Q; k4 ~! r8 X6 z
target_units.x = 0.0;
- Y8 q1 i! |2 k! E- z target_units.y = 0.0;
1 ^* j9 R. M- l: d target_units.z = 0.0;
) q: b4 v, a0 S5 T9 ~  W2 q9 r , t( C0 F% |9 A, {% W; ?3 U
pinMode(X_STEP_PIN, OUTPUT);
! {8 b* A. c7 j pinMode(X_DIR_PIN, OUTPUT);
/ a4 A/ J5 w6 L' o" ` pinMode(X_ENABLE_PIN, OUTPUT);
6 Q$ z9 i; Z6 G! n. [# O# _" C7 | pinMode(X_MIN_PIN, INPUT);
7 B6 j. b" n: { pinMode(X_MAX_PIN, INPUT);4 f, v* u" Z' l7 k# I  ~- v: ]. q) r

4 K2 Y& ~* Z' g7 Q3 I$ v, j! d pinMode(Y_STEP_PIN, OUTPUT);- C* t. M/ n/ ~* A& r6 K
pinMode(Y_DIR_PIN, OUTPUT);: O9 O4 t; o. }. h+ f+ a
pinMode(Y_ENABLE_PIN, OUTPUT);' A% d: u$ Z/ E8 R& i& l- P
pinMode(Y_MIN_PIN, INPUT);
9 S" {/ J. }' a( \% D pinMode(Y_MAX_PIN, INPUT);; Z& m3 ~' ]& M/ T
" M9 r" Z/ a' h! @# a) Q+ _
pinMode(Z_STEP_PIN, OUTPUT);+ J7 n# b2 O* ~7 B) z* Z( v
pinMode(Z_DIR_PIN, OUTPUT);
: H) b' }' f4 r- C( ?" s pinMode(Z_ENABLE_PIN, OUTPUT);, C$ f+ N8 Q- Q/ z% c' D
pinMode(Z_MIN_PIN, INPUT);
+ [/ i# O! b2 R4 Z3 `3 } pinMode(Z_MAX_PIN, INPUT);
0 d4 q. [& q  b0 H% F) |- I * \1 X4 J5 t6 H7 l* y. B+ y6 R
//figure our stuff.3 x: Y9 B/ u9 F7 c+ G2 P$ r/ C
calculate_deltas();& R1 Y( F8 s. y
}
+ c- P* k% d" C5 Q+ ^& @$ _void dda_move(long micro_delay)
1 V( C/ n: P7 Q( z  a, h: s" G3 z{4 \: D& u- {1 B  \
//enable our steppers
3 ~' e* V  `# q* g' D& B digitalWrite(X_ENABLE_PIN, HIGH);
( M- R1 B* k/ X3 ~$ L: F' | digitalWrite(Y_ENABLE_PIN, HIGH);
1 C- Z, u5 }7 _+ v% |  a9 d6 N digitalWrite(Z_ENABLE_PIN, HIGH);
/ o2 F1 x- j, _3 x- \& Y* @- n! x/ k 0 B; [5 m! _5 t7 P
//figure out our deltas" b# G/ V: i& @3 c
max_delta = max(delta_steps.x, delta_steps.y);+ B  _* V& ]8 ?& I4 F5 j
max_delta = max(delta_steps.z, max_delta);+ S- |0 ~/ P; b/ ^
//init stuff.  S' B- v8 v" ?2 m
long x_counter = -max_delta/2;; i! z' ]& ]: w; D3 }  @
long y_counter = -max_delta/2;2 F) I. x( g6 g# S9 ^* _. A
long z_counter = -max_delta/2;
8 y( U% ]& C1 Z( g: d
$ W" U  U) j3 @2 E% T, K4 Z //our step flags
: S+ G& l/ J" S" P bool x_can_step = 0;, l& \( Z- O' i8 X. C, L# l) ]
bool y_can_step = 0;4 j( X! }+ s, E5 ^# h& ?9 h' |  \" x
bool z_can_step = 0;/ ^" a/ Y  v$ z, B  ]
  v; D, g/ Q! }' P8 V& A
if (micro_delay >= 16383)- F" O! L! |$ ~
  milli_delay = micro_delay / 1000;
) l0 N& V7 ]: ] else
, G( x! D% H2 `* p  milli_delay = 0;
+ }/ R+ ~0 A; N7 ^  r
% H8 b  P/ J$ z

本帖子中包含更多資源

您需要 登錄 才可以下載或查看,沒有賬號(hào)?注冊(cè)會(huì)員

×
2#
 樓主| 發(fā)表于 2012-8-6 19:50:44 | 只看該作者
有2軸圓弧查補(bǔ)和3軸直線查補(bǔ)功能
3#
發(fā)表于 2013-8-7 14:46:24 | 只看該作者
謝謝分享。
4#
發(fā)表于 2013-8-25 00:01:13 | 只看該作者
謝謝分享。
5#
發(fā)表于 2014-12-2 14:14:14 | 只看該作者
謝謝分享
6#
發(fā)表于 2015-5-2 17:56:27 | 只看該作者
謝謝分享!
7#
發(fā)表于 2015-5-5 10:06:23 | 只看該作者
感謝分享
8#
發(fā)表于 2015-5-5 10:18:43 | 只看該作者
電子積木是什么意思?是CNC的G碼嗎?
9#
發(fā)表于 2015-9-27 00:13:28 | 只看該作者
這個(gè)還沒怎么接觸過,樓主能詳細(xì)解釋解釋嗎
! }9 A# E" D6 n: E0 u5 b, o' O/ j
10#
發(fā)表于 2015-10-5 11:21:26 | 只看該作者
謝謝分享  

本版積分規(guī)則

Archiver|手機(jī)版|小黑屋|機(jī)械社區(qū) ( 京ICP備10217105號(hào)-1,京ICP證050210號(hào),浙公網(wǎng)安備33038202004372號(hào) )

GMT+8, 2025-7-20 20:15 , Processed in 0.091137 second(s), 21 queries , Gzip On.

Powered by Discuz! X3.5 Licensed

© 2001-2025 Discuz! Team.

快速回復(fù) 返回頂部 返回列表