Khác biệt giữa các bản “Chipi - Buzzer”

Từ ChipFC Wiki
Bước tới: chuyển hướng, tìm kiếm
(Mô tả các chân kết nối)
 
(Không hiển thị 5 phiên bản của 2 người dùng ở giữa)
Dòng 2: Dòng 2:
  
 
{{đang viết}}
 
{{đang viết}}
 +
 +
[[Image:ChipI Button.jpg|300px|thumb|right|ChipI Buzzer Top.jpg|Mô-đun Chipi Buzzer]]
  
 
== Giới thiệu ==
 
== Giới thiệu ==
Dòng 16: Dòng 18:
  
 
* Tích cực mức cao. Tức là khi có tín hiệu ở mức cao thì loa sẽ phát ra âm thanh.
 
* Tích cực mức cao. Tức là khi có tín hiệu ở mức cao thì loa sẽ phát ra âm thanh.
 +
* Có bộ phận tạo xung âm thanh bên trong, điều khiển đơn giản bằng cách cấp mức điện áp.
 
* Có mạch bảo vệ an toàn.
 
* Có mạch bảo vệ an toàn.
 
* Tương thích hoàn toàn với hệ thống ChipI-Base của chipfc
 
* Tương thích hoàn toàn với hệ thống ChipI-Base của chipfc
Dòng 28: Dòng 31:
 
! Thứ tự chân !! Tên gọi !! Loại !! Mô tả
 
! Thứ tự chân !! Tên gọi !! Loại !! Mô tả
 
|-
 
|-
| 1 || VCC || Power || Điện áp dương 3.3V hoặc 5V.  
+
| 1 || VCC || Power || Điện áp dương 5V.  
 
|-
 
|-
 
| 2 || GND || Power || Điện áp âm 0V
 
| 2 || GND || Power || Điện áp âm 0V
 
|-
 
|-
| 3 || SIGNAL || Output || Tín hiệu điều khiển loa bíp
+
| 3 || SIGNAL || Input || Tín hiệu điều khiển loa bíp
 
|-
 
|-
 
| 4 || X || NC || Không sử dụng
 
| 4 || X || NC || Không sử dụng
Dòng 41: Dòng 44:
 
[[Hình:Kết nối Chipi Buzzer với Arduino.jpg|x300px]]
 
[[Hình:Kết nối Chipi Buzzer với Arduino.jpg|x300px]]
  
Dưới đây là một ví dụ mẫu dùng nút nhấn để tắt/mở một đèn LED được kết nối như hình trên.
+
Dưới đây là một ví dụ mẫu dùng để kêu bíp sau mỗi 1s. Tương tự như ví dụ nháy led.
 
+
Gắn Shield Chipi Base với Arduino. Kết nối module Chipi Buzzer với Shield Chipi Base. Chân kết nối trong ví dụ này là chân số 2.
 
 
  
{| style="border-radius: 6px 6px 6px 6px;border: 1px dotted"
+
<syntaxhighlight lang="cpp">
|<syntaxhighlight lang="cpp">
+
//Bật tắt loa bíp sau mỗi 1s
//Bật tắt một đèn LED bằng cách nhấn nút
 
 
   
 
   
 
/*
 
/*
 
  Kết nối:
 
  Kết nối:
  * LED kết nối ở chân số 13
+
  * Loa bíp kết nối ở chân D2
* Nút nhấn kết nối ở chân số 2
 
* Nút nhấn có trở kéo lên
 
  
  * Ghi chú: hầu hết các bo Arduino đều có sẵn một con LED được kết nối ở chân 13.
+
  * Ghi chú:  
  * Các kết nối này đã được thực hiện sẵn khi bạn dùng bo chipiuno, Shield Base và module Chipi-Button
+
  * Các kết nối này đã được thực hiện sẵn khi bạn dùng bo chipiuno/chipipro, Shield Base và module Chipi-Buzzer
 
  */
 
  */
  
 
// Chúng ta nói với chương trình rằng:  
 
// Chúng ta nói với chương trình rằng:  
const int buttonPin = 2;    // chân nối với nút nhấn là chân số 2
+
const int buzzerPin = 2;    // chân nối với loa bíp là chân số 2
const int ledPin =  13;      // chân nối với LED là chân số 13
 
  
 
// Chúng ta đặt biến để lưu trữ trạng thái  
 
// Chúng ta đặt biến để lưu trữ trạng thái  
int buttonState = 0;        // Biến này để lưu trữ trạng thái của nút nhấn, mặc định là 0
+
int buzzerState = 0;        // Biến này để lưu trữ trạng thái của loa, mặc định là 0
  
 
void setup() {
 
void setup() {
  // Thiết lập chân LED là OUTPUT
+
   // Thiết lập cho chân nối với loa OUTPUT
  pinMode(ledPin, OUTPUT);     
+
   pinMode(buzzerPin, OUTPUT);     
   // Thiết lập cho chân nối với nút nhấn INPUT
 
   pinMode(buttonPin, INPUT);     
 
 
}
 
}
  
 
void loop(){
 
void loop(){
   // Đọc trạng thái của nút nhấn
+
   // Bật loa trong vòng 200ms
   buttonState = digitalRead(buttonPin);
+
   digitalWrite(buzzerPin,HIGH);
 +
  delay(200);
  
   // Kiểm tra nếu nút nhấn xuống mức LOW được nhấn
+
   // Tắt loa trong vòng 1s
  if (buttonState == LOW) {    
+
  digitalWrite(buzzerPin,LOW);
    // khi đó chúng ta cho sáng LED
+
  delay(1000);
    digitalWrite(ledPin, HIGH);   
+
}
  }  
+
</syntaxhighlight>
   else {
+
 
    // Nếu không thì tắt LED đi
+
Dưới đây là ví dụ kết hợp nhấn nút và kêu loa bíp. Kết nối Shield Chipi Base với mạch Arduino, kết nối Chipi Button (mô đun nút nhấn) vào chân số 4, kết nối Chipi Buzzer (mô đun loa bíp này) vào chân số 2.
    digitalWrite(ledPin, LOW);  
+
 
   }
+
<syntaxhighlight lang="cpp">
 +
/**
 +
* Nhấn nút để điều khiển loa bíp
 +
* Nút nhấn là module Chipi-Button, loa bíp là module ChipI-Buzzer
 +
* Sử dụng kết hợp với Chipiuno và Shield Base của chipfc
 +
*
 +
* Viết bởi: Thophi
 +
* Tham khảo tại http://chipfc.com/
 +
*/
 +
 
 +
byte buttonPin = 4;  //Nút nhấn nối với chân 4 của Arduino
 +
byte buzzerPin = 2;  //Loa bíp nối với chân 2 của Arduino
 +
 
 +
boolean reverse = true;  //Biến cho phép đảo ngược tác vụ
 +
 
 +
void setup(){
 +
  pinMode(buttonPin,INPUT);  //Nút nhấn là input
 +
  pinMode(buzzerPin,OUTPUT);  //Loa bíp là output
 +
  digitalWrite(buzzerPin,LOW);  //Mặc định là tắt loa
 +
}
 +
 
 +
void loop(){
 +
   boolean state = digitalRead(buttonPin);  //Biến state lưu trạng thái của nút nhấn
 +
  if(state ^ reverse) digitalWrite(buzzerPin,HIGH);  //Bật loa khi có nhấn nút
 +
  else digitalWrite(buzzerPin,LOW); //Không phải thì tắt loa đi
 +
   delay(300);  //Tạo độ trễ
 
}
 
}
 
</syntaxhighlight>
 
</syntaxhighlight>
|}
 
  
 
== Tham khảo thêm ==
 
== Tham khảo thêm ==
*[http://cloud.chipfc.com/File/Download?f=syjd3u13pnr Sơ đồ mạch]
+
*[http://cloud.chipfc.com/File/Download?f=syjd3u13pnr Sơ đồ mạch] (cập nhật sau)
 
*[[Hệ thống Chipi]]
 
*[[Hệ thống Chipi]]
 
*[[Bắt đầu với Arduino]]
 
*[[Bắt đầu với Arduino]]

Bản hiện tại lúc 14:34, ngày 7 tháng 6 năm 2018


Editor.png

Bài viết này đang được phát triển hoặc chỉnh sửa lớn.
Bạn có thể đóng góp để bài viết hoàn thiện hơn.
Sau khi chỉnh sửa xong thông báo này sẽ được gỡ bỏ.

Mô-đun Chipi Buzzer

Giới thiệu

ChipI - Buzzer trên trang chủ

ChipI - Buzzer là một mô-đun có một loa bíp thuộc Hệ thống Chipi của ChipFC. Đầu ra là rào cắm 4 chân tương thích với Chipi Base Shield. Đây là giải pháp nhanh chóng và tiện lợi cho dự án điện tử của bạn.

Với ChipI - Buzzer bạn có thể dễ dàng tạo cho mình một ứng dụng báo động bằng âm thanh hoặc một bản nhạc ngọt ngào.

ChipI Buzzer Top.jpg ChipI Buzzer Bot.jpg

Đặc điểm

  • Tích cực mức cao. Tức là khi có tín hiệu ở mức cao thì loa sẽ phát ra âm thanh.
  • Có bộ phận tạo xung âm thanh bên trong, điều khiển đơn giản bằng cách cấp mức điện áp.
  • Có mạch bảo vệ an toàn.
  • Tương thích hoàn toàn với hệ thống ChipI-Base của chipfc
  • Kích thước: 2.54mm x 2.54mm

Mô tả các chân kết nối

Chipi - Buzzer Pinout.png

Thứ tự chân Tên gọi Loại Mô tả
1 VCC Power Điện áp dương 5V.
2 GND Power Điện áp âm 0V
3 SIGNAL Input Tín hiệu điều khiển loa bíp
4 X NC Không sử dụng

Sử dụng

x300px

Dưới đây là một ví dụ mẫu dùng để kêu bíp sau mỗi 1s. Tương tự như ví dụ nháy led. Gắn Shield Chipi Base với Arduino. Kết nối module Chipi Buzzer với Shield Chipi Base. Chân kết nối trong ví dụ này là chân số 2.

//Bật tắt loa bíp sau mỗi 1s
 
/*
 Kết nối:
 * Loa bíp kết nối ở chân D2

 * Ghi chú: 
 * Các kết nối này đã được thực hiện sẵn khi bạn dùng bo chipiuno/chipipro, Shield Base và module Chipi-Buzzer
 */

// Chúng ta nói với chương trình rằng: 
const int buzzerPin = 2;     // chân nối với loa bíp là chân số 2

// Chúng ta đặt biến để lưu trữ trạng thái 
int buzzerState = 0;         // Biến này để lưu trữ trạng thái của loa, mặc định là 0

void setup() {
  // Thiết lập cho chân nối với loa là OUTPUT
  pinMode(buzzerPin, OUTPUT);     
}

void loop(){
  // Bật loa trong vòng 200ms
  digitalWrite(buzzerPin,HIGH);
  delay(200);

  // Tắt loa trong vòng 1s
  digitalWrite(buzzerPin,LOW);
  delay(1000);
}

Dưới đây là ví dụ kết hợp nhấn nút và kêu loa bíp. Kết nối Shield Chipi Base với mạch Arduino, kết nối Chipi Button (mô đun nút nhấn) vào chân số 4, kết nối Chipi Buzzer (mô đun loa bíp này) vào chân số 2.

/**
 * Nhấn nút để điều khiển loa bíp
 * Nút nhấn là module Chipi-Button, loa bíp là module ChipI-Buzzer 
 * Sử dụng kết hợp với Chipiuno và Shield Base của chipfc
 * 
 * Viết bởi: Thophi
 * Tham khảo tại http://chipfc.com/
 */

byte buttonPin = 4;  //Nút nhấn nối với chân 4 của Arduino
byte buzzerPin = 2;  //Loa bíp nối với chân 2 của Arduino

boolean reverse = true;  //Biến cho phép đảo ngược tác vụ

void setup(){
  pinMode(buttonPin,INPUT);  //Nút nhấn là input
  pinMode(buzzerPin,OUTPUT);  //Loa bíp là output
  digitalWrite(buzzerPin,LOW);  //Mặc định là tắt loa
}

void loop(){
  boolean state = digitalRead(buttonPin);  //Biến state lưu trạng thái của nút nhấn
  if(state ^ reverse) digitalWrite(buzzerPin,HIGH);  //Bật loa khi có nhấn nút
  else digitalWrite(buzzerPin,LOW);  //Không phải thì tắt loa đi 
  delay(300);  //Tạo độ trễ
}

Tham khảo thêm