Bộ thực hành lập trình vi điều khiển AVR
Trang 1LỜI MỞ ĐẦU
A Giới thiệu về công ty
Công ty thiết bị Điện – Tự động hóa (TDP - Electric) là một công ty trực thuộctập đoàn Tiến Đại Phát, với đội ngũ nhân viên chuyên viên kỹ thuật có trình độ,sáng tạo, giàu kinh nghiệm và một mạng lưới nhà cung cấp nổi tiếng trên toàn Thếgiới về mọi lĩnh vực TDP – Electric cam kết sẽ mang đến cho khách hàng nhữngsản phẩm và dịch vụ tốt nhất, đáp ứng đầy đủ mọi nhu cầu của khách hàng Đặcbiệt, TDP – E chuyên tư vấn, sản xuất các thiết bị Giáo dục cho các trường Đại học,Cao đẳng, Trung cấp nghề
Sản phẩm của chúng tôi được sử dụng trong trường học nói chung, trong các/trường dạy nghề, các viện nghiên cứu chuyên môn giáo dục và đào tạo đại học
Một phương thức sản xuất hiện đại và có phạm vi lớn với sự kết hợp của hệthống quản lý chất lượng cao theo tiêu chuẩn ISO 9001 : 2008 đảm bảo chất lượngphù hợp kéo dài tuổi thọ của các sản phẩm của chúng tôi
TDP – E đảm bảo rằng sẽ tư vấn giải pháp Công nghệ cho đối tác, tư vấn xâydựng phòng thí nghiệm một cách hợp lý nhất trong các lĩnh vực: Điện CôngNghiệp, Kỹ thuật lắp đặt và Điều khiển công nghiệp, Đo lường Điện, Vận hành máyđiện, Kỹ thuật máy lạnh và điều hòa không khí
B Giới thiệu về module thực hành
Kỹ thuật vi điều khiển với tốc độ phát triển nhanh đã và đang mang đến nhữngthay đổi to lớn trong khoa học và công nghệ cũng như trong đời sống hàng ngày.Ngày nay, các thiết bị máy móc ngày càng trở nên thông minh hơn, các công việcđược thực hiện với hiệu quả cao hơn, đó cũng là nhờ một phần vi điều khiển
Kỹ thuật vi điều khiển là kỹ thuật của tương lai, là chìa khóa đi vào công nghệhiện đại Đối với sinh viên chuyên ngành điện tử, đây là một lĩnh vực hứa hẹn và
mở ra nhiều triển vọng Để góp phần tạo nền tảng ban đầu cho việc học tập, tìmhiểu kỹ thuật vi điều khiển, chúng tôi xin cung cấp một mô hình cơ bản để học tập
Trang 2MỤC LỤC
LỜI MỞ ĐẦU 1
A Giới thiệu về công ty 1
B Giới thiệu về module thực hành 1
MỤC LỤC 2
I TỔNG QUAN VỀ MÔ HÌNH THÍ NGHIỆM 3
1.1 Mục tiêu thực hiện mô hình 3
1.2 Mô hình có thể thực hiện được những bài thực hành sau: 3
1.4 Chức năng các khối trên mô hình thí nghiệm 4
1.5 Lưu ý quy trình thực hiện các bài thực hành 5
II HƯỚNG DẪN SỬ DỤNG PHẦN MỀM 7
2.1 Phần mềm KeilC 7
2.2 Kết nối hệ thống 10
III CÁC BÀI TẬP THỰC HÀNH VỚI MODUL ỨNG DỤNG 12
3.1 Thực hành hiển thị led đơn 12
3.2 Thực hành hiển thị led 7 đoạn 14
3.3 Thực hành hiển thị LCD 16x2 16
3.4 Thực hành hiển thị led matrix 18
3.5 Thực hành nhận biết phím đơn 20
3.6 Thực hành nhận biết phím ma trận 4x4 22
3.7 Thực hành xử lý ngắt ngoài INT 24
3.8 Thực hành với bộ Timer/Counter 26
3.9 Thực hành giao tiếp ADC 28
3.10 Thực hành giao tiếp DAC 30
3.11 Thực hành điều khiển động cơ một chiều 32
3.12 Thực hành điều khiển động cơ bước 34
3.13 Thực hành giao tiếp với RAM 36
3.14 Thực hành giao tiếp với ROM 38
3.15 Thực hành giao tiếp IC thời gian thực DS1307 40
3.16 Thực hành hiển thị GLCD 128x64 42
3.17 Thực hành giao tiếp với máy tính qua cổng COM/RS232 44
TÀI LIỆU THAM KHẢO 46
PHỤ LỤC 47
Trang 3I TỔNG QUAN VỀ MÔ HÌNH THÍ NGHIỆM 1.1 Mục tiêu thực hiện mô hình
Học xong bài học này học viên có năng lực:
- Phân tích được nguyên lý và khả năng làm việc của modul
- Khảo sát được hoạt động của các modul
- Lắp ráp và khảo sát các mạch, mô hình, dây truyền sản xuất thực tế
- Kiểm tra khắc phục được sự cố trong quá trình khảo sát
1.2 Mô hình có thể thực hiện được những bài thực hành sau:
- Bài thực hành số 1: Thực hành hiển thị led đơn
- Bài thực hành số 2: Thực hành hiển thị led 7 đoạn
- Bài thực hành số 3: Thực hành hiển thị LCD 16x2
- Bài thực hành số 4: Thực hành hiển thị led matrix
- Bài thực hành số 5: Thực hành nhận biết phím đơn
- Bài thực hành số 6: Thực hành nhận biết phím matrix 4x4
- Bài thực hành số 7: Thực hành xử lý ngắt ngoài INT
- Bài thực hành số 8: Thực hành với bộ Timer/Counter
- Bài thực hành số 9: Thực hành giao tiếp ADC
- Bài thực hành số 10: Thực hành giao tiếp DAC
- Bài thực hành số 11: Thực hành điều khiển động cơ DC
- Bài thực hành số 12: Thực hành điều khiển động cơ bước
- Bài thực hành số 13: Thực hành giao tiếp với RAM
- Bài thực hành số 14: Thực hành giao tiếp với ROM
- Bài thực hành số 15: Thực hành giao tiếp với IC thời gian thực DS1307
- Bài thực hành số 16: Thực hành hiển thị màn hình GLCD 128x64
- Bài thực hành số 17: Thực hành giao tiếp máy tính qua cổng RS232
Mô hình thí nghiệm bao gồm các khối sau:
Trang 4Tổng quan về mô hình thực hành vi điều khiển.
1.4 Chức năng các khối trên mô hình thí nghiệm
1 LED 7 SEG - Có 4 Led bảy thanh dùng để hiển thị số và ký tự.
- Cọc nối “Scan” quét cột
- Cọc “Data” quét dữ liệu hàng
- Có 2 led matrix 8x8 dùng để hiển thị chữ.
- Có cọc nối dữ liệu và điều khiển.
MATRIX
- Bàn phím 4x4 dùng để giao tiếp bàn phím hexa.
- Có cọc nối dữ liệu
6 RTC DS1307 - Giao tiếp I2C, đọc thời gian thực.
- Có cọc nối điều khiển
NGOÀI
- Thực hiện giao tiếp bộ nhớ Ram ngoài.
- Có cọc nối dữ liệu, địa chỉ và điều khiển.
- Khối tải là động cơ bước.
- Có cọc nối điều khiển.
- Có cọc nối điều khiển.
- Có cọc nối để giao tiếp.
Trang 5- Có cọc nối để giao tiếp.
1.5 Lưu ý quy trình thực hiện các bài thực hành
1.5.1 Quy trình thực hiện
a Cấp nguồn.
Sử dụng nguồn điện 220V AC/DC qua dây nguồn, nếu nguồn cấp đúng, đènLED báo nguồn sẽ sáng, các linh kiện không bị nóng, ngược lại bạn đã cấp khôngđúng nguồn; cần ngắt nguồn ngay lập tức và kiểm tra lại nguồn
b Cắm IC nạp.
IC cần được cắm đúng chiều chân như trên đế Nguồn cấp cho có thế đượccấp hoặc không tùy thuộc vào răm cấp nguồn từ mạch nạp
c Lắp cable dữ liệu.
- Cắm cáp usb của mạch nạp vào máy tính
- Nạp chương trình cho IC Vi Điều Khiển.
d Vận hành.
Mô đun cho phép bạn sử dụng VĐK để ghép nối và điều khiển nhiều board
mở rộng (Được thiết kế tương thích và có khả năng ghép nối với Mô đun này) Quytrình vận hành khối :
- Lắp ghép Board mở rộng vào đúng Slot
- Kiểm tra chế độ làm việc thiết lập cho Vi Điều Khiển.
- Lắp IC vào khay cắm (không cần nếu như sử dụng mạch nạp isp).
- Cấp điện cho Mô đune: Chương trình trong Vi Điều Khiển sẽ tự động
chạy nếu bạn sử dụng Mạch Reset tự động trên board Nếu không sử dụng mạchnày bạn cần nhấn nút Reset để khởi động Vi Điều Khiển Trong trường hợp điệnnguồn đã được cấp từ trước (không khuyến khích cách vận hành này), bạn cầnnhấn nút Reset sau mỗi lần lắp IC (có thể reset ngay trên phân mềm nạp)
1.5.2 Lưu ý
-Ngắt điện khi tháo lắp IC
-Tránh chạm vào chân IC hoặc làm cong, gãy chân IC
-Thiết bị phải được đặt trên mặt phẳng, vững chắc, tránh những va đập cơ học
-Nguồn cấp cho thiết bị là nguồn xoay chiều 1 fa 220V
-Trước khi cấp nguồn, đo kiểm tra nguồn đủ điện áp 220V mới cấp
-Cần có thói quen kiểm tra an toàn trước khi dùng thiết bị (thử rò điện ở vỏ, xemdây dẫn phích cắm có đảm bảo cách điện không…)
-Nếu thấy đường dây bị trầy, phích cắm bị hỏng, bọ hở… phải sửa chữa ngay hoặcthay thế mới
Trang 6-Không sử dụng thiết bị nếu phích cắm, dây điện nguồn hoặc chính thiết bị có dấuhiệu hư hỏng nhìn thấy được hoặc nếu thiết bị đã bị rơi.
-Không thay thế dây chảy cầu chì bằng dây điện
-Thao tác xong phải ngắt nguồn vào thiết bị
Các module thực hành phải được gá đúng chiều, chặt trẽ, thực hành xong phải xếplại ngăn lắp vào trong tủ đựng
-Có kế hoạch vệ sinh, bảo dưỡng cho các thiết bị trong mô hình
II HƯỚNG DẪN SỬ DỤNG PHẦN MỀM
Hiện nay, song song với việc sản xuất chíp Vi điều khiển, các hãng lớn trên thế giới cũng đưa ra thị trường các phần mềm lập trình, biên dịch và mô phỏng chương trình cho Vi điều khiển
2.1 Phần mềm KeilC
Khởi động phần mềm MikroC PRO for Pic: Vào Start >> Programs >>Mikroelektronika >> MikroC PRO for PIC hoặc double click vào shortcut trên mànhình\Desktop
- Sau khi khởi động phần mềm, giao diện sẽ xuất hiện như sau:
Trang 7Ban đầu phần mềm sẽ load một ví dụ có sẵn trong thư mục cài đặt, ta có thể tắtproject này bằng cách click vào Tab menu Project >> Close Project.
- Tạo một project mới cho việc lập trình: Vào lại Tab menu Project >> New Project
Sau khi nhấp chọn để tạo project mới cửa sổ sau sẽ xuất hiện:
Đây là cửa sổ thiết lập các thông số project
+ Ở ô đầu tiên Project Name: các bạn đặt tên cho project của mình (tùy ý), chẳng hạn đặt tên là " Vi du 1"
+ Ở ô Project Folder: chọn đường dẫn để lưu project, để kiểm soát dữ liệu cho công việc các bạn nên tạo một folder mới cho mỗi project
+ Ô Device Name: chọn dòng vi điều khiển, nếu bạn sử dụng ATMEGA 8 để lập trình thì tìm đúng tên của nó là " ATMEGA 8" trong hộp combo box khi ấn nút xổ xuống + Device clock: chọn tần số hoạt động cho vi điều khiển, tần số này chính là tần số thạchanh sử dụng cho vi điều khiển
Trang 8Cuối cùng nhấn Next để chuyển qua bước tiếp theo Khi đó cửa sổ sau xuất hiện:
Trong bước này, các bạn để trong và tiếp tục nhấn Next sẽ đến bước sau:
Trong cửa sổ này, bạn stick vào nút có dòng chữ " Include None (Advaned)" rồinhấn nút Next Trong bước cuối cùng bạn cứ để mặc định và nhấn nút Finish khi đócửa sổ lập trình sẽ xuất hiện, sẵn sàng cho bạn viết code
Bạn có thể viết code của mình vào giữa hai dấu ngoặc { }
Sau đó bạn nhấp vào nút Build hoặc nhấn tổ hợp phím Ctrl + F9 để tạo file hex
Trang 9III CÁC BÀI TẬP THỰC HÀNH VỚI MODUL ỨNG DỤNG
Ghi chú: phần mềm code và file hex được cấp trong đĩa CD đính kèm.
3.1 Thực hành hiển thị led đơn.
a) Sơ đồ nguyên lý
Trang 10RB2
RB4
RB5 RB7
RB0 RB2 RB4 RB6
RC0 RC2 RC4
RC5 RC7
RC0 RC2 RC4 RC6 RD0
RD2 RD4
RD5 RD7
RD0 RD2 RD4 RD6
RE0 RE2
RE0 RE2
RESET S1
GND
104 C3 10KR2
VCC
D1 470
SDO SDO
SCK SCK
CS CS
1 3 5 7 9
10K P9
1 3 5 7 9
10K P5
1 3 5 7 9
6 8 10
PORTC P2
1 3 5
6 8 10
PORTD P7
RAM_OE RAM_ALE RAM_WE
1 3 5
6 8 10
INTERRUP
P16
INT1
1 3 5
6 8 10
6 8 10
UART
P8
TX
1 3 5
6 8 10
CONTROL RAM P12
1 3 5
6 8 10
I2C
P3
SCL SDA
1N4001 D2
5V
11.0592Mhz Y1
22p C4
GND
22p C5
VCC
GND
MODULE MCU AVR
PB0 (XCK/T0) 1 PB1 (T1) 2 PB2 (AIN0/INT2) 3
PB3 (AIN1/OC0) 4 PB4 (SS) 5 PB5 (MOSI) 6 PB6 (MISO) 7 PB7 (SCK) 8
RESET 9
PD0 (RXD) 14 PD1 (TXD) 15 PD2 (INT0) 16 PD3 (INT1) 17 PD4 (OC1B) 18 PD5 (OC1A) 19 PD6 (ICP) 20 PD7 (OC2) 21
XTAL2 12 XTAL1
PC0 (SCL) 22PC1 (SDA) 23PC2 (TCK) 24PC3 (TMS) 25PC4 (TDO) 26PC5 (TDI) 27PC6 (TOSC1) 28PC7 (TOSC2) 29
AREF 32AVCC 30GND 31
PA7 (ADC7) 33PA6 (ADC6) 34PA5 (ADC5) 35PA4 (ADC4) 36PA3 (ADC3) 37PA2 (ADC2) 38PA1 (ADC1) 39PA0 (ADC0) 40
VCC 10
U1
ATmega16-16PC
RA0 RA2 RA4 RA6
RB0 RB2 RB4 RB6
RC0 RC2 RC4 RC6
RD0 RD2 RD4 RD6
SCL SDA RX
INT0
SDI SDO SCK CS INT2
INT2
T0
RAM_OE RAM_ALE RAM_WE
GND
VCC MOSI
LED12
470R R38
LED14
470R R40
LED16
470R R42
LED18
470R R44
LED20
470R R46
LED22
470R R48
LED24
470R R50
470R R37
LED13 D_LED10
470R R39
LED15 D_LED11
470R R41
LED17 D_LED12
470R R43
LED19 D_LED13
470R R45
LED21 D_LED14
470R R47
LED23 D_LED15
470R R49
LED25 D_LED16
470R R51
Trang 11b) Nguyên lý hoạt động
Mạch gồm 16 led đơn, các led nối chung đường nguồn Vi điều khiển thực hiện xuất dữ liệu vào các chân led điều khiển led sáng dần tắt dần
c) Sơ đồ kết nối bài tập trên mô hình
Sơ đồ kết nối hiển thị led đơn.
d) Trình tự thao tác
Bước 1: Kết nối PORTA và PORTB với modul led đơn
Bước 2: Kết nối mạch nạp và nạp chương trình cho chíp
(File hex ở folder: sw-led don/led don.hex)
e) Kết quả khảo sát
Hai hàng led nhấp nháy thay phiên nhau
Bài tập cho sinh viên:
Bài tập 1: Viết chương trình điều khiển led sáng dần, tắt dần từ hai đầu vào.
Bài tập 2: Viết chương trình tạo các hiệu ứng nháy led.
Trang 123.2 Thực hành hiển thị led 7 đoạn.
L4 LED4
c 4
g 5 Led 1 6
b 7
Led 2 8 Led 3 9
f 10
a 11
Led 4 12
LED1 LED2
LED3 LED4
LED9
L1 L3
100 R21 R22 100 R23 100 R24 100
1 3 5
6 8 10
F G DOT GND
OE 13
LCHCLK 12
SDI 14
RST 10
P8
SWITCH
A B D E G DOT
CLK STR DATA
VCC LED
VCC LED
MODULE LED 7 SEGMENT
Sơ đồ nguyên lý Module hiển thị Led 7 thanh.
b) Nguyên lý hoạt động
Mạch gồm 4 led 7 đoạn, các led nối chung đường dữ liệu Vi điều khiển thựchiện xuất dữ liệu vào các chân dữ liệu của led, và quét cấp nguồn cho từng led
thông qua transistor thuận
c) Sơ đồ kết nối bài tập trên mô hình
Trang 13Sơ đồ kết nối hiển thị led 7 thanh.
d) Trình tự thao tác
Bước 1: Nối DATAvào PORTB
Bước 2: Nối phần CONTROL vào PORTB
Bước 3: Gạt switch cấp nguồn cho led
Bước 4: Kết nối mạch nạp và nạp chương trình cho chíp
(File hex ở folder: sw-led 7/led7.hex)
e) Kết quả khảo sát
Trên led 7 sẽ hiển thị các số 0000-9999
Bài tập cho sinh viên:
Bài tập 1: Viết chương trình hiển thị giá trị điện áp lên led 7.
Bài tập 2: Viết chương trình hiển thị thời gian thực lên led 7.
Trang 14LCD_RS LCD_RW LCD_EN
LCD_D0 LCD_D2 LCD_D4
LCD_D5 LCD_D7
EN 2
104 C5
VLCD
VLCD
1 3 5
6 8 10
P4
DATA LCD
1 3 5
6 8 10
Vi điều khiển thực hiện ghi lệnh và dữ liệu vào LCD để hiển thị thông tin
c) Sơ đồ kết nối bài tập trên mô hình
Trang 15Sơ đồ kết nối hiển thị LCD 16x2.
d) Trình tự thao tác
Bước 1: Kết nối CONTROL vào PORTA
Bước 2: Kết nối DATA vào PORTB
Bước 3: Gạt switch cấp nguồn LCD
Bước 4: Kết nối mạch nạp và nạp chương trình cho chíp
(File hex ở folder: sw-lcd16x2 /lcd 16x2.hex)
e) Kết quả khảo sát
Trên LCD hiển thị thông tin cần ghi ra
Bài tập cho sinh viên:
Bài tập 1: Viết chương trình đọc thời gian thực hiển thị LCD.
Bài tập 2: Viết chương trình đọc giá trị ADC hiển thị LCD.
3.4 Thực hành hiển thị led matrix.
a) Sơ đồ nguyên lý
GND
OE 13
LCHCLK 12
SDI 14
RST 10
GND 8
149 R1 C2C1 313
C5 6 R5
1
C6 11 R6
7
C7 15R7
2
C8 16R8
5
U1
MT8X8 R-ACHUNG
C1 C3 C5 C8 C1
C4 C6 C8
Q1 A1015 R1
CC1
H1
R2
CC2 H2
VCC
R3
CC3 H3
R4
CC4 H4
R5
CC5 H5
R6
CC6 H6
R7
CC7 H7
R8
CC8 H8 VCC MT
C1 104
GND
Q2 A1015 Q3A1015 Q4A1015 Q5A1015 Q6A1015 Q7A1015 Q8A1015
H1 H3 H5 H8 R4
128 R3 C4C3 104R2
149 R1 C2C1 313
C5 6 R5
1
C6 11 R6
7
C7 15R7
2
C8 16R8
5
U2
MT8X8 R-ACHUNG
H1 H3 H5 H7 R4
128 R3R2 C4C3 104
149 R1 C2C1 313
C5 6 R5
1
C6 11 R6
7
C7 15 R7
2
C8 16 R8
5
U5
MT8X8 R-ACHUNG
H1 H3 H5 H7 R4
128 R3R2 C4C3 104
149 R1 C2C1 313
C5 6 R5
1
C6 11 R6
7
C7 15 R7
2
C8 16 R8
LCHCLK 12
SDI 14
RST 10
GND 8
SDI 14
RST 10 SFTCLK
GND 8
U4
MC74HC595
GND
CLK STR
C2 104
GND
GND
OE 13 LCHCLK 12
SDI 14
RST 10 SFTCLK
GND 8
U8
MC74HC595
GND
CLK STR
C9 C10 C13 C15
C17 C19 C21 C23
C25 C27 C29 C31
C9 C10 C12 C14
C17 C19 C21 C23
C25 C27 C29 C31
GND
VCC MT
C4 104
GND VCC MT
MODULE LED MATRIX
Sơ đồ nguyên lý Led ma trận 8x8.
b) Nguyên lý hoạt động
Trang 16Vi điều khiển xuất dữ liệu vào hàng và quét cấp nguồn cho các cột của led.
c) Sơ đồ kết nối bài tập trên mô hình
Sơ đồ kết nối hiển thị led ma trận 8x8.
d) Trình tự thao tác
Bước 1: Kết nối COTROL với PORTC
Bước 2: Kết nối DATA với PORTB
Bước 3: Gạt switch cấp nguồn
Bước 4: Kết nối mạch nạp và nạp chương trình cho chíp
(File hex ở folder: sw-ledmatrix-vali /led matrix.hex)
e) Kết quả khảo sát
Trên led matrix chạy chữ từ A-Z
Bài tập cho sinh viên:
Bài tập 1: Viết chương trình chạy một dòng chữ bất kỳ.
Bài tập 2: Viết chương trình cài đặt chữ hiện thị thông qua máy tính.
Trang 174013 GND
1 3 5
6 8 10
BUTTON P1
LED1
GND SW1
U3A
4013 GND
U4A
4013 GND
GND
11 D 9
Q 13
Q 12SET RST
U1B
4013 GND
GND
10K R2 VCC
GND
D4
D4
470R R5 LED2
GND
SW4
11 D 9
Q 13
Q 12SET RST
U3B
4013 GND
GND
10K R9 VCC
GND D5
D5
470R R12 LED6
GND SW5
11 D 9
Q 13
Q 12SET RST
U4B
4013 GND
GND
10K VCC
GND
D6
D6
470R R16 LED8
GND
SW6
3 D 5
Q 1
Q 2RST SET
U2A
4013 GND
GND
10K R3 VCC
GND
470R R6 LED3
GND
11 D 9
Q 13
Q 12SET RST
U2B
4013 GND
GND
10K R7 VCC
GND
D8
D8
470R R10 LED4
GND
SW3 SW5
SW6 SW8
D3
D3 SW3
Vi điều khiển quét nhận biết phím bấm và hiển thị trên led đơn
c) Sơ đồ kết nối bài tập trên mô hình
Trang 18Sơ đồ kết nối nhận biết phím đơn.
d) Trình tự thao tác
Bước 1: Kết nối BUTTON với PORTB
Bước 2: Kết nối led đơn với PORTA
Bước 3: Kết nối mạch nạp và nạp chương trình cho chíp
(File hex ở folder: sw-phim don-vali/phim+led don.hex)
e) Kết quả khảo sát
Khi bấm các phím sẽ có 1 led sáng
Bài tập cho sinh viên:
Bài tập 1: Viết chương trình tạo hiệu ứng nháy led theo từng phím bấm.
Bài tập 2: Viết chương trình cài đặt dùng phím bấm.
Trang 193.6 Thực hành nhận biết phím ma trận 4x4.
a) Sơ đồ nguyên lý
1 3 5
6 8 10
P2
SW1 1
SW2 2
SW3 3 A
SW9 7
SW13 ON/C
SW6 5
SW7 6
SW10 8
SW11 9
SW14 0
SW15
=
SW4 / A
SW16 +
1 3 A
B D
1 3 5 7 9
P1
10K x 8
VCC 2 4 1
A C
Vi điều khiển thực hiện quét các phím và nhận biết phím nào đã được bấm
c) Sơ đồ kết nối bài tập trên mô hình
Trang 20Sơ đồ kết nối nhận biết phím ma trận 4x4.
d) Trình tự thao tác
Bước 1: Kết nối CONTROL LCD vào PORTA
Bước 2: Kết nối DATA LCD vào PORTB
Bước 3: Kết nối KEYBOARD vào PORTC
Bước 4: Gạt switch cấp nguồn
Bước 6: Kết nối mạch nạp và nạp chương trình cho chíp
(File hex ở folder: sw-key matrix 4x4-vali/key matrix.hex)
e) Kết quả khảo sát
Khi bấm các phím, trên màn hình LCD sẽ hiện lên: “phím vừa bấm: 0-F”, ledđơn hiển thị theo phím bấm
Bài tập cho sinh viên:
Bài tập 1: Viết chương trình tạo hiệu ứng nháy led theo từng phím bấm.
Bài tập 2: Viết chương trình tính toán cộng, trừ, nhân, chia.
Trang 211K R2
Q1 C1815
GND
D2 5mm
R1 470R
GND
1K R9
Q2 C1815
GND
D4 5mm
R8 470R
6 8 10
P3
Header 5X2A INT2
1N4007 D1
Trang 22Sơ đồ kết nối sensor.
d) Trình tự thao tác
Bước 1: Kết nối SENSOR với INTERRUP
Bước 2: Kết nối CONTROL LCD với PORT2
Bước 3: Kết nối DATA LCD với PORT1
Bước 4: Gạt switch cấp nguồn
Bước 5: Kết nối mạch nạp và nạp chương trình cho chíp
(File hex ở folder: sw-int-8051 /sw-INT.hex)
e) Kết quả khảo sát
Khi tác động vào cảm biến, trên màn LCD sẽ hiển thị biến đếm số lần tác động
Bài tập cho sinh viên:
Bài tập 1: Viết chương trình đọc phím bấm sử dụng ngắt.
Bài tập 2: Viết chương trình đo tần số sử dụng ngắt.