Mục lục:

Phát các bài hát với Arduino bằng cách sử dụng ADC đến PWM trên Flyback Transformer hoặc Loa: 4 bước
Phát các bài hát với Arduino bằng cách sử dụng ADC đến PWM trên Flyback Transformer hoặc Loa: 4 bước

Video: Phát các bài hát với Arduino bằng cách sử dụng ADC đến PWM trên Flyback Transformer hoặc Loa: 4 bước

Video: Phát các bài hát với Arduino bằng cách sử dụng ADC đến PWM trên Flyback Transformer hoặc Loa: 4 bước
Video: 191 - UC3525 PWM Dead Time 2024, Tháng mười một
Anonim
Phát các bài hát với Arduino bằng cách sử dụng ADC đến PWM trên Flyback Transformer hoặc Loa
Phát các bài hát với Arduino bằng cách sử dụng ADC đến PWM trên Flyback Transformer hoặc Loa
Phát các bài hát với Arduino bằng cách sử dụng ADC đến PWM trên Flyback Transformer hoặc Loa
Phát các bài hát với Arduino bằng cách sử dụng ADC đến PWM trên Flyback Transformer hoặc Loa
Phát các bài hát với Arduino bằng cách sử dụng ADC đến PWM trên Flyback Transformer hoặc Loa
Phát các bài hát với Arduino bằng cách sử dụng ADC đến PWM trên Flyback Transformer hoặc Loa
Phát các bài hát với Arduino bằng cách sử dụng ADC đến PWM trên Flyback Transformer hoặc Loa
Phát các bài hát với Arduino bằng cách sử dụng ADC đến PWM trên Flyback Transformer hoặc Loa

Xin chào các bạn, Đây là phần thứ hai trong một hướng dẫn khác của tôi (khó lắm), Về cơ bản, Trong Dự án này, tôi đã sử dụng ADC và TIMERS trên Arduino của mình để chuyển đổi Tín hiệu âm thanh thành Tín hiệu PWM.

Điều này dễ dàng hơn nhiều so với Bản hướng dẫn trước đây của tôi, Đây là liên kết của Bản hướng dẫn đầu tiên của tôi nếu bạn muốn xem. liên kết

Để hiểu lý thuyết về Tín hiệu âm thanh, Tốc độ bit, Độ sâu bit, Tốc độ lấy mẫu, Bạn có thể đọc lý thuyết trong hướng dẫn cuối cùng của tôi trên Có thể giảng dạy. Liên kết ở trên.

Bước 1: Những thứ chúng ta cần cho dự án này (Yêu cầu)

1. Bảng Arduino (chúng ta có thể sử dụng bất kỳ Bảng nào (328, 2560) tức là Mega, Uno, Mini, v.v. nhưng với các chân cụ thể khác nhau)

2. PC với Arduino Studio.

3. Breadboard hoặc Perfboard

4. Kết nối dây

5. TC4420 (Trình điều khiển Mosfet hoặc thứ tương tự)

6. Power Mosfet (kênh N hoặc P, vui lòng nối dây cho phù hợp) (Tôi đã sử dụng kênh N)

7. Loa hoặc Flyback Transformer (Có bạn đã đọc đúng !!)

8. Nguồn điện phù hợp (0-12V) (Tôi đã sử dụng Nguồn điện ATX của riêng mình)

9. Tản nhiệt (Tôi đã lấy từ PC cũ của mình).

10. Một Bộ khuếch đại (Bộ khuếch đại nhạc thông thường) hoặc Mạch khuếch đại.

Bước 2: Lý thuyết về ADC đến PWM

Lý thuyết về ADC đến PWM
Lý thuyết về ADC đến PWM
Lý thuyết về ADC đến PWM
Lý thuyết về ADC đến PWM

Vì vậy, trong Dự án này, tôi đã sử dụng ADC tích hợp của Arduino để lấy mẫu dữ liệu của Tín hiệu âm thanh.

ADC (Analog-To-Digital Converter) như tên định nghĩa, ADC chuyển đổi tín hiệu Analog thành các mẫu kỹ thuật số. Và đối với Arduino với độ sâu tối đa 10-bit. Nhưng đối với Dự án này, chúng tôi sẽ sử dụng Lấy mẫu 8-bit.

Trong khi sử dụng ADC của Arduino, chúng ta phải ghi nhớ ADC_reference Voltage.

Arduino Uno cung cấp 1.1V, 5V (Tham chiếu bên trong, có thể được thiết lập xác định trong mã) hoặc tham chiếu bên ngoài (mà chúng tôi phải áp dụng bên ngoài cho chân AREF).

Theo kinh nghiệm của tôi, tối thiểu là 2.0V nên được sử dụng làm điện áp tham chiếu để có được kết quả tốt từ ADC. Vì 1.1V không tốt ít nhất đối với tôi. (Kinh nghiệm cá nhân)

* QUAN TRỌNG * * QUAN TRỌNG ** QUAN TRỌNG ** QUAN TRỌNG ** QUAN TRỌNG ** QUAN TRỌNG *

Chúng ta cần sử dụng tín hiệu âm thanh được khuếch đại từ Bộ khuếch đại hoặc Mạch khuếch đại có điện áp đỉnh (Điện áp tối đa) là 5V

Bởi vì tôi đã đặt Tham chiếu điện áp bên trong là 5V cho Dự án của chúng tôi. Và tôi đang sử dụng Tín hiệu được khuếch đại bằng Bộ khuếch đại thông thường (Bộ khuếch đại âm nhạc), hầu hết đều có sẵn trong gia đình của chúng tôi hoặc bạn có thể tự chế tạo một chiếc cho riêng mình.

Vì vậy, bây giờ là phần chính. Tỷ lệ lấy mẫu, là số lượng mẫu ADC của chúng tôi lấy mỗi giây, nhiều hơn nữa là tỷ lệ chuyển đổi, tốt hơn sẽ là kết quả đầu ra, tương tự hơn sẽ là sóng đầu ra so với đầu vào.

Vì vậy, chúng tôi sẽ sử dụng tốc độ lấy mẫu là 33,33Khz trong Dự án này, bằng cách đặt xung nhịp ADC ở 500Khz.

Chúng ta có thể thấy rằng, chúng ta cần 13,5 chu kỳ đồng hồ ADC để hoàn thành một mẫu với lấy mẫu tự động. Với tần số 500Khz, có nghĩa là 1 / 500Khz = 2uS cho một chu kỳ ADC, có nghĩa là cần 13,5 * 2uS = 27uS để hoàn thành một mẫu khi lấy mẫu tự động được sử dụng. Bằng cách cung cấp thêm 3uS cho Bộ vi điều khiển (cho mặt an toàn), Tạo ra tổng cộng 30uS hoàn toàn cho một mẫu.

Vì vậy, 1 mẫu ở 30uS có nghĩa là 1 / 30uS = 33,33 KSamples / S.

Để đặt Tốc độ lấy mẫu, phụ thuộc vào TIMER0 của Arduino, vì trình kích hoạt lấy mẫu tự động ADC phụ thuộc vào tốc độ đó trong trường hợp của chúng tôi, như bạn cũng có thể thấy trong mã và biểu dữ liệu, chúng tôi đã đặt giá trị OCR0A = 60 (Tại sao vậy ???)

Vì theo công thức đã cho trong datasheet.

tần số (hoặc ở đây là Tốc độ mẫu) = Tần số đồng hồ của Arduino / Prescaler * Giá trị của OCR0A (trong trường hợp của chúng tôi)

Tần số hoặc Tỷ lệ mẫu chúng tôi muốn = 33,33KHz

Tần số đồng hồ = 16MHz

Giá trị Prescaler = 8 (trong trường hợp của chúng tôi)

Giá trị của OCR0A = chúng ta muốn tìm ??

mà chỉ đơn giản là cung cấp OCR0A = 60, cũng trong mã Arduino của chúng tôi.

TIMER1 được sử dụng cho sóng mang của tín hiệu âm thanh và tôi sẽ không đi sâu vào quá nhiều chi tiết về điều đó.

Vì vậy, đó là lý thuyết ngắn gọn về khái niệm ADC đến PWM với Arduino.

Bước 3: Sơ đồ

Sơ đồ
Sơ đồ

Kết nối tất cả các Thành phần như được hiển thị trong sơ đồ. Vì vậy, bạn có hai lựa chọn ở đây: -

1. Kết nối loa (Kết nối với 5V)

2. Kết nối Biến áp Flyback (Được kết nối với 12V)

Tôi đã thử cả hai. Và cả hai đều hoạt động khá tốt.

* QUAN TRỌNG * * QUAN TRỌNG ** QUAN TRỌNG ** QUAN TRỌNG ** QUAN TRỌNG * Chúng ta cần sử dụng tín hiệu âm thanh được khuếch đại từ Bộ khuếch đại hoặc Mạch khuếch đại có điện áp đỉnh (Điện áp tối đa) là 5V

Khước từ trách nhiệm: -

* Tôi khuyên bạn nên sử dụng Flyback Transformer với Thận trọng vì nó có thể nguy hiểm vì nó tạo ra Điện áp cao. Và tôi sẽ không chịu trách nhiệm về bất kỳ thiệt hại nào. *

Bước 4: Kiểm tra cuối cùng

Vì vậy, hãy tải mã đã cho lên Arduino của bạn và kết nối Tín hiệu khuếch đại với chân A0.

Và đừng quên kết nối tất cả các chân nối đất với một điểm chung.

Và chỉ thích nghe nhạc.

Đề xuất: