Hello,
I am trying to send the Create AP with ESP8266 to PIC 16F877A and I get the folowing"
Target folder: C:\Users\zion\DOCUME~1\FLOWCO~1\erase
Source name: C:\Users\zion\Documents\flowcode2017\erase\Flowcode1.fcfx
Title:
Description:
Device: PIC.16F.16F877A
Generated by: Flowcode v7.2.1.4
Date: Tuesday, August 22, 2017 16:24:16
Users: 1
Registered to: achillis1
Licence key: REENCR
http://www.matrixtsl.com
Launching the compiler...
C:\Program Files\Flowcode 7\compilers\pic\bin\xc8.exe --chip=16F877A "Flowcode1.c" --MSGDISABLE=359,1273,1388
Microchip MPLAB XC8 C Compiler (Free Mode) V1.41
Build date: Jan 24 2017
Part Support Version: 1.41
Copyright (C) 2017 Microchip Technology Inc.
License type: Node Configuration
Flowcode1.c: 63: (1250) could not find space (400 bytes) for variable _FCV_01211_CircularBuffer1__DATA
Flowcode1.c: 216: (1250) could not find space (100 bytes) for variable _FCV_08181_WLAN_ESP8266__SCANNAMES
(908) exit status = 1
(908) exit status = 1
C:\Program Files\Flowcode 7\compilers\pic\bin\xc8.exe reported error code 1
FINISHED
I have tried with the MatrixTsl example and a blank code with just the LCD and esp8266 create AP.
SOmetimes when I send to Chip I get message that says that I compile with free version and with pro I could have 60% smaller code and faster compilation!!!
Thank you
Best Regards
Andreas Achilleos
Not enough space for programming
Moderator: Benj
- Benj
- Matrix Staff
- Posts: 15312
- Joined: Mon Oct 16, 2006 10:48 am
- Location: Matrix TS Ltd
- Has thanked: 4803 times
- Been thanked: 4314 times
- Contact:
Re: Not enough space for programming
Hi Andreas,
You can try reducing the size of the buffers in the ESP8266 component properties and this should allow you to compile.
We tried to get the licensed versions of the XC compilers packaged with Flowcode but a single license for one version of XC is significantly more than a license for a complete Flowcode setup so it didn't make sense when the free version is almost as good for most situations. In practise it's generally only companies creating highly optimised firmware to squeeze onto the smallest available micro that will need the pro version.
AVR and ARM compilers don't have this problem as the compiler is free and unrestricted. Microchip have their reasons for licensing their compiler but have said the free version is going to get better and better.
It looks like the program was designed for a chip with more RAM available. The 877 is quite an old device now and has very limited resources (368 Bytes of RAM).Flowcode1.c: 63: (1250) could not find space (400 bytes) for variable _FCV_01211_CircularBuffer1__DATA
Flowcode1.c: 216: (1250) could not find space (100 bytes) for variable _FCV_08181_WLAN_ESP8266__SCANNAMES
You can try reducing the size of the buffers in the ESP8266 component properties and this should allow you to compile.
We use the free version of the XC compilers when compiling to a Microchip PIC device. The message is relating to the compiler and that the pro version may create faster and more compact code. In practise the 60% smaller is wildly over exaggerated but you will likely get some benefits using the pro version of the compiler. There is a free 60 day trial of the pro version you can get from Microchip so you can try it out.SOmetimes when I send to Chip I get message that says that I compile with free version and with pro I could have 60% smaller code and faster compilation!!!
We tried to get the licensed versions of the XC compilers packaged with Flowcode but a single license for one version of XC is significantly more than a license for a complete Flowcode setup so it didn't make sense when the free version is almost as good for most situations. In practise it's generally only companies creating highly optimised firmware to squeeze onto the smallest available micro that will need the pro version.
AVR and ARM compilers don't have this problem as the compiler is free and unrestricted. Microchip have their reasons for licensing their compiler but have said the free version is going to get better and better.
Regards Ben Rowland - MatrixTSL
Flowcode Product Page - Flowcode Help Wiki - Flowcode Examples - Flowcode Blog - Flowcode Course - My YouTube Channel
Flowcode Product Page - Flowcode Help Wiki - Flowcode Examples - Flowcode Blog - Flowcode Course - My YouTube Channel
-
- Posts: 53
- Joined: Wed Feb 25, 2015 1:31 pm
- Has thanked: 15 times
- Been thanked: 4 times
- Contact:
Re: Not enough space for programming
Hi Sir,
I have recently downloaded V9 trial version and was trying to test OLED using PIC16F1509. The simulation was OK, but when trying to compiles to hex its giving below error. Kindly advise how to resolve this issue
using updated 32-bit floating-point libraries; improved accuracy might increase code size
OLEDTEST.c: 400: (1250) could not find space (128 bytes) for variable _FCV_0cc51_gLCD_SSD1306_i2c1__DRAM4
OLEDTEST.c: 400: (1262) object "_FCV_0cc51_gLCD_SSD1306_i2c1__DRAM4" lies outside available data space (warning)
OLEDTEST.c: 401: (1250) could not find space (128 bytes) for variable _FCV_0cc51_gLCD_SSD1306_i2c1__DRAM3
OLEDTEST.c: 401: (1262) object "_FCV_0cc51_gLCD_SSD1306_i2c1__DRAM3" lies outside available data space (warning)
OLEDTEST.c: 402: (1250) could not find space (128 bytes) for variable _FCV_0cc51_gLCD_SSD1306_i2c1__DRAM2
OLEDTEST.c: 402: (1262) object "_FCV_0cc51_gLCD_SSD1306_i2c1__DRAM2" lies outside available data space (warning)
OLEDTEST.c: 403: (1250) could not find space (128 bytes) for variable _FCV_0cc51_gLCD_SSD1306_i2c1__DRAM1
OLEDTEST.c: 403: (1262) object "_FCV_0cc51_gLCD_SSD1306_i2c1__DRAM1" lies outside available data space (warning)
OLEDTEST.c: 404: (1250) could not find space (128 bytes) for variable _FCV_0cc51_gLCD_SSD1306_i2c1__DRAM0
OLEDTEST.c: 404: (1262) object "_FCV_0cc51_gLCD_SSD1306_i2c1__DRAM0" lies outside available data space (warning)
(908) exit status = 1
(908) exit status = 1
Error returned from [xc8.exe]
C:\Program Files (x86)\Flowcode\Common\Compilers\picv2\batch\pic_xc8_comp.bat reported error code 0x1
Autoclose turned off
FINISHED
I have recently downloaded V9 trial version and was trying to test OLED using PIC16F1509. The simulation was OK, but when trying to compiles to hex its giving below error. Kindly advise how to resolve this issue
using updated 32-bit floating-point libraries; improved accuracy might increase code size
OLEDTEST.c: 400: (1250) could not find space (128 bytes) for variable _FCV_0cc51_gLCD_SSD1306_i2c1__DRAM4
OLEDTEST.c: 400: (1262) object "_FCV_0cc51_gLCD_SSD1306_i2c1__DRAM4" lies outside available data space (warning)
OLEDTEST.c: 401: (1250) could not find space (128 bytes) for variable _FCV_0cc51_gLCD_SSD1306_i2c1__DRAM3
OLEDTEST.c: 401: (1262) object "_FCV_0cc51_gLCD_SSD1306_i2c1__DRAM3" lies outside available data space (warning)
OLEDTEST.c: 402: (1250) could not find space (128 bytes) for variable _FCV_0cc51_gLCD_SSD1306_i2c1__DRAM2
OLEDTEST.c: 402: (1262) object "_FCV_0cc51_gLCD_SSD1306_i2c1__DRAM2" lies outside available data space (warning)
OLEDTEST.c: 403: (1250) could not find space (128 bytes) for variable _FCV_0cc51_gLCD_SSD1306_i2c1__DRAM1
OLEDTEST.c: 403: (1262) object "_FCV_0cc51_gLCD_SSD1306_i2c1__DRAM1" lies outside available data space (warning)
OLEDTEST.c: 404: (1250) could not find space (128 bytes) for variable _FCV_0cc51_gLCD_SSD1306_i2c1__DRAM0
OLEDTEST.c: 404: (1262) object "_FCV_0cc51_gLCD_SSD1306_i2c1__DRAM0" lies outside available data space (warning)
(908) exit status = 1
(908) exit status = 1
Error returned from [xc8.exe]
C:\Program Files (x86)\Flowcode\Common\Compilers\picv2\batch\pic_xc8_comp.bat reported error code 0x1
Autoclose turned off
FINISHED
- Benj
- Matrix Staff
- Posts: 15312
- Joined: Mon Oct 16, 2006 10:48 am
- Location: Matrix TS Ltd
- Has thanked: 4803 times
- Been thanked: 4314 times
- Contact:
Re: Not enough space for programming
Hello,
The PIC16F1509 IC has 512 bytes of RAM available however the SSD1306 I2C at full resolution 128 x 64 will require ( (128 * 64) / 8 ) = 1K of RAM memory to buffer the display contents. Hence the compilation errors. You could try and reduce the pixel height to say 16 pixels and that should allow you to compile but most of the display will be unbuffered and so you might get some unexpected problems drawing to the lower part of the screen.
There should be lots of pin compatible chips that have enough RAM to host the display and your application say 2K+.
The PIC16F1509 IC has 512 bytes of RAM available however the SSD1306 I2C at full resolution 128 x 64 will require ( (128 * 64) / 8 ) = 1K of RAM memory to buffer the display contents. Hence the compilation errors. You could try and reduce the pixel height to say 16 pixels and that should allow you to compile but most of the display will be unbuffered and so you might get some unexpected problems drawing to the lower part of the screen.
There should be lots of pin compatible chips that have enough RAM to host the display and your application say 2K+.
Regards Ben Rowland - MatrixTSL
Flowcode Product Page - Flowcode Help Wiki - Flowcode Examples - Flowcode Blog - Flowcode Course - My YouTube Channel
Flowcode Product Page - Flowcode Help Wiki - Flowcode Examples - Flowcode Blog - Flowcode Course - My YouTube Channel
-
- Posts: 53
- Joined: Wed Feb 25, 2015 1:31 pm
- Has thanked: 15 times
- Been thanked: 4 times
- Contact:
Re: Not enough space for programming
Hi Benj.
Thanks for the advise, I will again try implement as per your suggestion.
Regards.
Juzar.
Thanks for the advise, I will again try implement as per your suggestion.
Regards.
Juzar.