Giao tiếp LED đơn dùng Psoc

Giao tiếp LED đơn dùng Psoc

Tác giả: biendt


Đầu tiên để học được vi điều khiển là ta lập trình bật tắt đèn LED cho quen với việc giao tiếp vào ra của vi điều khiển ở đây tôi dùng sử dụng Psoc CY8C29466 để giao tiếp với LED (Các dòng Vi xử lý khác cách ghép nối và thuật toán cũng tương đương). Và bài này tôi đã test trên thực tế nên chương trình ko có gì sai.

1: Lắp mạch.
Ở đây tôi dùng điều khiển bằng cách bơm dòng cho vi điều khiển. Dùng nguồn 5V cấp cho cả dãy LED (Qua điện trở hạn dòng) và CY8C29466.
Các bạn gắn lần lượt 8 con LED vào lần lượt các chân Port0 tương ứng của vi điều khiển . Chiều của catot của LED được nối vào với vi điều khiển qua các con trở 330 ohm còn đầu Anot của 8 con LED được nối chung với nhau lên 5V (Hình vẽ).
Thêm 1 mạch reset cho mạch: dùng 1 công tắc nối với chân số 19 thông qua 1 điện trở 1k và đầu kia được nối lên VCC. Khi công tắc được đóng thì mạch sẽ tự reset. Còn 1 tụ được nối giữa chân 28 và 14 là để không bị mất nguồn trong khoảng thời gian ngắn.
Sơ đồ mạch:

Chú ý : Đây là LED công suất nhỏ nên ta có thể cho dội dòng trực tiếp vào vi điều khiển được. Nếu các LED công suất lớn ta phải thông qua bộ đệm dòng cho LED.
2 : Nguyên lý hoạt động

Do nguồn 5V được nối từ LED vào vi điều khiển nên khi chân vi điều khiển ở mức 0 thì đèn sáng còn ở mức 1 thì đèn tắt. Psoc có cái hơi khác do các dòng vi điều khiển khác là nó tích hợp bộ dao động chuẩn bên trong ổn định nên việc lắp mạch và điều khiển rất dễ dàng với tốc độ xử lý lên tới 48MHZ.
3: Lập trình
Để điều khiển 1 LED ta cho chân vi điều khiển đo xuống mức 0. Tắt đi cho nó mức 1. Đây là mạch ghép theo nguyên tắc hút dòng cho LED. Do đây là mạch test IO và ít LED nên ta có thể lắp trực tiếp như thế này. Đối với nhiều LED ta phải dùng transitor để đệm dòng.
Ví dụ : Tôi muốn cho Port0_0 sáng thì tôi tính mã như sau: Tôi cho Port0_0 ở mức 0 còn các Port0_1 đến Port0_7 bằng 1. Tính mã nhị phân 4 bít ta được : 0xfe. Tắt nó đi thì ngược lai!
6 ) Chương trình.
+ Môi trường lập trình : Psoc Designer
+ Viết cho vi xử lý : Psoc Cy8C29466
+ Writed by biendt - www.hoiquandientu.com

Bình Luận
luckystar89x - 27/04/2015 - 09:05:25

thank bác nhé em cấu hình lại chân lên strong mạch chạy ok rồi mà bác kiểm tra lại cái mạch nạp cỏng lpt của bác xem em lắp ko chạy sau đó em so với 1 mạch khác cũng của bác thì thấy chân reset khác nhau em phải sửa lại mới chạy đấy


biendt - 26/04/2015 - 06:58:51

Bạn phải sửa lại cấu hình : Tần số, cấu hình chân. Bạn mở file của bài tập này lên vào phần cấu hình là thấy.


luckystar89x - 24/04/2015 - 01:50:48

file của em ở đây anh kiểm tra hộ xem có lỗi gì ko http://www.mediafire.com/download/y71m3hhodrovgan/PDProject2.rar


luckystar89x - 24/04/2015 - 12:58:04

sửa lại cấu hình là sửa những gì thế anh em để mặc định nó có chạy dc không


biendt - 24/04/2015 - 08:24:27

Bạn chọn chíp mới thì nó sẽ ra một cấu hình mới. Bạn sửa lại cấu hình.  Chân Reset là để reset lại chip.


luckystar89x - 24/04/2015 - 08:00:24

Em tạo 1 project mới chọn chip 27443 cấu hình chip giữ nguyên mặc dịnh có phải thay đổi gì ko anh.cho em hỏi thêm là lúc mình láp mạch thì có chú ý gì đặc biệt đến các chân reset ko hay chỉ cần cấp nguồn cho chip là dc


biendt - 23/04/2015 - 08:23:14

Code tương tự nhưng phải thay đổi cấu hình cho Chip tương tự.


luckystar89x - 22/04/2015 - 06:22:15

Cái này chuyển sang chip cy8c27443 có phải thay dổi code gì ko anh

 


Cùng danh mục: Cơ bản Vi điều khiển

Ứng dụng vi điều khiển AT89S52 đếm và đặt trước vòng quay từ 0-99 cho máy quấn băng keo máy biến áp xung

21/02/2018 21:32:46 / Lượt xem: 784 / Người đăng: Nguyễn Thế Trọng Nhân

Đây là bài mô phỏng vi điều khiển AT89S52 đếm và cài đặt vòng quay cho mô tơ hiển thị trên 2 led 7 vach từ 00-99. Áp dụng cho máy quấn keo biến áp xung

Chia sẻ đèn giao thông ngã tư PIC16F877A CCS

24/09/2016 16:09:11 / Lượt xem: 3489 / Người đăng: lam3ngon

Chào các bạn trong bài đăng trước mình đã hướng dẫn các bạn về đèn giao thông ngã tư nhưng là chạy 1 cách tư động nên trong bài này hướng dẫn các bạn điều khiển bằng nút nhấn nha !

BÀI 4 : Mô phỏng PIC16F877A (XC8) giao tiếp với nút nhấn

25/05/2016 20:50:22 / Lượt xem: 3399 / Người đăng: lam3ngon

Nói về nút nhấn (button) thì có lẽ chúng ta đã quá quen với nó rồi thậm chí chúng ta chúng ta còn tiếp xúc với nó hằng ngày nữa, ví dụ như : bàn phím máy tính, các thiết bị điều khiển tivi, máy điều hòa…..

Mô phỏng hiệu ứng 8 LED đơn với PIC16F877A XC8 (P2)

18/05/2016 15:37:21 / Lượt xem: 2951 / Người đăng: lam3ngon

Chào các bạn trong bài đăng này mình sẽ hướng dẫn các bạn tăng mức độ khó của PORJECT lên khó hơn 1 tý so với bài đăng trước nếu như bài đăng trước chúng ta chỉ dùng lại ở việc chớp tắt LED và sáng xen kẻ thì trong bài đăng này mình sẽ giới thiệu với các bạn về Đuổi LED (Chaser LED), sáng dồn, dịch trái, dịch phải, sáng dần, tắt dần…

Giao tiếp SPI và mô phỏng trên AVR

18/05/2016 13:20:22 / Lượt xem: 3224 / Người đăng: biendt

Bài này giúp các bạn biết cách sử dụng cách truyền thông nối tiếp đồng bộ SPI. Công cụ chính cũng là 2 bộ phần mềm AVRStudio (+gcc-avr) và Proteus. Thực chất ngôn ngữ lập trình vẫn là gcc-avr nhưng tôi không dùng Programmer Notepad để biết code như thông thường, thay vào đó tôi dùng AVRStudio làm trình biên tập,

Quảng cáo - Tài trợ

 -----------------------------

Hỗ trợ trực tuyến