Archive for the ‘Storage’ Category

FN-M16P MP3 player (Part 2)

Part 1, 2 As seen in the previous post, the MCU (e.g. arduino) and the module are talking each other through a serial communication (UART) at a quite modest rate of 9600 baud. Data is exchanged as packets of 10 bytes according to the following structure: Byte# Function Value Comments 0 Start Byte 0x7E constant 1 […]

FN-M16P MP3 player (Part 1)

Part 1, 2 How come I managed to miss this fancy little module ? It’s my good ol’ friend Sébastien from Quai-Lab who showed me this little piece of electronic which he included in his inMoov robot. Bright idea ! For a few €, his robot will speak and improve its interactions to the public. […]

News from the Plain DSP planet

You may like read this interesting paper dedicated to the use of the different types of memory available from an Arduino Board . Next is a picture from a cousin microcontroller of the ATMEGA328, which illustrates the various areas dedicated to each main function of the microcontroller such as the memories. Credit: ZeptoBars HTH

Memory (Part 5)

Part 1, 2, 3, 4, 5, 6, 7 The code sample from the previous post shows how to read and write bytes on the EEPROM chips. Just fine !  But what about reading and writing other types of data such as short and long integers or floating point values ? This post contains an example of use of the PlainSPI_EEPROM library which […]

SD Cards (Part 6)

Previous posts on same subject Part 1, 2, 3, 4, 5, 6 SD cards are a de facto standard for storing all sorts of information. They are cheap and their capacity seems to be (almost) limitless. As explained in previous posts, SD card can be used in two ways: as a logical unit for use with computer OS or in native mode. In […]

Tips and Tricks (Part19)

Previous tip and trick The aim of this tip is to help you to avoid to fall in pretty confusing trap. Here is how. Upgrading a complex library, even with minor changes, may lead to very complex debugging. This is even more true when tight timings, subtle proprietary protocols and many variables are involved. Secure […]

SD Cards (Part 5)

Other posts on same subject Part 1, 2, 3, 4, 5, 6 Erratum! While building a professional grade application I realized that I made a stupid mistake in the Blocks function from my PlainSDC library. Firstly, here is a nice table showing the content of the CARD SPECIFIC DATA REGISTER: It is taken from the ‘APPLICATION NOTE 3969: SD Media Format Expands […]

Memory (Part 1)

Part 1, 2, 3, 4, 5, 6, 7 The intention of this series of posts is to share a number of tips and tricks which will help developing quite big applications. I also plan to explain how I managed to increase the available memory for Arduino applications along with some application examples. I shall take the good ol’ ATmega328 as a reference […]

Tilt Sensor (Part 7)

Part 1, 2, 3, 4, 5, 6, 7, 8, 9 Calibrating the accelerometer on each boot may be boring! It might be a good idea to store the calibration parameters in some non-volatile memory space so that we could call them back on boot. The ATMEGA has a built in EEPROM memory space which will be perfect for this use. First of all, we […]

SD Cards (Part 4)

Other posts on same subject Part 1, 2, 3, 4, 5, 6 I could have nammed this post “Cheapest SD card socket contest”. This is the simplest, smallest and cheapest socket that I have found for attaching a SD card to an (Adafruit type of) Arduino proto shield. In addition to the shield, you only need a 7 pins male header, a […]