Mục lục:

Kết nối Arduino Uno với ESP8266: 9 bước
Kết nối Arduino Uno với ESP8266: 9 bước

Video: Kết nối Arduino Uno với ESP8266: 9 bước

Video: Kết nối Arduino Uno với ESP8266: 9 bước
Video: Lập trình esp8266 - Bài 1 - Hướng dẫn nạp chương trình cho board esp8266 dùng arduino ide 2.0 2024, Tháng Chín
Anonim
Kết nối Arduino Uno với ESP8266
Kết nối Arduino Uno với ESP8266

Chào mừng! Bạn sắp đọc hướng dẫn từng bước về cách kết nối thành công Arduino Uno của bạn với Internet với ESP8266 (ESP-01). Đây cũng là bài giảng đầu tiên của tôi từ trước đến nay, hãy cứ thoải mái với tôi!

Hãy để tôi bắt đầu bằng cách nói rằng ESP8266 là một phần cứng nhỏ, giá thấp, nếu được lập trình chính xác có thể mở ra một thế giới rộng lớn, đặc biệt là IOT. Đột nhiên, tất cả các dự án của bạn có thể được kích hoạt thông qua web, có thể là thông qua điện thoại hoặc máy tính của bạn, chỉ bằng một nút bấm. Khả năng là vô tận, và bằng cách nào đó nó khiến tôi thực sự phấn khích. Thật không may, đó không phải lúc nào cũng là một quá trình dễ dàng và bạn rất có thể sẽ gặp phải những vấn đề mà tôi chưa từng gặp. Dù bằng cách nào, tôi sẽ cố gắng hết sức để trả lời các câu hỏi và đề cập đến mọi vấn đề tôi gặp phải!

Cập nhật 2020: Gần đây, tôi đã phải cập nhật ESP8266 mới và sử dụng bài viết này làm hướng dẫn cá nhân về cách thực hiện. Tôi nhanh chóng nhận ra một số liên kết mà tôi cung cấp đã lỗi thời / không hoạt động, vì vậy tôi đã cố gắng thay thế chúng một lần nữa. Khi làm như vậy, tôi phát hiện ra rằng có một phần mềm nhấp nháy mới cho ESP8266, cũng như một số chương trình cơ sở được cập nhật và ghi chép độc đáo. Tôi đã cố gắng hết sức để cập nhật ESP lên chương trình cơ sở mới nhất có thể, nhưng không thành công. Đèn flash mới tinh vi hơn, nhưng đồng thời cũng phức tạp hơn. Có nhiều cách tải xuống phần sụn có sẵn hơn (thật tuyệt vời), nhưng đồng thời người dùng không biết nên tải xuống cái nào. Về mặt kỹ thuật, tất cả điều này nghe có vẻ thực sự tốt và ESP cuối cùng cũng có một số tài liệu và hỗ trợ "chính thức", nhưng đồng thời nó cũng phức tạp hơn nhiều. Sau khoảng 4 giờ nghiên cứu và một số thử nghiệm và sai sót, tôi đã quyết định từ bỏ và chỉ đơn giản sử dụng cùng một tệp flash và tôi đã sử dụng trong suốt bài viết này. Tôi đã cập nhật các liên kết và bây giờ tự mình lưu trữ chúng, miễn là tôi không làm hỏng, chúng sẽ trực tuyến mãi mãi. Nếu bạn muốn đọc thêm một chút về những bổ sung mới này từ cộng đồng, hãy chuyển đến bước cuối cùng của Tài liệu hướng dẫn này, nơi tôi đã đăng một số liên kết bổ sung.

Bước 1: Phần cứng

Phần cứng
Phần cứng

Cập nhật năm 2020: Tôi đã tìm thấy một video trên YouTube thực sự kết nối với ESP mà không cần hàn bất kỳ thứ gì và không có bất kỳ bộ điều hợp nào!

Được rồi, đây là một phần hơi phức tạp vì có nhiều cách để giao tiếp với ESP6288. Tôi đã cố gắng tìm những cách dễ nhất có thể và tôi rất tiếc phải nói với bạn, nhưng tôi không nghĩ rằng bạn sẽ có thể tải mã lên ESP thành công mà không cần hàn một công tắc nhỏ hoặc một số nút… Cuối cùng thì tôi đã sử dụng phần cứng sau:

  1. Arduino Uno
  2. ESP8266 (ESP-01)
  3. Bộ chuyển đổi USB ESP8266
  4. Bộ chuyển đổi ESP-01
  5. Chuyển đổi cho bộ điều hợp USB
  6. 4 dây jumper nữ - nam
  7. Cáp USB để kết nối Arduino và PC

Như bạn thấy, chúng không đắt đến mức cộng với việc không cần sử dụng breadboard cũng như tất cả những điện trở kỳ quặc và những thứ tương tự. Đó là tất cả các bộ điều hợp và hệ thống dây đơn giản.

Rõ ràng, bạn sẽ cần Arduino cũng như ESP8266. Nhưng sau đó bạn cũng cần hai bộ điều hợp cho ESP:

  • Một để có thể lập trình nó (số 3 trong danh sách). Đây cũng là bộ điều hợp sẽ có sửa đổi riêng của chúng tôi đối với nó bằng một công tắc.
  • Bộ điều hợp thứ hai để bạn không giết ESP bằng cách kết nối nó với Arduino (số 4 trong danh sách). Vì ESP chạy 3.3V, nên 5V từ Arduino sẽ giết nó. Và 3.3V từ Arduino không đủ mạnh.

Cuối cùng, một số dây nhảy và cáp USB để kết nối Arduino với PC cũng cần thiết.

Bước 2: Hàn một nút chuyển sang bộ điều hợp USB

Hàn một công tắc sang bộ điều hợp USB
Hàn một công tắc sang bộ điều hợp USB
Hàn một công tắc sang bộ điều hợp USB
Hàn một công tắc sang bộ điều hợp USB

Thật không may, để lập trình ESP, bạn sẽ cần một cách để kết nối đó là Pin GND và Pin GPIO0. Tôi đã cố gắng hàn một công tắc nhỏ để bạn chọn xem bạn có muốn ở "Chế độ chương trình" hay không. Video Youtube sau đây sẽ giúp bạn thực hiện công việc này, tôi rất khuyên bạn nên xem nó, vì nó cũng cho bạn biết một chút về phần mềm và lý do tại sao bạn phải kết nối Ground và GPIO 0.

Tóm lại, đây là những gì tôi đã làm:

  • Cắt một trong các chân bên ngoài của công tắc, nó có thể là chân phải hoặc chân trái
  • Lật ngược bộ chuyển đổi USB và hàn hai chân của công tắc vào Chân GND và Chân GPIO0. Hãy cẩn thận để không kết nối các chân khác vì nó có thể không hoạt động sau này.
  • Kiểm tra công tắc của bạn bằng Đồng hồ vạn năng

Một lần nữa, nếu nghi ngờ, hãy kiểm tra liên kết Youtube ở trên.

Ngoài ra, hình trên có công tắc "Chế độ chương trình". Trong trường hợp bạn đã hàn các chân công tắc chính xác giống như tôi có, bây giờ bạn biết bên nào là "Chế độ chương trình".

Và nếu bạn không thích công tắc, đây là một hướng dẫn với các nút.

Bước 3: Phần mềm

Đối với những người chỉ đang tìm kiếm các liên kết, chúng đây.

ESP8266:

  • Flasher
  • Phần mềm cơ sở (Tôi khá chắc rằng đây sẽ là phiên bản mới nhất, vì nó chưa được cập nhật kể từ tháng 12 năm 2016)

Arduino Uno:

  • Arduino IDE
  • URL của người quản lý hội đồng quản trị (Điều này cũng sẽ không thay đổi, nó luôn ở cùng một liên kết)

Và đối với những người không biết những liên kết đó có ý nghĩa gì, hãy để tôi hướng dẫn bạn!

  1. Bước đầu tiên là cài đặt Arduino IDE. Sẽ khá đơn giản… Hãy nhấn tiếp tiếp theo, v.v. và bạn đã hoàn tất.
  2. Tiếp theo là thiết lập IDE để bạn có thể lập trình ESP của mình. Để thực hiện việc này, bạn sẽ phải đi tới Tệp -> Tùy chọn và ở dưới cùng trong URL trình quản lý bảng bổ sung: dán URL sau.
  3. Sau đó điều hướng đến công cụ -> Bảng -> Trình quản lý bảng và cuộn xuống dưới cho đến khi bạn tìm thấy một cái tên là esp8266 và nhấn cài đặt. Phiên bản mới nhất xin vui lòng. Khi quá trình cài đặt hoàn tất, hãy khởi động lại IDE.
  4. Bây giờ hãy tải xuống cả flashher và firmware cho ESP. Tạo một thư mục trên màn hình của bạn có tên "Flasher" và giải nén cả hai tệp đã tải xuống bên trong nó. Chúng tôi sẽ cần chúng sau.

Tuyệt vời, ngay bây giờ bạn sẽ có tất cả phần mềm cần thiết để lập trình ESP!

Bước 4: Kiểm tra ESP

Tiếp theo là kết nối đầu tiên của bạn với ESP. Phần này hơi phức tạp và những gì phù hợp với tôi có thể không hiệu quả với bạn… Hãy hy vọng điều tốt nhất.

Hãy bắt đầu bằng cách tải lên một bản phác thảo tạo sẵn nhấp nháy đèn LED màu xanh lam trên ESP. Để điều này hoạt động, bạn sẽ cần những thứ sau:

  • Bộ điều hợp USB được sửa đổi cho ESP, vì vậy bạn có thể đặt nó ở "Chế độ chương trình". Bước 2 của hướng dẫn này.
  • Biết cổng USB (cổng COM) ESP của bạn sẽ được kết nối với.

Nếu bạn không biết cổng COM, đừng lo lắng. Thật dễ dàng để tìm ra. Mở IDE của bạn và nhấp vào công cụ -> Cổng và ghi lại (các) Cổng được liệt kê. Sau đó, lắp bộ điều hợp USB của bạn và kiểm tra lại các Cổng được liệt kê. Cái mới là cổng COM mà bạn đang tìm kiếm!

Tái bút: Tôi là người dùng windows. Nếu tôi nhớ lại chính xác, máy Mac không gọi chúng là cổng COM. Dù bằng cách nào, nó vẫn sẽ hoạt động!

Vì vậy, bây giờ bạn đã biết Cổng của mình, hãy thoải mái cắm bộ điều hợp USB của bạn vào! Nó phải ở "Chế độ chương trình", nói cách khác, GND và GPIO0 phải được kết nối. Mở IDE và điều hướng đến Công cụ -> Bảng và chọn Mô-đun ESP8266 Chung. Sau đó, trong Công cụ, hãy đảm bảo rằng bạn có các cài đặt sau:

  • Bảng: "Mô-đun ESP8266 chung"
  • Cổng: Cổng COM của bạn

Cuối cùng, đi tới Tệp -> Ví dụ -> ESP8266 -> Nhấp nháy và nhấp vào dấu kiểm nhỏ ở góc trên cùng bên trái của IDE. Điều này sẽ xác minh mã của bạn và cho bạn biết nếu có điều gì đó không ổn với nó. Tôi thực sự khuyên bạn nên làm điều này mọi lúc trước khi tải bản phác thảo lên ESP hoặc Arduino! Nếu thành công, bạn sẽ thấy thông báo "Đã biên dịch xong". chữ. Việc duy nhất còn lại bây giờ là nhấp vào biểu tượng "mũi tên phải" ở trên cùng bên trái của IDE để tải mã lên. Nếu mọi thứ được thiết lập chính xác, bạn sẽ thấy nó được tải lên và cuối cùng hoàn tất. Hãy nhìn vào ESP của bạn, nó sẽ có đèn LED nhấp nháy! Xin chúc mừng, bạn vừa tải chương trình đầu tiên của mình lên ESP!

Trong trường hợp bạn gặp lỗi, đừng lo lắng. Có lẽ công tắc không ở bên phải. Rút phích cắm bộ điều hợp USB của bạn và "chuyển công tắc", cắm lại và lặp lại quá trình. Nếu nó hoạt động, bạn biết rằng đó là phía "Chế độ chương trình"! Nếu điều đó vẫn không hoạt động, thì chúc may mắn. Đó là ý của tôi khi nói "những gì hiệu quả với tôi có thể không hiệu quả với bạn"… Hãy đăng câu hỏi / vấn đề trong phần nhận xét và tôi sẽ cố gắng hết sức để trợ giúp!

Tái bút: Hãy thử các ví dụ khác! Có thể là Tệp -> Ví dụ -> ESP8266Wifi -> WifiScan. Sau khi tải lên, hãy mở Tools -> Serial Monitor và đợi vài giây. Nếu không có gì hiển thị, hãy đặt tốc độ Baud thành 9600 hoặc 115200. Và sử dụng "Cả NL & CR". Thông tin thêm về điều này ở phần sau của bài viết này, vì vậy đừng lo lắng nếu bạn không nhận được bất kỳ phản hồi nào!

Bước 5: Kiểm tra các lệnh AT

Kiểm tra lệnh AT
Kiểm tra lệnh AT

Tôi gọi bước này là tùy chọn vì không có lệnh AT nào hoạt động với tôi lúc đầu. Mặc dù tôi chắc chắn rằng ESP đang hoạt động tốt vì nó đã Blink với bản phác thảo trước đó và tôi cũng đã quét được Wifi. Nhưng mỗi lần tôi cố gắng nói chuyện với nó qua các lệnh AT, tôi sẽ không bao giờ nhận được câu trả lời. Dù bằng cách nào, tôi sẽ chỉ cho bạn các bước tôi đã thực hiện để có thể nói chuyện với nó. Nếu nó không hoạt động, hãy chuyển sang bước tiếp theo.

Cắm ESP của bạn vào bộ điều hợp USB và cắm nó vào PC của bạn. Đảm bảo rằng nó không ở "Chế độ chương trình"! Đi tới Công cụ và thay đổi Bảng thành Mô-đun ESP8266 Chung. Đảm bảo chọn đúng Cổng và sau đó mở Màn hình nối tiếp (Ctrl + Shift + M) và thiết lập các cài đặt sau:

  • Cả NL & CR
  • 115200 Baud

Nếu tất cả đều đúng, hãy thử gõ "AT" trên thanh trên cùng và nhấn enter. Bạn sẽ nhận được "OK" trở lại. Nếu bạn nhận được "OK", thì thánh hút thuốc là bạn vừa kết nối được với ESP của mình và bạn có thể vừa tự hào vừa hạnh phúc! Tiếp theo, gõ "AT + GMR" để biết thêm thông tin về ESP của bạn. Trong trường hợp phiên bản SDK là 1.54 thì bạn cũng có thể chuyển bước "Cài đặt chương trình cơ sở mới nhất" vì bạn đã có nó.

Trong trường hợp bạn không nhận được câu trả lời, vui lòng thử lại và / hoặc thay đổi tốc độ Baud. Tuy nhiên, tôi khuyên bạn không nên "lãng phí" quá nhiều thời gian cho việc này, vì bạn biết rằng ESP của bạn đang hoạt động nhờ Bước 4.

Tái bút: Nếu IDE muốn bạn lưu bản phác thảo trước khi xác minh / tải lên, đừng lưu nó. Tôi đã gặp một số vấn đề với việc lưu tệp và màn hình nối tiếp sau đó không hoạt động. Tôi vẫn chưa rõ lý do tại sao, phải thực hiện thêm một số thử nghiệm, nhưng tôi khuyên bạn không nên lưu các bản phác thảo của mình.

Bước 6: Cài đặt chương trình cơ sở mới nhất

Cài đặt chương trình cơ sở mới nhất
Cài đặt chương trình cơ sở mới nhất

Ngay cả khi bước trước đó không hiệu quả với bạn, hãy thử cập nhật chương trình cơ sở bằng bước này, có thể nó sẽ sửa được!

Bây giờ bạn đã biết cách lập trình ESP của mình, đã đến lúc cập nhật chương trình cơ sở của nó! Bắt đầu bằng cách cắm ESP của bạn vào bộ điều hợp USB, sau đó chọn Bảng và Cổng phù hợp cho nó. Đừng quên đặt nó ở "Chế độ chương trình", nếu không nhấp nháy sẽ không hoạt động!

Tiếp theo, bạn sẽ phải mở thư mục mà bạn đã tạo trên "Bước 2: Phần mềm" nhớ không? Với bộ nhấp nháy và tệp.bin. Mở nó và chạy esp8266_flasher.exe. Nếu được yêu cầu quyền quản trị, hãy nói có. Bây giờ cũng là thời điểm tốt để đóng IDE, chỉ để đảm bảo không có gì can thiệp. Nhấp vào nút Thùng và chọn tệp có tên "AiThinker_ESP8266_DIO_8M_8M_20160615_V1.5.4.bin". Đảm bảo rằng Cổng của bạn là cổng phù hợp, cửa sổ tiếp theo được đặt thành 0x00000 và ESP của bạn đang ở "Chế độ chương trình" và nhấp vào Tải xuống. Nó sẽ bắt đầu tải chương trình cơ sở lên ESP của bạn và đèn LED màu xanh lam sẽ nhấp nháy. Chờ một chút cho đến khi nó hoàn thành.

Khi hoàn tất, bạn sẽ được thưởng bằng lỗi "Không thoát khỏi chế độ Flash", điều này không sao cả. Bỏ qua nó và đóng bình nháy. Bạn vừa cập nhật chương trình cơ sở của ESP! Đẹp.

Trong trường hợp bạn gặp lỗi, một lần nữa: Đảm bảo rằng Cổng của bạn là cổng phù hợp, cửa sổ tiếp theo được đặt thành 0x00000 và ESP của bạn đang ở "Chế độ chương trình"! Nếu nó vẫn không hoạt động, thì tôi muốn nói rằng công tắc của bạn không hoạt động chính xác.

Cuối cùng, bạn có thể muốn thử nói chuyện với ESP của mình thông qua AT ngay bây giờ, hãy xem bước "Kiểm tra lệnh AT". Nếu nó vẫn không hoạt động, đừng lo lắng. Hãy tiếp tục và tải lên lại ví dụ Blink để đảm bảo rằng bạn không phá vỡ ESP của mình. Nếu nó hoạt động, bạn vẫn tốt để đi!

Bước 7: Kết nối Arduino và ESP

Kết nối Arduino và ESP
Kết nối Arduino và ESP

Đây là một bước đơn giản hướng dẫn bạn cách kết nối ESP với Arduino Uno! Như đã đề cập ở bước "Phần cứng", tôi đã sử dụng Bộ điều hợp ESP-01.

Đầu tiên, hãy cắm ESP của bạn vào ESP-01 Adpater và đảm bảo rằng nó hướng đúng hướng! Tiếp theo, lấy 4 dây jumper của bạn và kết nối chúng như vậy:

  • Ghim 3 trên Arduino để ghim RX trên Bộ điều hợp
  • Ghim 2 trên Arduino vào Ghim TX trên Bộ điều hợp
  • Ghim 5.5V trên Arduino để ghim VCC trên Bộ điều hợp
  • Ghim GND trên Arduino để Ghim GND trên Bộ điều hợp

Nối dây xong. Dễ dàng pzy phải không?

Tái bút: Tôi khuyên bạn nên sử dụng dây màu đỏ cho kết nối 5V và dây màu đen cho kết nối GND. Nó chỉ là một tiêu chuẩn trong điện tử.

Bước 8: Kết thúc + Những điều cần ghi nhớ

Được rồi, nếu bạn đã làm theo hướng dẫn của tôi và tôi không làm sai bất cứ điều gì, ít nhất bây giờ bạn sẽ có thể có một ESP hoạt động với Firmware cập nhật. Có thể nó thậm chí nói chuyện với bạn và bạn với nó, điều đó sẽ thật hoàn hảo! Hãy tiếp tục và khám phá thế giới IOT tuyệt vời này và những thứ như vậy. Có thể bạn sẽ muốn bật đèn chỉ bằng một nút bấm trên điện thoại hoặc có thể bật hệ thống tưới nước trong khu vườn của mình (giống như tôi đang cố gắng làm vậy). Tôi không biết, tôi sẽ để bạn lựa chọn. Vui lòng viết một số phản hồi / câu hỏi về hướng dẫn này bên dưới!

Chỉ cần ghi nhớ một số điều bổ sung:

  • Trong khi tải mã lên Arduino của bạn, Pin 0 (RX) phải miễn phí!
  • Nếu bạn đang chạy ESP của mình thông qua 3.3V ngoài Arduino, hãy cẩn thận nó có thể không đủ mạnh và bạn có thể gặp lỗi vì nó! Tôi thực sự khuyên bạn nên sử dụng Bộ điều hợp ESP-01.
  • Trong trường hợp bạn muốn giao tiếp với ESP của mình qua Arduino chứ không phải Bộ điều hợp USB, bạn sẽ phải làm như sau:

    1. Cần thiết: Bạn sẽ phải có thể nói chuyện bằng các lệnh AT với ESP của mình qua bộ điều hợp USB để có thể chuyển đổi!
    2. Tiếp tục và cắm bộ điều hợp USB của bạn với ESP. Đảm bảo rằng nó không ở "Chế độ chương trình"!
    3. Chọn Bo mạch ESP8266 và sửa lại Cổng và mở Serial Monitor (115200 Baud).
    4. Gõ "AT" và nhận lại "OK".
    5. Chúng tôi sẽ phải thay đổi tốc độ Baud mặc định của ESP bằng lệnh sau: "AT + UART_DEF = 9600, 8, 1, 0, 0" (hoặc đối với một số phiên bản "AT + CIOBAUD = 9600").
    6. Bạn sẽ nhận được phản hồi "OK" hoặc một số loại xác nhận.
    7. Đóng màn hình nối tiếp.
    8. Rút phích cắm bộ điều hợp USB và cắm ESP của bạn vào bộ điều hợp Arduino. Kết nối bộ điều hợp với Arduino như được hiển thị ở bước "Kết nối Arduino và ESP".
    9. Kết nối Arduino với PC của bạn.
    10. Thay đổi Board thành Arduino và chọn đúng Cổng.
    11. Tải mã này lên Arduino.
    12. Mở Serial Monitor một lần nữa, nhưng lần này là 9600 Baud.
    13. Bây giờ bạn có thể gõ "AT" và nhận lại "OK".

Bước 9: Liên kết

Đây là danh sách một số liên kết tôi tìm thấy trên web đã giúp tôi và chúng cũng có thể giúp bạn!

  • Phác thảo cho Arduino Uno để nói chuyện với ESP
  • Đặt ESP của bạn thành "chế độ chương trình" bằng công tắc hoặc các nút

Cập nhật năm 2020:

  • Hướng dẫn cách flash bằng phần mềm flash mới
  • Bắt đầu bởi Espressif
  • Tải xuống Flasher và SDK / AT bởi Espressif
  • Thông tin chung về hầu hết những điều được đề cập trong bài viết này tại đây (bao gồm thông tin về cách flash ESP mà không cần bất kỳ bộ điều hợp nào)

Đề xuất: