Bascom 2.0.5.0 regisztrált _és_ DEMO
Bascom 2.0.5.0 regisztrált _és_ DEMO
Megjelent. a DEMO verzió is frissült!
Változások:
2.0.5.0
- simulator tooltip will show alias and constants too. (if compiled with 2050)
- xmega buffered input and output were not using the buffers.
- tcpip chip reset time extended to 200 ms.
- m164P,324P and 644P did not have uart2=5 in the ini file, so UBRRHI was not set.
- changed help about LIBUSB. Most important : new libusb supports all windows versions including Win7-64 !!!
- str2digits added, converts a string into an array of numeric digits
s="12345" : str2digits s, ar(1) : ar(1) contains number of digits, ar(2) = 5, ar(3)=4, etc.
- XV-GDM128X64 Graphic Display Library for 128 * 64 from avr-praxis added.
See http://mikrocontroller-praxis.de/de/Dis ... 4-RGB.html
- Arduino bootloader support added. Select 57600 baud and the com port. flash/eeprom is supported, but arduino does not support fuse/lock bytes.
Tested with arduino mega and arduino nano v3.
- STK600 now also works in ISP mode for non xmega/pdi chips.
also, the clock frequency was not calculated properly for the stk600.
- there was no error when assigning too big string constants to strings in subs/function.
if you do not specify the size of a parameter, you still will not get an error.
declare sub test(s as string * 10) : here the length is defined. this is the maximum allowed length.
since you can call a sub from multiple places/subs, you need to define the maximum.
- TIMER4, TIMER5 supported added to the LOAD statement.
- m1280/2560/644p,m2561,m1281 did not use the proper register when using START TIMER.
- xmega 256xxx chips bootloader space was not addressed with the proper page loaded in rampz.
- dword type added. a dword is a double word and uses 4 bytes just as a long.
just as like a word, it can not hold/show negative numbers. Notice that this is a first release, some function/statements might not support it.
Inform support if there is a problem.
- at90pwm216 dat file added.
- when a string is passed with byval, a string with the required length is passed.
So when passing "abc" it will pass a string with length of 3.
When you alter the string, like adding spaces, you will overwrite the length.
There is no way to know how long it can be/become.
To override this, you may specify the length of the string in the declaration.
normally you declare only the string type : dim test(byval s as string)
But an optional length will set the maximum size.
dim test(byval s as string * 20) will set the string to a length of 20.
- local variables may now have the same name as global variables.
- simulator changed so it requires less cpu time when pauzed
- charpos() used with an offset of 0 did not work. also new option/parameter added.
- quote() did append to the end of string.
- programming xmega 256 chips, programmed the full memory, not the project size.
- checksumXor() added
- simulator support added for config base=0
- xmega printbin did not support printing constants.
- xmega config print/2/3/4 for RS485 support added.
- if useing WR pin with LCD in pin mode, the lib lcd4busy_anypin will be used. This lib is based on Luciano's LUC_lcd4busy lib.
the lib will be automatically used when using the WR pin, so there is no need to include it.
Example : Config Lcdpin = Pin , Db4 = Portb.2 , Db5 = Portb.3 , Db6 = Portb.4 , Db7 = Portb.5 , E = Portb.1 , Rs = Portb.0 , Wr = Portb.6
- sort added for byte,integer and word arrays
- modded rnd() so it returns a larger number(a word)
- $crypt option added to use crypted code, this is an add on, not enabled by default.
- m8515 prescale value for 64 and up was incorrect.
- tiny48/88, timer0 configured non existing register. also removed all options that are not present in timer0.
- tiny24/45/85 Config timer0 = timer , Prescale = 1 , Compare A = Toggle , Clear Timer = 1 would set up portb.3 instead of portb.0
- simulator supports xmega interrupts.
- $notransform opion added. while the compiler by default changes code depending on the chip, you might want to get an error.
When you set $notransform ON, the compiler will not transform IN into an LDS when needed. You will get an error. Intended for asm programmers.
$notransform On
cbi portL,1
$notransform Off
- avr-dos changed to xmega.
- fm24c64_256.lib added for replacing eeprom with ramtron eeprom.
- glcdEADOGM128x6 , rotate option added by MWS to rotate screen by 180 degrees. use CONFIG parameter ROTATE=180
- glcdRA6963.lib added for RA6963 chip which replaces the T6963C
- AVR910/MYAVR MK2 programmer, blockmode support added for quicker programming. Also timeout added to options.
- $bigstring gave a problem with big dimensioned strings because of the stack frame correction
- improved stack clean up code, depending on the size different code will be called eliminating the loading of R25 in most cases
- config BASE will create _BASE constant. Also changed compiler and a number of libs to use the proper base. Code using elemtn (1) was replaced by (_BASE)
- fixed a bug in glcdEADOGM128x6.lib where big non-TT fonts were not displayed correct.
Változások:
2.0.5.0
- simulator tooltip will show alias and constants too. (if compiled with 2050)
- xmega buffered input and output were not using the buffers.
- tcpip chip reset time extended to 200 ms.
- m164P,324P and 644P did not have uart2=5 in the ini file, so UBRRHI was not set.
- changed help about LIBUSB. Most important : new libusb supports all windows versions including Win7-64 !!!
- str2digits added, converts a string into an array of numeric digits
s="12345" : str2digits s, ar(1) : ar(1) contains number of digits, ar(2) = 5, ar(3)=4, etc.
- XV-GDM128X64 Graphic Display Library for 128 * 64 from avr-praxis added.
See http://mikrocontroller-praxis.de/de/Dis ... 4-RGB.html
- Arduino bootloader support added. Select 57600 baud and the com port. flash/eeprom is supported, but arduino does not support fuse/lock bytes.
Tested with arduino mega and arduino nano v3.
- STK600 now also works in ISP mode for non xmega/pdi chips.
also, the clock frequency was not calculated properly for the stk600.
- there was no error when assigning too big string constants to strings in subs/function.
if you do not specify the size of a parameter, you still will not get an error.
declare sub test(s as string * 10) : here the length is defined. this is the maximum allowed length.
since you can call a sub from multiple places/subs, you need to define the maximum.
- TIMER4, TIMER5 supported added to the LOAD statement.
- m1280/2560/644p,m2561,m1281 did not use the proper register when using START TIMER.
- xmega 256xxx chips bootloader space was not addressed with the proper page loaded in rampz.
- dword type added. a dword is a double word and uses 4 bytes just as a long.
just as like a word, it can not hold/show negative numbers. Notice that this is a first release, some function/statements might not support it.
Inform support if there is a problem.
- at90pwm216 dat file added.
- when a string is passed with byval, a string with the required length is passed.
So when passing "abc" it will pass a string with length of 3.
When you alter the string, like adding spaces, you will overwrite the length.
There is no way to know how long it can be/become.
To override this, you may specify the length of the string in the declaration.
normally you declare only the string type : dim test(byval s as string)
But an optional length will set the maximum size.
dim test(byval s as string * 20) will set the string to a length of 20.
- local variables may now have the same name as global variables.
- simulator changed so it requires less cpu time when pauzed
- charpos() used with an offset of 0 did not work. also new option/parameter added.
- quote() did append to the end of string.
- programming xmega 256 chips, programmed the full memory, not the project size.
- checksumXor() added
- simulator support added for config base=0
- xmega printbin did not support printing constants.
- xmega config print/2/3/4 for RS485 support added.
- if useing WR pin with LCD in pin mode, the lib lcd4busy_anypin will be used. This lib is based on Luciano's LUC_lcd4busy lib.
the lib will be automatically used when using the WR pin, so there is no need to include it.
Example : Config Lcdpin = Pin , Db4 = Portb.2 , Db5 = Portb.3 , Db6 = Portb.4 , Db7 = Portb.5 , E = Portb.1 , Rs = Portb.0 , Wr = Portb.6
- sort added for byte,integer and word arrays
- modded rnd() so it returns a larger number(a word)
- $crypt option added to use crypted code, this is an add on, not enabled by default.
- m8515 prescale value for 64 and up was incorrect.
- tiny48/88, timer0 configured non existing register. also removed all options that are not present in timer0.
- tiny24/45/85 Config timer0 = timer , Prescale = 1 , Compare A = Toggle , Clear Timer = 1 would set up portb.3 instead of portb.0
- simulator supports xmega interrupts.
- $notransform opion added. while the compiler by default changes code depending on the chip, you might want to get an error.
When you set $notransform ON, the compiler will not transform IN into an LDS when needed. You will get an error. Intended for asm programmers.
$notransform On
cbi portL,1
$notransform Off
- avr-dos changed to xmega.
- fm24c64_256.lib added for replacing eeprom with ramtron eeprom.
- glcdEADOGM128x6 , rotate option added by MWS to rotate screen by 180 degrees. use CONFIG parameter ROTATE=180
- glcdRA6963.lib added for RA6963 chip which replaces the T6963C
- AVR910/MYAVR MK2 programmer, blockmode support added for quicker programming. Also timeout added to options.
- $bigstring gave a problem with big dimensioned strings because of the stack frame correction
- improved stack clean up code, depending on the size different code will be called eliminating the loading of R25 in most cases
- config BASE will create _BASE constant. Also changed compiler and a number of libs to use the proper base. Code using elemtn (1) was replaced by (_BASE)
- fixed a bug in glcdEADOGM128x6.lib where big non-TT fonts were not displayed correct.
Másnál is bugzik?
Sziasztok!
Egy ismerős írta (cenzúráztam, mert sokat bajlódott vele):
--------------------------
Most futottam bele ebbe a hibába.
Ha az interrupt rutinban van I2C kezeles és
a főprogramban karakteres LCD-t is használsz,
akkor elbaltázza az LCD kezelést és mindenféle
szeméttel rakja tele a kijelzőt.
De ha az R12 és az R13 regisztert elmented, akkor
minden ok.
.......Példa:
-------------------------
Kipróbáltam és a legújabb BASCOM-ban is hibás
az LCD kezelés ha a timer interrupt-ban I2C kezelés van.
Másnál ilyen tapasztalat?
JAni
Egy ismerős írta (cenzúráztam, mert sokat bajlódott vele):
--------------------------
Most futottam bele ebbe a hibába.
Ha az interrupt rutinban van I2C kezeles és
a főprogramban karakteres LCD-t is használsz,
akkor elbaltázza az LCD kezelést és mindenféle
szeméttel rakja tele a kijelzőt.
De ha az R12 és az R13 regisztert elmented, akkor
minden ok.
.......Példa:
Kód: Egész kijelölése
Int_Timer0:
Timer0 = 178 ' 100Hz - es megszakitashoz
'**********************************************************
'Az LCD teritést elbaltázza ha az interrupt rutinban
'van I2C kezeles. Ezert el kell menteni a ket regisztert !!
PUSH r12
PUSH r13
'**********************************************************
If IO_Select = 0 Then
In_port0 = I2C_In ( PCF0 )
Incr IO_Select
End If
If IO_Select = 1 Then
In_port1 = I2C_In ( PCF1 )
Incr IO_Select
End If
If IO_Select = 2 Then
In_port2 = I2C_In ( PCF2 )
IO_Select = 0
End If
'**********************************************************
'Az LCD teritést elrontja ha az interrupt rutinban
'van I2C kezeles. Ezert el kell menteni a ket regisztert !!
pop r13
pop r12
'**********************************************************
Kipróbáltam és a legújabb BASCOM-ban is hibás
az LCD kezelés ha a timer interrupt-ban I2C kezelés van.
Másnál ilyen tapasztalat?
JAni
LCD bug?
Hihetetlen bonyolult program:
Eredmény a szimulátorban és a való életben is:
1.2.
(a köztes space-k eltünnek)
Csak nálam csinálja?)
2.0.5.0. ver.
JAni
Kód: Egész kijelölése
Config Lcdpin = Pin , Db4 = Porta.4 , Db5 = Porta.5 , Db6 = Porta.6 , Db7 = Porta.7 , E = Portc.7 , Rs = Portc.6
Config Lcd = 16 * 2
Cls
Lcd "1. 2. "
End
1.2.
(a köztes space-k eltünnek)
Csak nálam csinálja?)
2.0.5.0. ver.
JAni
Ha így írod, szintén OK:
Szerintem behoztak 2 dolgot, ami bejátszhat:
- lcd library csere (a Busybit kezelés bekerült)
- A dword változó használata
Kód: Egész kijelölése
Lcd "1." ; " 2. "
Szerintem behoztak 2 dolgot, ami bejátszhat:
- lcd library csere (a Busybit kezelés bekerült)
- A dword változó használata
- mester1025
- Biztosítékgyilkos
- Hozzászólások: 52
- Csatlakozott: 2011. május 24. kedd, 6:00
Előbb az Options > Programmer > Programmer lenyilóban , válassz programozót.
Nálam (STK500 native drive)
COMx
Clock: 125000
Előtte a PC-nek kel az FTDI Driver.
EROR!
Nálatok is van ez a szerkesztő hiba? Demo 2.0.5.0 +
Ha csoportos megjegyzésből kiveszek valamit, akkor marad a zöld színe a szövegnek?
Kezdet:
’(
Data 30 , 16 , 1 , 1 , 1
Data 30 , 32 , 1 , 16 , 1
’)
Változtatom:
’
Data 30 , 16 , 1 , 1 , 1
Data 30 , 32 , 1 , 16 , 1
’
Nem színezi át!???
Nálam (STK500 native drive)
COMx
Clock: 125000
Előtte a PC-nek kel az FTDI Driver.
EROR!
Nálatok is van ez a szerkesztő hiba? Demo 2.0.5.0 +
Ha csoportos megjegyzésből kiveszek valamit, akkor marad a zöld színe a szövegnek?
Kezdet:
’(
Data 30 , 16 , 1 , 1 , 1
Data 30 , 32 , 1 , 16 , 1
’)
Változtatom:
’
Data 30 , 16 , 1 , 1 , 1
Data 30 , 32 , 1 , 16 , 1
’
Nem színezi át!???
- mester1025
- Biztosítékgyilkos
- Hozzászólások: 52
- Csatlakozott: 2011. május 24. kedd, 6:00