+
+ ################# TX MANAGEMENT ##################
+
+ def MCPrts(self,TXB0=False,TXB1=False,TXB2=False):
+ """Requests to send one of the transmit buffers."""
+ flags=0;
+ if TXB0: flags=flags|1;
+ if TXB1: flags=flags|2;
+ if TXB2: flags=flags|4;
+
+ if flags==0:
+ print "Warning: Requesting to send no buffer.";
+ if self.MCPcanstat()>>5!=0:
+ print "Warning: currently in %s mode. NOT in normal mode! May not transmit." %self.MCPcanstatstr();
+ self.SPItrans([0x80|flags]);
+
+ def writetxbuffer(self,packet,packbuf=0):
+ """Writes the transmit buffer."""
+
+ self.SPItrans([0x40|(packbuf<<1)]+packet);
+ #READ BACK BUFFER 0 to check what we're about to send out
+ data=self.SPItrans([0x03, 0x31,
+ 0x00,0x00, #SID
+ 0x00,0x00, #EID
+ 0x00, #DLC
+ 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00
+ ]);
+ print "about to transmit:" + self.packet2str(data[2:len(data)]);
+