ECE 4180 Fitbit Project / Mbed 2 deprecated 4180_Fitness_Tracker

Dependencies:   mbed PulseSensor2 SCP1000 mbed-rtos 4DGL-uLCD-SE LSM9DS1_Library_cal PinDetect FatFileSystemCpp GP-20U7

Committer:
memig3
Date:
Fri Apr 10 23:58:25 2020 +0000
Revision:
18:9617bd66bdae
added pedometer.cpp file which integrates accelerometer, pressure sensor and heart rate sensor, displays values in real time on LCD and attempts to count steps

Who changed what in which revision?

UserRevisionLine numberNew contents of line
memig3 18:9617bd66bdae 1 /*
memig3 18:9617bd66bdae 2 **************************************************************************************************************
memig3 18:9617bd66bdae 3 * NXP USB Host Stack
memig3 18:9617bd66bdae 4 *
memig3 18:9617bd66bdae 5 * (c) Copyright 2008, NXP SemiConductors
memig3 18:9617bd66bdae 6 * (c) Copyright 2008, OnChip Technologies LLC
memig3 18:9617bd66bdae 7 * All Rights Reserved
memig3 18:9617bd66bdae 8 *
memig3 18:9617bd66bdae 9 * www.nxp.com
memig3 18:9617bd66bdae 10 * www.onchiptech.com
memig3 18:9617bd66bdae 11 *
memig3 18:9617bd66bdae 12 * File : usbhost_ms.h
memig3 18:9617bd66bdae 13 * Programmer(s) : Ravikanth.P
memig3 18:9617bd66bdae 14 * Version :
memig3 18:9617bd66bdae 15 *
memig3 18:9617bd66bdae 16 **************************************************************************************************************
memig3 18:9617bd66bdae 17 */
memig3 18:9617bd66bdae 18
memig3 18:9617bd66bdae 19 #ifndef USBHOST_MS_H
memig3 18:9617bd66bdae 20 #define USBHOST_MS_H
memig3 18:9617bd66bdae 21
memig3 18:9617bd66bdae 22 /*
memig3 18:9617bd66bdae 23 **************************************************************************************************************
memig3 18:9617bd66bdae 24 * INCLUDE HEADER FILES
memig3 18:9617bd66bdae 25 **************************************************************************************************************
memig3 18:9617bd66bdae 26 */
memig3 18:9617bd66bdae 27
memig3 18:9617bd66bdae 28 #include "usbhost_inc.h"
memig3 18:9617bd66bdae 29
memig3 18:9617bd66bdae 30 /*
memig3 18:9617bd66bdae 31 **************************************************************************************************************
memig3 18:9617bd66bdae 32 * MASS STORAGE SPECIFIC DEFINITIONS
memig3 18:9617bd66bdae 33 **************************************************************************************************************
memig3 18:9617bd66bdae 34 */
memig3 18:9617bd66bdae 35
memig3 18:9617bd66bdae 36 #define MS_GET_MAX_LUN_REQ 0xFE
memig3 18:9617bd66bdae 37 #define MASS_STORAGE_CLASS 0x08
memig3 18:9617bd66bdae 38 #define MASS_STORAGE_SUBCLASS_SCSI 0x06
memig3 18:9617bd66bdae 39 #define MASS_STORAGE_PROTOCOL_BO 0x50
memig3 18:9617bd66bdae 40
memig3 18:9617bd66bdae 41 #define INQUIRY_LENGTH 36
memig3 18:9617bd66bdae 42 /*
memig3 18:9617bd66bdae 43 **************************************************************************************************************
memig3 18:9617bd66bdae 44 * SCSI SPECIFIC DEFINITIONS
memig3 18:9617bd66bdae 45 **************************************************************************************************************
memig3 18:9617bd66bdae 46 */
memig3 18:9617bd66bdae 47
memig3 18:9617bd66bdae 48 #define CBW_SIGNATURE 0x43425355
memig3 18:9617bd66bdae 49 #define CSW_SIGNATURE 0x53425355
memig3 18:9617bd66bdae 50 #define CBW_SIZE 31
memig3 18:9617bd66bdae 51 #define CSW_SIZE 13
memig3 18:9617bd66bdae 52 #define CSW_CMD_PASSED 0x00
memig3 18:9617bd66bdae 53 #define SCSI_CMD_REQUEST_SENSE 0x03
memig3 18:9617bd66bdae 54 #define SCSI_CMD_TEST_UNIT_READY 0x00
memig3 18:9617bd66bdae 55 #define SCSI_CMD_INQUIRY 0x12
memig3 18:9617bd66bdae 56 #define SCSI_CMD_READ_10 0x28
memig3 18:9617bd66bdae 57 #define SCSI_CMD_READ_CAPACITY 0x25
memig3 18:9617bd66bdae 58 #define SCSI_CMD_WRITE_10 0x2A
memig3 18:9617bd66bdae 59
memig3 18:9617bd66bdae 60 /*
memig3 18:9617bd66bdae 61 **************************************************************************************************************
memig3 18:9617bd66bdae 62 * TYPE DEFINITIONS
memig3 18:9617bd66bdae 63 **************************************************************************************************************
memig3 18:9617bd66bdae 64 */
memig3 18:9617bd66bdae 65
memig3 18:9617bd66bdae 66 typedef enum ms_data_dir {
memig3 18:9617bd66bdae 67
memig3 18:9617bd66bdae 68 MS_DATA_DIR_IN = 0x80,
memig3 18:9617bd66bdae 69 MS_DATA_DIR_OUT = 0x00,
memig3 18:9617bd66bdae 70 MS_DATA_DIR_NONE = 0x01
memig3 18:9617bd66bdae 71
memig3 18:9617bd66bdae 72 } MS_DATA_DIR;
memig3 18:9617bd66bdae 73
memig3 18:9617bd66bdae 74 /*
memig3 18:9617bd66bdae 75 **************************************************************************************************************
memig3 18:9617bd66bdae 76 * FUNCTION PROTOTYPES
memig3 18:9617bd66bdae 77 **************************************************************************************************************
memig3 18:9617bd66bdae 78 */
memig3 18:9617bd66bdae 79
memig3 18:9617bd66bdae 80 USB_INT32S MS_BulkRecv ( USB_INT32U block_number,
memig3 18:9617bd66bdae 81 USB_INT16U num_blocks,
memig3 18:9617bd66bdae 82 volatile USB_INT08U *user_buffer);
memig3 18:9617bd66bdae 83
memig3 18:9617bd66bdae 84 USB_INT32S MS_BulkSend ( USB_INT32U block_number,
memig3 18:9617bd66bdae 85 USB_INT16U num_blocks,
memig3 18:9617bd66bdae 86 volatile USB_INT08U *user_buffer);
memig3 18:9617bd66bdae 87 USB_INT32S MS_ParseConfiguration(void);
memig3 18:9617bd66bdae 88 USB_INT32S MS_TestUnitReady (void);
memig3 18:9617bd66bdae 89 USB_INT32S MS_ReadCapacity (USB_INT32U *numBlks, USB_INT32U *blkSize);
memig3 18:9617bd66bdae 90 USB_INT32S MS_GetMaxLUN (void);
memig3 18:9617bd66bdae 91 USB_INT32S MS_GetSenseInfo (void);
memig3 18:9617bd66bdae 92 USB_INT32S MS_Init (USB_INT32U *blkSize, USB_INT32U *numBlks, USB_INT08U *inquiryResult);
memig3 18:9617bd66bdae 93 USB_INT32S MS_Inquire (USB_INT08U *response);
memig3 18:9617bd66bdae 94
memig3 18:9617bd66bdae 95 void Fill_MSCommand ( USB_INT32U block_number,
memig3 18:9617bd66bdae 96 USB_INT32U block_size,
memig3 18:9617bd66bdae 97 USB_INT16U num_blocks,
memig3 18:9617bd66bdae 98 MS_DATA_DIR direction,
memig3 18:9617bd66bdae 99 USB_INT08U scsi_cmd,
memig3 18:9617bd66bdae 100 USB_INT08U scsi_cmd_len);
memig3 18:9617bd66bdae 101 #endif