Addressed much larger flash size with avr-gcc v4.9.2. Refactored reports to save 160KB.
- The newest Arduino IDE 1.6.12 has recently updated to avr-gcc v4.9.2. Unfortunately, it produces a compiled size almost 0.7KB to 1KB larger than prior versions! This can easily cause the base build to exceed the Arduino Duemilanove/Nano flash limit of 30.5KB. The Arduino Uno seems to be ok still with its 31.5KB flash limit. - Makefile `-flto` compile flag added to cut down on the horrible flash size when using the new avr-gcc. (Edit Makefile and remove comment on COMPILE definition). This brings it in-line with what the IDE produces. - Functionalized repetitive tasks in report.c to try to reduce overall flash size. Successfully cut down about 160bytes. - Removed printFloat_SettingValue() and printFloat_RPMValue() functions. These aren’t required and can be replaced with a direct call to printFloat() because they don’t require a unit conversion check.
This commit is contained in:
parent
c0f61e4aac
commit
b04faaf0d3
6 changed files with 144 additions and 112 deletions
|
|
@ -42,12 +42,8 @@ void printFloat(float n, uint8_t decimal_places);
|
|||
// Floating value printing handlers for special variables types used in Grbl.
|
||||
// - CoordValue: Handles all position or coordinate values in inches or mm reporting.
|
||||
// - RateValue: Handles feed rate and current velocity in inches or mm reporting.
|
||||
// - SettingValue: Handles all floating point settings values (always in mm.)
|
||||
// - RPMValue: Handles spindle RPM values in settings and reports.
|
||||
void printFloat_CoordValue(float n);
|
||||
void printFloat_RateValue(float n);
|
||||
// void printFloat_SettingValue(float n);
|
||||
void printFloat_RPMValue(float n);
|
||||
|
||||
// Debug tool to print free memory in bytes at the called point. Not used otherwise.
|
||||
void printFreeMemory();
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue