One can never test enough - literally.
The STM8 eForth test automation in Travis-CI tests the background task, but it doesn't test its cadence. Maybe that can be done, and maybe it would have been worth doing that. I could have done a manual test - just flashing a W1209 would have shown a flickering LED display - but I didn't. You live and learn...
@Andrew Clapp first discovered that something was wrong. I then identified the cause: a classic "don't use LDW for timers"-error. I first thought that it only hits STM8L devices but also STM8S, this means the whole release was affected. A quick bug-fix release therefore is the best option.
@Eelco the praise came too soon - please check if the 2.2.25 release still solves your problem!
On the plus side: I added INTRX for buffered console RX to the library. Compilation to RAM at 115200 baud really feels much faster than at 9600 baud!
Discussions
Become a Hackaday.io Member
Create an account to leave a comment. Already have an account? Log In.
You are welcome.
I found another minor issue: I think that EEPROMBASE in forth.asm should be moved to target.inc (and set to 0x1000 for STM8L*). EEPROMEND in target.inc of STM8L* should be set to 0x10FF. Although these constants are not used in the core it might lead to confusions.
Are you sure? yes | no
You're right, they should be configurable and exposed in /target. I though about doing just that before the release but then decided against it because I didn't want to edit so many target.inc files before the release. I will make that change in the 2.2.26 :-)
Are you sure? yes | no
@Eelco done: https://github.com/TG9541/stm8ef/issues?q=is%3Aissue+is%3Aclosed
#i EESTART Uploading: ./target/EESTART
$1000 CONSTANT EESTART ok
Closing: ./target/EESTART ok
Bedankt!
Are you sure? yes | no
Hi Thomas
I just checked: my charge controller application works with both release 2.2.25 and 2.2.24.
It uses a background task but I changed the time base to 0.36 sec. :
7 TIM2_PSCR C! $AFC8 TIM2_ARRH 2C!
so maybe that is why it worked all the same.
I used to change the baud rate in the forth.asm file, but now it can be done in the inc/defconf.inc file, right? But probably INTRX is more practical.
Are you sure? yes | no
Thanks for the feedback!
Yes, changing the baud rate can (maybe should) be done in globconf.inc. Using the new exported code parameters, as INTRX does, is a good option if changing the baud rate in the application is desired.
Are you sure? yes | no