« Home « Kết quả tìm kiếm

VI ĐIỀU XỬ LÝ VÀ VI ĐIỀU KHIỂN


Tóm tắt Xem thử

- VI ĐIỀU XỬ LÝ VÀ VI ĐIỀU KHIỂN.
- Tìm hiểu về vi điều khiển I.1.
- Sơ lược về vi xử lý.
- Nhờ vậy vi xử lý có sự mềm dẻo hóa trong các chức năng của mình.
- Ngày nay vi xử lý có tốc độ tính toán rất cao và khả năng xử lý rất lớ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.v.v.
- 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 mà thôi..
- Để 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.
- Để 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.
- Từ vi xử lý đến vi điều khiển.
- Bởi vì hệ thống dù lớn hay nhỏ, nếu dùng vi xử lý thì cũng đòi hỏi các khối mạch điện giao tiếp phức tạp như nhau.
- 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.
- Vì một số nhược điểm trên 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).
- Thay vào đó, 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..
- Vi điều khiển được ứng dụng trong các dây chuyền tự động loại nhỏ, các robot có chức năng đơn giản, trong máy giặt, ôtô v.v....
- Năm 1976 Intel giới thiệu bộ vi điều khiển (microcontroller) 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..
- Hiện nay có rất nhiều họ Vi điều khiển trên thị trường với nhiều ứng dụng khác nhau, trong đó họ Vi điều khiển họ MCS-51 được sử dụng rất rộng rãi trên thế giới và ở Việt nam..
- Vào năm 1980 Intel công bố chíp 8051(80C51), bộ vi điều khiển đầu tiên của họ vi điều khiển MCS-51.
- Hiện nay Intel không còn cung cấp các loại Vi điều khiển họ MCS-51 nữa, thay vào đó các nhà sản xuất khác như Atmel, Philips/signetics, AMD, Siemens, Matra&Dallas, Semiconductors được cấp phép làm nhà cung cấp thứ hai cho các chip của họ MSC-51.
- Chip Vi điều khiển được sử dụng rộng rãi trên thế giới cũng như ở Việt Nam hiện nay là Vi điều khiển của hãng Atmel với nhiều chủng loại vi điều khiển khác nhau..
- Hãng Atmel có các chip Vi điều khiển có tính năng tương tự như chip Vi điều khiển MCS-51 của Intel, các mã số chip được thay đổi chút ít khi được Atmel sản xuất.
- chương trình tương tự như nhau.
- Vi điều khiển Atmel sau này ngày càng được cải tiến và được bổ sung thêm nhiều chức năng tiện lợi hơn cho người dùng..
- Sau khoảng thời gian cải tiến và phát triển, hãng Atmel tung ra thị trường dòng Vi điều khiển mang số hiệu 89Sxx với nhiều cải tiến và đặc biệt là có thêm khả năng nạp chương trình theo chế độ nối tiếp rất đơn giản và tiện lợi cho người sử dụng..
- Tất cả các Vi điều khiển trên đều có đặc tính cơ bản giống nhau về phần mềm (các tập lệnh lập trình như nhau), còn phần cứng được bổ sung với chip có mã số ở hai số cuối cao hơn, các Vi điều khiển sau này có nhiều tính năng vượt trội hơn Vi điều khiển thế hệ trước.
- Các Vi điều khiển 89Cxx như trong bảng 1 có cấu tạoROM và RAM như 98Sxx trong bảng 2, tuy nhiên 98Sxx được bổ sung một số tính năng và có thêm chế độ nạp nối tiếp..
- Trên thị trường hiện nay có rất nhiều loại sách hướng dẫn về Vi điều khiển với nhiều loại khác nhau như 8051, 89C51, 89S8252, 89S52 v.v.
- Chương trình.
- phần mềm dành cho các Vi điều khiển này là như nhau, vì vậy bạn có thể tham khảo thêm về Vi điều khiển ở các sách này..
- Các phần thực hành trên phần cứng thực tế, chúng tôi sẽ cùng các bạn thực hành với Vi điều khiển 89S52 (Mã đầy đủ:AT89S52.
- Các Vi điều khiển 89Sxx được cải tiến từ dòng 89Cxx..
- Chương trình viết dành cho 89Cxx đều chạy được với 89Sxx 89Sxx rẻ hơn 89Cxx 89Sxx có chế độ nạp nối tiếp với mạch nạp đơn giản có khả năng nạp ngay trên bo mạch mà không cần tháo chip vi điều khiển sang mạch khác để nạp chương trình và nhiều tính năng cải tiến khác..
- Các loại vi điều khiển khác Vi điều khiển AVR.
- Vi điều khiển PIC.
- Vi điều khiển MCUs của Philips.
- Các loại vi điều khiển chuyên dụng của các hãng sản xuất khác: Các loại vi điều khiển này được sử dụng chuyên dụng theo chức năng cần điều khiển..
- Sơ lược phần cứng vi điều khiển- giao tiếp bên ngoài.
- Nhờ vậy Vi điều khiển có khả năng nạp xoá chương trình bằng điện đến 10000 lần..
- Có thể mở rộng không gian nhớ chương trình ngoài 64KByte (bộ nhớ ROM ngoại): khi chương trình do người lập trình viết ra có dung lượng lớn hơn dung lượng bộ nhớ ROM nội, để lưu được chương trình này cần bộ nhớ ROM lớn hơn, cách giải quyết là kết nối Vi điều khiển với bộ nhớ ROM từ bên ngoài (hay còn gọi là ROM ngoại).
- Dung lượng bộ nhớ ROM ngoại lớn nhất mà Vi điều khiển có thể kết nối là 64KByte..
- Tuy nhiên, vì hầu hết các nhà phát triển chính dụng chíp đóng vỏ 40 chân với hai hàng chân DIP, nên chúng ta cùng khảo sát Vi điều khiển với 40 chân dạng DIP..
- Chân VCC: Chân số 40 là VCC cấp điện áp nguồn cho Vi điều khiển.
- Khi thiết kế cần sử dụng một mạch ổn áp để bảo vệ cho Vi điều khiển, cách đơn giản là sử dụng IC ổn áp 7805..
- Chức năng xuất/nhập :các chân này được dùng để nhận tín hiệu từ bên ngoài vào để xử lí, hoặc dùng để xuất tín hiệu ra bên ngoài, chẳng hạn xuất tín hiệu để điều khiển led đơn sáng tắt..
- P3.6 WR Ngõ điều khiển ghi dữ liệu lên bộ nhớ ngoài P3.7 RD Ngõ điều khiển đọc dữ liệu từ bộ nhớ bên.
- Chân RESET (RST): Ngõ vào RST ở chân 9 là ngõ vào Reset dùng để thiết lập trạng thái ban đầu cho vi điều khiển.
- Khi vi điều khiển làm việc với bộ nhớ chương trình ngoài, chân này phát ra tín hiệu kích hoạt ở mức thấp và được kích hoạt 2 lần trong một chu kì máy..
- Chân ALE (chân cho phép chốt địa chỉ- chân 30): Khi Vi điều khiển truy xuất bộ nhớ từ bên ngoài, port 0 vừa có chức năng là bus địa chỉ, vừa có chức năng là bus dữ liệu do đó phải tách các đường dữ liệu và địa chỉ.
- Tín hiệu ở chân ALE dùng làm tín hiệu điều khiển để giải đa hợp các đường địa chỉ và các đường dữ liệu khi kết nối chúng với IC chốt..
- Các xung tín hiệu ALE có tốc độ bằng 1/6 lần tần số dao động đưa vào Vi điều khiển, như vậy có thể dùng tín hiệu ở ngõ ra ALE làm xung clock cung cấp cho các phần khác của hệ thống..
- Khi EA nối với logic 1(+5V) thì Vi điều khiển thực hiện chương trình lấy từ bộ nhớ nội..
- Khi EA nối với logic 0(0V) thì Vi điều khiển thực hiện chương trình lấy từ bộ nhớ ngoại..
- Hoặc có thể cấp tín hiệu xung clock lấy từ một mạch tạo dao động nào đó và đưa vào Vi điều khiển theo cách sau:.
- Chu kì máy là khoảng thời gian cần thiết được qui định để Vi điều khiển thực hiện hoàn thành một lệnh cơ bản.
- T oc là chu kì của nguồn xung dao động cấp cho Vi điều khiển..
- f oc là tần số dao động cấp cho Vi điều khiển..
- Ví dụ: Ta kết nối Vi điều khiển với thạch anh có tần số f zat là 12MHz, thì chu kì máy.
- Việc kết nối chân RESET đảm bảo hệ thống bắt đầu làm việc khi Vi điều khiển được cấp điện, hoặc đang hoạt động mà hệ thống bị lỗi cần tác động cho Vi điều khiển hoạt động trở lại, hoặc do người sử dụng muốn quay về trạng thái hoạt động ban đầu.
- Với Vi điều khiển sử dụng thạch anh có tần số f zat = 12MHz sử dụng C=10µF và R=10KΩ..
- Chân Vi điều khiển khi ở mức 0:.
- Do đó khi kết nối với led hoặc các thiết bị khác Vi điều khiển sẽ gặp trở ngại là nếu tác động làm led sáng khi Vi điều khiển xuất ở mức 1, lúc này dòng và áp ra không đủ để led có thể sáng rõ (led đỏ sáng ở điện áp 1.6V-2.2V và dòng trong khoảng 10mA).
- Cho led sáng khi Vi điều khiển ở mức 0:.
- Cho led sáng khi Vi điều khiển xuất ở mức 1:.
- Như đã trình bày vì ngõ ra Vi điều khiển khi xuất ở mức 1 không đủ để cho led sáng, để led sáng được cần đặt thêm một điện trở kéo lên nguồn VCC(gọi là điện trở treo)..
- Khi Px.x ở mức1(+5V),dòng điện không chạy qua chân Vi điều khiển để về mass được, có sự lệch áp giữa hai chân led, dòng điện trong trường hợp này qua led về Mass do đó led sáng..
- Bộ nhớ chương trình- Bộ nhớ ROM.
- Chương trình là tập hợp các câu lệnh thể hiện các thuật toán để giải quyết các công việc cụ thể, chương trình do người thiết kế viết trên máy vi tính, sau đó được đưa vào lưu trong ROM của vi điều khiển, khi hoạt động, vi điều khiển truy xuất từng câu lệnh trong ROM để thực hiện chương trình.
- Bộ nhớ ROM được tích hợp trong chip Vi điều khiển với dung lượng tùy vào chủng loại cần dùng, chẳng hạn đối với 89S52 là 8KByte, với 89S53 là.
- Bộ nhớ bên trong Vi điều khiển 89Sxx là bộ nhớ Flash ROM cho phép xóa bộ nhớ ROM bằng điện và nạp vào chương trình mới cũng bằng điện và có thể nạp xóa nhiều lần.
- Ngoài ra Vi điều khiển còn có khả năng mở rộng bộ nhớ ROM với việc giao tiếp với bộ nhớ ROM bên ngoài lên đến 64KByte(địa chỉ từ 0000H đến FFFFH)..
- RAM nội trong Vi điều khiển được tổ chức như sau:.
- Các byte RAM 8 bit của vi điều khiển được gọi là "ô nhớ", nếu các ô nhớ có chức năng đặc biệt thường được gọi là "thanh ghi", nếu là bit thì được gọi là.
- Các thanh ghi đặc biệt này này được dùng để xác lập trạng thái hoạt động cần thiết cho Vi điều khiển..
- Hoạt động của vi điều khiển 8051.
- Vi điều khiển được sử dụng trong các sản phẩm tiêu dùng và các sản phẩm công nghiệp.
- Chúng được lập trình cho một công việc nhất định, các chương trình điều khiển tương đối lớn thường được lưu trữ trong ROM trong khi RAM được sử dụng như một bộ nhớ tạm thời do đó tỷ lệ ROM- RAM cao.
- Có thể sử dụng nhiều ngôn ngữ như C, Asembly để viết chương trình cho vi điều khiển.
- Khi bắt đầu chương trình vi điều khiển bắt đầu đọc mã lệnh từ vị trí đầu tiên của bộ nhớ (000H).
- Sau mỗi lần thực hiện lệnh vi điều khiển sẽ tìm đến để lấy lệnh ở vị trí ROM kế tiếp.
- Các lệnh chương trình sẽ điều khiển quá trình xuất nhập dữ liệu trên các Port để thực thi một công nhất định..
- Ngắt cổng nối tiếp khi vi điều khiển nhận hoặc truyền xong một byte bằng cổng nối tiếp.
- Mỗi ngắt được dành cho một vector ngắt kéo dài 8byte, người lập trình hoàn toàn có thể đặt phần chương trình xử lý ngắt ngay tại vector ngắt.
- Nếu không làm như vậy, mã chương trình xử lý ngắt này sẽ lấn sang, đè vào vector ngắt kế cận..
- Ví dụ ngắt cổng nối tiếp là ngắt được gây ra bởi 1 trong 2 nguyên nhân: vi điều khiển nhận xong hoặc truyền xong một byte dữ liệu qua cổng nối tiếp.
- Trong chương trình xử lý ngắt, người lập trình phải kiểm tra cờ TI hay cờ RI bằng 1 để quyết định xử lý ngắt truyền hay xử lý ngắt nhận.
- Mức ưu tiên cử ngắt ở đây có thể được hiểu là sự phân bậc, quyết định xử lý ngắt nào khi hai hay nhiều ngắt xảy ra.
- Thứ nhất là cơ chế phân bậc dành cho các ngắt xảy ra đồng thời, hai ngắt A và B xảy ra cùng một thời điểm nhìn từ phía vi điều khiển.
- Thứ hai là cơ chế phân bậc dành cho các ngắt xảy ra xen kẻ nhau, trong khi đang xử lý ngắt A thì ngắt B xảy ra..
- Với trường hợp các ngắt xảy rađồng thời, CPU sẽ xem xét mức ưu tiên của các ngắt đó, từ đó quyết định xử lý ngắt có mức ưu tiên cao hơn trước.
- IV-Ứng dụng vi điều khiển 1.Đề bài.
- Điều khiển trạng thái của 16 led đơn với các trạng thái sau:.
- Ta sử dụng các lệnh Asembly để điều khiển tín hiệu xuất ra các chân của vi xử lí điều khiển trạng thái của các led.
- 1.Tống Văn Ơn, Hoàng Đức Hải,” Họ vi điều khiển 8051”,Nhà xuất bản lao động - xã hội Hà Nội-2001.

Xem thử không khả dụng, vui lòng xem tại trang nguồn
hoặc xem Tóm tắt