1. Trang chủ
  2. » Thể loại khác

c for pic pptx

343 449 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Chương 1: Thế giới của vi điều khiển
Trường học Trường Đại Học Sư Phạm Kỹ Thuật TP.HCM
Chuyên ngành Kỹ Thuật Điện Tử
Thể loại Bài trình bày PowerPoint
Năm xuất bản 2023
Thành phố Hồ Chí Minh
Định dạng
Số trang 343
Dung lượng 7,48 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Một chữ số 2 được sử dụng để ghi các số 2 trong hệ thập phân, trong khi đó hai chữ số 1 và 0 được sử dụng để viết nó trong hệ nhị phân hệ thống.. Nó được sử dụng để cho phép các mạch đi

Trang 1

Chương 1: Thế giới của vi điều khiển

Tình hình chúng ta thấy mình ngày hôm nay trong lĩnh vực vi điều khiển có khởi đầu của nó trong sự phát triển của công nghệ mạch tích hợp Nó cho phép chúng

ta lưu trữ hàng trăm hàng ngàn các bóng bán dẫn vào một con chip, mà đã là một điều kiện tiên quyết cho việc sản xuất các bộ vi xử lý Các máy tính đầu tiên đã được thực hiện bằng cách thêm các thiết bị ngoại vi bên ngoài, chẳng hạn như bộ nhớ, đầu vào / đầu ra đường, giờ và các mạch khác, với nó Tăng thêm mật độ gói trong việc thiết kế một mạch tích hợp trong đó có cả bộ xử lý và thiết bị ngoại

vi Đây là chip đầu tiên có chứa một máy vi tính sau này được gọi là vi điều khiển

đã được phát triển như thế nào.

• Giới thiệu 1,1

• 1,2 SỐ, SỐ, SỐ

• 1,3 PHẢI BIẾT CHI TIẾT

• 1,4 PIC vi điều khiển

1,1 GIỚI THIỆU

Người mới trong điện tử thường nghĩ rằng vi điều khiển giống như bộ vi xử

lý Điều đó không đúng Chúng khác nhau từ mỗi khác bằng nhiều cách Sự khác biệt đầu tiên và quan trọng nhất ủng hộ của vi điều khiển là chức năng của nó Để

bộ vi xử lý có thể được sử dụng, các thành phần khác, nhớ đến đầu tiên, phải được thêm vào nó Mặc dù nó được coi là một máy điện toán mạnh mẽ, nó không được điều chỉnh để giao tiếp với môi trường ngoại vi Để cho phép bộ vi xử lý để giao tiếp với môi trường ngoại vi, mạch đặc biệt phải được sử dụng.Đây là cách nó là ở đầu và vẫn giữ nguyên ngày hôm nay

Trang 2

Mặt khác, vi điều khiển được thiết kế để tất cả những điều đó trong một Không có thành phần chuyên ngành khác bên ngoài là cần thiết cho các ứng dụng của nó bởi

vì tất cả các mạch cần thiết mà nếu không thuộc về thiết bị ngoại vi đã được xây dựng trong nó Nó giúp tiết kiệm thời gian và không gian cần thiết để thiết kế một thiết bị

Trang 3

hỏi bảo mật? Mất điện? Thất bại? Sử dụng sai? Điều gì đến sau khi giải quyết những câu hỏi cơ bản là một quá trình khó nhọc của thiết kế thiết bị điện tử thích hợp bằng cách sử dụng một số lượng lớn các chip chuyên ngành Tùy thuộc vào thiết bị phức tạp, quá trình này có thể mất vài tuần hoặc vài tháng Khi hoàn tất, thời gian của mình để thiết kế một bảng mạch in và lắp ráp thiết bị Một thiết bị rất lớn! Nó là một công việc lâu dài và cố gắng Cuối cùng, khi tất cả mọi thứ được hoàn thành và thử nghiệm nhiều lần, thời khắc quan trọng đến khi bạn tập trung, hít một hơi thật sâu và chuyển đổi các nguồn cung cấp năng lượng.

Điều này thường là điểm mà tại đó các bên trở thành một công việc thực tế kể từ khi thiết bị điện tử hầu như không bao giờ bắt đầu hoạt động ngay lập tức Hãy sẵn sàng cho nhiều đêm không ngủ, những sửa chữa, cải tiến và đừng quên, chúng tôi vẫn đang nói về việc chạy một thang máy thông thường

Khi điện thoại của bạn bắt đầu hoạt động hoàn hảo và tất cả mọi người hài lòng và cuối cùng bạn được trả tiền cho công việc bạn đã làm, nhiều công ty xây dựng sẽ trở thành quan tâm đến công việc của bạn Tất nhiên, nếu bạn là may mắn, một ngày khác sẽ mang lại cho bạn một cung cấp khóa từ một nhà đầu tư mới Tuy nhiên, một tòa nhà mới có bốn câu chuyện hơn Bạn biết những gì nó về? Bạn nghĩ rằng bạn có thể kiểm soát vận mệnh? Bạn sẽ làm cho một thiết bị phổ quát mà có thể được sử dụng trong các tòa nhà 4 đến 40 câu chuyện, một kiệt tác của điện tử? Được rồi, ngay cả khi bạn quản lý để làm như một viên ngọc điện tử, nhà đầu

tư của bạn sẽ chờ đợi ở phía trước cửa của bạn yêu cầu một máy ảnh trong thang máy Hoặc cho âm nhạc thư giãn trong trường hợp của sự thất bại của thang

máy Hoặc cho hai cánh cửa thang máy Dù sao, Murphy của pháp luật là không mủi lòng và bạn chắc chắn sẽ không thể làm cho một lợi thế của tất cả các nỗ lực

mà bạn đã thực hiện Thật không may, tất cả mọi thứ mà đã được nói bây giờ là sự thật Đây là những gì xử lý điện tử "thực sự có nghĩa Không, chờ đợi, chúng ta hãy sửa ourself, đó là làm thế nào nó là cho đến khi các vi điều khiển đầu tiên được thiết kế vi điều khiển nhỏ, mạnh mẽ và giá rẻ Kể từ thời điểm này, chương trình của họ dừng lại là một khoa học, tất cả mọi thứ đã hướng khác

Thiết bị điện tử có khả năng kiểm soát một chiếc tàu ngầm nhỏ, một cần cẩu hay thang máy đã đề cập ở trên được xây dựng trong một chip duy nhất Vi điều khiển cung cấp một loạt các ứng dụng và chỉ có một số người trong số họ thường được

sử dụng Đó là vào bạn để quyết định những gì bạn muốn vi điều khiển để làm và

đổ một chương trình có chứa các hướng dẫn thích hợp vào nó Trước khi bật thiết

bị, hoạt động của nó phải được kiểm tra bằng cách mô phỏng một Nếu tất cả mọi thứ hoạt động tốt, xây dựng các vi điều khiển vào thiết bị của bạn Nếu bạn cần

Trang 4

thay đổi, cải tiến hoặc nâng cấp chương trình, chỉ cần làm điều đó Cho đến khi nào? Cho đến khi bạn cảm thấy hài lòng.Đó là tất cả.

Trang 6

Bạn có biết rằng tất cả mọi người có thể được xếp vào một trong 10 nhóm những người đã quen thuộc với hệ thống số nhị phân và những người không quen thuộc với nó Bạn không hiểu? Điều này có nghĩa rằng bạn vẫn thuộc về nhóm thứ

hai Nếu bạn muốn thay đổi tình trạng của bạn đọc các văn bản sau đây mô tả một cách vắn tắt về các khái niệm cơ bản được sử dụng hơn nữa trong cuốn sách này (chỉ để chắc chắn rằng chúng ta đang ở trên cùng một trang).

1,2 SỐ, SỐ, SỐ

Toán học là một khoa học tốt như vậy! Tất cả mọi thứ như vậy là hợp lý Toàn thể vũ trụ có thể được mô tả với 10 chữ số duy nhất Tuy nhiên, nó thực sự có được như vậy? Chúng ta cần chính xác mười chữ số? Tất nhiên là không, nó chỉ là một vấn đề của thói quen Hãy nhớ bài học từ trường Ví dụ, số 764 có nghĩa là: bốn đơn vị, sáu hàng chục và bảy trăm đô làm những gì Đó là đơn giản như vậy! Nó

có thể được mô tả một cách phức tạp hơn? Tất nhiên nó có thể: 4 + 60 +

700 Thậm chí còn phức tạp hơn? Có: 4 * 1 + 6 * 10 + 7 * 100 Con số này có thể nhìn khoa học hơn? Câu trả lời là có một lần nữa: 4 * 100 + 6 * 101 + 7 * 102 Nó thực sự có nghĩa gì? Tại sao chúng ta sử dụng chính xác những con số: 100, 101 và 102? Tại sao nó luôn luôn về con số 10? Bởi vì chúng ta sử dụng mười chữ số khác nhau (0, 1, 2, 8, 9) Nói cách khác, chúng tôi sử dụng cơ sở-10 hệ thống số, tức

là hệ thống số thập phân

Trang 7

Hệ thống số nhị phân

Điều gì sẽ xảy ra nếu chỉ có hai chữ số là sử dụng-0 và 1? Hoặc nếu chúng ta

không không biết làm thế nào để xác định xem cái gì là 3 hoặc 5 lần so với cái gì khác? Hoặc nếu chúng ta bị hạn chế khi so sánh hai kích cỡ, tức là nếu chúng ta chỉ

có thể nhà nước là một cái gì đó tồn tại (1) hoặc không tồn tại (0)? Câu trả lời là

"không có gì đặc biệt", chúng tôi sẽ tiếp tục sử dụng mã số trong cùng một cách như chúng ta bây giờ, nhưng họ sẽ xem xét một chút khác nhau Ví dụ:

11.011.010 Bao nhiêu trang của một cuốn sách nào số 11011010 bao gồm? Để tìm hiểu điều đó, bạn chỉ cần làm theo cùng một logic như trong ví dụ trước, nhưng theo thứ tự ngược Ghi nhớ rằng tất cả những điều này là về toán học với chỉ có hai chữ số 0 và 1, tức là căn cứ-2 số hệ thống (hệ thống số nhị phân)

Rõ ràng là cùng một số đại diện trong hai hệ thống số khác nhau Sự khác biệt duy nhất giữa hai đại diện là số lượng cần thiết để viết một số chữ số Một chữ số (2) được sử dụng để ghi các số 2 trong hệ thập phân, trong khi đó hai chữ số (1 và 0) được sử dụng để viết nó trong hệ nhị phân hệ thống Bạn có đồng ý rằng có 10 nhóm người? Chào mừng bạn đến với thế giới của số học nhị phân! Bạn có bất cứ

ý tưởng nơi nó được sử dụng?

Ngoại trừ điều kiện phòng thí nghiệm kiểm soát chặt chẽ, mạch điện tử phức tạp nhất có thể không xác định chính xác sự khác biệt giữa hai kích cỡ (hai giá trị điện

áp, ví dụ) nếu họ là quá nhỏ (thấp hơn so với một vài volt) Nguyên nhân là do tiếng ồn điện và một cái gì đó gọi là "môi trường làm việc thực tế '(không thể đoán trước thay đổi của điện áp cung cấp điện, thay đổi nhiệt độ, khả năng chịu đựng các giá trị được xây dựng trong các thành phần ) Hãy tưởng tượng một máy tính

Trang 8

hoạt động dựa trên các số thập phân bằng cách xử lý chúng theo cách sau: 0 = 0V,

Hệ thập lục phân số hệ thống

Vào lúc bắt đầu của phát triển máy tính, nó đã nhận ra rằng mọi người đã có rất nhiều khó khăn trong việc xử lý các số nhị phân Vì lý do này, một hệ thống số mới, bằng cách sử dụng 16 ký hiệu khác nhau được thành lập Nó được gọi là hệ thập lục phân số hệ thống và bao gồm mười chữ số chúng tôi được sử dụng để (0,

1, 2, 3, 9) và sáu ký tự của bảng chữ cái A, B, C, D, E và F Bạn có thể tự hỏi về mục đích của sự kết hợp này có vẻ kỳ lạ? Chỉ cần nhìn cách hoàn hảo phù hợp với câu chuyện về những con số nhị phân và bạn sẽ hiểu

Số lượng lớn nhất có thể được đại diện bởi 4 chữ số nhị phân là số 1111 Nó tương ứng với số 15 trong hệ thập phân, trong khi đó trong hệ thống thập lục phân được đại diện bởi chỉ có một chữ số F Nó là số 1-con số lớn nhất trong hệ thống thập lục phân Bạn có thấy cách khéo léo nó được sử dụng? Số lượng lớn nhất bằng văn bản với tám chữ số nhị phân là cùng một lúc 2-chữ số thập lục phân lớn nhất.Đừng quên rằng các máy tính sử dụng các số nhị phân 8-chữ số Bởi cơ hội?

BCD MÃ

BCD mã là một mã nhị phân cho số thập phân ( B inary C oded D ecimal ) Nó

được sử dụng để cho phép các mạch điện tử để giao tiếp với các thiết bị ngoại vi sử dụng hệ thống số thập phân hoặc trong hệ nhị phân thế giới riêng của họ bằng cách

sử dụng Nó bao gồm các số nhị phân 4-chữ số đại diện cho mười chữ số đầu tiên

Trang 9

(0, 1, 2, 3 8, 9) Mặc dù bốn chữ số có thể cung cấp cho tổng số 16 kết hợp có thể, các mã BCD bình thường chỉ sử dụng đầu tiên.

NUMBER hệ thống chuyển đổi

Hệ thống số nhị phân được sử dụng phổ biến nhất, hệ thống số thập phân là dễ hiểu nhất, trong khi hệ thống thập lục phân là một nơi nào đó giữa chúng Vì vậy, nó là rất quan trọng để tìm hiểu làm thế nào để chuyển đổi số từ một hệ thống số khác, tức là làm thế nào để chuyển một chuỗi số không và những người thân vào các giá trị hiểu

Nhị phân để chuyển đổi số thập phân

Chữ số trong một số nhị phân có giá trị khác nhau tùy thuộc vào vị trí họ có trong

số đó Ngoài ra, mỗi vị trí có thể chứa 0 hoặc 1 và giá trị của nó có thể dễ dàng xác định bằng cách đếm vị trí của nó từ bên phải Để thực hiện việc chuyển đổi một số nhị phân sang thập phân, nó là cần thiết để nhân các giá trị với những chữ số tương ứng (0 or1) và thêm tất cả các kết quả Sự kỳ diệu của nhị phân để chuyển đổi số thập phân làm việc Bạn có nghi ngờ? Nhìn vào ví dụ dưới đây:

Cần lưu ý rằng để đại diện cho các số thập phân từ 0 đến 3, bạn cần sử dụng chỉ có hai chữ số nhị phân Đối với số lượng lớn hơn, thêm chữ số nhị phân phải được sử dụng Vì vậy, để đại diện cho các số thập phân từ 0 đến 7, bạn cần ba chữ số nhị phân, cho những con số từ 0 đến 15, bạn cần bốn chữ số Đơn giản chỉ cần đặt, số nhị phân lớn nhất bao gồm các chữ số n thu được khi cơ sở 2 được nâng lên n Kết quả sau đó sẽ được trừ đi 1 Ví dụ, nếu n = 4:

2 4 - 1 = 16 - 1 = 15

Theo đó, bằng cách sử dụng 4 chữ số nhị phân có thể đại diện cho số thập phân từ

0 đến 15, trong đó số tiền đến 16 giá trị khác nhau trong tổng số

Thập lục phân để chuyển đổi số thập phân

Để thực hiện việc chuyển đổi một số thập lục phân sang thập phân, mỗi chữ số thập lục phân được nhân với số 16 đưa ra bởi giá trị vị trí của nó Ví dụ:

Trang 10

Thập lục phân để chuyển đổi số nhị phân

Nó không phải là cần thiết để thực hiện bất kỳ tính toán để chuyển đổi số thập lục phân sang nhị phân Chữ số thập lục phân chỉ đơn giản là thay thế bằng các chữ số nhị phân thích hợp Kể từ khi các chữ số thập lục phân tối đa là tương đương với

số thập phân 15, chúng ta cần phải sử dụng bốn chữ số nhị phân để đại diện cho một hệ thập lục phân chữ số Ví dụ:

Một bảng so sánh dưới đây chứa các giá trị số 0-255 trong ba hệ thống số khác nhau Đây có lẽ là cách dễ nhất để hiểu được logic thông thường được áp dụng cho tất cả các hệ thống

Trang 11

KÝ MÃ SỐ

Hệ thống số thập lục phân là cùng với hệ thống nhị phân và thập phân được coi là

hệ thống số quan trọng nhất đối với chúng tôi Nó rất dễ dàng để thực hiện chuyển đổi của bất kỳ số thập lục phân sang nhị phân và nó cũng dễ dàng để ghi nhớ

nó Tuy nhiên, những chuyển đổi này có thể gây nhầm lẫn Ví dụ, câu "Nó là cần thiết để đếm 110 sản phẩm trên dây chuyền lắp ráp" những gì thực sự có nghĩa là gì? Tùy thuộc vào cho dù đó là về hệ thống nhị phân, thập phân hoặc thập lục phân, kết quả có thể là 6, 110 hoặc 272 sản phẩm, tương ứng! Theo đó, để tránh sự hiểu lầm, tiền tố và hậu tố khác nhau trực tiếp thêm vào những con số Tiền tố hoặc 0x cũng như hậu tố h đánh dấu các số trong hệ thống thập lục phân Ví dụ, các 10AF số thập lục phân có thể nhìn $ 10AF, 0x10AF hoặc 10AFh Tương tự như vậy, số nhị phân thường nhận được% tiền tố hoặc 0B Nếu một số không có cả hậu

tố cũng không tiền tố nó được coi là số thập phân Thật không may, cách này, các con số đánh dấu là không được chuẩn hóa, do đó phụ thuộc vào ứng dụng cụ thể

BIT

Lý thuyết nói rằng một chút là đơn vị cơ bản của thông tin Chúng ta hãy quên điều này cho một thời điểm và có một cái nhìn vào những gì nó trong thực tế Câu trả lời là không có gì đặc biệt một chút chỉ là một chữ số nhị phân Tương tự như

Trang 12

hệ thống số thập phân, trong đó chữ số của một số không có cùng giá trị (ví dụ các chữ số trong số thập phân 444 là như nhau, nhưng có giá trị khác nhau), 'ý nghĩa' của bit phụ thuộc vào vị trí của nó trong số nhị phân Vì không có điểm nói về các đơn vị, hàng chục trong số nhị phân, chữ số của họ được gọi là các bit số không (ngoài cùng bên phải bit), bit đầu tiên (thứ hai từ bên phải) Ngoài ra, kể từ khi

hệ thống nhị phân sử dụng hai chữ số (0 và 1), giá trị của một bit có thể là 0 hoặc 1

Đừng nhầm lẫn nếu bạn gặp một chút có 4 giá trị, 16 hoặc 64 Nó chỉ có nghĩa rằng giá trị của nó được biểu diễn trong hệ thập phân Đơn giản chỉ cần đặt, chúng tôi đã

có quá nhiều quen với việc sử dụng các số thập phân biểu thức như vậy đã trở thành phổ biến Nó sẽ là chính xác để nói ví dụ, giá trị của bit thứ sáu của bất kỳ số nhị phân tương đương với số 64 số thập phân Nhưng chúng tôi là những thói quen của con người và cũ chết cứng Bên cạnh đó, làm thế nào nó sẽ âm thanh số 1-1 zeroone-không '?

là bit quan trọng nhất (MSB) Các bit ngoài cùng bên phải có giá trị ít nhất và do

đó được gọi là các bit ít quan trọng nhất (LSB) Kể từ khi tám số không và những người thân của một byte có thể được kết hợp trong 256 cách khác nhau, số thập phân lớn nhất có thể được đại diện bởi một byte là 255 (một sự kết hợp đại diện cho một số không)

Nibble được gọi là byte một nửa Tùy thuộc vào một nửa số đăng ký chúng ta đang nói về (trái hoặc phải), có 'cao' và nibbles 'thấp', tương ứng

Đã bao giờ bạn tự hỏi những gì các thiết bị điện tử trong phạm vi mạch kỹ thuật số tích hợp, vi điều khiển hoặc bộ vi xử lý giống như?Mạch gì thực hiện các hoạt động toán học phức tạp và đưa ra quyết định trông giống như? Bạn có biết rằng

Trang 13

schematic của họ dường như phức tạp bao gồm chỉ có một vài yếu tố khác nhau được gọi là mạch logic hoặc cổng logic?

1,3 PHẢI BIẾT CHI TIẾT

Các hoạt động của những yếu tố này được dựa trên các nguyên tắc thành lập một

toán học người Anh George Boole ở giữa 19 thế kỷ ngay cả trước khi bóng đèn đầu

tiên được phát minh Ban đầu, ý tưởng chính là để thể hiện các hình thức hợp lý thông qua chức năng đại số.Suy nghĩ như vậy đã sớm biến thành một sản phẩm thực tế đến nay sau đánh giá trong ngày nay được biết đến như là AND, OR và NOT mạch logic Nguyên tắc hoạt động của họ được biết đến như là đại số

Khi được sử dụng trong một chương trình, một logic và hoạt động được thực hiện theo hướng dẫn chương trình, mà sẽ được thảo luận sau Trong thời gian này, nó là

đủ để nhớ rằng logic, trong một chương trình đề cập đến các bit tương ứng của hai

sổ đăng ký

OR GATE

Trang 14

Tương tự như vậy, OR cửa cũng có hai hoặc nhiều đầu vào và đầu ra Nếu cổng chỉ

có hai đầu vào sau đây được áp dụng Alogic một (1) sẽ xuất hiện trên đầu ra của

nó nếu một trong hai đầu vào (A OR B) là lái xe cao (1) Nếu cổng OR có hơn hai đầu vào sau đó sau đây được áp dụng Alogic một (1) xuất hiện trên đầu ra của nó nếu đầu vào ít nhất một là lái xe cao (1) Nếu tất cả các yếu tố đầu vào có lý không (0), sản lượng sẽ được tại lý không (0) là tốt

Trong chương trình, logic OR hoạt động được thực hiện theo cách tương tự như logic và hoạt động

KHÔNG GATE

Các cổng logic không chỉ có một đầu vào và chỉ có một đầu ra Nó hoạt động trong một cách cực kỳ đơn giản Khi logic không (0) sẽ xuất hiện trên đầu vào của nó, một logic một (1) sẽ xuất hiện trên đầu ra của nó và ngược lại Nó có nghĩa rằng cửa khẩu này sẽ đảo ngược tín hiệu và thường được gọi là biến tần, do đó

Trang 15

Trong chương trình, logic hoạt động không được thực hiện khi một byte.Kết quả là một byte với bit ngược Nếu bit byte được coi là một con số, giá trị đảo ngược thực

sự là một sự bổ sung của nó Sự bổ sung của một số là một giá trị được thêm vào

số lượng làm cho nó đạt đến số lượng 8-chữ số nhị phân lớn nhất Nói cách khác, tổng của một số lượng 8-chữ số và bổ sung của nó luôn luôn là 255

HOẶC GATE

Cổng EXCLUSIVE OR (XOR) là một chút phức tạp so với cửa khác Nó đại diện cho một sự kết hợp của tất cả các người trong số họ Một logic một (1) xuất hiện trên đầu ra của nó chỉ khi đầu vào của nó có trạng thái logic khác nhau

Trong chương trình, hoạt động này thường được sử dụng để so sánh hai byte Phép trừ có thể được sử dụng cho mục đích tương tự (nếu kết quả là 0, byte bằng

nhau).Không giống như trừ, lợi thế của hoạt động này logic là nó là không thể có được kết quả âm tính

ĐĂNG KÝ

Trong ngắn hạn, một thanh ghi hoặc một tế bào bộ nhớ là một mạch điện tử có thể ghi nhớ trạng thái của một byte

Trang 16

SFR SỔ

Ngoài ra để đăng ký mà không có bất kỳ chức năng đặc biệt và được xác định trước, vi điều khiển đều có một số lượng đăng ký (SFR) có chức năng được xác định trước của nhà sản xuất Bit của họ được kết nối (nghĩa đen) để mạch nội bộ của vi điều khiển như giờ, A chuyển đổi / D, dao động và những người khác, có nghĩa là họ đang trực tiếp chỉ huy các hoạt động của các mạch, tức là vi điều khiển Hãy tưởng tượng 8, đó chính là kiểm soát hoạt động của một mạch nhỏ trong Đăng ký vi điều khiển đặc biệt Chức năng làm chính xác điều đó

Nói cách khác, trạng thái của bit đăng ký được thay đổi từ bên trong chương trình, đăng ký chạy mạch nhỏ trong vi điều khiển, các mạch thông qua các chân vi điều

Trang 17

khiển kết nối với các thiết bị điện tử ngoại vi được sử dụng cho Vâng, đó là vào bạn.

Cổng vào / ra

Để làm cho các vi điều khiển hữu ích, nó đã được kết nối đến điện tử bổ sung, ví

dụ như các thiết bị ngoại vi Mỗi vi điều khiển có một hoặc nhiều đăng ký (được gọi là cổng) kết nối với các chân vi điều khiển Tại sao đầu vào / đầu ra? Bởi vì bạn có thể thay đổi một chức năng pin như bạn muốn Ví dụ, giả sử bạn muốn thiết

bị của bạn để bật / tắt ba LED tín hiệu và đồng thời theo dõi trạng thái logic của bộ cảm biến hoặc nút ấn Một số các cổng cần phải được cấu hình vì vậy sẽ có ba đầu

ra (kết nối với đèn LED) và năm đầu vào (kết nối cảm biến) Nó chỉ đơn giản là thực hiện bằng phần mềm, điều đó có nghĩa rằng một chức năng pin có thể được thay đổi trong quá trình hoạt động

Một trong những chi tiết kỹ thuật quan trọng của chân đầu vào / đầu ra (I / O) là tối

đa hiện tại họ có thể xử lý Đối với hầu hết các vi điều khiển, hiện tại thu được từ một pin là đủ để kích hoạt một đèn LED hoặc thấp hiện nay một số thiết bị khác (10-20 mA) Các chi tiết I / O pins, tối đa hiện tại thấp hơn của một pin Nói cách khác, hiện tại tối đa quy định trong bảng dữ liệu chi tiết kỹ thuật cho bộ vi xử lý được chia sẻ trên tất cả các cổng I / O

Trang 18

Một chức năng pin quan trọng là nó có thể có điện trở kéo lên Những điện trở kết nối các chân điện áp cung cấp năng lượng tích cực và có hiệu lực khi pin được cấu hình như một đầu vào kết nối với một chuyển đổi cơ khí hoặc một nút đẩy Các phiên bản mới hơn của vi điều khiển có điện trở kéo lên cấu hình bằng phần mềm.Mỗi cổng I / O thường là dưới sự kiểm soát của SFR chuyên ngành, có nghĩa là mỗi bit đăng ký đó xác định trạng thái của pin vi điều khiển tương ứng Ví dụ, bằng cách viết logic một (1) một chút về đăng ký kiểm soát (SFR), pin cổng thích hợp tự động cấu hình như một đầu vào và điện áp mang lại cho nó có thể được đọc như là logic 0 hoặc 1 Nếu không, bằng cách viết số không đến SFR, pin cổng thích hợp được cấu hình như một đầu ra Điện áp của nó (0V hoặc 5V) tương ứng với trạng thái của bit đăng ký cổng thích hợp.

Trang 19

Read Only Memory (ROM) được sử dụng để lưu các chương trình đang được thực thi vĩnh viễn Kích thước của chương trình có thể được viết phụ thuộc vào kích thước của bộ nhớ này Ngày hôm nay của vi điều khiển thường được sử dụng 16-bit địa chỉ, điều đó có nghĩa rằng họ có thể địa chỉ lên đến 64 Kb bộ nhớ, tức là 65.535 địa điểm Là một người mới, chương trình của bạn sẽ hiếm khi vượt quá giới hạn của hàng trăm hướng dẫn Có một số loại ROM.

Masked ROM (MROM)

Masked ROM là một loại ROM nội dung được lập trình bởi nhà sản xuất Thuật ngữ "đeo mặt nạ 'xuất phát từ quá trình sản xuất, các khu vực của chip được đeo mặt nạ trước khi quá trình in ảnh litô Trong trường hợp của một sản xuất quy mô lớn, giá là rất thấp Quên nó

Một lập trình ROM (OTP ROM)

Một ROM thời gian lập trình cho phép bạn tải về một chương trình vào nó, nhưng, như tiểu bang tên của nó, một lần duy nhất Nếu một lỗi được phát hiện sau khi tải

về, điều duy nhất bạn có thể làm là để tải về các chương trình chính xác chip khác

UV erasable lập trình ROM (UV EPROM)

Cả hai quá trình sản xuất và đặc điểm của bộ nhớ này hoàn toàn giống với OTP ROM Tuy nhiên, gói của vi điều khiển với bộ nhớ này có một 'cửa sổ' nhận ra trên phía trên cùng của nó Nó cho phép dữ liệu được xoá hoàn toàn dưới ánh sáng tia cực tím mạnh mẽ Sau một vài phút nó có thể tải về một chương trình mới vào nó.Lắp đặt cửa sổ này là phức tạp, mà thường ảnh hưởng đến giá Từ quan điểm của chúng tôi, không may tiêu cực

Trang 20

flash ngày hôm nay Vì vậy, nếu bạn đang đi mua một vi điều khiển, loại để tìm kiếm chắc chắn là Flash!

Bộ nhớ truy cập ngẫu nhiên (RAM)

Một khi các nguồn cung cấp năng lượng là tắt nội dung của RAM sẽ bị xóa Nó được sử dụng cho các dữ liệu tạm thời lưu trữ và kết quả trung gian tạo ra và sử dụng trong quá trình hoạt động của vi điều khiển Ví dụ, nếu chương trình thực hiện một sự thêm (bất cứ điều gì), nó là cần thiết để có một đăng ký đại diện cho những gì trong cuộc sống hàng ngày được gọi là 'tổng hợp' Vì lý do này, một của

sổ đăng ký của RAM được gọi là 'tổng hợp' và được sử dụng cho các kết quả lưu trữ bổ sung

Điện erasable LẬP TRÌNH ROM (EEPROM)

Nội dung của EEPROM có thể được thay đổi trong quá trình hoạt động (tương tự như RAM), nhưng vẫn còn lưu vĩnh viễn ngay cả sau khi mất quyền lực (tương tự như ROM) Theo đó, EEPROM thường được sử dụng với các giá trị lưu trữ, được tạo ra trong quá trình hoạt động, phải được lưu vĩnh viễn Ví dụ, nếu bạn thiết kế một khóa điện tử hoặc báo thức, nó sẽ là tuyệt vời để cho phép người sử dụng để tạo ra và nhập mật khẩu, nhưng nó sẽ là vô dụng nếu bị mất mỗi khi việc cung cấp điện sẽ tắt Các giải pháp lý tưởng là một vi điều khiển với một EEPROM nhúng

Đây là lý do tại sao các vi điều khiển đã học được một trick trong quá trình tiến hóa của nó Thay vì kiểm tra mỗi pin hoặc bit liên tục, các đại biểu vi điều khiển 'chờ đợi vấn đề' một 'chuyên gia' sẽ trả lời chỉ khi sự chú ý xứng đáng một cái gì đó xảy ra

Các tín hiệu thông báo cho đơn vị xử lý trung tâm về sự kiện như vậy được gọi là một gián đoạn

CENTRAL UNIT Processor (CPU)

Như tên gọi của nó cho thấy, đây là một đơn vị giám sát và điều khiển tất cả các quá trình trong vi điều khiển Nó bao gồm các tiểu đơn vị khác nhau, trong đó quan trọng nhất là:

Trang 21

Hướng dẫn Decoder là một phần của các thiết bị điện tử hướng dẫn chương

trình giải mã và chạy các mạch khác trên cơ sở đó Hướng dẫn cài đặt mà là khác nhau cho mỗi gia đình vi điều khiển thể hiện khả năng của mạch này;

Đơn vị logic số học (ALU) thực hiện tất cả các hoạt động toán học và logic

khi dữ liệu;

Accumulator là một SFR liên quan chặt chẽ đến hoạt động của ALU Nó là

một loại bàn làm việc được sử dụng để lưu trữ tất cả các dữ liệu trên đó nên được thực hiện một số hoạt động (Ngoài ra, thay đổi / di chuyển ) Nó cũng lưu kết quả đã sẵn sàng cho sử dụng trong chế biến tiếp Một trong các

SFR, được gọi là Sổ hộ (PSW) , liên quan chặt chẽ accumulator Nó cho thấy

bất cứ lúc nào 'tình trạng' của một số được lưu trữ trong ắc (số lớn hơn hoặc

ít hơn không vv) Accumulator còn được gọi là làm việc đăng ký và được đánh dấu là W đăng ký hoặc chỉ W, do đó

BUS

Xe buýt bao gồm 8, 16 hay nhiều dây Có hai loại xe buýt: bus địa chỉ và bus dữ liệu Bus địa chỉ bao gồm như nhiều ngành, nghề cần thiết cho bộ nhớ địa chỉ Nó được sử dụng để truyền địa chỉ từ CPU đến bộ nhớ Bus dữ liệu rộng như các dữ liệu, trong trường hợp của chúng tôi nó là 8 bit hoặc dây điện rộng Nó được sử dụng để kết nối tất cả các mạch bên trong vi điều khiển

Giao tiếp nối tiếp

Kết nối giữa vi điều khiển và các thiết bị ngoại vi thông qua các cổng vào / ra song song là giải pháp lý tưởng trên khoảng cách ngắn hơn lên đến vài mét Tuy nhiên, trong các trường hợp khác khi nó là cần thiết để thiết lập truyền thông giữa hai thiết bị trên khoảng cách xa hơn nó không phải là có thể sử dụng kết nối song song Thay vào đó, giao tiếp nối tiếp được sử dụng

Ngày nay, hầu hết các vi điều khiển đã được xây dựng trong các hệ thống khác nhau cho giao tiếp nối tiếp như một thiết bị tiêu chuẩn Của các hệ thống này sẽ được sử dụng phụ thuộc vào nhiều yếu tố, trong đó quan trọng nhất là:

Trang 22

• Làm thế nào nhiều thiết bị vi điều khiển để trao đổi dữ liệu với?

• Làm thế nào nhanh chóng trao đổi dữ liệu có được không?

• Khoảng cách giữa các thiết bị là gì?

• Có cần thiết để gửi và nhận dữ liệu đồng thời?

Một trong những điều quan trọng nhất liên quan đến giao tiếp nối tiếp là Nghị định thư cần được thực hiện đúng Nó là một bộ các quy tắc phải được áp dụng theo thứ

tự rằng các thiết bị có thể giải thích một cách chính xác họ hai bên trao đổi dữ liệu May mắn thay, vi điều khiển sẽ tự động làm việc này, vì vậy mà công việc của người sử dụng lập trình viên / giảm để viết đơn giản (dữ liệu được gửi) và đọc (nhận được dữ liệu)

Tốc độ Baud

Thời hạn tốc độ truyền được sử dụng để biểu thị số lượng các bit được truyền tải

mỗi giây [bps] Lưu ý rằng nó đề cập đến bit, byte Nó thường được yêu cầu của giao thức rằng mỗi byte được chuyển giao cùng với một số các bit điều khiển Nó

có nghĩa là một byte trong dòng dữ liệu nối tiếp có thể bao gồm 11 bit Ví dụ, nếu tốc độ truyền là 300 bps sau đó tối đa là 37 và tối thiểu 27 byte có thể được truyền tải trên mỗi giây

Phổ biến nhất là sử dụng hệ thống giao tiếp nối tiếp là:

I 2 C (INTER mạch tích hợp)

Trang 23

Inter-mạch tích hợp là một hệ thống trao đổi dữ liệu nối tiếp giữa vi điều khiển và các mạch tích hợp chuyên ngành của một thế hệ mới Nó được sử dụng khi khoảng cách giữa chúng là ngắn (thu và máy phát thường là trên cùng một hội đồng quản trị in) Kết nối được thiết lập qua hai dây dẫn One được sử dụng để truyền dữ liệu, được sử dụng để đồng bộ hóa (đồng hồ tín hiệu) Như đã thấy trong hình dưới đây, một thiết bị luôn luôn là một bậc thầy Nó thực hiện địa chỉ của một con chip nô lệ trước khi bắt đầu truyền thông Bằng cách này, một vi điều khiển có thể giao tiếp với 112 thiết bị khác nhau Tốc độ truyền thường là 100 Kb / giây (chế độ tiêu chuẩn) hoặc 10 Kb / giây (chậm tốc độ baud chế độ) Gần đây đã xuất hiện các hệ thống với tốc độ truyền là 3,4 Mb / giây Khoảng cách giữa các thiết bị giao tiếp qua một chiếc xe buýt I2C được giới hạn vài mét.

SPI (SERIAL giao diện ngoại vi BUS)

Giao diện xe buýt ngoại vi nối tiếp (SPI) là một hệ thống cho giao tiếp nối tiếp trong đó sử dụng đến bốn dây dẫn, phổ biến 3 Một dây dẫn được sử dụng cho dữ liệu nhận được, một cho việc gửi dữ liệu, đồng bộ hóa và một cách khác để lựa chọn một thiết bị để giao tiếp với.Đây là một kết nối song công, có nghĩa là dữ liệu được gửi và nhận cùng một lúc

Tốc độ truyền tối đa là cao hơn trong hệ thống giao tiếp I2C

UART (UNIVERSAL không đồng bộ thu / phát)

Điều này sắp xếp thông tin liên lạc là không đồng bộ, có nghĩa là một dòng đặc biệt để chuyển tín hiệu đồng hồ không được sử dụng.Trong một số ứng dụng, chẳng hạn như kết nối vô tuyến hoặc sóng điều khiển từ xa hồng ngoại, tính năng

Trang 24

này là rất quan trọng Vì chỉ có một đường truyền thông được sử dụng, thu và máy phát hoạt động ở cùng một tỷ lệ được xác định trước để duy trì đồng bộ hóa cần thiết.Đây là một cách rất đơn giản chuyển dữ liệu kể từ khi nó về cơ bản đại diện cho việc chuyển đổi 8-bit dữ liệu từ song song với dạng nối tiếp Tốc độ truyền là không cao, lên đến 1 Mbit / giây.

Oscillator

Ngay cả xung tạo ra bởi dao động cho phép hoạt động hài hòa và đồng bộ của tất

cả các mạch bên trong vi điều khiển Dao động thường được cấu hình để sử dụng tinh thể thạch anh hoặc gốm cộng hưởng cho sự ổn định tần số, nhưng nó cũng có thể hoạt động như một mạch độc lập (như dao động RC) Điều quan trọng là để nói rằng các chỉ lệnh không được thực hiện theo tỷ giá áp đặt bởi các dao động riêng của mình, nhưng chậm hơn nhiều lần.Nó xảy ra bởi vì mỗi lệnh được thực hiện trong một vài bước.Trong một số vi điều khiển, cùng một số chu kỳ là cần thiết để thực hiện tất cả các hướng dẫn, trong khi ở những người khác, số chu kỳ là khác nhau cho các hướng dẫn khác nhau Theo đó, nếu hệ thống sử dụng tinh thể thạch anh với một tần số 20 Mhz, thời gian thực hiện các hướng dẫn một không phải là 50ns, nhưng 200, 400 hoặc 800 ns, tùy thuộc vào loại của MCU!

Nguồn mạch

Có hai điều đáng chú ý liên quan đến các mạch vi điều khiển cung cấp điện:

Brown ra là một tình trạng có khả năng gây nguy hiểm xảy ra tại thời điểm

vi điều khiển tắt hoặc khi điện áp cung cấp điện giảm xuống đến mức tối thiểu do tiếng ồn điện Khi vi điều khiển bao gồm mạch nhau với các cấp điện áp điều hành khác nhau, trạng thái này có thể gây ra hiệu suất out-of-

Trang 25

kiểm soát của nó Để ngăn chặn nó, vi điều khiển thường có một mạch tích hợp cho thiết lập lại ra màu nâu reset toàn bộ thiết bị điện tử ngay sau khi vi điều khiển phải gánh chịu một tình trạng khẩn cấp.

Pin thiết lập lại thường được đánh dấu là MCLR ( Master Clear Đặt

lại ) Nó được sử dụng để thiết lập lại bên ngoài của vi điều khiển bằng cách

áp dụng một logic không (0) hoặc một (1) nó, mà phụ thuộc vào các loại vi điều khiển.Trong trường hợp các mạch phóng điện ra không được xây dựng trong một mạch điện bên ngoài đơn giản nâu ra thiết lập lại có thể được kết nối với pin MCLR

BỒ BẤM GIỜ / THỐNG KÊ

Dao động vi điều khiển sử dụng thạch anh tinh thể cho các hoạt động của nó Mặc

dù nó không phải là giải pháp đơn giản, có nhiều lý do để sử dụng nó Tần số của

bộ dao động đó được xác định chính xác và rất ổn định, để xung nó tạo ra luôn luôn cùng một chiều rộng, mà làm cho chúng lý tưởng cho đo lường thời gian Tạo dao động như vậy cũng được sử dụng trong đồng hồ thạch anh Nếu nó là cần thiết

để đo thời gian giữa hai sự kiện, đó là đủ để đếm xung tạo ra bởi dao động

này Điều này là chính xác những gì bộ đếm thời gian, không có gì

Trang 26

Hầu hết các chương trình sử dụng các điện tử thu nhỏ 'đồng hồ bấm giờ' Đây là những thường 8 - hoặc 16-bit SFR các nội dung trong đó được tự động tăng thêm mỗi xung tới Sau khi đăng ký một nạp hoàn toàn, một ngắt có thể được tạo ra!Nếu bộ đếm thời gian sử dụng một bộ dao động thạch anh nội bộ cho hoạt động của mình sau đó nó có thể được sử dụng để đo thời gian giữa hai sự kiện (nếu giá trị đăng ký là T1 tại thời điểm đo bắt đầu, và T2 tại thời điểm nó chấm dứt, sau đó thời gian trôi qua bằng kết quả của phép trừ T2-T1) Nếu đăng ký sử dụng các xung đến từ các nguồn bên ngoài sau đó một giờ như vậy được biến thành một truy cập.

Đây chỉ là một lời giải thích đơn giản của hoạt động riêng của mình Tuy nhiên nó

là phức tạp hơn trong thực tế

TIMER HOẠT ĐỘNG như thế nào?

Trang 27

Trong thực tế, các xung được tạo ra bởi các bộ dao động thạch anh là một lần cho mỗi chu kỳ máy, trực tiếp hoặc thông qua một prescaler, mang đến cho các mạch

đó gia tăng số lượng được lưu trữ trong bộ đếm thời gian đăng ký Nếu một trong những hướng dẫn (một chu kỳ máy) kéo dài trong bốn giai đoạn dao động thạch anh sau đó con số này sẽ được tăng lên một triệu lần mỗi giây (mỗi micro giây) bằng cách nhúng thạch anh với tần số 4MHz

Nó rất dễ dàng để đo lường khoảng thời gian ngắn, tăng đến 256 micro giây, theo cách mô tả ở trên vì nó là số lớn nhất mà một trong đăng ký có thể lưu trữ Sự hạn chế này có thể dễ dàng khắc phục bằng nhiều cách như bằng cách sử dụng một bộ dao động chậm hơn, đăng ký với bit prescaler hoặc ngắt Hai giải pháp đầu tiên có một số điểm yếu vì vậy nó là đề nghị để sử dụng prescalers hoặc ngắt

SỬ DỤNG một prescaler TRONG HOẠT ĐỘNG TIMER

Prescaler là một thiết bị điện tử được sử dụng để giảm tần số bằng một yếu tố xác định trước Để tạo ra một xung đầu ra của nó, nó là cần thiết để mang lại 1, 2, 4 hoặc nhiều hơn xung đầu vào của nó Hầu hết các vi điều khiển có một hoặc nhiều prescalers xây dựng và tỷ lệ phân chia của họ có thể được thay đổi từ trong chương trình Prescaler được sử dụng khi nó là cần thiết để đo thời gian dài hơn Nếu

prescaler được chia sẻ bởi bộ đếm thời gian và watchdog timer, nó không thể được

sử dụng bởi cả hai cùng một lúc

Trang 28

Gián đoạn SỬ DỤNG TRONG HOẠT ĐỘNG TIMER

Nếu đăng ký hẹn giờ bao gồm 8 bit, số lượng lớn nhất nó có thể lưu trữ là 255 Đối với đăng ký 16-bit, nó là số 65,535 Nếu con số này bị vượt quá, các bộ đếm thời gian sẽ được tự động thiết lập lại và đếm sẽ bắt đầu từ số không một lần nữa Tình trạng này được gọi là một tràn Nếu được kích hoạt từ trong chương trình, tràn có thể gây ra một ngắt, cho phép hoàn toàn khả năng mới Ví dụ, có thể thay đổi trạng thái của các thanh ghi được sử dụng để đếm giây, phút hoặc vài ngày trong một thường xuyên bị gián đoạn Toàn bộ quá trình (trừ gián đoạn thường xuyên) thực hiện tự động đằng sau hậu trường, cho phép các mạch chính của vi điều khiển hoạt động bình thường

Con số này minh họa việc sử dụng một gián đoạn trong hoạt động hẹn giờ Sự chậm trễ thời gian tùy ý, có hầu như không có ảnh hưởng đến việc thực hiện

chương trình chính, có thể dễ dàng thu được bằng cách gán prescaler để hẹn giờ

THỐNG KÊ

Trang 29

Nếu bộ đếm thời gian nhận được xung frm pin đầu vào vi điều khiển, sau đó nó biến thành một truy cập Rõ ràng, đó là cùng một mạch điện tử có thể hoạt động ở hai chế độ khác nhau Sự khác biệt duy nhất là trong trường hợp này xung để được tính đến trên pin đầu vào vi điều khiển và thời gian (chiều rộng) chủ yếu là không xác định Đây là lý do tại sao họ không thể được sử dụng để đo lường thời gian, nhưng cho các mục đích khác như đếm sản phẩm trên dây chuyền lắp ráp, số vòng quay trục, hành khách (tùy thuộc vào cảm biến được sử dụng).

Dù sao, toàn bộ ý tưởng được dựa trên thực tế là mỗi chương trình được thực hiện trong vòng một vài dài hơn hoặc ngắn hơn Nếu các hướng dẫn thiết lập lại bộ đếm thời gian cơ quan giám sát được thiết lập tại các địa điểm chương trình thích hợp, bên cạnh các lệnh được thực hiện thường xuyên, sau đó hoạt động của bộ đếm thời gian cơ quan giám sát sẽ không ảnh hưởng đến việc thực hiện chương trình.Nếu vì bất kỳ lý do nào, thường điện tiếng ồn trong ngành công nghiệp, các truy cập

chương trình 'bị mắc kẹt' tại một số vị trí bộ nhớ mà từ đó có là không trở lại, các

bộ đếm thời gian cơ quan giám sát không sẽ được xóa, vì vậy các của sổ đăng ký

giá trị được liên tục tăng lên sẽ đạt được các tối đa et thì đấy ! Thiết lập lại xảy ra!

Trang 30

A / D CONVERTER

Tín hiệu bên ngoài thường về cơ bản khác nhau từ các vi điều khiển hiểu (những người thân và số không) và do đó phải được chuyển đổi vào giá trị hiểu cho vi điều khiển Một chất tương tự để chuyển đổi kỹ thuật số là một mạch điện tử chuyển đổi tín hiệu liên tục đến các số rời rạc kỹ thuật số Nói cách khác, mạch này chuyển đổi một giá trị tương tự thành một số nhị phân và vượt qua nó để CPU để chế biến tiếp.Module này do đó được sử dụng để đo điện áp đầu vào pin (giá trị tương tự)

Trang 31

Kết quả đo lường là một số (giá trị số) được sử dụng và xử lý sau này trong

chương trình

NỘI KIẾN TRÚC

Tất cả các vi điều khiển nâng cấp sử dụng một trong hai mô hình thiết kế cơ sở

được gọi là Harvard và kiến trúc von-Neumann

Họ đại diện cho hai cách khác nhau để trao đổi dữ liệu giữa CPU và bộ nhớ

VON-NEUMANN KIẾN TRÚC

Vi điều khiển bằng cách sử dụng kiến trúc von-Neumann chỉ có một khối bộ nhớ

và một 8-bit bus dữ liệu Như tất cả các dữ liệu được trao đổi thông qua 8 dòng này, xe buýt bị quá tải và thông tin liên lạc là rất chậm và không hiệu quả CPU có

Trang 32

thể đọc một hướng dẫn hoặc đọc / ghi dữ liệu từ / tới bộ nhớ Cả hai đều không có thể xảy ra cùng một lúc kể từ khi lệnh và dữ liệu sử dụng cùng một xe buýt Ví dụ, nếu một chương trình đọc bộ nhớ RAM đăng ký được gọi là 'SUM' nên được tăng thêm một (hướng dẫn: incf SUM), các vi điều khiển sẽ làm như sau:

1. Đọc một phần của chương trình hướng dẫn xác định những gì nên được thực hiện (trong trường hợp này nó chính là 'incf hướng dẫn tăng)

2. Đọc các phần khác của cùng một hướng dẫn cụ thể mà trên đó dữ liệu cần được thực hiện (trong trường hợp này nó là 'SUM' đăng ký)

3. Sau khi được tăng lên, các nội dung của đăng ký này phải được ghi vào sổ đăng ký mà từ đó nó đã được đọc (SUM đăng ký địa chỉ)

Xe buýt cùng một dữ liệu được sử dụng cho tất cả các hoạt động trung gian

HARVARD KIẾN TRÚC

Vi điều khiển sử dụng kiến trúc Harvard có hai xe buýt dữ liệu khác nhau Một là 8 bit rộng và kết nối CPU vào bộ nhớ RAM Bao gồm 12, 14 hoặc 16 dòng và kết

nối CPU ROM Theo đó, CPU có thể đọc một hướng dẫn và bộ nhớ truy cập dữ

liệu cùng một lúc Vì tất cả các ghi bộ nhớ RAM 8 bit rộng, tất cả các dữ liệu được trao đổi cùng chiều rộng Trong quá trình writin một chương trình, chỉ có 8-bit dữ liệu được xem xét Nói cách khác, tất cả các bạn có thể thay đổi từ trong chương

trình và tất cả các bạn có thể ảnh hưởng rộng là 8 bit Tất cả các chương trình được viết cho các vi điều khiển sẽ được lưu trữ trong ROM vi điều khiển nội bộ sau khi được biên dịch thành mã máy Tuy nhiên, vị trí bộ nhớ ROM không có 8, 12, 14

hoặc 16 bit Phần còn lại của các bit 4, 6 hoặc 8 đại diện cho hướng dẫn cụ thể cho CPU phải làm gì với dữ liệu 8-bit

Những lợi thế của thiết kế như sau:

• Tất cả các dữ liệu trong chương trình là một byte (8 bit) rộng Khi xe buýt

dữ liệu được sử dụng để đọc chương trình có 12, 14 hoặc 16 dòng, cả hướng

Trang 33

dẫn và dữ liệu có thể được đọc đồng thời sử dụng các bit phụ tùng Vì lý do này, tất cả các hướng dẫn hướng dẫn một chu kỳ, ngoại trừ các lệnh nhảy là hai chu kỳ hướng dẫn.

• Do thực tế rằng chương trình (ROM) và các dữ liệu tạm thời (RAM) riêng biệt, CPU có thể thực hiện hai hướng dẫn tại một thời điểm Đơn giản chỉ cần đặt, trong khi bộ nhớ RAM đọc hoặc viết trong tiến trình (kết thúc của một hướng dẫn), hướng dẫn chương trình tiếp theo được đọc thông qua các

xe buýt khác

• Khi sử dụng vi điều khiển với kiến trúc von-Neumann, người ta không bao giờ biết bao nhiêu bộ nhớ được chiếm bởi chương trình Về cơ bản, hầu hết các hướng dẫn chương trình chiếm hai vị trí bộ nhớ (chứa thông tin về

những gì nên được thực hiện, trong khi đó có chứa thông tin mà dữ liệu cần được thực hiện) Tuy nhiên, nó không phải là một quy tắc cứng và nhanh chóng, nhưng trường hợp phổ biến nhất Trong vi điều khiển với kiến trúc Harvard, xe buýt từ chương trình rộng hơn một byte, cho phép mỗi từ

chương trình bao gồm các hướng dẫn và dữ liệu, tức là một trong những địa chỉ bộ nhớ - một chương trình giảng dạy

HƯỚNG DẪN SET

Tất cả các hướng dẫn dễ hiểu cho vi điều khiển được gọi là Tập lệnh Khi bạn viết

một chương trình trong ngôn ngữ lắp ráp, bạn thực sự chỉ định hướng dẫn trong trật tự như vậy họ phải được thực hiện.Hạn chế chính ở đây là một số hướng dẫn

có sẵn Các nhà sản xuất thường áp dụng một trong hai phương pháp mô tả dưới đây:

RISC (GIẢM HƯỚNG DẪN SET COMPUTER)

Trong trường hợp này, vi điều khiển công nhận và thực hiện các hoạt động cơ bản (Ngoài ra, trừ, sao chép vv) Loại khác, hoạt động phức tạp hơn được thực hiện bằng cách kết hợp chúng Ví dụ, phép nhân được thực hiện bằng cách thực hiện việc thêm liên tục Điều này tương tự như khi bạn cố gắng giải thích một ai đó,

Trang 34

bằng cách sử dụng chỉ là một vài từ khác nhau, làm thế nào để tiếp cận với sân bay

ở một thành phố mới Tuy nhiên, nó không phải là màu đen như sơn Trước hết, ngôn ngữ này là dễ dàng để tìm hiểu Vi điều khiển là rất nhanh vì vậy nó không phải là có thể nhìn thấy tất cả số học 'nhào lộn' nó thực hiện Người dùng chỉ có thể xem kết quả cuối cùng Cuối cùng, nó không phải là quá khó để giải thích sân bay

là nếu bạn sử dụng những từ thích hợp chẳng hạn như trái, phải, km

CISC (Complex Instruction SET COMPUTER)

CISC là đối diện với RISC! Vi điều khiển được thiết kế để nhận ra hơn 200 hướng dẫn khác nhau có thể làm được rất nhiều điều ở tốc độ cao Tuy nhiên, một trong những nhu cầu để hiểu làm thế nào để có tất cả rằng đó là một Mời ngôn ngữ

phong phú, mà không phải là việc dễ dàng

Làm thế nào để lựa chọn đúng đắn?

Ok, bạn là người mới bắt đầu và bạn đã thực hiện một quyết định để đi vào một cuộc phiêu lưu làm việc với vi điều khiển Chúc mừng sự lựa chọn của bạn! Tuy nhiên, nó không phải là dễ dàng để chọn vi điều khiển như nó có vẻ Vấn đề là không phải là một phạm vi giới hạn của các thiết bị, mà ngược lại!

Trước khi bạn bắt đầu thiết kế một thiết bị dựa trên vi điều khiển, suy nghĩ sau đây: tôi sẽ cần bao nhiêu dòng đầu vào / đầu ra cho hoạt động? Cần thực hiện một số hoạt động khác hơn là chỉ cần bật rơ le on / off? Liệu nó cần một số mô-đun

chuyên ngành như giao tiếp nối tiếp, A / D chuyển đổi vv? Khi bạn tạo ra một bức tranh rõ ràng về những gì bạn cần, phạm vi lựa chọn được giảm đáng kể và đó là thời gian để suy nghĩ về giá cả Bạn có kế hoạch để có nhiều thiết bị cùng

một? Hàng trăm? Một triệu? Dù sao, bạn sẽ có được điểm

Nếu bạn nghĩ rằng tất cả những điều này cho lần đầu tiên thì tất cả mọi thứ có vẻ một chút bối rối Vì lý do này, đi từng bước Trước hết, chọn các nhà sản xuất, tức

là gia đình vi điều khiển bạn có thể dễ dàng có được Nghiên cứu một mô hình cụ thể Tìm hiểu càng nhiều như bạn cần, không đi vào chi tiết Giải quyết một vấn đề

cụ thể và không thể tin được một cái gì đó sẽ xảy ra, bạn sẽ có thể xử lý bất kỳ mô hình thuộc với gia đình vi điều khiển

Hãy nhớ học tập để đi xe đạp Sau khi một số vết bầm tím ở đầu, bạn đã có thể để giữ thăng bằng, sau đó dễ dàng đi bất kỳ xe đạp khác.Và tất nhiên, bạn sẽ không bao giờ quên lập trình cũng giống như bạn sẽ không bao giờ quên đi xe đạp!

1,4 PIC vi điều khiển

PIC vi điều khiển được thiết kế bởi Microchip Technology có khả năng lựa chọn tốt

nhất cho người mới bắt đầu Đây là lý do tại sao

Trang 35

Tên gọi ban đầu của vi điều khiển này là PICmicro ( ngoại vi giao diện điều

khiển ), nhưng nó là tốt hơn được biết đến như là PIC Tổ tiên của mình, được gọi

là PIC1650 được thiết kế vào năm 1975 bởi General Instruments Nó có nghĩa là

cho các mục đích hoàn toàn khác nhau Khoảng mười năm sau đó, mạch này đã

được chuyển thành một vi điều khiển PIC thực sự bằng cách thêm bộ nhớ

EEPROM Hôm nay, Microchip Technology công bố sản xuất của mẫu tỷ 5.

Nếu bạn quan tâm trong việc học thêm về nó, chỉ cần giữ đọc

Ý tưởng chính với cuốn sách này là để cung cấp cho người dùng với thông tin cần

thiết để ông có thể sử dụng vi điều khiển trong thực tế sau khi đọc nó Để tránh

giải thích tẻ nhạt và câu chuyện bất tận về các tính năng hữu ích của vi điều khiển

khác nhau, cuốn sách này mô tả hoạt động của một mô hình cụ thể thuộc tầng lớp

trung lưu cao ' Nó là đủ PIC16F887-mạnh mẽ để đáng được chú ý và đủ đơn giản

để thể dễ dàng trình bày cho tất cả mọi người Vì vậy, các chương sau đây mô tả vi

điều khiển chi tiết này, nhưng đề cập đến toàn bộ gia đình PIC.

[Kbytes]

RAM [bytes]

Pins Clock

Freq

[MHz]

A /

D đầu vào

Nghị quyết đổi A / D

Compar-ators

8/16

- bit Thời Gian

Seria

l Comm

PW

M đầu ra

Những người khác

Base-Line 8 - bit, kiến trúc, độ dài của Chỉ thị 12-bit

3,5

64 - 128

Trang 36

3,5

64 - 128

14 - 20

12

1 x 16

USA

RT I2C SPI

32 - 48

4 - 16

10 hoặc 12

0 - 3

0 - 2

x 8 2

- 3 x 16

USB2.0 CAN2.0 USA

RT I2C SPI

0 - 5

3936

28 - 100

40 - 48

10 - 16

x 8 2

- 3 x 16

USB2.0 USA

RT Ethernet I2C SPI

2 - 5

3936

28 - 44

13

3 x 16

USA

RT I2C SPI

-Tất cả sử dụng vi điều khiển PIC Harvard kiến trúc, có nghĩa là bộ nhớ chương

trình của họ được kết nối với CPU qua hơn 8 dòng Tùy thuộc vào chiều rộng xe buýt, có 12 -, 14 - và 16-bit vi điều khiển Bảng trên cho thấy tính năng chính của

ba loại này

Như đã thấy trong bảng trên trang trước đó, ngoại trừ '16-bit monsters' PIC

24FXXX và PIC 24HXXX-tất cả các vi điều khiển PIC có kiến trúc Harvard 8-bit

và thuộc một trong ba nhóm lớn Như vậy, tùy thuộc vào kích thước của từ chương trình có thể loại vi điều khiển đầu tiên, thứ hai và thứ ba, tức là 12 -, 14 - hoặc vi

Trang 37

điều khiển 16-bit Có cốt lõi tương tự 8-bit, tất cả trong số họ sử dụng các tập lệnh

tương tự và phần cứng cơ bản 'bộ xương' kết nối cho các đơn vị nhiều hơn hoặc ít

hơn thiết bị ngoại vi

HƯỚNG DẪN SET

Các hướng dẫn thiết lập cho 16F8XX bao gồm trong tổng số 35 hướng dẫn Lý do

cho một số lượng nhỏ các hướng dẫn nằm trong kiến trúc RISC Điều này có nghĩa

rằng các chỉ lệnh được tối ưu hóa từ các khía cạnh của tốc độ hoạt động, đơn giản

trong kiến trúc và compactness mã Điều xấu về kiến trúc RISC là lập trình dự kiến

sẽ đối phó với các hướng dẫn Tất nhiên, điều này có liên quan chỉ khi bạn sử dụng

ngôn ngữ lắp ráp cho các lập trình Cuốn sách này đề cập đến chương trình cao hơn

ngôn ngữ lập trình C, có nghĩa là hầu hết công việc đã được thực hiện bởi một

người khác Bạn chỉ cần có hướng dẫn sử dụng tương đối đơn giản

HƯỚNG DẪN THỰC HIỆN THỜI GIAN

Tất cả các hướng dẫn này là hướng dẫn một chu kỳ Ngoại lệ duy nhất có thể được

hướng dẫn chi nhánh có điều kiện (nếu điều kiện được đáp ứng) hoặc hướng dẫn

thực hiện khi chương trình truy cập Trong cả hai trường hợp, hai chu kỳ được yêu

cầu để thực hiện hướng dẫn, trong khi chu kỳ thứ hai được thực hiện như là một

NOP ( No Operation ) Hướng dẫn Single-chu kỳ bao gồm bốn chu kỳ đồng

hồ Nếu Dao động 4MHz được sử dụng, thời gian danh nghĩa cho thực hiện lệnh

1μS Để được hướng dẫn nhảy, thời gian thực hiện giảng dạy là 2μS

Tập lệnh của vi điều khiển PIC 14-bit:

H Ư Ớ N G

D Ẫ N

Chuyển dữ liệu Hướng dẫn

Trang 38

SUBLW k Trừ W từ không đổi kW -> W C, DC,

BTFSS f, b Kiểm tra bit b của f Bỏ qua các

hướng dẫn sau đây nếu đặt

Bỏ qua nếu f (b)

= 1

Decfsz f, d Giảm dần f Bỏ qua các hướng dẫn

sau đây nếu rõ ràng

f-1 -> d bỏ qua nếu Z = 1

1 (2) 1, 2,

3INCFSZ f, d Tăng f Bỏ qua các hướng dẫn sau

đây nếu đặt

f +1 -> d bỏ qua nếu Z = 0

RETLW k Trở lại với liên tục trong W k -> W, TOS ->

Trang 39

* 2 Nếu chỉ lệnh được thực thi trên đăng ký TMR và nếu d = 1, prescaler sẽ xóa

* 3 Nếu máy tính được sửa đổi hoặc kiểm tra kết quả là logic một (1), hướng yêu cầu hai chu kỳ

Ngày đăng: 16/03/2014, 10:20

Xem thêm

HÌNH ẢNH LIÊN QUAN

Hình dưới đây cho thấy trạng thái của các chân P1A-P1D trong một chu kỳ PWM  đầy đủ. - c for pic pptx
Hình d ưới đây cho thấy trạng thái của các chân P1A-P1D trong một chu kỳ PWM đầy đủ (Trang 174)
Sơ đồ sau cho thấy ba chữ xuất hiện trên đầu vào RX. Các bộ đệm nhận được đọc  sau khi từ thứ ba, gây ra các bit OEER (tràn ngập lỗi bit) được thiết lập. - c for pic pptx
Sơ đồ sau cho thấy ba chữ xuất hiện trên đầu vào RX. Các bộ đệm nhận được đọc sau khi từ thứ ba, gây ra các bit OEER (tràn ngập lỗi bit) được thiết lập (Trang 188)
Hình dưới đây cho thấy sơ đồ khối của module MSSP trong I  2  chế độ C. - c for pic pptx
Hình d ưới đây cho thấy sơ đồ khối của module MSSP trong I 2 chế độ C (Trang 204)
Bảng dưới đây: - c for pic pptx
Bảng d ưới đây: (Trang 266)
Hình như kỹ thuật số - c for pic pptx
Hình nh ư kỹ thuật số (Trang 284)
Hình như là kết quả đầu ra - c for pic pptx
Hình nh ư là kết quả đầu ra (Trang 290)
Hình như là kết quả đầu ra - c for pic pptx
Hình nh ư là kết quả đầu ra (Trang 292)
Hình như một đầu vào analog - c for pic pptx
Hình nh ư một đầu vào analog (Trang 312)
Hình thức các chức năng được lưu trữ trong thư viện One_Wire. Có ba chức năng trong tổng số: - c for pic pptx
Hình th ức các chức năng được lưu trữ trong thư viện One_Wire. Có ba chức năng trong tổng số: (Trang 316)
Hình như đầu vào, - c for pic pptx
Hình nh ư đầu vào, (Trang 324)

TỪ KHÓA LIÊN QUAN

w