سلام
من میخوام امکانات جدید بیسکام رو براتو با هر تغییر ورژن قراربدم شاید به درد یکی بخوره
من میخوام امکانات جدید بیسکام رو براتو با هر تغییر ورژن قراربدم شاید به درد یکی بخوره
2.0.2.0
- start/stop timer accepts xmega timer names
- Full IDE is translated into Russian.
- config tcXX added for xmega timers
- config acxx added for xmega comparator
- simulator can simulate projects with up to 35 include files.
- dat file for m16U4 added.
- all missing dat files added for Xmega
- loadadr did not took config base into account leading to index error warning for config base 0.
- atmel programmers can load/save in HEX format too.
- ADR2 bug fixed. In 2.0.0.0 the ADR2 could point to the wrong label.
- stk600-PDI support added. When selecting stk600, PDI will be used (for xmega programming)
- $prog accepts lock and fuse bytes for xmega
- options, simulator added to save eeprom state.
- checkfloat() function added by Josef which can check a single or double and returns status about nan,zero,sign and infinity.
- pulseout changed to work with xmega.
- mcs bootloader new reset option. you can send a string for reset. To send special ascii use {}. {027} will send ascii 27.
To send { you have to use the ascii value as well since { is used to send special characters.
- mcs bootloader can use DTR or RTS for the reset.
- xmega gosub=sectic did not set _SECTIC constant.
- xm128 bootloader rewritten for XM32A4, by MAK3
- config DACB , configured DACA.
- split() when array was dimmed the same size as the number to split, the returned count was 1 too high.
- alias bug from 2.0.0.0 fixed.
2.0.1.0
- 1wire changed so it works with Xmega as well.
- various samples in the samples\xmega folder
- bug in $swcheck fixed. the soft stack is now checked from within the other stack check routines which saves code.
- xm32A4 added, thanks MAK3 !
- getadc() for Xmega has an additional parameter so it can pass both channel and mux.
- $NORAMPZ will result in rampz treating as 1.12.0.0. In 2.0.0.0 the rampz is cleared after it has been used for pointing to flash memory.
If your app worked fine and you can not allow the extra code you can use the directive.
- xmega EBI(xram) support added. See config XRAM. Don't be intimidated by the number of options, just use the sample.
- config clock uses the RTC now of the Xmega. See the xm128-RTC.bas example
- watchog support added for XMega. See the sample xm128-WD.bas
- added DISABLE JTAG to disable the jtag interface via software. this works for normal and xmega chips.
- $forcesofti2c will force the xmega to use software i2c, it was used internally. it will not be added to the help.
- adding array index support feature resulted in a bug when using locals
- lcdvdf.lib added for a special VFD display module from "Electronic Design Bitzer". LCDAUTODIM added.
this is a 20x4 vfd display immune for ESD.
config lcdpin creates constants for the pins which are used by the lib. also MODE added for 20x4VFD.
you can also define busy for a busy pin. this is a fragment from a lib that shows the generated names. they are also visible in the report.
sbi _lcddb4dir, _lcddb4_pin ; db4
sbi _lcddb5dir, _lcddb5_pin ; db5
sbi _lcddb6dir, _lcddb6_pin ; db6
sbi _lcddb7dir, _lcddb7_pin ; db7
sbi _lcddbedir, _lcddbe_pin ; enable/strobe HIGH
sbi _lcdresetdir,_lcdreset_pin ; reset line to Output
sbi _lcddbe, _lcddbe_pin ; strobe high
cbi _lcdreset,_lcdreset_pin ; reset low
sbi _lcdreset,_lcdreset_pin ; reset was LOW so make it HIGH
- when not ubrhi setting updated the wrong register for chips with shared registers.
- config DP="," | "." to select the decimal point for the fusing() and single str() functions. Default is "."
- i2crepstart did not work for Xmega
- i2cstop for xmega did not free bus after i2creceive/i2csend, so the i2cstop command has been extended to send multiple commands.
2.0.0.0 , yes this is the new version number
- Josef rewrote the single power() to fix a bug with the sign. This new code does use more code.
- RAMPZ : when Z is loaded, the RAMPZ is set when it was used before to point to data in flash memory.
This will generate more code but is needed because when RAMPZ is changed and data is exchanged between X and Z, it is important
that Z points to the proper data in RAM.
- readsig() added for xmega, use it to load calibration data
- beta : added stackcheck directive $hwcheck,$framecheck and $softcheck
- xmega buffered serial input supported
- xmega config adc did not support CH1_GAIN - CH3_GAIN parameters.
- split() supports variable for the delimiter too now. (previously it only supported a constant)
- declare function/sub REQUIRE (). So declare sub test is NOT ok, but declare sub test() is.
- Xmega AES encyption/decryption added. See xm128-aes.bas
- xmega TWI support added. By default TWIC will be used unless you use OPEN "TWIx"
config TWI will enable the TWI so it is important to add it : CONFIG TWI|TWIC|TWID|TWIE|TWIF=baud
open "TWIC" for binary as #1
i2cinit #1
i2cstart #1
i2cwbyte value ,#1
i2crbyte value,ack|nack,#1
i2cstop #1
without # the default TWIC will be used.
- various xmega uart bugs resolved (some could lead to a stack error)
- $bgf had a problem with big images. this was actually a problem of the assembler. this could give problems for large font files too.
- Xmega baud rate calculation improved, now the lowest possible error will be calculated for BSEL/BSCALE.
- config servo has a new parameter and alternative code for working with servos. when using INTERVAL=t , then the alternative code will be used.
It is best to use a reload value of 100 and an interval of 100. This is optimized for normal RC servos.
- instead of ar(a+1) you can also use a variable : ar(A+J)
- bylabel added to sub/function which allows to pass the address of a label.
- uarts of type 3 (shared UBRI register) did not set UMSEL bit resulting in bad data bits. using CONFIG COM did/does work correct. This problem was only visible when
using the old style where the com port is automatic configured when using $BAUD.
- soft spi now supports mode 0,1,2 and 3. if not specifying mode=, then the default mode 1 will be used.
when using the MODE, you can also specify setup and speed. setup and speed expect a numeric constant.
setup is the delay in uS before sampeling the MISO pin. speed is a delay in us. when you specify 1, it will result in a 2 uS or 500 KHz clock.(estimated)
you can use either SS or NOSS, NOSS and SS are inverted. to disable SS use : SS=NONE, or NOSS=1
- toggle for arrays with constant bit number worked on element 1.
- DIDR reg added to tiny2313
- mcs bootloader can send EEP file too if it exists.
- accessing an array in a sub/function with a local var and offset (var(a+3)) did not added the offset to the element.
- m48Pdef.dat file added
- getrc5 , use 2000 for the 131 ms wait as it was in 1.11.9.8
- config print2 end print3 did not set rs485 level for the PRINT statement.
- the idle, powersave and powerdown are depriciated. use power [option].
the old statements will convert automatic to the new power statement.
- m1284p added to config clock.
- tiny13A dat file added. Notice that this A version has the same signature as the normal Tiny13.
- in options, enviroment, IDE you can select to check the version when you start the IDE
- tiny25,45 and 85 did not had a timer1 reference in the dat file (alias for tcnt1)
- crc32 uses a word for the number of bytes instead of a byte
- the simulator saves the state of the EEPROM. This means that when writing the EEPROM, you
Use the popup menu to clear the EEPROM (set all values to FF)
- uspasp and other atmel programmers did not erase the chip when using 'autoprogram'. Also auto refresh for lock and fuse bits was not enabled.
- stcheck used brge(signed compare) instead of brsh(unsigned compare)
- tiny48/tiny88 do not support HW MUL, dat files adjusted.
- mmc.lib saves R23 in case an extened port is used for the interface.
- charpos() accepts additional parameter with starting value. (>0)
- ####### IMPORTANT FEATURE ########
config base=0 | 1 added. By default arrays are 1 based in bascom. with config base=0, arrays start a 0.
dim ar(5) will occupy elements 0-4 ! In some old basic(QB) and VB it would take 0-5 thus 1 additional element.
- config lcdpin did not override options from the CFG file when bus mode was selected.
- waitus accepts a variable too. it will only work reliable when the oscillator speed is high enough.
- config i2cdelay did not update ___I2CDELAY constant used by soft i2c.
- mcs bootloader will ask if EEP file need to be programmed when this file exists.
- max() procedure (not the function) returned wrong index value for bytes which had the ms bit set(signed compare was used instead of unsigned).
- start/stop timer accepts xmega timer names
- Full IDE is translated into Russian.
- config tcXX added for xmega timers
- config acxx added for xmega comparator
- simulator can simulate projects with up to 35 include files.
- dat file for m16U4 added.
- all missing dat files added for Xmega
- loadadr did not took config base into account leading to index error warning for config base 0.
- atmel programmers can load/save in HEX format too.
- ADR2 bug fixed. In 2.0.0.0 the ADR2 could point to the wrong label.
- stk600-PDI support added. When selecting stk600, PDI will be used (for xmega programming)
- $prog accepts lock and fuse bytes for xmega
- options, simulator added to save eeprom state.
- checkfloat() function added by Josef which can check a single or double and returns status about nan,zero,sign and infinity.
- pulseout changed to work with xmega.
- mcs bootloader new reset option. you can send a string for reset. To send special ascii use {}. {027} will send ascii 27.
To send { you have to use the ascii value as well since { is used to send special characters.
- mcs bootloader can use DTR or RTS for the reset.
- xmega gosub=sectic did not set _SECTIC constant.
- xm128 bootloader rewritten for XM32A4, by MAK3
- config DACB , configured DACA.
- split() when array was dimmed the same size as the number to split, the returned count was 1 too high.
- alias bug from 2.0.0.0 fixed.
2.0.1.0
- 1wire changed so it works with Xmega as well.
- various samples in the samples\xmega folder
- bug in $swcheck fixed. the soft stack is now checked from within the other stack check routines which saves code.
- xm32A4 added, thanks MAK3 !
- getadc() for Xmega has an additional parameter so it can pass both channel and mux.
- $NORAMPZ will result in rampz treating as 1.12.0.0. In 2.0.0.0 the rampz is cleared after it has been used for pointing to flash memory.
If your app worked fine and you can not allow the extra code you can use the directive.
- xmega EBI(xram) support added. See config XRAM. Don't be intimidated by the number of options, just use the sample.
- config clock uses the RTC now of the Xmega. See the xm128-RTC.bas example
- watchog support added for XMega. See the sample xm128-WD.bas
- added DISABLE JTAG to disable the jtag interface via software. this works for normal and xmega chips.
- $forcesofti2c will force the xmega to use software i2c, it was used internally. it will not be added to the help.
- adding array index support feature resulted in a bug when using locals
- lcdvdf.lib added for a special VFD display module from "Electronic Design Bitzer". LCDAUTODIM added.
this is a 20x4 vfd display immune for ESD.
config lcdpin creates constants for the pins which are used by the lib. also MODE added for 20x4VFD.
you can also define busy for a busy pin. this is a fragment from a lib that shows the generated names. they are also visible in the report.
sbi _lcddb4dir, _lcddb4_pin ; db4
sbi _lcddb5dir, _lcddb5_pin ; db5
sbi _lcddb6dir, _lcddb6_pin ; db6
sbi _lcddb7dir, _lcddb7_pin ; db7
sbi _lcddbedir, _lcddbe_pin ; enable/strobe HIGH
sbi _lcdresetdir,_lcdreset_pin ; reset line to Output
sbi _lcddbe, _lcddbe_pin ; strobe high
cbi _lcdreset,_lcdreset_pin ; reset low
sbi _lcdreset,_lcdreset_pin ; reset was LOW so make it HIGH
- when not ubrhi setting updated the wrong register for chips with shared registers.
- config DP="," | "." to select the decimal point for the fusing() and single str() functions. Default is "."
- i2crepstart did not work for Xmega
- i2cstop for xmega did not free bus after i2creceive/i2csend, so the i2cstop command has been extended to send multiple commands.
2.0.0.0 , yes this is the new version number
- Josef rewrote the single power() to fix a bug with the sign. This new code does use more code.
- RAMPZ : when Z is loaded, the RAMPZ is set when it was used before to point to data in flash memory.
This will generate more code but is needed because when RAMPZ is changed and data is exchanged between X and Z, it is important
that Z points to the proper data in RAM.
- readsig() added for xmega, use it to load calibration data
- beta : added stackcheck directive $hwcheck,$framecheck and $softcheck
- xmega buffered serial input supported
- xmega config adc did not support CH1_GAIN - CH3_GAIN parameters.
- split() supports variable for the delimiter too now. (previously it only supported a constant)
- declare function/sub REQUIRE (). So declare sub test is NOT ok, but declare sub test() is.
- Xmega AES encyption/decryption added. See xm128-aes.bas
- xmega TWI support added. By default TWIC will be used unless you use OPEN "TWIx"
config TWI will enable the TWI so it is important to add it : CONFIG TWI|TWIC|TWID|TWIE|TWIF=baud
open "TWIC" for binary as #1
i2cinit #1
i2cstart #1
i2cwbyte value ,#1
i2crbyte value,ack|nack,#1
i2cstop #1
without # the default TWIC will be used.
- various xmega uart bugs resolved (some could lead to a stack error)
- $bgf had a problem with big images. this was actually a problem of the assembler. this could give problems for large font files too.
- Xmega baud rate calculation improved, now the lowest possible error will be calculated for BSEL/BSCALE.
- config servo has a new parameter and alternative code for working with servos. when using INTERVAL=t , then the alternative code will be used.
It is best to use a reload value of 100 and an interval of 100. This is optimized for normal RC servos.
- instead of ar(a+1) you can also use a variable : ar(A+J)
- bylabel added to sub/function which allows to pass the address of a label.
- uarts of type 3 (shared UBRI register) did not set UMSEL bit resulting in bad data bits. using CONFIG COM did/does work correct. This problem was only visible when
using the old style where the com port is automatic configured when using $BAUD.
- soft spi now supports mode 0,1,2 and 3. if not specifying mode=, then the default mode 1 will be used.
when using the MODE, you can also specify setup and speed. setup and speed expect a numeric constant.
setup is the delay in uS before sampeling the MISO pin. speed is a delay in us. when you specify 1, it will result in a 2 uS or 500 KHz clock.(estimated)
you can use either SS or NOSS, NOSS and SS are inverted. to disable SS use : SS=NONE, or NOSS=1
- toggle for arrays with constant bit number worked on element 1.
- DIDR reg added to tiny2313
- mcs bootloader can send EEP file too if it exists.
- accessing an array in a sub/function with a local var and offset (var(a+3)) did not added the offset to the element.
- m48Pdef.dat file added
- getrc5 , use 2000 for the 131 ms wait as it was in 1.11.9.8
- config print2 end print3 did not set rs485 level for the PRINT statement.
- the idle, powersave and powerdown are depriciated. use power [option].
the old statements will convert automatic to the new power statement.
- m1284p added to config clock.
- tiny13A dat file added. Notice that this A version has the same signature as the normal Tiny13.
- in options, enviroment, IDE you can select to check the version when you start the IDE
- tiny25,45 and 85 did not had a timer1 reference in the dat file (alias for tcnt1)
- crc32 uses a word for the number of bytes instead of a byte
- the simulator saves the state of the EEPROM. This means that when writing the EEPROM, you
Use the popup menu to clear the EEPROM (set all values to FF)
- uspasp and other atmel programmers did not erase the chip when using 'autoprogram'. Also auto refresh for lock and fuse bits was not enabled.
- stcheck used brge(signed compare) instead of brsh(unsigned compare)
- tiny48/tiny88 do not support HW MUL, dat files adjusted.
- mmc.lib saves R23 in case an extened port is used for the interface.
- charpos() accepts additional parameter with starting value. (>0)
- ####### IMPORTANT FEATURE ########
config base=0 | 1 added. By default arrays are 1 based in bascom. with config base=0, arrays start a 0.
dim ar(5) will occupy elements 0-4 ! In some old basic(QB) and VB it would take 0-5 thus 1 additional element.
- config lcdpin did not override options from the CFG file when bus mode was selected.
- waitus accepts a variable too. it will only work reliable when the oscillator speed is high enough.
- config i2cdelay did not update ___I2CDELAY constant used by soft i2c.
- mcs bootloader will ask if EEP file need to be programmed when this file exists.
- max() procedure (not the function) returned wrong index value for bytes which had the ms bit set(signed compare was used instead of unsigned).
دیدگاه