bms_hardware

Committer:
roger5641
Date:
Sun Nov 12 01:21:53 2017 +0000
Revision:
0:5f17f13ad875
ver1

Who changed what in which revision?

UserRevisionLine numberNew contents of line
roger5641 0:5f17f13ad875 1 /*!
roger5641 0:5f17f13ad875 2 LTC681x hardware library
roger5641 0:5f17f13ad875 3 @verbatim
roger5641 0:5f17f13ad875 4 This library contains all of the hardware dependant functions used by the bms
roger5641 0:5f17f13ad875 5 code
roger5641 0:5f17f13ad875 6 @endverbatim
roger5641 0:5f17f13ad875 7 REVISION HISTORY
roger5641 0:5f17f13ad875 8 $Revision: 7139 $
roger5641 0:5f17f13ad875 9 $Date: 2017-4
roger5641 0:5f17f13ad875 10
roger5641 0:5f17f13ad875 11 Copyright (c) 2017, Linear Technology Corp.(LTC)
roger5641 0:5f17f13ad875 12 All rights reserved.
roger5641 0:5f17f13ad875 13
roger5641 0:5f17f13ad875 14 Redistribution and use in source and binary forms, with or without
roger5641 0:5f17f13ad875 15 modification, are permitted provided that the following conditions are met:
roger5641 0:5f17f13ad875 16
roger5641 0:5f17f13ad875 17 1. Redistributions of source code must retain the above copyright notice, this
roger5641 0:5f17f13ad875 18 list of conditions and the following disclaimer.
roger5641 0:5f17f13ad875 19 2. Redistributions in binary form must reproduce the above copyright notice,
roger5641 0:5f17f13ad875 20 this list of conditions and the following disclaimer in the documentation
roger5641 0:5f17f13ad875 21 and/or other materials provided with the distribution.
roger5641 0:5f17f13ad875 22
roger5641 0:5f17f13ad875 23 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
roger5641 0:5f17f13ad875 24 ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
roger5641 0:5f17f13ad875 25 WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
roger5641 0:5f17f13ad875 26 DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
roger5641 0:5f17f13ad875 27 ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
roger5641 0:5f17f13ad875 28 (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
roger5641 0:5f17f13ad875 29 LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
roger5641 0:5f17f13ad875 30 ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
roger5641 0:5f17f13ad875 31 (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
roger5641 0:5f17f13ad875 32 SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
roger5641 0:5f17f13ad875 33
roger5641 0:5f17f13ad875 34 The views and conclusions contained in the software and documentation are those
roger5641 0:5f17f13ad875 35 of the authors and should not be interpreted as representing official policies,
roger5641 0:5f17f13ad875 36 either expressed or implied, of Linear Technology Corp.
roger5641 0:5f17f13ad875 37
roger5641 0:5f17f13ad875 38 The Linear Technology Linduino is not affiliated with the official Arduino team.
roger5641 0:5f17f13ad875 39 However, the Linduino is only possible because of the Arduino team's commitment
roger5641 0:5f17f13ad875 40 to the open-source community. Please, visit http://www.arduino.cc and
roger5641 0:5f17f13ad875 41 http://store.arduino.cc , and consider a purchase that will help fund their
roger5641 0:5f17f13ad875 42 ongoing work.
roger5641 0:5f17f13ad875 43
roger5641 0:5f17f13ad875 44 Copyright 2017 Linear Technology Corp. (LTC)
roger5641 0:5f17f13ad875 45 */
roger5641 0:5f17f13ad875 46 #ifndef BMSHARDWARE_H
roger5641 0:5f17f13ad875 47 #define BMSHARDWARE_H
roger5641 0:5f17f13ad875 48
roger5641 0:5f17f13ad875 49 #include "mbed.h"
roger5641 0:5f17f13ad875 50 #include "LT_SPI.h"
roger5641 0:5f17f13ad875 51
roger5641 0:5f17f13ad875 52 //void set_spi_freq();
roger5641 0:5f17f13ad875 53
roger5641 0:5f17f13ad875 54
roger5641 0:5f17f13ad875 55 /*
roger5641 0:5f17f13ad875 56 Writes an array of bytes out of the SPI port
roger5641 0:5f17f13ad875 57 */
roger5641 0:5f17f13ad875 58 void spi_write_array(uint8_t len, // Option: Number of bytes to be written on the SPI port
roger5641 0:5f17f13ad875 59 uint8_t data[] //Array of bytes to be written on the SPI port
roger5641 0:5f17f13ad875 60 );
roger5641 0:5f17f13ad875 61 /*
roger5641 0:5f17f13ad875 62 Writes and read a set number of bytes using the SPI port.
roger5641 0:5f17f13ad875 63
roger5641 0:5f17f13ad875 64 */
roger5641 0:5f17f13ad875 65
roger5641 0:5f17f13ad875 66 void spi_write_read(uint8_t tx_Data[],//array of data to be written on SPI port
roger5641 0:5f17f13ad875 67 uint8_t tx_len, //length of the tx data arry
roger5641 0:5f17f13ad875 68 uint8_t *rx_data,//Input: array that will store the data read by the SPI port
roger5641 0:5f17f13ad875 69 uint8_t rx_len //Option: number of bytes to be read from the SPI port
roger5641 0:5f17f13ad875 70 );
roger5641 0:5f17f13ad875 71
roger5641 0:5f17f13ad875 72 uint8_t spi_read_byte(uint8_t tx_dat);//name conflicts with linduino also needs to take a byte as a parameter
roger5641 0:5f17f13ad875 73 #endif