问题描述
我需要通过TCP侦听器读取差异设备的寄存器值。
要获取寄存器的值,我们需要向具有设备ID的设备请求,在下面的代码中0xF7是硬编码的。
现在我们有500多个设备将连接到我们的端口,那么当它们连接到我们的TCP端口时,是否有任何方法来获取设备ID(slaveID)?
class PriceScreen extends StatefulWidget {
@override
PriceScreenState createState() => PriceScreenState();
}
class PriceScreenState extends State < PriceScreen > {
String selectedCurrency = 'USD';
String selectedGraphType = "1M";
Map < String,String > coinValues = {};
Map < String,double > graphValues = {};
***Future futureData;
bool isWaiting = false;
getData() async {
isWaiting = true;
try {
Map coinData = await CoinData().getCoinData(selectedCurrency);
Map graphData = await GraphData().getGraphData(
selectedCurrency: selectedCurrency,selectedGraphType: selectedGraphType);
isWaiting = false;
setState(() {
coinValues = coinData;
graphValues = graphData;
});
} catch (e) {
print(e);
}
}
@override
void initState() {
super.initState();
***futureData = getData();
}
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text('Crypto Watcher'),),body: ModalProgressHUD(
child: Column(
mainAxisAlignment: MainAxisAlignment.spaceBetween,crossAxisAlignment: CrossAxisAlignment.stretch,***child: FutureBuilder(
future: futureData,builder: (context,snapshot) {
if (graphValues.isEmpty) {
return new Container();
} else
print(graphValues);
return Graph(closingTimesAndPrices: graphValues);
}),inAsyncCall: isWaiting,progressIndicator: CircularProgressIndicator(
backgroundColor: Colors.orange,);
}
}
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)