# Hệ thống Điện > Driver Step motor >  Hướng dẩn đấu nối driver im 483

## thucongmynghe79

các cao thủ hướng dẩn em đấu nối em Driver IM 483 đã có bo đệm ,đã có hướng dẩn tháo rời từng driver đấu riêng nhưng em mù điện tử hok dám tháo ra ..hic..  mua của bác Quảng mà giờ bác ý lên đường đi Hàn rồi ,,,em nó như thế này

----------

cnc300

----------


## thucongmynghe79

phần bob thì em có thể biết còn riêng Driver nó nằm chung 3 con trên một ket thì bó tay.com...hỏi googl chưa ra sơ đồ này

----------


## thucongmynghe79

các bác ko giúp em rồi...tự chơi vậy..có điều đấu xung và dir em ko biết đấu như thế nào xin các bác hướng dẩn giúp...pulse 1 và dir 1 đấu vào BOB hay đấu vào đâu?
còn tìm dây chung của step có phải chập 2 dây vào quay tay thấy nặng hơn bình thường là 1 cặp thông nhau không ?còn chập lại quay vẩn ko nặng là cặp đó dây chung à ? xin giúp em với, con step của em nó có 2 dây đỏ 4 xanh

----------


## thucongmynghe79

các xem sơ đồ của em giúp wm phát :bản 1 sơ đồ chân step và nguồn

bản 2 : chân xung và dir cái này em bó tay không biết đấu vào đâu trên BOB ( không thấy kí hiệu trên BOB )

bản số 3 : là 2 ổ chân của sơ đồ bản 1

----------


## diy1102

Tháo driver ra các chân k giống sơ đồ em gửi sao anh?

----------

thucongmynghe79

----------


## thucongmynghe79

giống bác ạ, nhưng chả lẽ bỏ cái boad sao? bác mở Yahoo lên nhé,à đã gởi hàng cho bác rồi, còn lại 3 cái bánh răng sao lạ quá nên mình ko gởi,bánh răng có sơmi riêng chỉ quay được tua thuận ko quay trả lại được,kiểu như líp xe đạp ý, bên trong sử dụng bạc đủa

----------


## thucongmynghe79

tình hình vọc tới vọc lui  em cung đấu được đúng theo hướng dẩn của các bác 4rum, nhưng có vấn đề ...tets trục y ko nhúc nhích,trục z nhãy như ngựa, trục x chậm chạp...mà chỉ chạy được 1 chiều, đổi đi đổi lại chả ăn thua...set trong mach 3 có gì bất ổn sao/ xin các bác giúp em với..

----------


## diy1102

Bác pải cho thông số set như nào thì ae mới pán đc chứ ạ.

----------

thucongmynghe79

----------


## ngocpham

> tình hình vọc tới vọc lui  em cung đấu được đúng theo hướng dẩn của các bác 4rum, nhưng có vấn đề ...tets trục y ko nhúc nhích,trục z nhãy như ngựa, trục x chậm chạp...mà chỉ chạy được 1 chiều, đổi đi đổi lại chả ăn thua...set trong mach 3 có gì bất ổn sao/ xin các bác giúp em với..


Driver & BOB của bác giống như mình.
Mai mình gởi cho bác mấy hình đấu nối & thông số trong Mach3

----------

thucongmynghe79

----------


## thucongmynghe79

đã đấu đúng tất cả test tay trục Z,X chạy một chiều không trở lại được, còn Y thì ko nhúc nhich, seup mach3 theo hướng dẩn trên 4rum vẩn ko có thay đổi gì,thank bác DIY 1102 và bác Ngocpham nhiều, mai post sơ đồ nhé

----------


## thucongmynghe79

hix. chả nhẻ cái BOB chít trục Y nhỉ, thử đổi Z qua Y vẩn chạy được nhưng vẩn một chiều , lạ nhỉ, setup mach3 đủ mọi bài hướng dẩn,cứu em với.

----------


## nhatson

theo em hiểu là nếu nối trục x wa trục z thì drive motor vẫn chạy bthuong> drive okies BOB hoặc cổng máy in có vấn đề

nếu đổi trục bthuong qua trục lỗi vẫn ko trở về bthuong > drive có vấn đề

b.r

----------


## Mạnh Tường

> hix. chả nhẻ cái BOB chít trục Y nhỉ, thử đổi Z qua Y vẩn chạy được nhưng vẩn một chiều , lạ nhỉ, setup mach3 đủ mọi bài hướng dẩn,cứu em với.


Bo driver này hiện đang dùng với BOB mua của Bác CKD thấy chạy tốt, Theo em nghĩ bác nện coi lại khai báo các chân BOB theo hướng dẫn kèm theo BOB, nhắc bác lưu ý là có kết nối Gnd giữa Driver + BOB + cáp LPT chắc chắn chưa ? và đã cấp đủ 2 nguồn +5V trên bo driver.
Chúc thành công

----------


## ngocpham

> hix. chả nhẻ cái BOB chít trục Y nhỉ, thử đổi Z qua Y vẩn chạy được nhưng vẩn một chiều , lạ nhỉ, setup mach3 đủ mọi bài hướng dẩn,cứu em với.


Bác kiểm tra xem có tín hiệu ngõ ra trên BOB không (trên BOB robot3t có các đèn led báo tín hiệu ngõ ra), dùng chế độ JOG trên Mach3 để xuất xung & tín hiệu đảo chiều.

Bác nối dây từ BOB qua driver theo màu dây hình em gởi cho bác, và khai báo các port chân xuất xung Pur & Dir theo hình em gởi luôn (driver & bob của bác giống như của em mà)
Có gì thì phone cho em

----------

thucongmynghe79

----------


## thucongmynghe79

tình hình bây giờ em phải kiểm con nguồn 24 để nuôi BOB,hiện tại em lấy nguồn 12v từ máy tính ra để nuôi,có bác bảo phải cấp nguồn +5vdc cho BOB,hay cho Driver, nếu là driver thì em lấy nguồn từ BOB như hướng dẩn cấp lên cho Driver,còn em loại trừ Driver  có vấn đề, em đã đấu thử đổi qua các step vẩn chạy nhưng chỉ 1 chiều...để mua toàn dây mới chống nhiểu cẩn thận đấu nối lại xem sao..

----------


## thucongmynghe79

thông thường các bác set gia tốc, vận tốc, xung, trong m3 để test thử phần điện như thế nào cho em xin cái thông số.em đang sài step 2phase size 60 của SYN 
Dc  3A, 1.8/ sao ko thấy số vol nhỉ

----------


## thucongmynghe79

Đấu đủ kiểu bài bản từ cơ bản đến nâng cao, hôm qua còn chạy hai trục XZ một chiều, hôm nay mua dây, domino,hàn chì cẩn thận đấu lại cho đàng hoàng thế mà 3 thằng nó dở chứng cả đám , chít thật. giờ chỉ còn chưa cài winxp lại thôi,không lẽ cái LTP này cũng bị lỗi sao?chả hiểu thế nào cả, ko có bác nào giúp em sao?hic

----------

cnc300

----------


## linhdt1121

chit thật,bây h bác kiểm tra từng phần cho chắc.
đầu tiên bác kiếm cái phần mềm test LPT xem các cổng thế nào,nếu ok bác test bob,bằng con led cũng đc,nếu ok thì mình tính tiếp
mà cái dây trong hình đâu phải chống nhiễu hả bác.
e cũng bị như thế này chuyển luôn qua USB cho nó nhanh  :Smile:

----------


## thucongmynghe79

dây chống nhiểu đấy bác, loại chuyên dụng cho tủ điều khiển ấy, 0.50 dapaco ,driver nhận được nguồn sờ tay ấm ấm,BOB đèn đóm đầy đủ, bác Toại nói khó out lắm trừ khi đấu lộn nguồn trên 24v,hix em nghi cái cổng LTP máy tính cùi của em quá

----------


## diy1102

Bob 3t k pải cấp nguồn 5v ạ.
Trong motor outputs ảnh bỏ dirlowactive đi xem có đc k? A để tốc độ lên 2000, gia tốc khoảng 200 xem.

----------


## thucongmynghe79

mình đâu có cấp nguồn 5v cho BOB đâu, lấy nguồn +5v cấp lại cho Driver chứ,còn driver thì lấy nguồn 48 từ bộ nguồn riêng, 6 sợi dây đen nối từ jack nhiều màu là pules và dir x ,y z đấu vào BOB, đã đổi qua lại chổ này vẩn ko tiến triển

----------


## diy1102

Thử đảo một cặp dây của step xem sao?

----------


## ít nói

Pác test cái driver đó có êm ko

----------


## thucongmynghe79

được rồi các bác ơi,test thử trục x đã ok ..ha ka. để xem ....

----------


## diy1102

Đề nghị báo báo cáo cách làm ạ.

----------


## thucongmynghe79

thôi rồi, em đã tìm ra được lỗi lầm,cha Quảng đưa cái sơ đồ chân xung và Dir củ chuối chit mồ, báo hại hai đêm mất ngủ,bởi lần đầu tiên đấu ba cái vụ này sợ teo cái Driver nên nhát,giờ hết cách làm liều đổi chân xung, cộng với setup theo bác DIY1102 thế là chạy ke ke...con nguồn em cấp cho BOB mua 90k ra 24dc 2A ko biết có tốt ko các bác

----------


## thucongmynghe79

> Pác test cái driver đó có êm ko


Driver hơi ấm tay chút bác à, ko kêu ca phàn nàn gì, ko biết sau này cho vào tủ nó có vấn đề ko?

----------


## diy1102

> thôi rồi, em đã tìm ra được lỗi lầm,cha Quảng đưa cái sơ đồ chân xung và Dir củ chuối chit mồ, báo hại hai đêm mất ngủ,bởi lần đầu tiên đấu ba cái vụ này sợ teo cái Driver nên nhát,giờ hết cách làm liều đổi chân xung, cộng với setup theo bác DIY1102 thế là chạy ke ke...con nguồn em cấp cho BOB mua 90k ra 24dc 2A ko biết có tốt ko các bác


Hix em bảo k cháy rồi mà. Nguồn 2a chác ok. Nhưng bác đang test nguồn 12 hay 24 cho bob vậy?
Mà bác đảo cặp dây step hay cài trong mach.

----------


## thucongmynghe79

mình kết hợp cả hai,nhưng hình như là do đảo dây xung và Dir thì phải, thông thường mình cho cả ba step chạy theo một chiều + hết phải ko,chú có cái file nào để tets ko cho mình xin nhé,
chú DIY1102 cho xin file cài đặt thông số xung hay thiết lập chuẩn như thế nào để mình test thử nhé

----------


## thucongmynghe79

mình phải làm một bài riêng về em này mới được,các bác nhỉ?rối tung phèo lên..hic, cuối cùng đã chạy ok, thank các bác đã giúp đở hôm giờ

----------

ducduy9104, katerman

----------


## Mãi Chờ

> các cao thủ hướng dẩn em đấu nối em Driver IM 483 đã có bo đệm ,đã có hướng dẩn tháo rời từng driver đấu riêng nhưng em mù điện tử hok dám tháo ra ..hic..  mua của bác Quảng mà giờ bác ý lên đường đi Hàn rồi ,,,em nó như thế này 
> Đính kèm 3471Đính kèm 3472


em mang về cắm cái an ngay từ trái sang phải bỏ 6 dây > pulse1 và dir 1 > bỏ 2 dây > p/d 2 > bỏ 2 dây > P/D 3  nguồn cấp đủ 5V+ trên pin 3 & 8 , GND trên pin 2&4
 24-48+ trên pin 9 &GND 6
chỉ thắc mắc mạch này có chế độ giảm dòng khi không chạy hay ko???

----------

anhcos

----------


## Mãi Chờ

un check lowactive nhé

----------


## Mãi Chờ

hô hô phát hiện mới là lowactive hay highactive đều được

----------


## thucongmynghe79

hôm giờ em tets miết, có lỗi lầm gì đâu, có điều ko tải nên chưa dám phán.

----------

Boyred2000, Mãi Chờ

----------


## Boyred2000

Đang gặp trường hợp bệnh y như của Bác. Nhờ Bác chỉ giúp bệnh nằm ở đâu dc ko.

----------


## anhcos

> em mang về cắm cái an ngay từ trái sang phải bỏ 6 dây > pulse1 và dir 1 > bỏ 2 dây > p/d 2 > bỏ 2 dây > P/D 3  nguồn cấp đủ 5V+ trên pin 3 & 8 , GND trên pin 2&4
>  24-48+ trên pin 9 &GND 6
> chỉ thắc mắc mạch này có chế độ giảm dòng khi không chạy hay ko???


Bác có tài liệu về em này không? Tìm trên mạng hoài không thấy ...

----------


## katerman

> Bác có tài liệu về em này không? Tìm trên mạng hoài không thấy ...


Của bác đây: http://circuitslab.case.edu/manuals/...ping_Drive.pdf

----------

anhcos

----------


## thuhanoi

IM483 đây nè: http://www.wallawalla.edu/academics/...pers/IM483.pdf

----------

anhcos

----------


## anhcos

Tks mấy bác, cái driver riêng thì không nói, nhưng nó là một mạch tích hợp 3 cái driver, mình muốn biết chi tiết về cách chỉnh dòng, step/dir trên cái bo chính ấy luôn.

----------


## thuhanoi

Bác tìm bài driver Mỹ giá việt nam cuả bác quangnguyen89ck có đó bác

----------

anhcos

----------


## katerman

Em đang gặp vấn đề với driver này, đã cấp nguồn 48v, truc XY em ghép với step Vexta size 86, 3A. Tuning V = 2000,  vẫn còn tình trạng mất bước, bác nào dùng rồi xin chỉ giáo cho em với. Thanks

----------


## thuhanoi

> Em đang gặp vấn đề với driver này, đã cấp nguồn 48v, truc XY em ghép với step Vexta size 86, 3A. Tuning V = 2000,  vẫn còn tình trạng mất bước, bác nào dùng rồi xin chỉ giáo cho em với. Thanks


Bác tính thử với tốc độ đó trục motor chạy bao nhiêu vòng / phút bác.? quan trọng là động cơ chạy bao nhiêu vòng / phút thôi chứ m/p phụ thuộc vít me

----------

katerman

----------


## katerman

> Bác tính thử với tốc độ đó trục motor chạy bao nhiêu vòng / phút bác.? quan trọng là động cơ chạy bao nhiêu vòng / phút thôi chứ m/p phụ thuộc vít me


tính tốc độ step bằng cách nào vậy bác ơi, tháo ra cho quay không rồi bấm giờ hả bác. híc em mới chạy thử lại được 1 lúc trục X mất bước mấy lần.
Em có nghe 1 người nói: driver Mỹ không hợp step Vexta, có bác nào kiểm chứng chưa ạ.

----------


## thuhanoi

Bác chạy vi bước bao nhiêu vậy, vitme bước mấy, và bác nối trực tiếp động cơ với vít me hay qua bộ bánh rang. Nếu có bánh rang thì cái bị động (gắn vít me) cái chủ động (gắn động cơ) có số rang bao nhiêu, em xem thử nhé

----------


## katerman

Vâng, em để vi bước 1/16cho trục XY, vitme bước 10, riêng trục Z em để 1/32, vitme bước 5, nối trực tiếp với step hết ạ. Bác xem giúp em với, em định kiếm con step khác thay vào xem sao.
em cảm ơn trước.

----------


## thuhanoi

Vít me bước 5 ---> tốc độ step là 2000/5 = 400 vòng / phút ---> cái này có thể mất bước do lúc đó momen động cơ giảm 
ViVít me bước 10 tốc độ động cơ tại 2000mm/min là 200 vòng/phút --> tại đây là ok không thể mất bước được bác xem lại có thể bác sét Ampere thấp quá không tương ứng với động cơ. Bác tiếp tục kiểm tra thử nhé, loại IM483 này có chỗ câu cái điện trở để sét dòng đó.
Bác tham khảo cái này:
http://forum.cncprovn.com/threads/18...Viet-Nam/page2 tại #31

----------

katerman

----------


## katerman

Trục Z vítme bước 5 lại ok bác à, em mới phát hiện trục X bị mất, trục Y chưa thấy, trục Z stepsyn 57 3A, trục Y Vexta 86 3A, trục X Vexta 86 2A, em để nguyên chưa chỉnh dòng từ driver. trong mach3 em mới hạ V xuống 1500 cho 2 trục XY, vẫn bị mất bước ạ.

----------


## thuhanoi

Bác đổi động cơ X-Y xem thử

----------

katerman

----------


## katerman

:Smile:  vậy mà em nghĩ không ra. thanks bác

----------


## kametoco

e có bộ combo driver IM483 giống bác Thucongmynghe79 định nối với cái card NC studio v5 thì có nối được như bob mach3 không các bác

----------


## Luyến

bác đấu driver IM483 với card NC theo sơ đồ này nhé.

Step Clock  P1-2 >>axit pul (2,3,4)
direction     P1-3 >>axit dir (9,10,11)
Opto supply P1-4 >>+5v (15 )

----------

kametoco

----------


## kametoco

chỉ nối 3 dây từ card đến driver như z phải không a Luyến

----------


## kametoco

đã có bác nào nối thành công driver IM483 với card NCstudio chưa chỉ giáo cho e với, e nối thì bị tèo cái card NC

----------


## CKD

Bác nối bị tèo nghi là do chập chạm hoặc đấu lộn vào đâu đó... chứ không thể làm cháy card nếu đấu đúng

----------


## kametoco

e nối 3 dây từ card ra driver theo như a Luyến hướng dẫn, từ IM483 e nối 4 dây từ P2:5 -> P2:8 ra 4 dây step, P2:3 P2:4 vô nguồn 24V, không biết là e đấu lộn chổ nào nữa

----------


## thuhanoi

Mình thì chưa xài loại này nhưng bác xem lại chỗ tín hiieuj vào trên bo IM thử

----------

kametoco

----------


## kametoco

z là e xác định sai chân input, e thì nối vào 3 chân khoanh đỏ này

----------


## kametoco

e đã nối theo cách của bác Thuhanoi và đã thành công, cảm ơn bác Thuhanoi nhiều

----------


## kametoco

nối điện trở để chỉnh dòng cho driver theo cách của bác Mạnh_Tường là đúng hay nối theo hướng dẫn trong tài liệu vậy các bác, cách bác Mạnh_Tường là cắt rồi nối tiếp, còn tài liệu như là nối song song?
http://forum.cncprovn.com/threads/18...Viet-Nam/page2

----------


## thuhanoi

Có nhiều model IM driver nên theo kiểu nào là tuỳ driver. Hình phía dưới cùng là driver đã cố định dòng (A) - 2 điện trở ấy đã tích hợp lên bo mạch rồi nên phải sửa lại như vậy

----------

kametoco

----------


## mig21

BÁC nào có file config cái board này dành cho mach3 cho e xin với, vitme e X bước 10, Y bước 10, Z bước 5. Chân thành cảm ơn

----------


## Mạnh Tường

> BÁC nào có file config cái board này dành cho mach3 cho e xin với, vitme e X bước 10, Y bước 10, Z bước 5. Chân thành cảm ơn


Em cũng đang dùng driver này dùng cho Motor size 56 3A : vitme X , Y bước 5 , Z bước 2 . Thông số tối đa chạy không tải không bị mất bước như sau :

X & Y : Steps : 400 - Velocity : 6000 - Acceleration : 500 - Step Pulse : 5

----------

mig21, nhatson

----------


## mig21

> Driver & BOB của bác giống như mình.
> Mai mình gởi cho bác mấy hình đấu nối & thông số trong Mach3


bác còn sơ đồ đấu nối dây với thông số mach3 cho e xin với

----------


## mig21

> Em cũng đang dùng driver này dùng cho Motor size 56 3A : vitme X , Y bước 5 , Z bước 2 . Thông số tối đa chạy không tải không bị mất bước như sau :
> 
> X & Y : Steps : 400 - Velocity : 6000 - Acceleration : 500 - Step Pulse : 5


bác mạnh tường còn file config mach3 cho e xin với, điền đủ kiểu mà vẫn chưa nhúc nhíc hic

----------


## Mạnh Tường

> bác mạnh tường còn file config mach3 cho e xin với, điền đủ kiểu mà vẫn chưa nhúc nhíc hic


Có phải file này không : Mach3Mill.xml
gửi bác tham khảo

----------


## mig21

> Có phải file này không : Mach3Mill.xml
> gửi bác tham khảo


đúng file này rồi bác, e mò cả ngày hôm nay cuối cùng cũng làm e nó nhúc nhích rồi, giờ đang chỉnh lại thông số cho phù hợp với vitme

----------


## Mai Minh Hoàng

Cho em hỏi nối vào arduino thì nối chân nào ạ nghe bảo 234 gì đó.
Trước em demo con L298N vào arduino thì cần 4 sợi, giờ muốn demo trên IM483 mà chưa biết làm sao
Nếu được bác nào cho em cái code demo luôn. Tks ạ

----------


## minhdt_cdt10

> Cho em hỏi nối vào arduino thì nối chân nào ạ nghe bảo 234 gì đó.
> Trước em demo con L298N vào arduino thì cần 4 sợi, giờ muốn demo trên IM483 mà chưa biết làm sao
> Nếu được bác nào cho em cái code demo luôn. Tks ạ


trên connection P1 bác dùng 3 chân: 
chân số 2 bác cấp xung cho motor quay
chân số 3 bác cấp tín hiệu 1 hoặc 0 cho motor đảo chiều.
chân số 4 bác cấp 5V từ Arduino.

Bác có thể dùng thử code blink led để test motor quay cũng được ạ. Đối với code Blink led thì bác cắm chân số 2 vào chân số 13 của arduino và chân số 4 vào 5V của arduino nha bác.:-)

----------


## Mai Minh Hoàng

> trên connection P1 bác dùng 3 chân: 
> chân số 2 bác cấp xung cho motor quay
> chân số 3 bác cấp tín hiệu 1 hoặc 0 cho motor đảo chiều.
> chân số 4 bác cấp 5V từ Arduino.
> 
> Bác có thể dùng thử code blink led để test motor quay cũng được ạ. Đối với code Blink led thì bác cắm chân số 2 vào chân số 13 của arduino và chân số 4 vào 5V của arduino nha bác.:-)


Mình test chạy rồi, code của anh Tây nhưng chỉ nhanh lắm thì được 1 step/1milisecond =>  1 giây được có 1000 steps (2.5 vòng/s) chậm thế, sét xuống dưới 1milisecond thì đơ.
Nguồn 24v-20A mua của tiệm bảng hiệu LED.
Code ông Tây như này: (25miliseconds/step)


```
// testing a stepper motor with a Pololu A4988 driver board or equivalent
// on an Uno the onboard led will flash with each step
// this version uses delay() to manage timing

byte directionPin = 9;
byte stepPin = 8;
int numberOfSteps = 100;
byte ledPin = 13;
int pulseWidthMicros = 20;  // microseconds
int millisbetweenSteps = 25; // milliseconds


void setup() { 

  Serial.begin(9600);
  Serial.println("Starting StepperTest");
  digitalWrite(ledPin, LOW);
  
  delay(2000);

  pinMode(directionPin, OUTPUT);
  pinMode(stepPin, OUTPUT);
  pinMode(ledPin, OUTPUT);
  
 
  digitalWrite(directionPin, HIGH);
  for(int n = 0; n < numberOfSteps; n++) {
    digitalWrite(stepPin, HIGH);
    delayMicroseconds(pulseWidthMicros); // this line is probably unnecessary
    digitalWrite(stepPin, LOW);
    
    delay(millisbetweenSteps);
    
    digitalWrite(ledPin, !digitalRead(ledPin));
  }
  
  delay(3000);
  

  digitalWrite(directionPin, LOW);
  for(int n = 0; n < numberOfSteps; n++) {
    digitalWrite(stepPin, HIGH);
    // delayMicroseconds(pulseWidthMicros); // probably not needed
    digitalWrite(stepPin, LOW);
    
    delay(millisbetweenSteps);
    
    digitalWrite(ledPin, !digitalRead(ledPin));
  }
}

void loop() { 
}
```

----------


## Mai Minh Hoàng

Code này chứ nhầm:


```
// testing a stepper motor with a Pololu A4988 driver board or equivalent

// this version uses millis() to manage timing rather than delay()
// and the movement is determined by a pair of momentary push switches
// press one and it turns CW, press the other and it turns CCW

byte directionPin = 9;
byte stepPin = 8;

byte buttonCWpin = 10;
byte buttonCCWpin = 11;

boolean buttonCWpressed = false;
boolean buttonCCWpressed = false;

byte ledPin = 13;

unsigned long curMillis;
unsigned long prevStepMillis = 0;
unsigned long millisBetweenSteps = 25; // milliseconds

void setup() { 

  Serial.begin(9600);
  Serial.println("Starting Stepper Demo with millis()");

  pinMode(directionPin, OUTPUT);
  pinMode(stepPin, OUTPUT);
  pinMode(ledPin, OUTPUT);
  
  pinMode(buttonCWpin, INPUT_PULLUP);
  pinMode(buttonCCWpin, INPUT_PULLUP);
  
}

void loop() { 
	
	curMillis = millis();
	readButtons();
	actOnButtons();
	
}

void readButtons() {
	
	buttonCCWpressed = false;
	buttonCWpressed = false;
	
	if (digitalRead(buttonCWpin) == LOW) {
		buttonCWpressed = true;
	}
	if (digitalRead(buttonCCWpin) == LOW) {
		buttonCCWpressed = true;
	}
}

void actOnButtons() {
	if (buttonCWpressed == true) {
		digitalWrite(directionPin, LOW);
		singleStep();
	}
	if (buttonCCWpressed == true) {
		digitalWrite(directionPin, HIGH);
		singleStep();
	}
}

void singleStep() {
	if (curMillis - prevStepMillis >= millisBetweenSteps) {
		prevStepMillis += millisBetweenSteps;
		digitalWrite(stepPin, HIGH);
		digitalWrite(stepPin, LOW);
	}
}
```

----------

