START/ASF4 errors with reconfigurations.

1 post / 0 new
Author
Message
#1
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I'm learning the Cortex and START/ASF4 at the same time so I don't expect things to "just work" but START/ASF4 seem fragile.

To sum up my initial attempts, START seems to reconfigure in surprising ways with little documentation.  Starting a project with a complete configuration seems very important as reconfigs don't work the same as a "fresh start".

 

I love the START approach but when something "breaks" it's not clear on how to proceed.  Deleting and reselecting "broken" section with START reconfig doesn't appear to work.

 

On a related note: why does the ASF page (asf.atmel.com) refer to ASF3 as the latest with no mention of ASF4?

I realize this post is more of a "rant" but is START/ASF4 considered beta or are most people using it for their projects with ASF3 for existing code?

 

Test1:

steps:

1.New project using START, added I2C sync

2.compiled fine, I2C working without much fuss

3.Project->reconfigure -- added Delay driver

project now fails to compile.  Needed to add #include "hal_delay.h"

Tried to recreate with a new project but this time it worked with no mods needed.

 

Test 2:

steps:

1.New project with STDIO added (wanted to use printf).  compiles OK.

2.Reconfigured Target_IO to UART1 --compiles OK

3.reconfigured Target_IO to USART0 (default driver is USART_RTOS_beta, changed to sync mode)

compiles with multiple errors and warnings:

Severity Description File Line
Warning LITTLE_ENDIAN redefined ...same70q21.h 377
Message in definition of macro 'US_MR_USCLKS' ...usart.h 200
Message in definition of macro 'US_BRGR_CD' ...usart.h 702
Message this is the location of the previous definition ...endian.h 17
Error 'CONF_USART0_FREQUENCY' undeclared here (not in a function) ...hpl_usart_config.h 197
Error recipe for target 'hpl/usart/hpl_usart.o' failed ...Makefile 403
Warning implicit declaration of function '_uart_get_usart_sync' [-Wimplicit-function-declaration] ...driver_init.c 33
Warning passing argument 3 of 'usart_sync_init' makes pointer from integer without a cast [-Wint-conversion] ...driver_init.c 33
Message expected 'void * const' but argument is of type 'int' ...hal_usart_sync.h 82
Warning '_uart_interrupt_handler' defined but not used [-Wunused-function] ...hpl_uart.c 635
Error 'CONF_USART0_CK_SRC' undeclared here (not in a function) ...hpl_usart.c 115
Message in expansion of macro 'CONF_USART_0_BAUD_CD' ...hpl_usart.c 125
Message in expansion of macro 'USART_CONFIGURATION' ...hpl_usart.c 145
Message in expansion of macro 'USART_CONFIGURATION' …hpl_usart.c 145
Warning '_usart_interrupt_handler' defined but not used [-Wunused-function] ...hpl_usart.c 638

 

Found that driver_init.c in stdio_redirect function TARGET_IO_init() still showed UART1 --not USART0

 

4.Reconfigured back to UART1 and pressed "Generate Project"

SMART error: Could not download contents from server.  Exception thrown: The remote server returned an error: (500) Internal Server Error

5.Changed back to USART0 and START works but compile errors remain.

6.Removed STD_io and dependencies from START
7.Add STD_io and selected USART0 
8.Changed USART0 from default rtos_beta to sync

 

Same errors and warnings from before.

 

At this point I'm wondering if the redirect works with the USART ports so I try a setting up a new project.

steps:

1.new project with START, set target_io to use usart0

2.change rtos_bets driver to sync

3.select Rx and Tx pins

4.compiles and tests OK