我的ddwrt路由器没有数据
No Data from my ddwrt router
我有cisco e900路由器,带有dd-wrt固件。我将其连接到arduino uno-r3 + LCD 16 * 2以显示该路由器的状态和一些数据/我在两侧都使用TX-RX端口。
问题是:没有数据!!
Arduino LCD只是显示>"DD-WRT-供电的思科E900"
我的代码中有什么错误吗?
这是arduino部分:
// include the library code:
#include <Wire.h>
#include <LiquidCrystal.h>
LiquidCrystal lcd(7, 8, 9, 10, 11, 12);
int led1 = 8;
float raw;
byte bl[8] = {
B00000,
B00000,
B00000,
B00000,
B00000,
B00000,
B00000,
};
void setup(){
pinMode(led1, OUTPUT);
lcd.begin(16, 2);
Serial.begin(9600);
lcd.createChar(1, bl);
lcd.createChar(2, bl);
lcd.createChar(3, bl);
lcd.createChar(4, bl);
lcd.setCursor(0,0);
lcd.print("dd-wrt - powered");
lcd.setCursor(0,1);
lcd.print("cisco e900");
}
void loop()
{
int charcount;
boolean secondline;
if (Serial.available()) {
delay(200);
lcd.clear();
charcount = 0;
secondline = false;
while (Serial.available() > 0) {
if (charcount > 15 && secondline == false ) {
lcd.setCursor(0,1);
secondline = true;
}
char inChar = (char)Serial.read();
if (inChar != ' ') {
lcd.write(inChar);
}
if (inChar == '3') {
digitalWrite(led1, HIGH);
}
if (inChar == '4'){
digitalWrite(led1, LOW);
}
charcount++;
}
}
}
这是我路由器上的命令 思科E900
#!/bin/sh
I=`nvram get wl0_ifname`
SR="/dev/tts/0"
vr=`nvram get DD_BOARD`
stty -F /dev/tts/0 9600
while sleep 1; do
WIP=`nvram get wan_ipaddr`
NC=`grep 0x /proc/net/arp | grep br0 | wc -l`
DU=`uptime | cut -c2-9`
UP=`awk '{print int($1/3600)":"int(($1%3600)/60)":"int($1%60)}' /proc/uptime`
LD=`uptime | sed -n -e 's/^.*average: //p' | sed s/[,]//g`
D1=`date +"%F"`
D2=`date +"%r"`
Rxw=`grep vlan1 /proc/net/dev | awk '{print ($2-l1)/1024"kB/s"}'`
Txw=`grep vlan1 /proc/net/dev | awk '{print ($10-l2)/1024"kB/s"}'`
Rxv=`grep eth1 /proc/net/dev | awk '{print ($2-l1)/1024"kB/s"}'`
Txv=`grep eth1 /proc/net/dev | awk '{print ($10-l2)/1024"kB/s"}'`
NET=`wget -qO- http://ipecho.net/plain`
ISP=`nslookup $NET | tr ' ' 'n' | tail -1 | cut -d. -f3`
IS="your_isp_home_page"
SP=`ping -c2 -W2 $IS | tail -1`
PM=$(echo $SP | awk '{print $4}' | cut -d '/' -f 1);
PA=$(echo $SP | awk '{print $4}' | cut -d '/' -f 2);
PI=$(echo $SP | awk '{print $4}' | cut -d '/' -f 3);
if [ -z `wl -i $I assoclist` ]; then
echo -ne "4" > $SR
else
echo -ne "3" > $SR
fi
echo -n "$vr" > $SR
sleep 8
echo -ne "$D1 $D2" > $SR
sleep 3
echo -ne "WAN IP: $WIP" > $SR
sleep 3
if ! ping -c2 -W2 $IS > /dev/null; then
echo -ne "$NC client Internet DOWN" > $SR
echo -ne "2" > $SR
nt=0;
else
nt=1;
echo -ne "$NC client Internet UP" > $SR
echo -ne "1" > $SR
sleep 3
echo -ne "Net IP: $NET" > $SR
sleep 3
echo -ne "ISP: $ISP" > $SR
fi
sleep 3
if [ "$nt" -eq 1 ]; then
echo -ne "Ping avg: $PA$PM/$PI" > $SR
sleep 4
fi
echo -ne "WAN RX: $Rxw" > $SR
sleep 3
echo -ne "WAN TX: $Txw" > $SR
sleep 3
echo -ne "WLan RX: $Rxv" > $SR
sleep 3
echo -ne "WLan TX: $Txv" > $SR
sleep 3
echo -ne "Time $DU UP $UP " > $SR
sleep 3
echo -ne "Load $LD" > $SR
sleep 3
done
我不认为echo
解码转义序列,例如这一行不起作用:
echo -ne "1"
请尝试改用printf
。
相关文章:
- 防止主数据类型C++的隐式转换
- 用于访问容器<T>数据成员的正确 API
- 嵌套在类中时无法设置成员数据
- 使用流处理接收到的数据
- 静态数据成员的问题-修复链接错误会导致编译器错误
- 处理小于cpu数据总线的数据类型.(c++转换为机器代码)
- 在cuda线程之间共享大量常量数据
- C++将文本文件中的数据读取到结构数组中
- 如何在C++中序列化结构数据
- 在C++中打印指向不同基元数据类型的指针的内存地址
- 通过套接字[TCP]传输数据 如何在C / C ++中打包多个整数并使用send() recv()传输数据
- 在c代码之间共享数据的最佳方式
- 链表,反向函数,数据结构
- 数据成员SFINAE的C++17测试:gcc vs clang
- C++浮点数据类型和字符串数据类型无法子到模板函数中
- 如何对点云数据进行排序
- 从矢量<无符号字符>转换为字符* 包括垃圾数据
- 在C++中创建一个简单的数据包路由器,如何跟踪"客户端"?
- 我的ddwrt路由器没有数据
- 将 UDP 数据包从 WAN 发送到本地计算机,而无需在路由器C++上设置端口转发