- IO1DIR|=0x00FF0000; // Port as output to send data
- IO1CLR=0x00FF0000; // Clear all data on port
- // Init
- SET_OUT_PIN(IO0,P0_SJA1000_RD_PIN); // Stays high on write
- SET_OUT_PIN(IO0,P0_SJA1000_WR_PIN); // Stays high on address write
- SET_OUT_PIN(IO0,P0_SJA1000_CS_PIN); // Sets output buffers to third state
- for (slowdown=0;slowdown<SJA1000_SCLK;slowdown++);
- //SET_OUT_PIN(IO0,P0_SJA1000_ALE_PIN); // Start command
-
- // Set memory address
- IO1SET=__val2mfld(0x00FF0000,address&0xFF); // Shift data to SJA pins and output them
- for (slowdown=0;slowdown<SJA1000_SCLK;slowdown++);
- //CLR_OUT_PIN(IO0,P0_SJA1000_ALE_PIN); // Makes address active
- CLR_OUT_PIN(IO0,P0_SJA1000_CS_PIN);
- for (slowdown=0;slowdown<SJA1000_SCLK;slowdown++);
-
- // Setting data
- CLR_OUT_PIN(IO0,P0_SJA1000_WR_PIN);
-
- IO1CLR=0x00FF0000;
- IO1SET=__val2mfld(0x00FF0000,data&0xFF);
- for (slowdown=0;slowdown<SJA1000_SCLK;slowdown++);
- SET_OUT_PIN(IO0,P0_SJA1000_WR_PIN); // Data should be accepted by now
- SET_OUT_PIN(IO0,P0_SJA1000_CS_PIN);
- for (slowdown=0;slowdown<SJA1000_SCLK;slowdown++);
-
-// struct usb_ul_usb1 *dev;
-// int retval;
-// int bytes_transferred;
-// unsigned char buffer[2];
-// buffer[0]=((unsigned char)address & ~CAN_OP_MASK)+CAN_OP_WRITE;
-// buffer[1]=(unsigned char)data;
-//
-// dev = (struct usb_ul_usb1 *)candev->sysdevptr.anydev;
-
-// mutex_lock(&dev->io_mutex);
-// if (!dev) { /* disconnect() was called */
-// CANMSG("Sending %lu:%X : ERR No device\n",address,(uint8_t)data);
-// retval = -ENODEV;
-// goto exit;
-// }
-// if (!dev->interface) { /* disconnect() was called */
-// CANMSG("Sending %lu:%X : ERR No interface\n",address,(uint8_t)data);
-// retval = -ENODEV;
-// goto exit;
-// }
-
- /* do a blocking bulk write to send data to the device */
-/* retval = usb_bulk_msg(dev->udev,
- usb_sndbulkpipe(dev->udev, dev->bulk_out_endpointAddr),
- buffer,
- 2,
- &bytes_transferred, 10000);
- CANMSG("Sending %lu:%X : retval %d, transferred %d bytes\n",address,(uint8_t)data,retval,bytes_transferred);
-
-exit:
- mutex_unlock(&dev->io_mutex);*/