Tải bản đầy đủ (.doc) (6 trang)

Chuong 7 mạch đo tốc độ động cơ và giá cước taxi

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (85.96 KB, 6 trang )

Chöông 6:Mạch đếm xung dùng vi điều khiển PIC
Ngày nay các bộ đếm đã trở nên thông dụng và có thể tìm thấy ở nhiều nơi trong thế
giới xung quanh ta như: bộ đếm người đến thăm bảo tàng hoặc nhà hát, bộ đếm trong
thi đấu thể thao. Trong công nghiệp, cũng có rất nhiều dây chuyền sản xuất cần đến các
bộ đếm. Thực tế cho thấy không chỉ có các đại lượng vật lý được đo đếm mà đôi khi là
cả xung tín hiệu hoặc lượng thông tin
Ngày nay các bộ đếm đã trở nên thông dụng và có thể tìm thấy ở nhiều nơi trong thế
giới xung quanh ta như: bộ đếm người đến thăm bảo tàng hoặc nhà hát, bộ đếm trong
thi đấu thể thao. Trong công nghiệp, cũng có rất nhiều dây chuyền sản xuất cần đến các
bộ đếm. Thực tế cho thấy không chỉ có các đại lượng vật lý được đo đếm mà đôi khi là
cả xung tín hiệu hoặc lượng thông tin. Một bộ đếm xung có thể được chia ra thành ba
phần hoặc ba khối. Khối thứ nhất là nguồn xung. Khối thứ hai là một linh kiện đếm,
thực hiện chức năng đếm, lưu trữ trạng thái và đưa ra kết quả. Cuối cùng, khối thứ ba
đóng vai trò biến đổi các trạng thái điện thành trạng thái có thể quan sát được, mà
thường là các bộ hiển thị quang học. Cho đến nay thì những bộ đếm 7490 đã bị loại trừ
khỏi các ứng dụng vì các bộ đếm dùng vi điều khiển có nhiều ưu điểm hơn hẳn. Dưới
đây xin giới thiệu với các bạn đọc quan tâm đến vi điều khiển một bộ đếm dùng vi điều
khiển PIC của công ty Microchip (Hoa Kỳ). Xung đưa đến lối vào bộ đếm là các xung
có mức lôgic TTL (0V, +5V). Tỷ số giữa thời gian có xung và thời gian trống xung
không có vai trò quan trọng, nhưng điều quan trọng là độ trống hoặc độ rộng của xung
không được nhỏ hơn 50 s. Dãy các xung được đưa đến lối vào của vi điều khiển, còn
bên trong là bộ nhớ cùng với chương trình điều khiển LED 7 thanh được viết (xem
chương trình dưới đây) và nạp vào vi điều khiển PIC 16F84 (của Microchip).


Một mạch đếm sử dụng vi điều
khiển PIC 16F84
Sườn tăng của xung lối vào sẽ kích hoạt ngắt trong khi một bộ đếm hàng “một” ở bên
trong vi điều khiển đếm tăng thêm 1. Đồng thời, bộ xử lý kiểm tra xem giá trị trên
thanh ghi “một” đã đạt giá trị 10 chưa. Nếu rồi thì lập tức thanh ghi “một” bị reset
(chuyển về giá trị bằng 0) và thanh ghi hàng “mười” sẽ tăng thêm 1. Nếu giá trị trên


thanh ghi “mười” đạt đến giá trị 10 thì lại bị reset và bộ đếm lại bắt đầu đến từ đầu (thủ
tục kế tiếp). Khi chạy chương trình chính dưới đây, các giá trị từ 0 đến 9 được hiển thị
trên một bộ hiển thị dùng LED 7 thanh với catốt chung. Hai số này được quét động theo
cách là PORTB được dùng để đưa dữ liệu về số (ma 7 thanh) cần hiển thị còn PORTA
được sử dụng để cho LED nào sáng. Các LED hiển thị 7 thanh được nối song song với
nhau theo cách các catốt đều được nối với nhau, hay như thường nói là catốt chung.
Mười catốt (C1) được nối qua một tranzito đến chân số 18 và catốt C2 được nối với
chân 17. Trong một khoảng thời gian ngắn vi điều khiển PIC cho phép một LED sáng
trong khi lại làm tắt các LED kia. Quá trình đó cứ thay đổi lần lượt làm cho người dùng
có cảm giác là các LED đã sáng đồng thời. Nếu giảm tần số quét động thì độ sáng sẽ
giảm đi thậm chí có thể làm cho các LED bị sáng bập bùng. Xung đồng hồ để giữ nhịp
cho hoạt động của vi điều khiển PIC được lấy từ bộ dao động thạch anh có tần số tương


đối cao (1 MHz). Trong một số trường hợp ta có thể sử dụng bộ dao động RC, nhưng
tần số sẽ giảm đi nhiều. Các tranzito cần được lựa chọn để đưa vào mạch vì mỗi lối ra
của vi điều khiển PIC chỉ có thể chịu được dòng điện đến 25 mA, trong khi các thanh
của LED có thể tiêu thụ dòng điện đến 30 mA (hoặc hơn thế nữa tuỳ theo kích thước)
và trong trường hợp xấu nhất, khi mà cả 7 thanh đều sáng, dòng điện tiêu thụ có thể đến
210 mA. Cường độ dòng trong trường hợp này sẽ làm hỏng lập tức lối ra của vi điều
khiển PIC. Tranzito được sử dụng như một tầng đệm và được điều khiển bởi dòng lối ra
từ vi điều khiển PIC, đồng thời cho phép nhận được cường độ dòng điện lớn hơn để
cung cấp cho bộ hiển thị, những loại thường được dùng là tranzito BC182 hoặc
2N2222. Để reset (đặt lại) ta chỉ việc nối chân số 4 của vi điều khiển PIC với đất. Khi
đó chương trình sẽ khởi động từ địa chỉ 0 (org 0). Giải pháp này cho phép ta reset bộ
đếm ngay cả trong trường hợp sử dụng bộ hiển thị với nhiều LED hơn, chẳng hạn bốn
LED. Để làm dừng bộ đếm ta chỉ việc “ngắt” đường dẫn lối vào cấp xung cho vi điều
khiển PIC. Việc sử dụng một chân riêng biệt để làm dừng bộ đếm sẽ làm mạch điện
phức tạp thêm. Sau đây là một thí dụ về một chương trình được viết ra và nạp vào vi
điều khiển PIC.







×