Analog In thực hiện chính xác những gì nó nói - nó chỉ đọc (mẫu) các mức điện áp tương tự.
Sử dụng AnalogWrite (0,2) không tạo ra chân A0 trong Analog In để tạo ra điện áp 2 * AVCC / 1024, mà thay vào đó, làm cho chân D0 thực hiện điều đó thay vào đó. (Hầu hết các chân D0 trên bo mạch Arduino không có đầu ra PWM được liên kết với chúng, vì vậy hành vi sẽ không được xác định.) Trong thời gian đó, A0 của bạn không làm gì cả. (Tôi nghi ngờ nó nổi / không được kết nối, do đó giá trị 3xx. Có thể kiểm tra biểu dữ liệu để chắc chắn.)
Vậy chúng ta nên làm gì thay thế? Để bắt đầu, kết nối A0 của Arduino B với pin pwm của Arduino A. Nếu bạn đang sử dụng Uno, bạn có thể kết nối với bất kỳ chân nào 11,10,9,6,5,3. Sau đó, bạn có thể sử dụng mã:
int PWMPin = 11; int Tín hiệuLvl = 2; analogWrite (PWMPin, SignalLvl);
Hãy thử xem. Và bạn sẽ thấy rằng nó hoạt động ... loại.
Nhưng sau đó có một vấn đề. bài đọc của bạn sẽ gần với những gì bạn muốn, nhưng khá thất thường. Lý do một phần là do tín hiệu tương tự siêu không đáng tin cậy và chứa đầy nhiễu. Nhưng lý do chính thực sự là analogWrite của Arduino thực sự KHÔNG được thiết kế như một đầu ra tín hiệu tương tự. Nó là một PWM, xuất ra các mức GND và AVcc ở các khoảng thời gian khác nhau với tốc độ nhanh để nó xấp xỉ mức điện áp bạn muốn khi lấy trung bình.
Nếu bạn muốn thử nghiệm điều này, bạn có thể kết nối một điện trở và tụ điện với đầu ra, tạo ra bộ lọc thông thấp. (Đây là thông tin thêm: http://provideyourown.com/2011/analogwrite-convert-pwm-to-vol thế / )
Đã nói tất cả những điều đó, tôi đoán câu hỏi mà hầu hết chúng ta muốn hỏi là: có lý do nào khiến bạn muốn gửi dữ liệu qua analog không? Tín hiệu tương tự dễ bị nhiễu. Nếu độ trung thực của dữ liệu là quan trọng, tốt nhất bạn nên sử dụng giao tiếp nối tiếp như được đánh dấu bằng hầu hết các câu trả lời ở đây.
Để đơn giản, tôi đề nghị I2c chỉ sử dụng 2 dây để giao tiếp. Nếu tốc độ là điều cốt yếu (như, ghi tới 10.000 byte dữ liệu mỗi giây), bạn có thể thử SPI hoặc thậm chí giao tiếp song song.
Hy vọng điều này sẽ giúp và may mắn!