cuốn sách gpt4 ai đã làm

Xác định/tạo dạng sóng?

In lại Tác giả: Vũ trụ không gian Thời gian cập nhật: 2023-11-04 02:16:12 26 4
mua khóa gpt4 Nike

Tôi muốn viết một số mã có thể chấp nhận một số loại đầu vào và nhận dạng nó dưới dạng sóng vuông, sóng tam giác hoặc một loại dạng sóng nào đó. Tôi cũng cần một số cách để tạo ra làn sóng nói trên.

Tôi có kinh nghiệm với C/C++, tuy nhiên, tôi không chắc mình sẽ mô phỏng tất cả những điều này như thế nào. Cuối cùng, tôi muốn chuyển đổi chương trình này thành chương trình MicroController để đọc đầu vào tương tự của nó nhằm xác định dạng sóng.

EDIT: Xin lỗi; lẽ ra tôi nên đề cập rằng nó sẽ ở tần số đã biết và biên độ thì không xác định.

câu trả lời hay nhất

Việc tạo ra sóng dễ dàng hơn nhiều so với việc xác định chúng. Tôi có một dự án nhỏ để tạo ra một số làn sóng. Đây là từ dự án của tôi Ví dụ:

    biên độ phao;
chuyển đổi (âm thanh-> kiểu sóng)
{
trường hợp LA_SQUARE:
biên độ = âm thanh->theta > .5 ?
phá vỡ;
trường hợp LA_SINE:
biên độ = sin(2 * PI * sound->theta);
phá vỡ;
trường hợp LA_TRIANGLE:
biên độ = âm thanh->theta > .5 ? 4 * âm thanh->theta - 3 : -4 * âm thanh->theta + 1;
phá vỡ;
trường hợp LA_SAWOOTH:
biên độ = 2 * âm thanh->theta - 1,0;
phá vỡ;
trường hợp LA_NOISE:
biên độ = ((float)rand() / RAND_MAX);
phá vỡ;
default:
;
}

theta Cập nhật mọi khung hình của dạng sóng và phụ thuộc vào tần số của dạng sóng bạn tạo.

Đối với việc xác định các sóng, nếu bạn biết mình sẽ có được một sóng hình vuông, hình tam giác hoặc hình sin đơn giản, không trộn lẫn, bạn chỉ cần thực hiện một số phép thử đơn giản. Xem sự thay đổi biên độ tại hai điểm bất kỳ trong sóng. Nếu chúng giống nhau thì đó là sóng vuông. Nếu chúng thay đổi tuyến tính (nghĩa là nếu biên độ thay đổi không đổi), bạn sẽ nhận được sóng tam giác (hoặc sóng răng cưa, nếu bạn muốn phân biệt). Nếu không thì đó là sóng hình sin. Hãy nhớ rằng việc kiểm tra này chỉ hoạt động nếu bạn chỉ mong đợi những loại sóng này và chúng không trộn lẫn với nhau hoặc bất kỳ loại sóng nào khác. Tôi có thể nghĩ ra một số trường hợp khó khăn khác, nhưng tôi sẽ để bạn lo lắng về điều đó.

Nếu bạn đang làm điều gì đó thú vị hơn, bạn có thể muốn tìm một cuốn sách dành riêng cho chủ đề này, giống như cuốn sách được đề xuất trong phần bình luận.

Nhận biết/tạo dạng sóng? , chúng tôi đã tìm thấy một câu hỏi tương tự trên Stack Overflow: https://stackoverflow.com/questions/7409675/

26 4 0
không gian vũ trụ
Hồ sơ

Tôi là một lập trình viên xuất sắc, rất giỏi!

Nhận phiếu giảm giá taxi Didi miễn phí
Phiếu giảm giá taxi Didi
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress