Read GPS MT3329

Dependencies:   FatFileSystem mbed

Committer:
belloula
Date:
Sun Mar 29 14:43:22 2015 +0000
Revision:
0:9611b40fec6f
Read from MT3329 GPS and print on Pc (usb serial pc)

Who changed what in which revision?

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