Tôi đang cố gắng truyền từ ATtiny85 sang PC bằng mã Arduino-esque qua bộ chuyển đổi USB-serial mà không hiểu gì nhiều. Tôi đã bị sốc và kinh hoàng rằng nó không hoạt động.
Tôi xác nhận rằng cái nhỏ bé đang nhấp nháy điện áp trên một trong các chân của nó, nhưng khi tôi kết nối chân đó để truyền hoặc nhận trên cáp nối tiếp USB và cố gắng nghe bằng chương trình đầu cuối, tôi không nhận được gì.
Tôi không chắc làm thế nào để biết phần nào bị hỏng.
Tôi có cần nhiều hơn VCC, GND và TXD để truyền nối tiếp không?
Chi tiết:
Mã cho nhỏ được viết trong môi trường Arduino và mã tương tự nhấp nháy thành công tất cả 4 chân "PORTB", ít nhất là theo đèn LED. Tôi sử dụng mã từ HLT và Saporetti để cho tôi sử dụng phương ngữ Arduino của C ++ để lập trình nó. Chương trình vẫn đến trong một chữ K.
#include <SoftwareSerial.h>
SoftwareSerial s(0,1); //receive on "0", and transmit on "1" aka "PB1" aka pin 6
void setup() { s.begin(4800); } // assuming 1Mhz, 4800 baud
void loop() { s.println(millis()); } // transmit something at every opportunity
Có rất nhiều bản dịch liên quan, nhưng mã này khá cơ bản. Mã đặt tốc độ baud dường như giả định là 1 MHz, nhưng may mắn là thái độ của tôi có các cầu chì mặc định của nhà máy và chạy ở mức 1 MHz. Ở bất kỳ giá nào, chân 6 đang nhấp nháy điện áp của nó theo đèn LED.
Vì vậy, tôi sử dụng các dây nhỏ để kết nối đầu "ftdi" của bộ chuyển đổi nối tiếp USB FTDI với nhỏ: đen sang GND, đỏ với VCC, màu cam đến 6. Tôi mở chương trình "minicom" trên PC, đặt baud tỷ lệ lên 4800 và chờ đợi, không có gì. Khi nói chuyện với Boarduino của tôi , nó không gặp rắc rối.
Cáp chuyển đổi FTDI có sơ đồ chân sau: màu đen là GND, màu nâu là "CTS", màu đỏ là VCC (+ 4.98V), màu cam là "TXD", màu vàng là "RXD", màu xanh lá cây là "RTS".
Nếu tôi muốn truyền từ nhỏ đến PC, tôi có nên nhấp nháy điện áp trên "TXD" hoặc "RXD" không? Nói cách khác là dây truyền để truyền từ nô lệ đến máy chủ, hay máy chủ đến nô lệ?
Tôi thực sự đã thử cả hai, không làm việc. Cho đến nay tôi đã chiên các thiết bị trị giá ít hơn một đô la và tôi đang tự mãn, vì vậy tôi chỉ cần cắm dây vào cáp. Có lẽ tôi không nên bỏ qua các dây "CTS" và "RTS"?
Tôi có cần sử dụng bất kỳ dây khác? RTS và CTS có làm gì không?
Phần cứng là ATTiny85-PU (gói DIP-8, chạy ở tốc độ 1 MHz, được định mức là 20 MHz) được cung cấp bởi USB ở mức 4,98V. Máy tính chủ là MacBook, và nó thực hiện thành công tất cả mọi thứ arduino, bao gồm cả việc sử dụng ArduinoISP để lập trình ATtiny để làm cho trái tim nhỏ bé của nó tắt đi.