
PH N IIIẦ
Vi đi u khi n H8/3069Fề ể
1. Gi i thi u chung v vi đi u khi n (micro controller)ớ ệ ề ề ể
Tr c khi nói v vi đi u khi n, chúng ta s xem xét l i th nào là máyướ ề ề ể ẽ ạ ế
tính:
Máy tính nói chung là thi t b dùng đ x lý, thu nh n, l u tr vàế ị ể ử ậ ư ữ
truy n t i d li u.ề ả ữ ệ
D li u có th là các ký t trong m t văn b n, hình nh, âm thanh…ữ ệ ể ự ộ ả ả
hay cũng có th là các tr ng thái c a m t thi t b đi n t nh nhi t đ tể ạ ủ ộ ế ị ệ ử ư ệ ộ ủ
l nh, tr ng thái c a n i c m đi n… Nh ng dù d li u có là đ i l ng gìạ ạ ủ ồ ơ ệ ư ữ ệ ạ ượ
đi n a thì t t c chúng đ u đ c l u tr trong máy tính d i d ng cácữ ấ ả ề ượ ư ữ ướ ạ
dãy s 0 và 1.ố
M t máy tính nói chung đ c c u t o b i các thành ph n nh d i đây:ộ ượ ấ ạ ở ầ ư ướ
B x lý (Processor): Ch u trách nhi m đi u khi n t t c ho t đ ngộ ử ị ệ ề ể ấ ả ạ ộ
c a h th ng nh x lý s li u, đóng ng t các c ng…ủ ệ ố ư ử ố ệ ắ ổ
B nh ch ng trình (Program memory): L u tr các m nh l nh độ ớ ươ ư ữ ệ ệ ể
CPU có th bi t ph i làm gì.ể ế ả
B nh d li u (Data memory): Ch a các d li u t m th i trong quáộ ớ ữ ệ ứ ữ ệ ạ ờ
trình ho t đ ng.ạ ộ
Các c ng vào ra (I/O interface): Là n i đ máy tính có th giao ti pổ ơ ể ể ế
v i th gi i bên ngoài.ớ ế ớ
Th gi i máy tính có r t nhi u lo i, nh ng chúng ta có th nh n bi t 2ế ớ ấ ề ạ ư ể ậ ế
lo i l n.ạ ớ
Collection by Nguyen Van Kien Canon Viet Nam Co.,Ltd
Processor
(Pentium IV)
Program
Memory
(ROM, HDD)
Data
Memory
(RAM)
I/O interface
(USB port, COM
port)
1

Máy tính đ bàn: Đây là cái đ u tiên xu t hi n trong đ u khi b n ngheể ầ ấ ệ ầ ạ
nói đ n t máy tính. Nh ng th c t thì lo i này ch chi m m t phànế ừ ư ự ế ạ ỉ ế ộ
nh trong th gi i máy tính.ỏ ế ớ
Lo i th 2 là máy tính nhúng (embedded computer) – là nh ng máyạ ứ ữ
tính đ c tích h p vào trong các thi t b khác đ đ m nhi m vi cượ ợ ế ị ể ả ệ ệ
đi u khi n, đo l ng… S l ng máy tính nhúng này l n h n r tề ể ườ ố ượ ớ ơ ấ
nhi u so v i máy tính đ bàn, nh ng l i ít đ c bi t đ n h n.ề ớ ể ư ạ ượ ế ế ơ
Do máy tính nhúng đ c tích h p vào m t s n ph m, và đ làm m tượ ợ ộ ả ẩ ể ộ
tác v nh t đ nh, nên không c n ph i m nh. Nó c n ph i có giá r nh tụ ấ ị ầ ả ạ ầ ả ẻ ấ
có th .ể
Thông th ng, đ gi m giá thành, máy tính nhúng đ c tích h p t t cườ ể ả ượ ợ ấ ả
các b ph n (CPU, RAM, ROM…) trong m t con chip. Th lo i máy tínhộ ậ ộ ể ạ
này th ng đ c g i d i m t tên khác là vi đi u khi n (microườ ượ ọ ướ ộ ề ể
controller).
Thông th ng, đ phát tri n ng d ng cho vi đi u khi n, ng i ta s vi tườ ể ể ứ ụ ề ể ườ ẽ ế
ch ng trình trên máy tính PC (dùng ngôn ng C ch ng h n). Sau đó, sươ ữ ẳ ạ ử
Collection by Nguyen Van Kien Canon Viet Nam Co.,Ltd
Máy tính đ bàn, th mà b n nghĩ đ n ể ứ ạ ế
khi nghe t “máy tính”ừEmbedded computer: S l ng nhi u ố ượ ề
nh ng ít đ c bi t.ư ượ ế
All in one IC
2

d ng ch ng trình d ch đ d ch ra mã máy mà vđk có th hi u đ c. Cácụ ươ ị ể ị ể ể ượ
mã máy đó s đ c ghi vào vđk và đ c vđk th c hi n.ẽ ượ ượ ự ệ
2. Khái quát v vi đi u khi n H8/3069Fề ề ể
Vi đi u khi n H8/3069F là m t vđk thu c h H8/300H c a hãngề ể ộ ộ ọ ủ
Renesas.
H CPU H8/300H có c u trúc trong 32 bit, bao g m 16 thanh ghi chungọ ấ ồ
16 bit. Các thanh ghi này có th đ c chia ra thành các thanh ghi 8 bit ho cể ượ ặ
k t h p l i thành thanh ghi 32 bit. ế ợ ạ
H8/300H có t p l nh g m 62 l nh, v i kh năng tình toán toán h c vàậ ệ ồ ệ ớ ả ọ
logic v i 8/16/32 bit cùng v i kh năng thao tác đ n bit (bit manipulation).ớ ớ ả ế
CPU này có th đ nh đ c 16MB đ a ch .ể ị ượ ị ỉ
Sau đây là m t s spec c a vđk H8/3069Fộ ố ủ
-T n s l n nh t: 25MHzầ ố ớ ấ
-Th c hi n các l nh trong 2 ho c 4 chu kỳự ệ ệ ặ
-Có l nh nhân/chia 8/16/32 bit có d u.ệ ấ
-512KB ROM, 16KB RAM
-7 ng t ngoài, 36 ng t trong, 3 level ng tắ ắ ắ
-Có th đinh đ a ch t i 16MB, có th truy xu t b nh ngoài v i 8ể ị ỉ ớ ể ấ ộ ớ ớ
đ ng CS riêng bi t. M i vùng có th truy xu t v i đ r ng 8ườ ệ ỗ ể ấ ớ ộ ộ
ho c 16 bit.ặ
-Có th truy xu t tr c ti p 8MB DRAM.ể ấ ự ế
-3 timer 16 bit, 4 timer 8 bit.
-3 b truy n nh n n i ti p (SCI)ộ ề ậ ố ế
-8 kênh A/D 10 bit
-2 kênh D/A 8 bit
-70 c ng vào/ra và 9 c ng vàoổ ổ
H8/3069F có th ho t đ ng 6 mode khác nhau. Các mode đ c l aể ạ ộ ở ượ ự
ch n d a vào các chân MD0-MD2. Các mode có không gian b nh khácọ ự ộ ớ
nhau.
Collection by Nguyen Van Kien Canon Viet Nam Co.,Ltd
3

3. B ng m ch AKI-H8 3069Fả ạ
Trong khóa h c này, chúng ta s nghiên c u vđk H8/3069F dùng b nọ ẽ ứ ả
m ch AKI-H8 3069F.ạ
B n m ch này bao g m vđk H8/3069F và 2MB DRAM đ c n i v iả ạ ồ ượ ố ớ
chân CS2 c a vđk.ủ
Chúng ta s s d ng b ng m ch này mode 5.ẽ ử ụ ả ạ ở
( đây ta ch gi i thi u s l c v các mode ho t đ ng c a H8/3069F.Ở ỉ ớ ệ ơ ượ ề ạ ộ ủ
Ho t đ ng c a nó s đ c nói rõ h n sau khi các b n hi u bi t c b nạ ộ ủ ẽ ượ ơ ạ ể ế ơ ả
v vđk này)ề
4. L p trình đi u khi n các chân vào/raậ ề ể
Trong ph n này, chúng ta s h c cách làm cho các chân c a vđk thànhầ ẽ ọ ủ
m c logic cao/th p, hay đ c m c logic vào t các chân.ứ ấ ọ ứ ừ
Nh ph n gi i thi u tr c chúng ta th y r ng H8/3069 có 79 chânư ầ ớ ệ ướ ấ ằ
vào/ra. Nh ng m t ph n chúng đã đ c s d ng vào m c đích khác như ộ ầ ượ ử ụ ụ ư
bus đ a ch , ADC… ị ỉ
Cách truy xu t đ n các c ng vào/ra này là g n gi ng nh nhau. Do đó,ấ ế ổ ầ ố ư
chúng ta s l y port P4 lam ví d .ẽ ấ ụ
Các chân vào/ra này đ c truy xu t thông qua các thanh ghi t ng ng.ượ ấ ươ ứ
Các thanh ghi này đ c truy xu t tr c ti p b ng đ a ch c a nó.ượ ấ ự ế ằ ị ỉ ủ
Chúng ta thao tác đ n các chân c a port 4 thông qua các thanh ghi sau:ế ủ
Collection by Nguyen Van Kien Canon Viet Nam Co.,Ltd
4

-P4DDR: Thanh ghi h ng – Đây là 1 thanh ghi có 8 bit, t ng ngướ ươ ứ
v i 8 chân P4_0 -> P4_7 c a Port 4. N u bit là 0 thì chân t ngớ ủ ế ươ
ng dùng đ đ c giá tr vào, và n u là 1 thì dùng đ xu t raứ ể ọ ị ế ể ấ
-P4DR: Thanh ghi d li u – Dùng đ ghi giá tr c n xu t ra hay đ cữ ệ ể ị ầ ấ ọ
giá tr t pin t ng ng vào.ị ừ ươ ứ
-P4PCR: Thanh ghi xác đ nh đi n tr kéo lên c a các chân. N u bitị ệ ở ủ ế
t ng ng là 1, thì chân đó s có 1 đi n tr n i lên d ngươ ứ ở ẽ ệ ở ố ươ
ngu n. N u là 0 thì đi n tr đó s không t n t i.ồ ế ệ ở ẽ ồ ạ
Thông th ng, các thanh ghi nh th này đã đ c đ nh nghĩa tr c, vàườ ư ế ượ ị ướ
ta ch vi c thay đôi thông qua vi c thao tác đ n tên c a nó. Trong tr ngỉ ệ ệ ế ủ ườ
h p c a chúng ta, các thanh ghi này đ c đ nh nghĩa file iodefine.h. ợ ủ ượ ị ở
Các thanh ghi này th ng đ c đ nh nghĩa theo d ng union nên chúngườ ượ ị ạ
ta có th truy xu t đ n nó theo byte ho c bit r t d dàng.ể ấ ế ặ ấ ễ
Ví d đ i v i port 4:ụ ố ớ
union un_p4dr { /* union P4DR */
unsigned char BYTE; /* Byte Access */
struct { /* Bit Access */
unsigned char B7:1; /* Bit 7 */
unsigned char B6:1; /* Bit 6 */
unsigned char B5:1; /* Bit 5 */
unsigned char B4:1; /* Bit 4 */
unsigned char B3:1; /* Bit 3 */
unsigned char B2:1; /* Bit 2 */
unsigned char B1:1; /* Bit 1 */
unsigned char B0:1; /* Bit 0 */
} BIT; /* */
};
#define P4DDR (*(volatile union un_ddr *)0xFEE003) /* P4DDR
Address*/
Câu l nh trên đ nh nghĩa P4DDR là giá tr c a ô nh mà con tr ki uệ ị ị ủ ớ ỏ ể
union un_ddr có giá tr 0xFEE003 tr đ n, hay nói cách khác là giá tr c aị ỏ ế ị ủ
ô nh có đ a ch 0xFEE003.ớ ị ỉ
Ví d : P4DDR.BYTE=0xF0; //Chân 7~4 là chân ra, 3~0 là chân vào.ụ
#define P4DR (*(volatile union un_p4dr *)0xFFFFD3) /* P4DR
Address*/
Collection by Nguyen Van Kien Canon Viet Nam Co.,Ltd
5

