What's New in Astrobe for Cortex M7

Version 6.4.3 2014-2018 CFB Software
Last Updated 29 Sep 2018

E-Mail:   info@cfbsoftware.com
Website:   http://www.astrobe.com

This version is supported on Windows 10. The Installation and Uninstall executables are now digitally signed to validate authenticity and integrity.

A summary of new features introduced in Astrobe for Cortex-M7 since version 6.1:

Oberon Language Features

The latest version of the Oberon Language Report is dated May 2016. A copy of the report is included in the Astrobe distribution.

Imported Items:

The internal format of symbol files has been changed to remove some of the restrictions on imported items:

Language Rules:

The following language rules are now verified:

SYSTEM.VAL can be used to typecast REALs to INTEGERs.
INTEGERs and BYTEs are already assignment compatible with each other so ORD is not required.
SET items can be typecast to INTEGER using ORD before shifting and typecast back to SET using BITS after shifting.
Anonymous records should be declared as named types if compatibility with Project Oberon is required.

Arrays:

Anonymous Pointer Types:


Library Modules

GPIO

The GPIO module has been modified to be compatible with the Astrobe for Cortex-M3 and M4 versions. The library module Serial and the examples have been updated to use the new GPIO interface.

SPI

The functions in the SPI library module are used to communicate with slave devices that are connected to the microcontroller's SPI1 or SPI3 bus. This enables you to write applications which can use a wide variety of external SPI standard parts, such as LCD displays, SD cards, 7-segment LEDs, and digital sensors such as accelerometers, magnetometers, etc.

The length parameter is no longer required on the SPI Send and Receive functions for STM32 targets. The number of bytes transferred by these functions will correspond to the size in bytes of the variable that is passed as a parameter.

I2C

The functions in the I2C library module are used to communicate with slave devices that are connected to the microcontroller's I2C1, I2C2 or I2C3 bus. This enables you to write applications which can use a wide variety of external I2C standard parts, such as serial RAMs and EEPROMS, LCDs, and digital sensors such as accelerometers, temperature and pressure gauges, compasses etc. The base I2C1/2/3 addresses have now been added to the library module MCU.

For more information refer to Section 3 Library Modules in the document Oberon for Cortex-M7 Microcontrollers which is supplied with Astrobe. 


Source Code Examples

Subscribe to the Cortex-M7 Source code examples of the Astrobe forum to receive notification of the availability of new source code examples.


Problems fixed

v6.4.3

v6.4.2

v6.4.1

v6.4.0

v6.2.1

MLA Rd, Rm, Rm, Ra

where Rd = Rm * Rn + Ra

v6.2.0

In the following example, if the actual parameter x has a type which is a proper extension of T, the assignment x := y is not permitted and will now result in a runtime error:

PROCEDURE P(VAR x: T);
  VAR y: T;
BEGIN
  x := y
END P