Programming the MSP430 of the VS23S010 Breakout Board

Designing hardware and software that uses the VS23S0X0 family of ICs as a 8-bit or SPI SRAM memory or as a Video Controller for generating Composite Video (TV-Out) or driving other kinds of displays.
Post Reply
Kalle
VLSI Staff
Posts: 17
Joined: Tue 2017-06-06 8:59

Programming the MSP430 of the VS23S010 Breakout Board

Post by Kalle »

The VS23S010 Breakout Board features a Texas Instruments MSP430G2432 microcontroller. This post includes the example code and the instructions for using it to control the VS23. The program generates the same test image as the Arduino version, and the code itself is same for the most part. Most differences are in the SPI functions of SpiSimple.c.

If you wish to run the program on the Breakout Board while it's connected to an Arduino, use the programs in the more recent post.

IMG_20170904_134504.jpg
IMG_20170904_134504.jpg (2.29 MiB) Viewed 12039 times

To program the MSP430, we use an MSP-EXP430G2 Launchpad, and the Code Composer Studio v7 software. According to Texas Instruments, any version after v4 should be compatible with the Launchpad. IAR Embedded Workbench should also work, but this post doesn't include instructions for that.

Download CCS here and install it. After that, connect the Launchpad with a USB cable and Windows should automatically install the drivers.

IMG_20170831_100527.jpg
IMG_20170831_100527.jpg (2.57 MiB) Viewed 12044 times

The Launchpad has a 20-pin target socket, and in the pictures a chip can be seen plugged into it. A LED can also be seen, soldered between two of the pins. These can be ignored in this example.

To connect the Launchpad to the Breakout Board we use four cables. For orientation we'll presume that the "Launchpad" text is the "bottom", and "top" is the side with the USB connector (orientation in the above picture is of course different).

Three of the cables go on the 10-pin header J3. If the on-board target socket was being used, the two pin rows of the header would be closed with jumpers. However, with the separate board we only use the top-row.

The Launchpad's VCC pin is connected to the VHIGH of the Breakout Board (red cable), TEST is connected to TEST/BTCK (green cable), and RST is connected to RST/BWTDIO (white cable). The fourth cable (black) is ground, which is connected to one of the two GND pins of the 3-pin header (J6) in the low-right corner of the Launchpad, and the Breakout Board's GND pin. In the picture, the one next to the VHIGH is used.

One additional cable is needed on the Breakout Board's XRST signal. This should be connected to one of the two 3V3 pins. If XRST is left low, the video generation will not function. Video-out should also be connected to a display.

Once you have the boards connected and the example program downloaded, open CCS, and then its "Import"-window ("File" -> "Import..."). You will be prompted to choose an import wizard. The correct one is "CCS Projects", which can be found under both "C/C++" and "Code Composer Studio". Pick either one and click "Next".

On the next page, choose "Select search-directory" and click the "Browse..."-button at the end of the row. Navigate to the directory of the downloaded example program (ntsc_msp430) and click "Ok". NOTE: do not click on any of the sub-folders of ntsc_msp430, as the .cssproject file is in the root folder.

If you chose the correct folder, the "Discovered projects"-list should now show the ntsc_msp430. Make sure the box next to it has been ticked. You might also want to choose "Copy projects into workspace". That way your project files will stay a bit more organized, instead of being in the download location. Click "Finish" to complete the import process.

The Project Explorer should now open on the left, and you can browse the source code files of the program. To program the MSP430G2432, click on the project or one of its files to make sure it's active (the name of the project says "ntsc_msp430 [Active - Debug]"). Then either press F11, or choose "Run" -> "Debug".

If you previously had a program running, CCS will notify that it must be terminated before the next one is started. Click "Yes" if this happens. You may also get a message about the Ultra Low Power Advisor. Click "Proceed" if you do. You can also tick the box to avoid getting the same message later.

Once the program has been compiled, it will stop at a breakpoint on the first line of the main function. Press F8 or "Run" -> "Resume" to continue. This will run the rest of the program and you should now have the test image visible on your display.

IMG_20170904_092028.jpg
IMG_20170904_092028.jpg (1.14 MiB) Viewed 12044 times

You can now detach the Breakout Board from the Launchpad, but keep the 3V3-XRST jumper on. You also still need to keep the MSP430 reset (RST) high, and the Launchpad is not doing that anymore. For this purpose, close the XRST and RST pins with a jumper. Or if you wish to have full control over the two individual resets, connect the RST to a 3V3 pin with a cable. Now power the Breakout Board with the mini USB, and the test image should be generated again.

The CCS project files can be downloaded below.
Attachments
ntsc_msp430.zip
CCS project files
(134.74 KiB) Downloaded 409 times
Post Reply