Tài Liệu Hướng Dẫn Về Vi Điều Khiển

Tài liệu vi điều khiển cung cấp kiến thức cơ bản, hướng dẫn lập trình và ứng dụng trong các dự án điện tử, giúp nâng cao kỹ năng cho người học.

Chuyên ngành

Điện tử, Điện công nghiệp, Cơ điện tử, Tự động hóa

Người đăng

Ẩn danh

Thể loại

Giáo trình
117
1
0

Phí lưu trữ

35 Point

Mục lục chi tiết

LỜI NÓI ĐẦU

1. CHƯƠNG 1: TỔNG QUAN VỀ VI ĐIỀU KHIỂN

1.1. Khái quát về vi điều khiển

1.2. Phân loại vi điều khiển và ứng dụng

1.3. Sơ đồ khối của một vi điều khiển

2. CHƯƠNG 2: KIẾN TRÚC VI ĐIỀU KHIỂN

2.1. Khái quát chung

2.2. Giới thiệu vi điều khiển PIC 16F877A

2.3. Tổ chức bộ nhớ

2.4. Bộ nhớ chương trình

2.5. Bộ nhớ dữ liệu

2.6. Thanh ghi chức năng đặc biệt SFR

2.7. Thanh ghi mục đích chung GPR

2.8. Các cổng xuất nhập của PIC 16F877A

2.9. Hoạt động Reset

2.10. Chế độ tiết kiệm năng lượng

3. CHƯƠNG 3: LẬP TRÌNH CHO VI ĐIỀU KHIỂN

3.1. Giới thiệu các phần mềm lập trình và mô phỏng

3.2. Trình biên dịch, ngôn ngữ lập trình cho vi điều khiển

3.3. Cấu trúc một chương trình vi điều khiển và các bước lập trình

3.4. Khai báo tiền xử lý. Phần khai báo biến toàn cục

3.5. Phần khai báo, định nghĩa các chương trình con

3.6. Phần chương trình chính

3.7. Các cấu trúc thuật toán của ngôn ngữ CCS

3.8. Các toán tử cơ bản trong CCS

3.9. Các hàm số học cơ bản trong CCS

3.10. Các hàm vào ra cơ bản trong CCS

3.11. Các hàm tạo trễ

3.12. Điều khiển xuất nhập dữ liệu (input, output, GPIO)

3.13. Các bộ chuyển đổi tín hiệu ADC, COMPARATOR, CCP

4. CHƯƠNG 4: HOẠT ĐỘNG ĐỊNH THỜI (TIMER/COUNTER)

4.1. Nguyên lý hoạt động cơ bản của một bộ định thời

4.2. Chế độ định thời

4.3. Chế độ bộ đếm

4.4. Một số ứng dụng định thời

5. CHƯƠNG 5: GIAO TIẾP VÀ TRUYỀN DỮ LIỆU VỚI VI ĐIỀU KHIỂN

5.1. GIAO TIẾP NỐI TIẾP

5.2. USART BẤT ĐỒNG BỘ

5.3. USART ĐỒNG BỘ

6. CHƯƠNG 6: HOẠT ĐỘNG NGẮT

6.1. Tổ chức và xử lý ngắt

6.2. Thiết kế chương trình xử lý ngắt

6.3. Các ngắt bộ định thời

6.4. Các ngắt port nối tiếp

TÀI LIỆU THAM KHẢO

Tóm tắt

I. Hướng Dẫn Toàn Diện Về Vi Điều Khiển Khái Niệm Và Ứng Dụng

Vi điều khiển là một thiết bị điện tử quan trọng trong nhiều ứng dụng công nghệ hiện đại. Chúng được sử dụng rộng rãi trong các sản phẩm điện tử tiêu dùng, hệ thống tự động hóa và nhiều lĩnh vực khác. Vi điều khiển có khả năng xử lý thông tin và điều khiển các thiết bị ngoại vi, giúp thực hiện các tác vụ phức tạp một cách hiệu quả.

1.1. Vi Điều Khiển Là Gì Khái Niệm Cơ Bản

Vi điều khiển là một loại vi xử lý được tích hợp với bộ nhớ và các thiết bị ngoại vi. Chúng có khả năng thực hiện các lệnh lập trình để điều khiển các thiết bị khác. Vi điều khiển thường được sử dụng trong các ứng dụng như điều khiển động cơ, cảm biến và các thiết bị điện tử khác.

1.2. Các Loại Vi Điều Khiển Phổ Biến Trên Thị Trường

Trên thị trường hiện nay có nhiều loại vi điều khiển như PIC, AVR, và ARM. Mỗi loại có những đặc điểm riêng biệt, phù hợp với các ứng dụng khác nhau. Vi điều khiển PIC, ví dụ, được ưa chuộng nhờ tính dễ sử dụng và khả năng tích hợp cao.

II. Những Thách Thức Khi Sử Dụng Vi Điều Khiển Trong Thực Tế

Mặc dù vi điều khiển mang lại nhiều lợi ích, nhưng cũng tồn tại một số thách thức trong quá trình sử dụng. Việc lập trình và thiết kế hệ thống vi điều khiển đòi hỏi kiến thức chuyên môn và kinh nghiệm. Ngoài ra, việc tích hợp các thiết bị ngoại vi cũng có thể gặp khó khăn.

2.1. Vấn Đề Lập Trình Vi Điều Khiển Khó Khăn Và Giải Pháp

Lập trình vi điều khiển có thể phức tạp, đặc biệt đối với những người mới bắt đầu. Việc lựa chọn ngôn ngữ lập trình phù hợp và hiểu rõ cấu trúc chương trình là rất quan trọng. Sử dụng các phần mềm lập trình chuyên dụng có thể giúp đơn giản hóa quá trình này.

2.2. Thách Thức Trong Việc Tích Hợp Thiết Bị Ngoại Vi

Việc kết nối vi điều khiển với các thiết bị ngoại vi như cảm biến và động cơ có thể gặp khó khăn. Cần phải đảm bảo rằng các thiết bị này tương thích với nhau và hoạt động ổn định trong hệ thống.

III. Phương Pháp Lập Trình Vi Điều Khiển Hiệu Quả Nhất

Để lập trình vi điều khiển hiệu quả, cần nắm vững các phương pháp và công cụ lập trình. Việc sử dụng các ngôn ngữ lập trình như C hoặc Assembly có thể giúp tối ưu hóa hiệu suất của vi điều khiển.

3.1. Ngôn Ngữ Lập Trình Phổ Biến Cho Vi Điều Khiển

Ngôn ngữ C là một trong những ngôn ngữ lập trình phổ biến nhất cho vi điều khiển. Nó cho phép lập trình viên viết mã dễ dàng và hiệu quả, đồng thời hỗ trợ nhiều thư viện và công cụ hữu ích.

3.2. Các Công Cụ Lập Trình Và Mô Phỏng Vi Điều Khiển

Sử dụng các công cụ lập trình và mô phỏng như MPLAB hoặc Proteus giúp lập trình viên kiểm tra và tối ưu hóa mã trước khi triển khai trên phần cứng thực tế. Điều này giúp giảm thiểu lỗi và tiết kiệm thời gian.

IV. Ứng Dụng Thực Tiễn Của Vi Điều Khiển Trong Cuộc Sống

Vi điều khiển được ứng dụng rộng rãi trong nhiều lĩnh vực khác nhau, từ sản phẩm tiêu dùng đến công nghiệp. Chúng giúp cải thiện hiệu suất và tính năng của các thiết bị điện tử.

4.1. Ứng Dụng Trong Thiết Bị Gia Dụng Thông Minh

Vi điều khiển được sử dụng trong các thiết bị gia dụng thông minh như khóa cửa tự động, hệ thống chiếu sáng thông minh và điều hòa không khí. Chúng giúp người dùng tiết kiệm năng lượng và nâng cao tiện nghi.

4.2. Ứng Dụng Trong Ngành Công Nghiệp

Trong ngành công nghiệp, vi điều khiển được sử dụng để điều khiển máy móc, tự động hóa quy trình sản xuất và giám sát hệ thống. Chúng giúp tăng năng suất và giảm chi phí sản xuất.

V. Kết Luận Tương Lai Của Vi Điều Khiển Trong Công Nghệ

Vi điều khiển sẽ tiếp tục đóng vai trò quan trọng trong sự phát triển của công nghệ. Với sự tiến bộ của công nghệ vi điện tử, vi điều khiển sẽ ngày càng mạnh mẽ và linh hoạt hơn, mở ra nhiều cơ hội mới cho các ứng dụng sáng tạo.

5.1. Xu Hướng Phát Triển Vi Điều Khiển Trong Tương Lai

Các xu hướng phát triển vi điều khiển bao gồm việc tích hợp nhiều tính năng hơn trong một chip, cải thiện hiệu suất và giảm tiêu thụ năng lượng. Điều này sẽ giúp vi điều khiển trở nên phổ biến hơn trong các ứng dụng mới.

5.2. Tác Động Của Vi Điều Khiển Đến Cuộc Sống Hàng Ngày

Vi điều khiển sẽ tiếp tục ảnh hưởng đến cuộc sống hàng ngày của con người thông qua việc cải thiện các thiết bị thông minh và tự động hóa. Chúng sẽ giúp nâng cao chất lượng cuộc sống và tạo ra những trải nghiệm mới cho người dùng.

24/07/2025
Tài liệu vi điều khiển

Trích đoạn nội dung tài liệu

Chương 1: TỔNG QUAN VỀ VI ĐIỀU KHIỂN 1. Khái quát về vi điều khiển  Khái niệm vi xử lý và vi điều khiển Về cơ bản hai khái niệm này không khác nhau nhiều, “vi xử lý” là thuật ngữ chung dùng đề cập đến kỹ thuật ứng dụng các công nghệ vi điện tử, công nghệ tích hợp và khả năng xử lý theo chƣơng trình vào các lĩnh vực khác nhau. Vào giai đoạn đầu trong quá trình phát triển của công nghệ vi xử lý, các chip (hay các vi xử lý) đƣợc chế tạo chỉ tích hợp những phần cứng thiết yếu nhƣ CPU cùng các mạch giao tiếp giữa CPU và các phần cứng khác. Trong giai đoạn này, các phần cứng khác (kể cả bộ nhớ) thƣờng không đƣợc tích hợp trên chip mà phải ghép nối thêm bên ngoài.

Các phần cứng này đƣợc gọi là các ngoại vi (Peripherals). Về sau, nhờ sự phát triển vƣợt bậc của công nghệ tích hợp, các ngoại vi cũng đƣợc tích hợp vào bên trong IC và ngƣời ta gọi các vi xử lý đã đƣợc tích hợp thêm các ngoại vi là các “vi điều khiển”. Vi xử lý có các khối chức năng cần thiết để lấy dữ liệu, xử lý dữ liệu và xuất dữ liệu ra ngoài sau khi đã xử lý. Và chức năng chính của vi xử lý chính là xử lý dữ liệu, chẳng hạn nhƣ cộng, trừ, nhân, chia, so sánh.

Vi xử lý không có khả năng giao tiếp trực tiếp với các thiết bị ngoại vi, nó chỉ có khả năng nhận và xử lý dữ liệu. Để vi xử lý hoạt động cần có chƣơng trình kèm theo, các chƣơng trình này điều khiển các mạch logic và từ đó vi xử lý xử lý các dữ liệu cần thiết theo yêu cầu. Chƣơng trình là tập hợp các lệnh để xử lý dữ liệu thực hiện từng lệnh đƣợc lƣu trữ trong bộ nhớ, công việc thực hành lệnh bao gồm: nhận lệnh từ bộ nhớ, giải mã lệnh và thực hiện lệnh sau khi đã giải mã. Để thực hiện các công việc với các thiết bị cuối cùng, chẳng hạn điều khiển động cơ, hiển thị kí tự trên màn hình.

đòi hỏi phải kết hợp vi xử lý với các mạch điện giao tiếp với bên ngoài đƣợc gọi là các thiết bị I/O (nhập/xuất) hay còn gọi là các thiết bị ngoại vi. Bản thân các vi xử lý khi đứng một mình không có nhiều hiệu quả sử dụng, nhƣng khi là một phần của một máy tính, thì hiệu quả ứng dụng của vi xử lý là rất lớn. Vi xử lý kết hợp với các thiết bị khác đƣợc sử trong các hệ thống lớn, phức tạp đòi hỏi phải xử lý một lƣợng lớn các phép tính phức tạp, có tốc độ nhanh. Chẳng hạn nhƣ các hệ thống sản xuất tự động trong công nghiệp, các tổng đài điện thoại, hoặc ở các robot có khả năng hoạt động phức tạp v.

ĐƢỜNG KHÁNH SƠN Trang 6 GIÁO TRÌNH VI ĐIỀU KHIỂN DRAFT Bộ vi xử lý có khả năng vƣợt bậc so với các hệ thống khác về khả năng tính toán, xử lý, và thay đổi chƣơng trình linh hoạt theo mục đích ngƣời dùng, đặc biệt hiệu quả đối với các bài toán và hệ thống lớn. Tuy nhiên đối với các ứng dụng nhỏ, tầm tính toán không đòi hỏi khả năng tính toán lớn thì việc ứng dụng vi xử lý cũng đòi hỏi các khối mạch điện giao tiếp phức tạp. Các khối này bao gồm bộ nhớ để chứa dữ liệu và chƣơng trình thực hiện, các mạch điện giao tiếp ngoại vi để xuất nhập và điều khiển trở lại, các khối này cùng liên kết với vi xử lý thì mới thực hiện đƣợc công việc. Để kết nối các khối này đòi hỏi ngƣời thiết kế phải hiểu biết rõ về các thành phần vi xử lý, bộ nhớ, các thiết bị ngoại vi.

Hệ thống đƣợc tạo ra khá phức tạp, chiếm nhiều không gian, mạch in phức tạp và vấn đề chính là trình độ ngƣời thiết kế. Kết quả là giá thành sản phẩm cuối cùng rất cao, không phù hợp để áp dụng cho các hệ thống nhỏ. Vì vậy nên các nhà chế tạo tích hợp một ít bộ nhớ và một số mạch giao tiếp ngoại vi cùng với vi xử lý vào một IC duy nhất đƣợc gọi là Microcontroller (Vi điều khiển). Vi điều khiển có khả năng tƣơng tự nhƣ khả năng của vi xử lý, nhƣng cấu trúc phần cứng dành cho ngƣời dùng đơn giản hơn nhiều.

Vi điều khiển ra đời mang lại sự tiện lợi đối với ngƣời dùng, họ không cần nắm vững một khối lƣợng kiến thức quá lớn nhƣ ngƣời dùng vi xử lý, kết cấu mạch điện dành cho ngƣời dùng cũng trở nên đơn giản hơn nhiều và có khả năng giao tiếp trực tiếp với các thiết bị bên ngoài. Vi điều khiển tuy đƣợc xây dựng với phần cứng dành cho ngƣời sử dụng đơn giản hơn, nhƣng thay vào lợi điểm này là khả năng xử lý bị giới hạn (tốc độ xử lý chậm hơn và khả năng tính toán ít hơn, dung lƣợng chƣơng trình bị giới hạn). Tuy nhiên vi điều khiển có giá thành rẻ hơn nhiều so với vi xử lý, việc sử dụng đơn giản, do đó nó đƣợc ứng dụng rộng rãi vào nhiều ứng dụng có chức năng đơn giản, không đòi hỏi tính toán phức tạp. Năm 1976 Intel giới thiệu bộ vi điều khiển 8748, một chip tƣơng tự nhƣ các bộ vi xử lý và là chip đầu tiên trong họ MCS-48.

Độ phức tạp, kích thƣớc và khả năng của vi điều khiển tăng thêm một bậc quan trọng vào năm 1980 khi intel tung ra chip 8051, bộ vi điều khiển đầu tiên của họ MCS-51 và là chuẩn công nghệ cho nhiều họ vi điều khiển đƣợc sản xuất sau này. Sau đó rất nhiều họ vi điều khiển của nhiều nhà chế tạo khác nhau lần lƣợt đƣợc đƣa ra thị trƣờng với tính năng đƣợc cải tiến ngày càng mạnh. ĐƢỜNG KHÁNH SƠN Trang 7 GIÁO TRÌNH VI ĐIỀU KHIỂN DRAFT 1. Phân loại vi điều khiển và ứng dụng 1.

Phân loại  Độ dài thanh ghi Dựa vào độ dài của các thanh ghi và các lệnh của vi điều khiển mà ngƣời ta chia ra các loại vi điều khiển 8 bit, 16 bit, hay 32 bit. Các loại vi điều khiển 16 bit do có độ dài lệnh lớn hơn nên các tập lệnh cũng nhiều hơn, phong phú hơn. Tuy nhiên bất cứ chƣơng trình nào viết bằng vi điều khiển 16 bit chúng ta đều có thể viết trên vi điều khiển 8 bit với chƣơng trình thích hợp.  Kiến trúc CISC (Complex Instruction Set Computer) và RISC (Reduced Instruction Set Computer) Vi điều khiển CISC là vi điều khiển có tập lệnh phức tạp.

Các vi điều khiển này có một số lƣợng lớn các lệnh nên giúp cho ngƣời lập trình có thể linh hoạt và dễ dàng hơn khi viết chƣơng trình. Vi điều khiển RISC là vi điều khiển có tập lệnh đơn giản. Chúng có một số lƣợng nhỏ các lệnh đơn giản. Do đó, chúng đòi hỏi phần cứng ít hơn, giá thành thấp hơn, và nhanh hơn so với CISC.

Tuy nhiên nó đòi hỏi ngƣời lập trình phải viết các chƣơng trình phức tạp hơn, nhiều lệnh hơn.  Kiến trúc Harvard và kiến trúc Vonneumann Kiến trúc Harvard sử dụng bộ nhớ riêng biệt cho chƣơng trình và dữ liệu. Bus địa chỉ và bus dữ liệu độc lập với nhau nên quá trình truyền nhận dữ liệu đơn giản hơn. Kiến trúc Vonneumann sử dụng chung bộ nhớ cho chƣơng trình và dữ liệu.

Điều này làm cho vi điều khiển gọn nhẹ hơn, giá thành rẻ hơn.  Một số loại vi điều khiển có trên thị trường: - Vi điều khiển MCS-51 Họ vi điều khiển MCS-51 do Intel sản xuất đầu tiên vào năm 1980 là các IC thiết kế cho các ứng dụng hƣớng điều khiển. Các IC này chính là một hệ thống vi xử lý hoàn chỉnh bao gồm các các thành phần của hệ vi xử lý: CPU, bộ nhớ, các mạch giao tiếp, điều khiển ngắt. MCS-51 là họ vi điều khiển sử dụng cơ chế CISC, có độ dài và thời gian thực thi của các lệnh khác nhau.

Tập lệnh cung cấp cho MCS-51 có các lệnh dùng cho điều khiển xuất/nhập tác động đến từng bit. MCS-51 bao gồm nhiều vi điều khiển khác nhau, bộ vi điều khiển đầu tiên là 8051 có 4KB ROM, 128 byte RAM và 8031, không có ROM nội, phải sử dụng bộ nhớ ngoài. Sau này, các nhà sản xuất khác nhƣ Siemens, Fujitsu, ĐƢỜNG KHÁNH SƠN Trang 8 GIÁO TRÌNH VI ĐIỀU KHIỂN DRAFT …cũng đƣợc cấp phép làm nhà cung cấp thứ hai. MCS-51 bao gồm nhiều phiên bản khác nhau, mỗi phiên bản sau tăng thêm một số thanh ghi điều khiển hoạt động của MCS-51.

AT89C51 là vi điều khiển do Atmel sản xuất, chế tạo theo công nghệ CMOS. - Vi điều khiển AVR AVR là một kiến trúc Harvard sửa đổi 8-bit RISC đơn chip vi điều khiển đã đƣợc phát triển bởi Atmel vào năm 1996. Các AVR là một trong những họ vi điều khiển đầu tiên sử dụng on-chip bộ nhớ flash để lƣu trữ chƣơng trình, trái với One-Time Programmable ROM, EPROM hoặc EEPROM đƣợc sử dụng bởi vi điều khiển khác vào lúc đó. AVR là một kiến trúc máy Modified Harvard với chƣơng trình và dữ liệu đƣợc lƣu trữ trong các hệ thống bộ nhớ vật lý riêng biệt xuất hiện trong không gian địa chỉ khác nhau, nhƣng có khả năng đọc ghi dữ liệu từ bộ nhớ bằng cách sử dụng lệnh đặc biệt.

- Vi điều khiển PIC PIC là một họ vi điều khiển RISC đƣợc sản xuất bởi công ty Microchip Technology. Dòng PIC đầu tiên là PIC1650 đƣợc phát triển bởi Microelectronics Division thuộc General Instrument. PIC bắt nguồn là chữ viết tắt của "Programmable Intelligent Computer" (Máy tính khả trình thông minh) là một sản phẩm của hãng General Instruments đặt cho dòng sản phẩm đầu tiên của họ là PIC1650. Lúc này, PIC1650 đƣợc dùng để giao tiếp với các thiết bị ngoại vi cho máy chủ 16 bit CP1600, vì vậy, ngƣời ta cũng gọi PIC với cái tên "Peripheral Interface Controller" (Bộ điều khiển giao tiếp ngoại vi).

CP1600 là một CPU tốt, nhƣng lại kém về các hoạt động xuất nhập, và vì vậy PIC 8-bit đƣợc phát triển vào khoảng năm 1975 để hỗ trợ hoạt động xuất nhập cho CP1600. PIC sử dụng microcode đơn giản đặt trong ROM, và mặc dù, cụm từ RISC chƣa đƣợc sử dụng thời bây giờ, nhƣng PIC thực sự là một vi điều khiển với kiến trúc RISC, chạy một lệnh một chu kỳ máy (4 chu kỳ của bộ dao động). Năm 1985 General Instruments bán bộ phận vi điện tử của họ, và chủ sở hữu mới hủy bỏ hầu hết các dự án - lúc đó đã quá lỗi thời. Tuy nhiên PIC đƣợc bổ sung EEPROM để tạo thành 1 bộ điều khiển vào ra khả trình.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ