我遇到了一个奇怪的问题,我不确定是什么导致它。 也许你们其中一个人可以看到我做错了什么。
问题是功能Ethernet.begin(mac) - 当按下按钮时,它会阻止LED打开。
包括以太网,因为我需要稍后使用它。 我只是更改了代码,以便更容易找到错误。
如果我禁用Ethernet.begin(mac)
,它可以正常工作这是我的代码:
#include <Ethernet.h>
#include <SPI.h>
byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };
//byte ip[] = { 192, 168, 1, 104 };
char server[] = "b2b.as";
// constants won't change. They're used here to
// set pin numbers:
const int buttonPin = 2; // the number of the pushbutton pin
const int ledPin = 13; // the number of the LED pin
// variables will change:
int buttonState = 0; // variable for reading the pushbutton status
void setup()
{
// initialize the LED pin as an output:
pinMode(ledPin, OUTPUT);
// initialize the pushbutton pin as an input:
pinMode(buttonPin, INPUT);
//Ethernet.begin(mac, ip);
Ethernet.begin(mac);
Serial.begin(9600);
delay(1000);
Serial.println(Ethernet.localIP());
Serial.println();
}
void loop() {
// read the state of the pushbutton value:
buttonState = digitalRead(buttonPin);
// check if the pushbutton is pressed.
// if it is, the buttonState is HIGH:
if (buttonState == HIGH) {
// turn LED on:
digitalWrite(ledPin, HIGH);
} else {
// turn LED off:
digitalWrite(ledPin, LOW);
}
}
答案 0 :(得分:1)
阅读documentation
屏蔽将使用数字引脚11,12 & 13
与Arduino通信。
您的ledPin
已连接到数字图钉13
。我认为,如果您使用Ethernet
.begin
启动13
会导致问题Ethernet
不可用,因为ledPin
将使用它,因此会导致此问题。按照屏蔽的引脚分配,从另一个可用的数字引脚转移\documentclass[a4paper]{article}
\usepackage[margin=0pt]{geometry}
\usepackage[skins,raster]{tcolorbox}
\pagestyle{empty}
\begin{document}
\begin{tcbraster}[raster height=\textheight,raster equal skip=0pt,blank,
graphics pages={8,1,6,3, 2,7,4,5}]
\tcbincludepdf{a6.pdf}% <-- The A6 document with 8 pages
\end{tcbraster}
\end{document}
注意:这仅适用于Arduino UNO