tes

Dependencies:   NetServices mbed C027_Supports mbed-rpcx

Committer:
aldoao
Date:
Wed Sep 11 06:32:20 2019 +0000
Revision:
1:f7d9b0530b73
Parent:
0:64967b7043c2
tipe,1

Who changed what in which revision?

UserRevisionLine numberNew contents of line
irsanjul 0:64967b7043c2 1 #include "mbed.h"
irsanjul 0:64967b7043c2 2 #include "AruChannel.h"
irsanjul 0:64967b7043c2 3
irsanjul 0:64967b7043c2 4 extern Serial dbg;
irsanjul 0:64967b7043c2 5
irsanjul 0:64967b7043c2 6 AruChannel::AruChannel()
irsanjul 0:64967b7043c2 7 {
irsanjul 0:64967b7043c2 8 dbg.printf("<AruChannel>");
irsanjul 0:64967b7043c2 9
irsanjul 0:64967b7043c2 10 COM.connect("127.0.0.1:123");
irsanjul 0:64967b7043c2 11 commId = 0;
irsanjul 0:64967b7043c2 12 }
irsanjul 0:64967b7043c2 13
irsanjul 0:64967b7043c2 14 AruChannel::~AruChannel()
irsanjul 0:64967b7043c2 15 {
irsanjul 0:64967b7043c2 16
irsanjul 0:64967b7043c2 17 }
irsanjul 0:64967b7043c2 18
irsanjul 0:64967b7043c2 19 int AruChannel::ReceiveCount()
irsanjul 0:64967b7043c2 20 {
irsanjul 0:64967b7043c2 21 return Frm.RCV_QUE.size();
irsanjul 0:64967b7043c2 22 }
irsanjul 0:64967b7043c2 23
irsanjul 0:64967b7043c2 24 AruFrm AruChannel::Receive()
irsanjul 0:64967b7043c2 25 {
irsanjul 0:64967b7043c2 26 AruFrm res = Frm.RCV_QUE.front();
irsanjul 0:64967b7043c2 27 Frm.RCV_QUE.pop();
irsanjul 0:64967b7043c2 28 return res;
irsanjul 0:64967b7043c2 29 }
irsanjul 0:64967b7043c2 30
irsanjul 0:64967b7043c2 31 void AruChannel::Transmit(const AruFrm &f)
irsanjul 0:64967b7043c2 32 {
irsanjul 0:64967b7043c2 33 XMT_QUE.push(f);
irsanjul 0:64967b7043c2 34 }
irsanjul 0:64967b7043c2 35
irsanjul 0:64967b7043c2 36 void AruChannel::Process()
irsanjul 0:64967b7043c2 37 {
irsanjul 0:64967b7043c2 38 if(COM.dataAvailable() > 0)
irsanjul 0:64967b7043c2 39 {
irsanjul 0:64967b7043c2 40 std::vector<int> r = COM.read();
irsanjul 0:64967b7043c2 41
irsanjul 0:64967b7043c2 42 Frm.ProcessFromAru(r);
irsanjul 0:64967b7043c2 43 }
irsanjul 0:64967b7043c2 44
irsanjul 0:64967b7043c2 45 while(XMT_QUE.size() > 0)
irsanjul 0:64967b7043c2 46 {
irsanjul 0:64967b7043c2 47 AruFrm t = XMT_QUE.front();
irsanjul 0:64967b7043c2 48 XMT_QUE.pop();
irsanjul 0:64967b7043c2 49
irsanjul 0:64967b7043c2 50 // TCP/IP
irsanjul 0:64967b7043c2 51 std::vector<int> x = AruFraming::CreateFrame(t);
irsanjul 0:64967b7043c2 52 COM.write(x);
irsanjul 0:64967b7043c2 53
irsanjul 0:64967b7043c2 54 commId++;
irsanjul 0:64967b7043c2 55 }
irsanjul 0:64967b7043c2 56 }
irsanjul 0:64967b7043c2 57
irsanjul 0:64967b7043c2 58 void AruChannel::Tick10ms()
irsanjul 0:64967b7043c2 59 {
irsanjul 0:64967b7043c2 60 COM.Tick10ms();
irsanjul 0:64967b7043c2 61 }