5 Replies Latest reply on Dec 19, 2019 6:12 PM by KeBa_1249896

    AN499433 adaptation problem

      I'm trying to adapt AN499433 to a CY8C24794 controller.  When I generate and compile, I get the follow errors:

         

      !E <library>(652): {linker} multiple define: 'USBUART_CurrentTD'
      !E <library>(653): {linker} multiple define: 'USBUART_bCurrentDevice'
      !E <library>(654): {linker} multiple define: 'USBUART_EndpointAPIStatus'
      !E <library>(655): {linker} multiple define: 'USBUART_TransferBuffer'
      !E <library>(656): {linker} multiple define: 'USBUART_t0'
      !E <library>(657): {linker} multiple define: 'USBUART_t1'
      !E <library>(658): {linker} multiple define: 'USBUART_fDataPending'
      !E <library>(659): {linker} multiple define: 'USBUART_StatusBlockPtr'
      !E <library>(660): {linker} multiple define: 'USBUART_t2'
      !E <library>(661): {linker} multiple define: 'USBUART_DataPtr'
      !E <library>(662): {linker} multiple define: '_USBUART_Configuration'
      !E <library>(663): {linker} multiple define: 'USBUART_EndpointStatus'
      !E <library>(664): {linker} multiple define: '_USBUART_InterfaceSetting'
      !E <library>(665): {linker} multiple define: '_USBUART_EPDataToggle'
      {linker} Too many errors, exiting...

         

      Evidently, the linker is trying to link usbuart_custom.o as well as usbuart_drv.o, causing the definition overlap.  It's not clear to me how the original linker managed to overcome this problem.

         

      Any help wold be appreciated.

         

       

         

      Don

        • 1. Re: AN499433 adaptation problem
          JoMe_264151

          Cannot find AN499433, a link would be rather helpful

             

           

             

          Bob

          • 3. Re: AN499433 adaptation problem
            JoMe_264151

            I get the same errors when cloning the project. I would suggest you to create a support case (at top of this page "Design Support"-> Create a Support Case)

               

             

               

            Bob

            • 4. Re: AN499433 adaptation problem
              TeHe_281121

              Hi Don, have you resolved your issue. If so, what was the solution?

              • 5. Re: AN499433 adaptation problem
                KeBa_1249896

                I was able generate/ build cloned CY8C24994 AN49943 (CY3214 kit) project to CY8C24894 (CY3240 USB to ICII bridge kit) by using Diffuse Merge Tool to compare source, header & lib files. Except for the different pin connections used & available between the kits (comment out main C, usb_to_uart.c  usb_to_uart.h pin functions). The usbuart_custom.asm can be excluded from project by inserting

                export _USBUART_SetupRefreshedFlag

                export  USBUART_SetupRefreshedFlag

                EXPORT USBUART_SetupRefreshedFlag, _USBUART_SetupRefreshedFlag

                   USBUART_SetupRefreshedFlag:

                _USBUART_SetupRefreshedFlag:                BLK   1    ;  Setup Refreshed

                mov [USBUART_SetupRefreshedFlag] ,01h;

                below & above "Insert your custom code banners" @ bottom of file.

                Unfortunately I didn't write down the other library files that have extra code inserted between the "Insert your custom code banners" but was about 3 files which I detected using the Diffuse software to compare files side by side. After that I was able to generate/ build project without errors. I also used the AN49943 CMPPRG setup to detect VBUS. After correcting pin functions & such in the commented out files was able to loop back TX/RX pins (selected TP1 & 2 on kit) through third party terminal program but was unable to change baud rates (needs more work?). Should be able to work for your situation but when I was messing with files sometimes it would copy file from AN49943 file and keep the source file routing so when I modified file in clone it changed file in source & not its own directory & have o back & fix, figured out copy & paste in file manager & include/ exclude in PSOC Designer.