This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Problems on the DDK uart

Other Parts Discussed in Thread: CCSTUDIO, TVP5146, TMS320DM642

Hi,

I am trying on the uart on TMS320C642 where I have to use tcf file instead of cmd and cdb in CCS3.3. Problem occurs when using tcf, is when it generates 2 files, which are the source file and the .C.

When running debugging on CCS3.3, the errors will be like this.

----------------------------  uarttest.pjt - Debug  ----------------------------
[uarttest.cdb] "C:\CCStudio_v3.3\bios_5_31_02\xdctools\tconf" -b -Dconfig.importPath="C:/CCStudio_v3.3/bios_5_31_02/packages" -v64 uarttest.cdb
C:\CCStudio_v3.3\bios_5_31_02\xdctools\tconf: usage: tconf [-b] [-g[=<opts>]] [-p <dir>] [-D<name>=<value>] [-js <js options ...>] [script [args ...]]
    Options:
    -D<name>=<val>    define the symbol <name> with the string value <val>
    -g[=<opts>]    use graphical debugger to run script, and
            optionally pass <opts> to debugger
    -h        display this message
    -js        pass all subsequent options to Configuration Shell
    -p <dir>    add <dir> to tconf search path

    Configuration Shell Options:
        -f <file>    execute <file> prior to executing script
        -w        enable warning messages

    Graphical Debugger Options:
        -i    break at the first line of the startup script

[uarttest.c] "C:\CCStudio_v3.3\C6000\cgtools\bin\cl6x" -g -eoo64 -fr"C:/CCStudio_v3.3/ddk/apps/uart/evmdm642/Debug" -i"." -i"C:/CCStudio_v3.3/ddk/apps/uart/evmdm642/../../../include" -d"CHIP_6416" -d"_UARTHW_EVMDM642_" -mv6400 -@"evmdm642/Debug.lkf" "uarttest.c"

[uarttest_params.c] "C:\CCStudio_v3.3\C6000\cgtools\bin\cl6x" -g -eoo64 -fr"C:/CCStudio_v3.3/ddk/apps/uart/evmdm642/Debug" -i"." -i"C:/CCStudio_v3.3/ddk/apps/uart/evmdm642/../../../include" -d"CHIP_6416" -d"_UARTHW_EVMDM642_" -mv6400 -@"evmdm642/Debug.lkf" "uarttest_params.c"

[uarttestcfg.s62] "C:\CCStudio_v3.3\C6000\cgtools\bin\cl6x" -g -eoo64 -fr"C:/CCStudio_v3.3/ddk/apps/uart/evmdm642/Debug" -i"." -i"C:/CCStudio_v3.3/ddk/apps/uart/evmdm642/../../../include" -d"CHIP_6416" -d"_UARTHW_EVMDM642_" -mv6400 -@"Debug.lkf" "uarttestcfg.s62"
"uarttestcfg.s62", ERROR!  : [E1000] Cannot open source file uarttestcfg.s62: No such file or directory

>> Compilation failure

[uarttestcfg_c.c] "C:\CCStudio_v3.3\C6000\cgtools\bin\cl6x" -g -eoo64 -fr"C:/CCStudio_v3.3/ddk/apps/uart/evmdm642/Debug" -i"." -i"C:/CCStudio_v3.3/ddk/apps/uart/evmdm642/../../../include" -d"CHIP_6416" -d"_UARTHW_EVMDM642_" -mv6400 -@"Debug.lkf" "uarttestcfg_c.c"
Fatal error: could not open source file "uarttestcfg_c.c"
1 fatal error detected in the compilation of "uarttestcfg_c.c".
Compilation terminated.

>> Compilation failure

Build Complete,
  2 Errors, 0 Warnings, 0 Remarks.

 

What should i do with these errors? Or I should generate cdb and cmd files to use instead? Thanks in advance.

  • You need to remove the cdb file from your project and add the tcf file instead.

  • Hi Brad,

    Ya I did do that, however when I add the tcf file, it appears to have 2 files in Generated Files, which are .s62 and .c files. When building the solution, it appears the errors as shown at the first post. I wonder why it happens.

    Anyway thanks for your solution. Maybe I can give it a few tries later.

     

  • Matthew,

    Are the files actually being created in the same folder as the .tcf file? Is the folder marked as "Read-Only" by chance?"

    The reason Brad mentioned removing the .cdb file is that your build log shows the .cdb file instead of the .tcf file. The .s62 and _c.c files are both generated by BIOS when the .tcf is built and should be located in the same directory.

  • Hi Tim,

     

    I'm not sure whether i add the .tcf file correctly or not, 'cause i add it in DSP/BIOS Config, and it happens to have the same error. Is it i have to add it into the same folder as those two files?

    By the way, one of my friend asking that what if we use the .cdb file from board as a replacement? He told me that it works on compilation, but the function is not working.

     

    ----------------------------  uarttest.pjt - Debug  ----------------------------
    [uarttestcfg.tcf] "C:\CCStudio_v3.3\bios_5_31_02\xdctools\tconf" -b -Dconfig.importPath="C:/CCStudio_v3.3/bios_5_31_02/packages" -v64 uarttestcfg.tcf
    C:\CCStudio_v3.3\bios_5_31_02\xdctools\tconf: usage: tconf [-b] [-g[=<opts>]] [-p <dir>] [-D<name>=<value>] [-js <js options ...>] [script [args ...]]
        Options:
        -D<name>=<val>    define the symbol <name> with the string value <val>
        -g[=<opts>]    use graphical debugger to run script, and
                optionally pass <opts> to debugger
        -h        display this message
        -js        pass all subsequent options to Configuration Shell
        -p <dir>    add <dir> to tconf search path

        Configuration Shell Options:
            -f <file>    execute <file> prior to executing script
            -w        enable warning messages

        Graphical Debugger Options:
            -i    break at the first line of the startup script

    [uarttest.c] "C:\CCStudio_v3.3\C6000\cgtools\bin\cl6x" -g -eoo64 -fr"C:/CCStudio_v3.3/ddk/apps/uart/evmdm642/Debug" -i"." -i"C:/CCStudio_v3.3/ddk/apps/uart/evmdm642/../../../include" -d"CHIP_6416" -d"_UARTHW_EVMDM642_" -mv6400 -@"evmdm642/Debug.lkf" "uarttest.c"

    [uarttest_params.c] "C:\CCStudio_v3.3\C6000\cgtools\bin\cl6x" -g -eoo64 -fr"C:/CCStudio_v3.3/ddk/apps/uart/evmdm642/Debug" -i"." -i"C:/CCStudio_v3.3/ddk/apps/uart/evmdm642/../../../include" -d"CHIP_6416" -d"_UARTHW_EVMDM642_" -mv6400 -@"evmdm642/Debug.lkf" "uarttest_params.c"

    [uarttestcfg.s62] "C:\CCStudio_v3.3\C6000\cgtools\bin\cl6x" -g -eoo64 -fr"C:/CCStudio_v3.3/ddk/apps/uart/evmdm642/Debug" -i"." -i"C:/CCStudio_v3.3/ddk/apps/uart/evmdm642/../../../include" -d"CHIP_6416" -d"_UARTHW_EVMDM642_" -mv6400 -@"Debug.lkf" "uarttestcfg.s62"
    "uarttestcfg.s62", ERROR!  : [E1000] Cannot open source file uarttestcfg.s62: No
                                         such file or directory

    >> Compilation failure

    [uarttestcfg_c.c] "C:\CCStudio_v3.3\C6000\cgtools\bin\cl6x" -g -eoo64 -fr"C:/CCStudio_v3.3/ddk/apps/uart/evmdm642/Debug" -i"." -i"C:/CCStudio_v3.3/ddk/apps/uart/evmdm642/../../../include" -d"CHIP_6416" -d"_UARTHW_EVMDM642_" -mv6400 -@"Debug.lkf" "uarttestcfg_c.c"
    Fatal error: could not open source file "uarttestcfg_c.c"
    1 fatal error detected in the compilation of "uarttestcfg_c.c".
    Compilation terminated.

    >> Compilation failure

    Build Complete,
      2 Errors, 0 Warnings, 0 Remarks.

  • Matthew said:

    I'm not sure whether i add the .tcf file correctly or not, 'cause i add it in DSP/BIOS Config, and it happens to have the same error. Is it i have to add it into the same folder as those two files?

    By the way, one of my friend asking that what if we use the .cdb file from board as a replacement? He told me that it works on compilation, but the function is not working.



    It looks like the .tcf file was added to the project based on the build. BIOS v5 replaced the .cdb file functionality with the much more compact .tcf format (basically a text script instead of a huge GUI); however, because a GUI is preferred by many people BIOS still allows configuration of the .tcf by the GUI. Even though BIOS still generates a .cdb file the project should still always be built using the .tcf file.

    The only time I recall seeing build errors related to being unable to open the _c.c and .s62 files relates to the folder (or even previous _c.c and .s62 files themselves) being marked as Read-Only. Would you please verify that this is not the case?

  • Hi Tim,

     

    I think I had unchecked the read only to the folders related to them, yet the problem still occured. The only thing is that I cant even found those 2 files. What actually I can do with that?

    Thanks in advance.

  • Oh ya, there is one more file missing, the .cmd file . By the way, I found that the windows XP folder's Read only has only green-filled state. Is it possible for me to use that state to run the compilation?

  • The tconf step does not appear to be executing properly.  It normally doesn't spew out all the command-line options like you showed earlier.  So it seems like tconf is being invoked improperly somehow.  As a result it's not generating the files needed to build your application.

  • So any way for me to solve the problems? Or is there anyone did that before? I need some guides on that, thank.

  • I just ran a quick test.  Here's the generated output for Config1.tcf:

    [Config1.tcf] "C:\ti\BIOS\bios_5_32_04\xdctools\tconf" -b -Dconfig.importPath="C:/ti/BIOS/bios_5_32_04/packages"  Config1.tcf

    Comparing with your earlier output the main difference appears to be the inclusion of a "-v64".  I think that option does not belong with the tcf and is causing it to spit out the message with all the allowed options.  Go to your project options and then to the DspBiosBuilder tab.  In my project the only options ther is "-v6x" (which does not show up on the command line).  I changed to to "-v64" and I get the same message you are seeing.  So what you need to do is go to that window and change it to "-v6x".

    Brad

  • Hi Brad,

     

    I had solved all the problems and there has no problem on compilation.

     

    However when i try to run the output file, there has no word sending through com port to hyperterminal, which i had set it given in the read me file. Is there anything wrong with my procedures? Mind to guide me on that. Thanks in advance.

  • Is there anyone can help me on such matter?Thanks in advance.

  • Try setting a breakpoint in the driver functions (mdBindDev, mdSubmitChan, etc.).  See which functions are getting called and what status they return.

  • Are you using the DM642 Video Port Mini-Driver in addition to the UART driver for the DM642 EVM? There was a problem in the VPMD which overwrites a few registers in the EVM's FPGA which essentially disables the UART. This is a simple fix, so if you are in fact using the VPMD and UART drivers I will be happy to detail the fixes in more depth.

  • Hi Tim,

    Yes the uart driver will be using along with vpmd soon, but first I have to try to know more about the uart usage. However when I tried on the tutorial given, it cannot work, that means i may need to do some debuggings and testing on the codes or hardware. So may i know more in depth about the fix? probably i may need it in future.

    thanks in advance

  • thanks for your suggestion brad, will try that as well

  • There are four hard register writes into FPGA registers that should be modified. I'll quote the code changes I made. Look for the comments with my initials.

    static void configSAA7105(SAA7105_Mode videoMode, Bool slaveModeEnable,
    SAA7105_AnalogFormat outMode, SAA7105_InputFormat inFormat, Bool enableBT656Sync)
    {
    /***************************************************************/
    /* Enable master/slave mode */
    /***************************************************************/
    *(volatile Uint8 *)(0x90080010) |= 0x1; //reset OSD -TH
    initSAA7105Def();
    setVideoDisplay(videoMode, outMode, inFormat, enableBT656Sync);
    enableSlaveMode(slaveModeEnable);
    loadCursor(NULL);
    enableColorBars(FALSE);
    *(volatile Uint8 *)(0x90080010) |= 0x04; // -TH
    *(volatile Uint8 *)(0x90080014) |= 0x18; // -TH
    }


    And then, towards the end of the setVideoDisplay() function:

    *(volatile Uint8 *)(0x90080010) |= 0x28; //reset OSD -TH


    If this process is not followed then each of the writes overwrites the original contents of the register (which includes disabling UART interrupts, I believe).

  • Brad Griffis said:

    [Config1.tcf] "C:\ti\BIOS\bios_5_32_04\xdctools\tconf" -b -Dconfig.importPath="C:/ti/BIOS/bios_5_32_04/packages"  Config1.tcf

    [/quote]

    I had did some tests on it. It seems like my compiled .tcf is a bit different.

    ----------------------------  uarttest.pjt - Debug  ----------------------------
    [uarttestcfg.tcf] "C:\CCStudio_v3.3\bios_5_31_02\xdctools\tconf" -b -Dconfig.importPath="C:/CCStudio_v3.3/bios_5_31_02/packages"  uarttestcfg.tcf
    remark: using deprecated form of loadPlatform()
    remark: environment["ti.bios.oldMemoryNames"] = true

    [uarttest.c] "C:\CCStudio_v3.3\C6000\cgtools\bin\cl6x" -g -eoo64 -fr"C:/CCStudio_v3.3/ddk/apps/uart/evmdm642/Debug" -i"." -i"C:/CCStudio_v3.3/ddk/apps/uart/evmdm642/../../../include" -i"C:/CCStudio_v3.3/C6xCSL/include" -i"$[Install_dir]/C6xCSL/include" -d"CHIP_6416" -d"_UARTHW_EVMDM642_" -mv6400 -@"evmdm642/Debug.lkf" "uarttest.c"

    [uarttest_params.c] "C:\CCStudio_v3.3\C6000\cgtools\bin\cl6x" -g -eoo64 -fr"C:/CCStudio_v3.3/ddk/apps/uart/evmdm642/Debug" -i"." -i"C:/CCStudio_v3.3/ddk/apps/uart/evmdm642/../../../include" -i"C:/CCStudio_v3.3/C6xCSL/include" -i"$[Install_dir]/C6xCSL/include" -d"CHIP_6416" -d"_UARTHW_EVMDM642_" -mv6400 -@"evmdm642/Debug.lkf" "uarttest_params.c"

    [uarttestcfg.s62] "C:\CCStudio_v3.3\C6000\cgtools\bin\cl6x" -g -eoo64 -fr"C:/CCStudio_v3.3/ddk/apps/uart/evmdm642/Debug" -i"." -i"C:/CCStudio_v3.3/ddk/apps/uart/evmdm642/../../../include" -i"C:/CCStudio_v3.3/C6xCSL/include" -i"$[Install_dir]/C6xCSL/include" -d"CHIP_6416" -d"_UARTHW_EVMDM642_" -mv6400 -@"Debug.lkf" "uarttestcfg.s62"

    [uarttestcfg_c.c] "C:\CCStudio_v3.3\C6000\cgtools\bin\cl6x" -g -eoo64 -fr"C:/CCStudio_v3.3/ddk/apps/uart/evmdm642/Debug" -i"." -i"C:/CCStudio_v3.3/ddk/apps/uart/evmdm642/../../../include" -i"C:/CCStudio_v3.3/C6xCSL/include" -i"$[Install_dir]/C6xCSL/include" -d"CHIP_6416" -d"_UARTHW_EVMDM642_" -mv6400 -@"Debug.lkf" "uarttestcfg_c.c"

    [Linking...] "C:\CCStudio_v3.3\C6000\cgtools\bin\cl6x" -@"Debug.lkf"
    <Linking>

    Build Complete,
      0 Errors, 0 Warnings, 0 Remarks.

    Is it causing the problem on sending data to hyperterminal?

    I had did some loopback test on the port and it seems like alright. Please guide me on this matter. Thanks in advanced.

  • Matthew said:

     

    ----------------------------  uarttest.pjt - Debug  ----------------------------
    [uarttestcfg.tcf] "C:\CCStudio_v3.3\bios_5_31_02\xdctools\tconf" -b -Dconfig.importPath="C:/CCStudio_v3.3/bios_5_31_02/packages"  uarttestcfg.tcf
    remark: using deprecated form of loadPlatform()
    remark: environment["ti.bios.oldMemoryNames"] = true

    [uarttest.c] "C:\CCStudio_v3.3\C6000\cgtools\bin\cl6x" -g -eoo64 -fr"C:/CCStudio_v3.3/ddk/apps/uart/evmdm642/Debug" -i"." -i"C:/CCStudio_v3.3/ddk/apps/uart/evmdm642/../../../include" -i"C:/CCStudio_v3.3/C6xCSL/include" -i"$[Install_dir]/C6xCSL/include" -d"CHIP_6416" -d"_UARTHW_EVMDM642_" -mv6400 -@"evmdm642/Debug.lkf" "uarttest.c"

    [uarttest_params.c] "C:\CCStudio_v3.3\C6000\cgtools\bin\cl6x" -g -eoo64 -fr"C:/CCStudio_v3.3/ddk/apps/uart/evmdm642/Debug" -i"." -i"C:/CCStudio_v3.3/ddk/apps/uart/evmdm642/../../../include" -i"C:/CCStudio_v3.3/C6xCSL/include" -i"$[Install_dir]/C6xCSL/include" -d"CHIP_6416" -d"_UARTHW_EVMDM642_" -mv6400 -@"evmdm642/Debug.lkf" "uarttest_params.c"

    [uarttestcfg.s62] "C:\CCStudio_v3.3\C6000\cgtools\bin\cl6x" -g -eoo64 -fr"C:/CCStudio_v3.3/ddk/apps/uart/evmdm642/Debug" -i"." -i"C:/CCStudio_v3.3/ddk/apps/uart/evmdm642/../../../include" -i"C:/CCStudio_v3.3/C6xCSL/include" -i"$[Install_dir]/C6xCSL/include" -d"CHIP_6416" -d"_UARTHW_EVMDM642_" -mv6400 -@"Debug.lkf" "uarttestcfg.s62"

    [uarttestcfg_c.c] "C:\CCStudio_v3.3\C6000\cgtools\bin\cl6x" -g -eoo64 -fr"C:/CCStudio_v3.3/ddk/apps/uart/evmdm642/Debug" -i"." -i"C:/CCStudio_v3.3/ddk/apps/uart/evmdm642/../../../include" -i"C:/CCStudio_v3.3/C6xCSL/include" -i"$[Install_dir]/C6xCSL/include" -d"CHIP_6416" -d"_UARTHW_EVMDM642_" -mv6400 -@"Debug.lkf" "uarttestcfg_c.c"

    [Linking...] "C:\CCStudio_v3.3\C6000\cgtools\bin\cl6x" -@"Debug.lkf"
    <Linking>

    Build Complete,
      0 Errors, 0 Warnings, 0 Remarks.

    Why do you have -d"CHIP_6416" if you are using a DM642?  You should instead have -d"CHIP_DM642".

    Matthew said:

    Is it causing the problem on sending data to hyperterminal?

    I had did some loopback test on the port and it seems like alright. Please guide me on this matter. Thanks in advanced.

    So is it working properly?

     

  • Yes i had changed the -d"CHIP_6416" to -d"CHIP_DM642" but it still has the same problem. The light on the board DS1 to DS9 blink once as I just noticed about it. I wonder if the problem happens at the hyperterminal or the build option. Hyperterminal does not have any response from the board as I can see from here. I had set the hyperterminal properties according to the ReadMe supplied along with the example(ddk uart).

  • As I mentioned on Oct 11th:

    Brad Griffis said:

    Try setting a breakpoint in the driver functions (mdBindDev, mdSubmitChan, etc.).  See which functions are getting called and what status they return.

     

  • Is your project going to main? I mean, if you put a breakpoint inside main, does it stop there? Because in the tcf file, it is set to call a init function: _EVMDM642_init. I was trying to put the exemple to work and had to edit this init function to make it go main and work.

  • Mariana said:

    Is your project going to main? I mean, if you put a breakpoint inside main, does it stop there? Because in the tcf file, it is set to call a init function: _EVMDM642_init. I was trying to put the exemple to work and had to edit this init function to make it go main and work.

    when i do some breakpoints in uarttest.c, it seems that the program does not run to the main function there. I have to check back again some other parts.

  • Mathew,

    If you open your .tcf file (DSP/BIOS configuration file), Global Settings -> Properties... you can see that the option "Call User Init function" is checked and it is calling the function _EVMDM642_init. I found this function at the file:

    C:\CCStudio_v3.3\boards\evmdm642\lib\evmdm642bsl\evmdm642.c - this file is part of BSL. As a test, you can add this file to your project and comment the last line of the function EVMDM642_init:

    //    _IIC_write(EVMDM6.......

    This seems to be the part where the DSP is getting lost. After I commented it, my example worked.... Could you do this test?

     

  • Mariana said:

    Mathew,

    If you open your .tcf file (DSP/BIOS configuration file), Global Settings -> Properties... you can see that the option "Call User Init function" is checked and it is calling the function _EVMDM642_init. I found this function at the file:

    C:\CCStudio_v3.3\boards\evmdm642\lib\evmdm642bsl\evmdm642.c - this file is part of BSL. As a test, you can add this file to your project and comment the last line of the function EVMDM642_init:

    //    _IIC_write(EVMDM6.......

    This seems to be the part where the DSP is getting lost. After I commented it, my example worked.... Could you do this test?

    This failure is caused by using the wrong version of the DM642 EVM software. The original DM642 EVMs were populated with a pair of Philips SAA7115 video decoders where as the newer ones are populated with a single TI TVP5146. The I2C communication will fail inside the EVMDM642_init() function because it is trying to talk to the wrong decoder(s).

    The fix to this is to use the correct version of the software for your board revision. Please let us know which board you have and we can work on getting the correct version of the software to you.

  •  

    I was using the version 2 board, with version 3 software, so when I plugged the version 3 board everything worked fine - no need to edit the init function. 

  • Mariana said:

    Mathew,

    If you open your .tcf file (DSP/BIOS configuration file), Global Settings -> Properties... you can see that the option "Call User Init function" is checked and it is calling the function _EVMDM642_init. I found this function at the file:

    C:\CCStudio_v3.3\boards\evmdm642\lib\evmdm642bsl\evmdm642.c - this file is part of BSL. As a test, you can add this file to your project and comment the last line of the function EVMDM642_init:

    //    _IIC_write(EVMDM6.......

    This seems to be the part where the DSP is getting lost. After I commented it, my example worked.... Could you do this test?

     

    I had did that but still it yielded the same result. I have to futher debugging and looking for error parts.

    I set up the hyperterminal as what in Readme.txt. Is it set up correctly?

        1) Connect a serial cable from the targets UART to the PCs
           communication port (com port).
        2) Run HyperTerminal a select the proper Com port.
        3) Set the Bits per second to 115200, Data bits to 8, Parity to None,

           Stop bits to 1, and Flow control to None.

  • TimHarron said:

    Mathew,

    If you open your .tcf file (DSP/BIOS configuration file), Global Settings -> Properties... you can see that the option "Call User Init function" is checked and it is calling the function _EVMDM642_init. I found this function at the file:

    C:\CCStudio_v3.3\boards\evmdm642\lib\evmdm642bsl\evmdm642.c - this file is part of BSL. As a test, you can add this file to your project and comment the last line of the function EVMDM642_init:

    //    _IIC_write(EVMDM6.......

    This seems to be the part where the DSP is getting lost. After I commented it, my example worked.... Could you do this test?

    This failure is caused by using the wrong version of the DM642 EVM software. The original DM642 EVMs were populated with a pair of Philips SAA7115 video decoders where as the newer ones are populated with a single TI TVP5146. The I2C communication will fail inside the EVMDM642_init() function because it is trying to talk to the wrong decoder(s).

    The fix to this is to use the correct version of the software for your board revision. Please let us know which board you have and we can work on getting the correct version of the software to you.

    [/quote]

    TMS320DM642 EVM, with one SAA7115 and one TVP5146, currently using CCS 3.3.

  • Matthew said:
    TMS320DM642 EVM, with one SAA7115 and one TVP5146, currently using CCS 3.3.


    Do you have two different versions of the board support software? There are two different versions of software to support either the SAA7115 or the TVP5146. You can find out which version you have by looking in the \boards\evmdm642\drivers\src\video directory as you will see either saa7115.c or tvp5146.c.

    Make sure you are using the correct version of the board to match your software and let us know if the problem persists. You may want to try stepping through the EVMDM642_init function to see if you can pinpoint where the code is failing.

    Matthew said:

    I set up the hyperterminal as what in Readme.txt. Is it set up correctly?

     

     

        1) Connect a serial cable from the targets UART to the PCs
           communication port (com port).
        2) Run HyperTerminal a select the proper Com port.
        3) Set the Bits per second to 115200, Data bits to 8, Parity to None,

           Stop bits to 1, and Flow control to None.

     

    Yes, that looks like the correct configuration to communicate with the UART.






  • TimHarron said:

    TMS320DM642 EVM, with one SAA7115 and one TVP5146, currently using CCS 3.3.


    Do you have two different versions of the board support software? There are two different versions of software to support either the SAA7115 or the TVP5146. You can find out which version you have by looking in the \boards\evmdm642\drivers\src\video directory as you will see either saa7115.c or tvp5146.c.

    Make sure you are using the correct version of the board to match your software and let us know if the problem persists. You may want to try stepping through the EVMDM642_init function to see if you can pinpoint where the code is failing.

    Matthew said:

    I set up the hyperterminal as what in Readme.txt. Is it set up correctly?

     

     

        1) Connect a serial cable from the targets UART to the PCs
           communication port (com port).
        2) Run HyperTerminal a select the proper Com port.
        3) Set the Bits per second to 115200, Data bits to 8, Parity to None,

           Stop bits to 1, and Flow control to None.

     

    Yes, that looks like the correct configuration to communicate with the UART.




    [/quote]

    What i found here are saa7105.c and tvp51xx.c. and on board the 2 ICs are saa7105 and tvp5146.

    Edited: Sorry bout the error typing on previous post, it should be saa7105 and not saa7115.

  • I did loopback test on the communication port on the board, and it seems the result is constant at -5volts. No significant pulse observed. Is this meant that the board is in idle state? It seems like there is nothing send out from TD(Transmit Data).

  • Matthew said:
    What i found here are saa7105.c and tvp51xx.c. and on board the 2 ICs are saa7105 and tvp5146.

    Edited: Sorry bout the error typing on previous post, it should be saa7105 and not saa7115.


    It looks like the software correctly matches the hardware you are using. Did you identify where specifically the CPU gets lost? Is it in fact somewhere within the EVMDM642_init function?

    I did loopback test on the communication port on the board, and it seems the result is constant at -5volts. No significant pulse observed. Is this meant that the board is in idle state? It seems like there is nothing send out from TD(Transmit Data).

    Which test are you running so I can try it out on my hardware?

  • hi tim,

    I had checked a few times previously, it stopped at the line where getting the input from hyperterminal. Lines where after it sends out data and ready to receive data from hyperterminal and ready for echo (sorry i can't remember the codes as i'm not in lab now). The program is still running but the breakpoints after that line is not activated. So i think that it stops at that line before it goes down to the other codes.

    By the way i just check the output by just running a simple test, seeing what is the output that are sent from either PC or the board with aid of oscilloscope. By connecting pin 2 and pin 3 of the com port, i just add in the probe on that particular connection. When i did this on PC side, it seems that it has pulse, but very insignificant. However when i did this on the board side, it seems like nothing happens. So i do change some coding which has infinite loops on sending data to hyperterminal so that i can see any changes there, but i think i only see the constant -5 volts level. Maybe my test is incorrect, I will further investigate on this matter.

  • Hi Tim,

    I would like to know whether the example works at your place? And do you face any difficulties during compilation or running the example?

     

    Thanks,

    Matthew

  • Hi Matthew,

    I asked in my last post which example you were working with. If you can let me know I'll give it a shot!

  • TimHarron said:

    Hi Matthew,

    I asked in my last post which example you were working with. If you can let me know I'll give it a shot!

     

    ...CCStudio_v3.3\ddk\apps\uart\evmdm642\

    path for the example that I'm working with.

     

    Have checked with the coding, coding should have no problem after I break point and check the variables there, but I guess there's nothing send out through the communication port to the hyperterminal.

     

    Matthew

     

     

  • Matthew,

    I had to add a couple paths to the DSP/BIOS builder to get it to compile properly. The project ran fine and the terminal displayed "Hello World." As expected the project 'hung' at the GIO_read() ; however, I sent a small text file which said "hello world" through my terminal (I use Tera Term rather than HyperTerminal) and the project proceeded as expected.

    Have you tried this step yet?

    Did you see anything displayed on the Terminal?

  • TimHarron said:

    Matthew,

    I had to add a couple paths to the DSP/BIOS builder to get it to compile properly. The project ran fine and the terminal displayed "Hello World." As expected the project 'hung' at the GIO_read() ; however, I sent a small text file which said "hello world" through my terminal (I use Tera Term rather than HyperTerminal) and the project proceeded as expected.

    Have you tried this step yet?

    Did you see anything displayed on the Terminal?

    Hi Tim,

    What i had done is opening that particular project, adding a library (CSL) for that project, connecting to the windows default hyperterminal. After that I run the program. However nothing has shown up on the hyperterminal. I had tried on using Parallax Serial Terminal, however it also does not show any output from the board.But when I'm trying to send something back to the program for echoing, the Parallax Serial Terminal turns no responding.

    What Tim has mentioned about adding a couple paths, does it mean about CSL library? At the moment I'm still trying to check on the data on each variables.

     

    Regards,

    Matthew

  • Matthew,

    I don't remember exactly what I changed wrt library/header paths. I'm attaching the exact .out file I used successfully on my EVM. Can you please try the same to see if this works out for you?

    uarttest.zip
  • TimHarron said:

    Matthew,

    I don't remember exactly what I changed wrt library/header paths. I'm attaching the exact .out file I used successfully on my EVM. Can you please try the same to see if this works out for you?

    Hi tim,

    I found that it is still not working after using the .out that you posted above. I had altered some codes inside the examples to do the loopback test on the communication port on the board, and yet it doesn't send anything back to the RxD. It seems like there has no signal sending out from TxD. Is it the software causes the problem?

     

    Regards,

    Matthew

  • Hi Mr.Tim,

    Im using the ccsv3.3,dvsdk_1_00_00_19 and dm6437 evm borad , when ever i tried to recompile the example project it shows compilation error as like following link.

    http://e2e.ti.com/support/dsp/tms320c6000_high_performance_dsps/f/112/t/285300.aspx

    pls suggest any idea regarding the err.

    tnx

    VS