Using TxBuffer_IC_1.dat for bootloading from a VB app (ADAU1761)

Discussion created by PaulBKaraoke on Apr 1, 2012
Latest reply on Mar 13, 2014 by PaulBKaraoke

I am using VB because that's what I have the most experience in, and it was hard to find a lot of support for this part of my application.

So I am sharing what I have come up with here. I am using a cypress chip similar to the one on the evaluation board, modified by DELCOM, pre-coded for VB compatible DLL that allows me to write I2C from a VB app. For boot-loading 3 chips I found the TxBuffer files to be sufficient. I can parse the code using VB text manipulations on the files outputted from sigma studio.  Here are a few notes I would like to share

Register section can be written one byte address at a time. I take the line that has a comment as a starting address, then increment in my program.

The sigma output writes in sections of differing lengths, using one address at a time makes my coding easier.

The program, parameter, non modulo and "cleanup" section are all indicated by finding the comment on that line.

The Program section start can be detected by the comment line, but it is always at line 61 for the starting address 62 first 5 byte location.

then increment the address for each line of 5 bytes until the next comment line ( parameter section).

The Parameter section is the same program loop but parsing 4 bytes per line, per address incremented

then the tricky part is the "non modulo" section. The output file outputs 5 bytes per line, with the leftovers on the last line. The Non Modulo size is 4 bytes per address. So, if there are 3 addresses the will be 2 lines of 5, and one line of 2 bytes. To make my coding easier, I manually edit that part of the TxBuffer file so that each line is 4 bytes. Then the "cleanup section" ( /* SAMPLE RATE SETTING) is always the same , so instead of reading this part, I just hard code it in. This works for me to bootload 3 ADAU1761 chips on one board using a VB application and the DELCOM chip.

I hope this can help someone out.