AUTO.NLU
For more details and questions, contact me: thanhtam.h@gmail.com
BT ĐẦU LÀM QUEN VI VI ĐIU KHIN
Bn đang có ý định tìm hiu v vi điu khin để t mình to nhng ng dng nho nh, tôi nghĩ tài
liu này th giúp bn!
Vi điu khin thì rt nhiu loi, nhiu kích c, nhiu mc giátài liu này ch gii thiu
cho bn mt loi vi điu khin thuc vào dng “ph thông” nht, vi điu khin AT89C51 ca
Atmel.
Tôi cũng không ý định gii thiu cu trúc ca vi điu khin này mà ch giúp bn biết bn nên bt
đầu như thế nào, tôi s hướng dn tng bước mc đích ca tài liu giúp nhng bn “chưa biết
gì”. Bn th m theo nhng hướng dn y trước ri sao đó tìm hiu chi tiết v
AT89C51 sau hay
ngược li đều được .
Có th hiu đơn gin vi điu khin là nhng vi mch đin t tích hp (chip) mà bn có th lp
trình để thc hin nhng nhim v mà bn mong mun. Khác vi vi x lí, c vi điu khin ngoài
chc năng x lí d liu, thut toán…còn được tích hp các b chc năng đặc bit khác, các vi đi
u
khin các ngõ vào/ra để nhn xut d liu, các b timer x thi gian, các b trao đổi d liu
theo mt s chun giao tiếp, thm chí mt s loi vi điu khin còn có c b chuyn đổi AD, b đi
u
khin động cơnói chung chúng ta có th làm được rt nhiu vic vi vi điu khin!
y gi chúng ta bt đầu vi vi điu khin AT89C51.
Trình biên dich (Compiler)
8051IDE (ASM files )
Keil (C files)
Bascom (Basic files)
...
1
Intel Hex files Programer (EZ) Mach nap
Chip
Hình 1
Trước hết bn hãy xem xét k hình 1 và chúng ta tìm hiu mt s khái nim:
COMPILER: Chương trình cho vi điu khin được chúng ta lp trình bng mt phn mm trên máy
tính, sau đó chúng ta s dng chính phn mm này để biên dch chương trình ca chúng ta thành
các
định dng mà có th đổ vào vi điu khin như các file phn m rng .hex hay .bin. Phn mm nói
AUTO.NLU
For more details and questions, contact me: thanhtam.h@gmail.com
trên gi Compiler (trình biên dch). Có rt nhiu Compiler được dùng để lp trình cho vi đi
u khin
AT89C51, thông thường mi trình biên dch cho phép bn lp trình bng mt loi ngôn ng lp trình
nht định, bao gm ngôn ng Assembly, C, Pascal hay Basic. Trong các loi ngôn ng lp trình k
trên. Assembly ngôn ng cơ bn nht cho vi điu khin (tt nhiên assembly cho vi điu khin s
khác assembly cho máy tính), để lp trình được bng assembly đòi hi bn phi hiu cu trúc ca
vi
điu khin, vì vy lp trình bng ngôn ng y khó khăn đôi chút, tuy nhiên i khuyên bn nên
tìm hiu tht k cu trúc vi điu khin s dng ngôn ng này có như vy bn mi tht s khám
phá được nhng điu thú v ca vi điu khin, ưu đim ca lp trình bng assembly là chươ
ng trình
ca chúng ta sau khi biên dch s rt nh gn, tiết kim được b nh cho vi điu khin. Bn th
s
dng chương trình 8051IDE hoc Keil để lp trình bng ngôn ng assembly (bn s tìm thy
các
phn mm này trong thư mc Compiler tôi gi kèm). Sau khi bn đã hiu tường tn v vi đi
khin bt đầu xây dng nhng ng dng phc tp bn th s dng các ngôn ng lp trình cp
cao như C (phn mm Keil) hay Basic (Phn mm Bascom)…
d bn lp trình bng 8051IDE, bn s lưu chương trình bn vi tên INTERRUPT.asm trong đó
phn m rng .asm phn m rng ca các file assembly. Nếu bn lp trình bng Keil chươ
ng trình
ca bn s có n INTERRUPT.c còn lp trình bng Bascom t INTERRUPT.bas. Tt
các
các file nói trên đều không th đổ trc tiếp vào vi điu khin mà chúng phi được biên dch thành
c
file hex hay bin, d INTERRUPT.hex, INTERRUPT.bin. Các file này là các file tiêu chun
th được dùng để đổ vào chip.
Tóm li vi mt Compiler chúng ta th lp trình biên dch chương trình thành các
file
hex hay bin, đây là bước chun b đầu tiên.
Bn có th tìm thy các Compiler tôi đề cp trên trong thư mc Compiler tôi gi kèm, nhưng
chú ý các chương trình này ch bn Demo hay evaluation nên s mt s gii hn nh
t
định.
Hình 1.1 mt trình biên tp và biên dch, Keil
AUTO.NLU
For more details and questions, contact me: thanhtam.h@gmail.com
PROGRAMER : Sauk hi đã file hex cái tiếp theo chúng ta cn là 1 chương trình (gi l
à
Programer) đổ file hex ca bn lên chip thông qua mt mch np, tu theo loi mch np mà chương
trình np cũng khác nhau. (có nhng trình biên dch tích hp c trình np). đây tôi gii thiu
cho
bn mt chương trình np “ai cũng biết” đó là EZ V4.1. Chương trình np chc năng đổ
file hex
vào chip ca bn.
Hình 1.2 Phn mm np EZ V4.1
MCH NP: Bn cũng cn mt mch đin gi mch np để np chương trình vào chip, tt nhiên
có nhiu loi mch np khác nhau cho chip AT89C51. đây tôi gii thiu bn mch Easy
Download
V2.2 (Thailand), mch này dùng vi phn mm np EZ V4.1 tôi gii thiu trên.
th nói mch np vn đề khó khăn nht cho nhng ngưòi mi tìm hiu AT89C51, sau đây
chúng ta s bt đầu đi làm mch np:
- Trước hết bn hãy xem xét các mch nguyên lý và mch in :
Hình 2 : Sơ đồ nguyên mch np
AUTO.NLU
For more details and questions, contact me: thanhtam.h@gmail.com
Hình 3 : Toàn b mch in (v bng Protel)
Hình 4: Mch in
AUTO.NLU
For more details and questions, contact me: thanhtam.h@gmail.com
Hình 5: Mch đã được chế to
Bước 1 làm mch in: 2 cách để làm mch in cho mch np. Cách th nht bn t chế to
(gi s bn biết làm mch in) t hình 4 cách th hai, cách bn nên làm, bn hãy đến c
a
làm làm mch KIM SƠN mua ly mt bn mch in đã được chế to sn, nhìn chung không đắt
lm, khong 10K/ mch.
Bước 2 mua linh kin: bn in mch hình 2 để tham kho (hoc xem hình 3 cũng được), ra ch
nht to mua ly tt c các linh kin trong mch, nh mua c dây cab kết ni vi máy tính na
(tt c khong hơn 100K đấy), nếu ln đầu tiênđi ch bn nên đi theo 1 người đã biết thì
hay hơn ! Nếu như bn không biết phi mua thế nào tôi s ch bn sau.
Bước 3 hàn mch: sau khi đủ mch in, linh kin c dng c m mch bn hãy hàn mch
da theo hình 4.
Bước 4 s dng mch: nói bước s dng mch nhưng thc tế bn chưa s dng mch đư
c
đâu, do bn hãy để trên mch nguyên có 1 chip 89C51 MASTER, chip này nm c định
trên mch np để điu khin quá trình np, như vy bn thân phi cha mt chươ
ng trình
gi mt Firmware. Như vy bn phi nh mt mch khác để np firmware vào
chip Master
ca bn, firmware cho chip này tôi cũng gi kèm theo vi tên ez52.hex
Sau khi đã có mch np, bn có th test mch bng ch kết ni mch ca bn vi cng
COM
ca máy nh thông qua cab ni (tt nhiên đã cp ngun cho mch, ngun nên ln hơn
15V) , bn hãy m phn mm EZ V4.1 n, nếu bn thy các nútsend”,read” sáng
cho
phép bn click vào thì mch bn làm đã thành công, nếu như thế bn hãy tiếp tc nhn vào nút
send”, bn tìm đến file “DELAY500.hex tôi đính kèm, bn s thy q trình np file vào
chip din ra, XIN CHÚC MNG.