×

Programming processors through CAN interface without changing the boot mode select pins

  • US 8,826,261 B1
  • Filed: 02/24/2011
  • Issued: 09/02/2014
  • Est. Priority Date: 02/25/2010
  • Status: Active Grant
First Claim
Patent Images

1. A fuel cell system, comprising:

  • a fuel cell;

    a control system connected to the fuel cell;

    a controller area network;

    a transceiver;

    a controller area network to Ethernet (C2E) converter card connected between the transceiver and the controller area network, the C2E converter card being configured to perform operations comprising;

    receiving data from the transceiver in an Ethernet-based message format and receiving data from the controller area network in a controller area network format; and

    sending the data from the transceiver to the controller area network in the controller area network format and sending the data from the controller area network to the transceiver in the Ethernet-based message format; and

    a processor connected to the controller area network and the control system,wherein;

    the processor is a one or more pin chip including an on-chip Flash memory;

    the processor is configured with more than one boot mode and is configured to boot to the Flash memory by a physical setting of the one or more pin of the chip;

    the on-chip Flash memory includes firmware to control an operation of the control system;

    the firmware includes a communication kernel and an application program; and

    the processor is configured with processor-executable instructions such that, without changing the physical setting of the one or more pin of the chip, the processor is configured to perform operations comprising;

    executing the application program of the firmware to control the operation of the control system thereby controlling the operation of the fuel cell;

    receiving a programming signal from the controller area network;

    halting execution of the application program of the firmware to control the operation of the control system in response to receiving the programming signal from the controller area network;

    erasing the application program of the firmware from the Flash memory in response to receiving the programming signal from the controller area network;

    setting an update firmware flag in response to erasing the application program of the firmware;

    sending a start programming acknowledgment signal via the controller area network in response to setting the update firmware flag;

    restarting the processor in response to sending the start programming acknowledgment signal;

    determining whether the update firmware flag is set after restarting the processor;

    determining whether a data message is received in response to determining the update firmware flag is set after restarting the processor;

    initializing a new application program based on received data message and storing the new application program as part of the firmware in the Flash memory in response to determining the data message is received;

    receiving an application program cyclic redundancy check;

    performing a cyclic redundancy check of all of the Flash memory after storing the new application program as part of the firmware in the Flash memory;

    comparing the cyclic redundancy check of the Flash memory with the received application program cyclic redundancy check to determine whether the cyclic redundancy check of the Flash memory matches the received application program cyclic redundancy check;

    unsetting the update firmware flag in response to determining the cyclic redundancy check of the Flash memory matches the received application program cyclic redundancy check;

    restarting the processor in response to unsetting the update firmware flag; and

    executing the new application program of the firmware to control the operation of the control system in response to determining the update firmware flag is not set after restarting the processor thereby controlling the operation of the fuel cell.

View all claims
  • 3 Assignments
Timeline View
Assignment View
    ×
    ×