Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 41 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
41
Dung lượng
1,79 MB
Nội dung
BÀI GIẢNG
Phần CứngCủa CPU
MỤC LỤC
1. GIỚI THIỆU CHUNG
Vi xử lý (viết tắt là µP hay uP), đôi khi còn được gọi là bộ vi xử lý, là một linh
kiện điện tử máy tính được chế tạo từ các tranzito thu nhỏ tích hợp lên trên một vi
mạch tích hợp đơn. Khối xử lý trung tâm (CPU) là một bộ vi xử lý được nhiều
người biết đến và được ví như bộ não của máy tính nhưng ngoài ra nhiều thành
phần khác trong máy tính cũng có bộ vi xử lý riêng của nó, ví dụ trên cạc màn
hình, ổ đĩa cứng… cũng có các bộ bộ vi xử lý.
Vi điều khiển có thể được coi là một máy tính được tích hợp trên một chíp, nó
thường được sử dụng để điều khiển các thiết bị điện tử. Vi điều khiển, thực chất, là
một hệ thống bao gồm một vi xử lý có hiệu suất đủ dùng và giá thành thấp (khác
với các bộ vi xử lý đa năng dùng trong máy tính) kết hợp với các khối ngoại vi như
bộ nhớ, các module vào ra, ADC, DAC, timer, ngắt Ở máy tính thì các mô đun
thường được xây dựng bởi các chíp và mạch ngoài.
Vi điều khiển thường được dùng để xây dựng các hệ thống nhúng. Nó xuất hiện
khá nhiều trong các dụng cụ điện tử, thiết bị điện, máy giặt, lò vi sóng, điện thoại,
đầu đọc DVD, thiết bị đa phương tiện, dây chuyền tự động, v.v.
Hầu hết các vi điều khiển ngày nay được xây dựng dựa trên kiến trúc Harvard,
kiến trúc này định nghĩa bốn thành phần cần thiết của một hệ thống nhúng. Những
thành phần này là lõi CPU, bộ nhớ chương trình (thông thường là ROM hoặc bộ
nhớ Flash), bộ nhớ dữ liệu (RAM), một hoặc vài bộ định thời và các cổng vào/ra
để giao tiếp với các thiết bị ngoại vi và các môi trường bên ngoài - tất cả các khối
này được thiết kế trong một vi mạch tích hợp. Vi điều khiển khác với các bộ vi xử
lý đa năng ở chỗ là nó có thể hoạt động chỉ với vài vi mạch hỗ trợ bên ngoài.
Đề tài thiết kế xe chạy theo đường vẽ sẵn được chúng em thực hiện dựa trên nền
kiến thức về mạch điện tử, vi xử lý nói chung và vi điều khiển họ 8051 nói riêng
được thầy giáo hướng dẫn trên lớp. Thực hiện đề tài này là tiền đề để chúng em
nắm được những kiến thức cơ bản về vi điều khiển 8051, từ đó tạo cơ sở để tiếp
tục nghiên cứu những họ vi điều khiển khác như AVR, PIC, ARM… phục vụ trong
quá trình học tập và làm việc sau này.
Chúng em chân thành cảm ơn thầy Nguyễn Hồng Quang đã hướng dẫn chúng
em hoàn thành bài tập này.
Nhóm 2 – TĐH 4 – K50
2. MÔ TẢ KĨ THUẬT
2.1 THIẾT KẾ MẠCH
Hai mạch chính sử dụng trong bài tập này là mạch SENSORS để dò đường và
mạch VI XỬ LÝ VÀ ĐỘNG CƠ để thu tín hiệu, xử lý và đưa ra tín hiệu điều
khiển hai động cơ để dẫn hướng. Ngoài ra, để nạp chương trình cho vi điều khiển,
chúng em sử dụng mạch nạp ISP loại đơn giản tự làm theo sơ đồ trên mạng
Internet.
a) MẠCH SENSORS
Đường đi của xe được vẽ bằng vạch đen nằm trên nền trắng. Để xe nhận ra
được đường đi, chúng em sử dụng các cặp led thu phát hồng ngoại đặt gần nhau.
Các led phát phát ra ánh sáng đỏ, các led thu có điện trở phụ thuộc vào có nhận
được ánh sáng phản xạ từ đường đi hay không.
Khi cặp thu phát ở vị trí nền trắng, ánh sáng từ led phát phát ra phản xạ trên nền
trắng và tới led thu. Led thu thu được ánh sáng này thì điện trở giảm xuống, điện
áp ở cực Anot của led thu gần về 0. Ngược lại, ở vị trí vạch đen, ánh sáng từ led
phát phát ra không phản xạ lại được do bị vạch đen hấp thụ. Led thu không nhận
được ánh sáng này nên điện áp ở cực Anot của nó gần bằng 5 V. Điện áp ra từ led
thu được đem so sánh với điện áp chuẩn đã được tinh chỉnh hợp lý qua IC LM324
để cho ra mức logic 0-1, đưa vào vi điều khiển xử lý.
Hình ảnh minh họa như sau:
IC LM324 gồm 4 bộ so sánh.
Mỗi bộ so sánh được minh họa như hình bên. Trong đó, đầu vào đảo nối với
cực Anot của led thu và đầu vào không đảo nối với điện áp so sánh từ chiết áp.
Khi led ở ngoài nền trắng, mức điện áp trên led thu đo được là 3.0V, ngược lại,
mức điện áp thu đo được khi bắt vào vạch đen là 4.6 V. Điện áp so sánh (Vref)
được đặt qua biến trở 10k là 3.8 V.
Khi ở ngoài nền trắng:
V
led thu
<V
ref
nên Output=1
Khi bắt vạch đen:
V
led thu
>V
ref
nên Output=0
Để bắt đường được tốt, chúng em sử dụng 6 cặp led thu phát được bố trí như
sau (LT: Led thu; LP: Led phat):
LT3
LP3
LT1 LT2 LT5 LT6
LP1 LP2 LP5 LP6
LT4
LP4
Sơ đồ nguyên lý mạch SENSORS:
Sơ đồ mạch in:
b) MẠCH VI ĐIỀU KHIỂN VÀ ĐỘNG CƠ
Khối NGUỒN:
Trong khối nguồn chúng ta sử dụng 1 bình ắc quy khô 12V.Mặt khác hệ
thốngiều khiển cần phải có nguồn 5V để cung cấp cho khối VI ĐIỀU KHIỂN và
khối SENSORS. Để tạo nguồn 5V DC chúng ta sử dụng IC ổn áp 7805, với đầu
vào gồm đất chung của toàn hệ thống và nguồn 12 VDC lấy trực tiếp từ nguồn ắc
quy. IC ổn áp LM7805 được lắp một tản nhiệt loại nhỏ để tản bớt nhiệt khi hoạt
động giúp khối nguồn cũng như toàn bộ mạch hoạt động ổn định.
Mạch nguồn như sau:
Trong mạch nguồn có sử dụng một cầu chì kí hiệu là SW2 phòng xảy ra sự cố
chập mạch, nhằm bảo vệ cho mạch nguồn cũng như các khối liên quan khác.
Khối VI ĐIỀU KHIỂN
Khối này gồm có Vi điều khiển AT89S52, mạch RESET, mạch tạo dao động, các
led báo vạch về từ mạch SENSORS, Jumpers đầu vào dùng để nạp ISP.
+ Vi điều khiển AT89S52 được chúng ta sử dụng vì nó có đầy đủ những chức năng
của vi điều khiển AT89C51. Ngoài ra còn có thêm một timer (timer2) và có bộ nhớ
Flash, công nghệ nạp ISP (In System Programming) tức là nạp mà không cần tháo
chip ra khỏi mạch, giúp việc lập trình và test rất thuận tiện. Giá thành thậm chí còn
rẻ hơn AT89C51.
+ Mach RESET có chức năng reset lại hoạt động của vi điều khiển, được nối vào
chân số 9 của vi điều khiển là chân tích cực cao. Khi chân số 9 được set lên 1 thì vi
điều khiển được reset lại. Để chống rung khi ấn nút, chúng ta dùng một tụ hóa nối
song song với nút ấn.
+ Mạch DAO ĐỘNG sử dụng thạch anh 12Mhz, như vậy một chu kì máy là 1us,
rất thuận tiện cho việc tính toán và lập trình. Tuy nhiên có hạn chế là không thể
truyền thông với máy tính qua cổng COM (đòi hỏi thạch anh 11.0592Mhz). Thạch
anh này được nối đất với tụ gốm 33p để lọc nhiễu.
+ Các Jumpers dùng để nạp ISP sử dụng mạch nạp ISP loại đơn giản, chỉ cần dùng
5 chân: GND, MOSI, MISO, SCK, RESET nối với cổng LPT của máy tính thông
qua jack DB25. Sử dụng kiểu nạp ISP này rất thuận tiện khi lập trình và test xe vì
không phải tháo chip (hạn chế hỏng, gẫy chân chip), tốc độ nạp chấp nhận được, ít
khi bị lỗi, chi phí thấp.
+ Các led báo vạch về dùng để phản ánh tình trạng của các led thu phát ở mạch
SENSORS. Khi một cặp thu-phát bắt vào vạch đen thì led báo tương ứng sẽ sáng
lên và ngược lại. Nói cách khác, các led báo này phản ánh vị trí lệch của xe so với
vạch đen, từ đó giúp debug chương trình thuận tiện hơn rất nhiều.
Khối LCD HIỂN THỊ
Trong bài tập này chúng ta sử dụng một LCD để giới thiệu cũng như hiển thị
những thông tin cần thiết khác, đồng thời học cách giao tiếp giữa hai vi xử lý. Do
LCD tiêu thụ dòng khá lớn đặc biệt là khi bật đèn nền, làm mau hết ắcquy nên chỉ
sử dụng LCD với những trường hợp cụ thể. Để bật tắt đèn nền, chúng ta sử dụng
một bóng thuận A1015, được điều khiển bởi chân P0.7 của vi điều khiển. Khi
P0.7=0 thì bóng thông, cực A của LCD được nối với nguồn 5V, đèn nền sáng và
ngược lại. Ngoài ra trong khối còn sử dụng một biến trở 10k tạo điện áp ra đưa vào
chân VEE của LCD để điều chỉnh độ tương phản. Khi điện áp
EE
0
V
U ≈
thì độ tương
phản là lớn nhất,
EE
5
V
U
≈
V thì độ tương phản là nhỏ nhất.
Khối ĐỘNG CƠ
Để điều khiển động cơ quay thuận ngược nhanh chậm, chúng ta không thể dùng
trực tiếp các chân của vi điều khiển được vì dòng ra của chân vi điều khiển nhỏ.
Do vậy chúng ta sử dụng IC L293D gồm hai mạch cầu H bên trong, mỗi mạch cầu
H dùng điều khiển một động cơ có sơ đồ khối như hình vẽ:
[...]... thực tế: 2.2 MÔ TẢ PHẦN CỨNGCPU Cấu trúc chung của bộ vi điều khiển 8051: Một số thành phần chính của bộ vi điều khiển 8051: CPU: bộ não của vi điều khiển, thực hiện các phép toán số học, logic Các cổng vào ra để nhận, truyền dữ liệu ra các mạch ngoại vi khác ở bên ngoài hoặc cũng có thể dùng để định địa chỉ khi sử dụng bộ nhớ ngoài Rom: nơi lưu trữ bộ nhớ chương trình để CPU thực hiện các lệnh,... 5V và 6 sợi truyền tín hiệu của mạch SENSORS về cho vi điều khiển Hình ảnh xe: THIẾT KẾ PHẦN MỀM Chương trình viết cho vi điều khiển sử dụng ngôn ngữ Assembler với trình dịch là phần mềm Keil C Ưu điểm của ngôn ngữ Assembler là mã nguồn chạy nhanh và gọn, giúp sinh viên nắm chắc cấu trúc phần cứngcủa vi điều khiển cũng như các bước lập trình phần mềm Tuy nhiên nhược điểm của ngôn ngữ này là khó hiểu... chỉ gián tiếp để truy cập 128 byte Ram thêm MÔ TẢ THIẾT KẾ CÁC PHẦN KHÁC Thân xe Thân xe được làm từ một miếng nhựa tổng hợp, kích thước 15x20 cm, đằng trước có gắn bánh lái có thể quay 360 o, do vậy chuyển động của xe phần lớn do hai bánh sau quyết định Hai bánh đằng sau được lắp vào hai trục của động cơ một chiều để lái chiều chuyển động của xe Hai động cơ sử dụng là động cơ một chiều loại 15V được... nguồn ngắt o Hỗ trợ truyền thông máy tính cổng nối tiếp Với các đặc điểm trên, vi điều khiển AT89S52 hoàn toàn đủ mạnh để giải quyết yêu cầu đặt ra của đề bài Sơ đồ chân của vi điều khiển AT89S52 được minh họa như hình dưới: Các chân được sử dụng trong bài tập này gồm: các chân nguồn, chân dao động, chân reset, các chân nạp ISP, cổng P3 để nhận tín hiệu led báo về, cổng P0 để điều khiển động cơ, cổng...Trong khối này còn sử dụng một công tắc nguồn, có tác dụng bật tắt động cơ khi điều chỉnh vị trí của xe trước khi chạy Bảng chân lý mô tả hoạt động của L293D trên một kênh như sau Giả sử ta cần điều khiển động cơ bên trái Ba chân cần điều khiển là IN1, IN2, EN1 và đầu ra OUT1 OUT2 của L293D được nối với hai dây của động cơ một chiều TRẠNG THÁI IN1 IN2 EN1 DỪNG X X 0 QUAY THUẬN 1 0 1 QUAY NGƯỢC 0 1 1 Mạch... các lệnh, điều khiển hoạt động của vi điều khiển Ram: bộ nhớ trong Các bộ timer, bộ đếm: được sử dụng rất nhiều để tạo trễ, dùng trong hoạt động ngắt Cổng nối tiếp để truyền thông máy tinh …… Các bus dữ liệu, bus điều khiển, bus địa chỉ để liên kết các khối trong vi điều khiển Vi điều khiển sử dụng trong bài tập này là AT89S52 của hãng Atmel Một số đặc điểm chỉnh của vi điều khiển này như sau:... Kiểm tra điện áp trên cực Anot led thu khi qua và không qua vạch đen: tốt Kiểm tra hoạt động của tín hiệu gửi về thông qua led báo: tốt Kiểm tra hoạt động mạch nạp: tốt Kiểm tra hoạt động của LCD: tốt Kiểm tra hoạt động của IC L293: tốt KẾT QUẢ ĐẠT ĐƯỢC VÀ PHÂN TÍCH LỖI Trong quá trình thực hiện bài tập lớn, chúng em gặp một số khó khăn sau và đã từng bước khắc phục Tài liệu Đây là lần đầu... nghiệm về thiết kế mạch thực tế, cần giải quyết các vấn đề: vẽ mạch nguyên lý và mạch in sử dụng hai phần mềm Orcad Capture và Orcad Layout trong bộ sản phẩm Orcad v10.0 của hãng Cadense, các kĩ thuật sắp xếp linh kiện, đi dây, kĩ thuật làm mạch thủ công bằng phương pháp là Khắc phục: Học cách sử dụng các phần mềm nói trên với nhiều tutorial trên các diễn đàn như www.dientuvietnam.net, www.picvietnam.com... lại Về cách làm mạch bằng phương pháp là: học trên mạng và kinh nghiệm của các bạn đã từng làm mạch Tuy nhiên để ra được hai mạch chạy ổn định thì cũng đã hỏng mất vài cái Mạch SENSORS Mạch vi VI ĐIỀU KHIỂN VÀ ĐỘNG CƠ Lập trình Đây có thể coi là vấn đề phức tạp nhất vì là linh hồn của xe tự hành, điều khiển toàn bộ hoạt động của xe và cũng là vấn đề tiêu tốn nhiều thời gian nhất Vấn đề 1: Đọc và... Qua quá trình làm bài tập lớn vi xử lý với sản phẩm thực tế là chiếc xe chạy theo đường đi này, chúng em đã học hỏi được rất nhiều kiến thức: thiết kế xe, thiết kế mạch, làm mạch in, lập trình, hiệu chỉnh… Điều quan trọng là chúng em đã làm được một sản phẩm dựa trên những kiến thức đã học vì từ lý thuyết ra thực tế là cả một quãng đường dài Bài tập này giúp chúng em hiểu thêm cấu trúc của Vi điều khiển . thực tế:
2.2 MÔ TẢ PHẦN CỨNG CPU
Cấu trúc chung của bộ vi điều khiển 8051:
Một số thành phần chính của bộ vi điều khiển 8051:
CPU: bộ não của vi điều khiển,. BÀI GIẢNG
Phần Cứng Của CPU
MỤC LỤC
1. GIỚI THIỆU CHUNG
Vi xử lý (viết tắt là µP hay uP),