- Minimális változásokat hozott a Huawei FreeBuds 6i
- Milyen okostelefont vegyek?
- Samsung Galaxy S24 Ultra - ha működik, ne változtass!
- Fotók, videók mobillal
- Xiaomi Redmi Note 4 - B20
- Amazfit GTS 4 Mini - bármely csuklóra
- Garmin Fenix 7 és 7S - profi sport megszokásból
- Redmi Watch 4 - olcsó hús, sűrű a leve
- Samsung Galaxy A54 - türelemjáték
- Nothing Phone 2a - semmi nem drága
Hirdetés
-
Prémium külsőt kaphat a Motorola Moto G85 5G
ma A 300 eurós ár mellé kifejezetten igényes megjelenés társulhat.
-
Skull and Bones - Egy hétig ingyen játszhatunk vele
gp Az önjelölt kalózok ránézhetnek az Ubisoft játékára, hátha valaki úgy dönt, hogy megvásárolja azt.
-
Olcsó és visszafogottan elegáns kompakt AIO jön az ID-Cooling berkeiből
ph Az előzetes tesztek alapján korrektül teljesítő modellnek nem kenyere a cicoma, és akár titkos favorit is válhat belőle a kategóriájában.
-
Mobilarena
Arduino hardverrel és szoftverrel foglakozó téma. Minden mikrovezérlő ami arduinoval programozható, és minden arduino program, board, és hardverrel kapcsolatos kérdések helye.
Új hozzászólás Aktív témák
-
polgcsabi
aktív tag
Hali!
Lenne 1 kis bajom.
Van nekem ENC28J60 Ethernet cuccom, és azt szeretném megoldani, hogy hogyan tudok küldeni adatokat, értékeket az arduino panelnek.
Pontosabban:
a=0 v. a=1
ill.
egy 32-es tömb értékei -
polgcsabi
aktív tag
válasz Janos250 #17544 üzenetére
Konkrétan ezt szeretném:
Van egy 16-os tömb aminek 0-4096 közt szeretnék értéket adni webes felületen.
int lederteke[16];
Hogyan lehet megoldani?
Nekem az is elég lenne, hogy mondjuk, beütöm a böngészőbe:
192.168.1.139/lederteke[16.28.4020,1256, stb.] vagy valami ilyesmi. Leütöm az ENTERT és az arduino kódban a ledértréke tömb felveszi a mind a 16 értéket amit beírtam.
Köszi! -
polgcsabi
aktív tag
-
polgcsabi
aktív tag
Ott, hogy adott a LED buli (ON OFF) ebből hogyan lesz egy 16-os tömb.
#include <EtherCard.h>
#define STATIC 0 // set to 1 to disable DHCP (adjust myip/gwip values below)
// mac address
static byte mymac[] = { 0x74,0x69,0x69,0x2D,0x30,0x36 };
// ethernet interface ip address
static byte myip[] = { 192,168,1,80 };
// gateway ip address
static byte gwip[] = { 192,168,1,1 };
// LED to control output
int ledPin10 = 9;
byte Ethernet::buffer[700];
char const page[] PROGMEM =
"HTTP/1.0 503 Service Unavailable\r\n"
"Content-Type: text/html\r\n"
"Retry-After: 600\r\n"
"\r\n"
"<html>"
"<head><title>"
"Service Temporarily Unavailable"
"</title></head>"
"<body>"
"<h3>This page is used behind the scene</h3>"
"<p><em>"
"Commands to control LED are transferred to Arduino.<br />"
"The syntax: http://192.168.0.XX/OFF or ON"
"</em></p>"
"</body>"
"</html>"
;
void setup () {
pinMode(ledPin10, OUTPUT);
Serial.begin(9600);
Serial.println("Trying to get an IP…");
Serial.print("MAC: ");
for (byte i = 0; i < 6; ++i) {
Serial.print(mymac[i], HEX);
if (i < 5) Serial.print(":");
}
Serial.println();
if (ether.begin(sizeof Ethernet::buffer, mymac) == 0){
Serial.println( "Failed to access Ethernet controller");
}
else{Serial.println("Ethernet controller access: OK");}
#if STATIC
Serial.println( "Getting static IP.");
if (!ether.staticSetup(myip, gwip)){
Serial.println( "could not get a static IP");
blinkLed(); // blink forever to indicate a problem
}
#else
Serial.println("Setting up DHCP");
if (!ether.dhcpSetup()){
Serial.println( "DHCP failed");
blinkLed(); // blink forever to indicate a problem
}
#endif
ether.printIp("My IP: ", ether.myip);
ether.printIp("Netmask: ", ether.netmask);
ether.printIp("GW IP: ", ether.gwip);
ether.printIp("DNS IP: ", ether.dnsip);
}
void loop () {
word len = ether.packetReceive();
word pos = ether.packetLoop(len);
// IF LED10=ON turn it ON
if(strstr((char *)Ethernet::buffer + pos, "GET /ON") != 0) {
Serial.println("Received ON command");
digitalWrite(ledPin10, HIGH);
}
// IF LED10=OFF turn it OFF
if(strstr((char *)Ethernet::buffer + pos, "GET /OFF") != 0) {
Serial.println("Received OFF command");
digitalWrite(ledPin10, LOW);
}
// show some data to the user
memcpy_P(ether.tcpOffset(), page, sizeof page);
ether.httpServerReply(sizeof page-1);
}
void blinkLed(){
while (true){
digitalWrite(ledPin10, HIGH);
delay(500);
digitalWrite(ledPin10, LOW);
delay(500);
}
}
Hozzáteszem: Nem vagyok valami nagy C-s!! Csak néhány hónapja kezdtem az egészet.
Erről az ENC-28J60-as panelről gyér az infó (legalábbis az én felfogásomhoz képest).
Új hozzászólás Aktív témák
Állásajánlatok
Cég: Ozeki Kft.
Város: Debrecen
Cég: Ozeki Kft.
Város: Debrecen