Difference between revisions of "MSP430 Datalogger"

From DIDEAS Wiki
Jump to: navigation, search
m
 
m
Line 1: Line 1:
 +
==Support Software / Hardware==
 +
* C compiler and JTAG tools : http://mspgcc.sourceforge.net/
 +
* PC Hardware clock synchronization : http://www.thinkman.com/dimension4/download.htm
 +
* Parallel port J-TAG cable : http://www.olimex.com/dev/msp-jtag.html
 +
 +
 +
 
==SD Card Preperation==
 
==SD Card Preperation==
  
Line 15: Line 22:
  
  
Using the windows un
+
Cause windows to flush data buffers.  From explorer, right click on the drive letter representing the SD card, and select eject.  You can remove the card.
  
 
=== How the datalogger chooses where to write data on the SD card==
 
=== How the datalogger chooses where to write data on the SD card==
 
The datalogger only consults the SD card's FAT when the card is inserted and thus does not modify the FAT or follow it.  At insertion the partition table, boot record, and root directy are analyzed ultimatly to find the cluster number of a single file "datalog0.txt".  If the file doesn't exist then the logger stops and waits for a card insertion event.  If the file is found then the starting cluster is read and from that the LBA (logical block address) of the start of the file is calculated. The datalogger will then using a binary search algorithm searching the card's complete data area to locate "end of file". End of file is define as the last sector that does NOT start with 4 bytes of 0xFF.  Writing will comence with the first LBA that does contain 0xFFFFFFFF.
 
The datalogger only consults the SD card's FAT when the card is inserted and thus does not modify the FAT or follow it.  At insertion the partition table, boot record, and root directy are analyzed ultimatly to find the cluster number of a single file "datalog0.txt".  If the file doesn't exist then the logger stops and waits for a card insertion event.  If the file is found then the starting cluster is read and from that the LBA (logical block address) of the start of the file is calculated. The datalogger will then using a binary search algorithm searching the card's complete data area to locate "end of file". End of file is define as the last sector that does NOT start with 4 bytes of 0xFF.  Writing will comence with the first LBA that does contain 0xFFFFFFFF.

Revision as of 06:37, 22 August 2005

Support Software / Hardware


SD Card Preperation

The following information was created and verified using Windows 2000 SP4.

Format card using FAT16 and a large cluster size:


format <drive_letter> /FS:FAT /A:16K /VL


A cluster size of 16K was the largest permited with the SD 128MB card. Possibly a smaller cluster size will need to be used with a smaller SD card.


Copy the file XXX to the SD card. This binary file contains a single value (0xFF) and is designed to overwrite previous data on the card and most importantly to cause windows to create a single FAT file chain the starts with cluster 2, 3, 4, 5, ..., last available cluster.


Cause windows to flush data buffers. From explorer, right click on the drive letter representing the SD card, and select eject. You can remove the card.

= How the datalogger chooses where to write data on the SD card

The datalogger only consults the SD card's FAT when the card is inserted and thus does not modify the FAT or follow it. At insertion the partition table, boot record, and root directy are analyzed ultimatly to find the cluster number of a single file "datalog0.txt". If the file doesn't exist then the logger stops and waits for a card insertion event. If the file is found then the starting cluster is read and from that the LBA (logical block address) of the start of the file is calculated. The datalogger will then using a binary search algorithm searching the card's complete data area to locate "end of file". End of file is define as the last sector that does NOT start with 4 bytes of 0xFF. Writing will comence with the first LBA that does contain 0xFFFFFFFF.