http://www.mcselec.com/index.p…cat_view&gid=99&Itemid=54
Gestern rausgekommen, sind wohl ein paar gute neue Sachen drin und natürlich Bugfixes...
http://www.mcselec.com/index.p…cat_view&gid=99&Itemid=54
Gestern rausgekommen, sind wohl ein paar gute neue Sachen drin und natürlich Bugfixes...
Jo ist mir heute morgen auch aufgefallen. Allerdings gibt es kein Changelog kann das sein?
Ja, das ist immer alles etwas nebelhaft.
das hier hab ich ausm Bascom-Forum:
1.11.9.1
ZitatAlles anzeigen- m640 support added.
- TAB interface added to IDE.
- Modbus master function added : makemodbus(). This funciton need to be used with PRINT. See help for more info.
- double and single libs _Adjust_RAMPZ_Down fixed. Could only give a problem on biggest micro with all flash used.
- Added support for 'TrueType' fonts. The fonteditor is not changed yet! It wil be enhanced and published at a later stage.
It will only work for EADOGM128. This display uses the ST7565. Other similar displays could handle it too. Check out the code in the lib.
The font needs a change for this option. When you open the font with notepad you will see something like :
Font8x8:
$asm
.db 1,8,8,0
^^^ the last zero need to be changed into the char spacing. For example 2.
Since the value is not used with other fonts it does not matter when you add it.
The code that will display the character will check the left space and the right space of the character.
For example the i will take less space then the W. So the character i and W bytes are :
.db 0,0,0,125,64,0,0,0 ; i
.db 0,60,96,48,96,60,0,0 ; w
The code in the lib might be hard to understand but it need to check additional bytes for big fonts to.
Essential the zero's are counted at the left and at the right. So an 'i' will take only 3 columns.
When you display 'iiiiiiii' it will take less space then 'wwwwwwww'. It looks better.
One problem is when you update a location in a loop : 111 will take less space then 888.
So the previous data is not overwritten then. For this purpose the CLS statement was enhanced. See below.
- CLS accepts additional params for EADOGM128 : cls Y,X1,X2 [char]
It will clear a part of the specified line. The optional char is the reverse value to use.
If not specified, a 0 will be used which will blank the line.
- support added for EADOG128M graphical LCD. See EADOGM128.BAS sample.
Note that this is a serial display and it can NOT read data. Meaning that a number of graphical commands are not supported!
- bascomp.exe command line compile utility supports all DAT files now. Will automatic supports all future dat files.
- enhanced wd timer need to be cleared soon as possible. you can use $initmicro to do. when the micro has an enhanced WD timer, it is always reset.
but when you need to determine the cause of the reset you need to check the MCUSR register. Since the WD overflow flag is cleared,
you have to read this register with the $initmicro option.
- the sim contained a bug which could lead till internal recursion, resulting in a stack overflow.
- ks108 libray supports INITLCD. Also timing changed to support high crystals like 16 MHz.
- AD converter code has been rewritten. While the first AD converters were simple, the latest ones split the MUX bits among different
registers and add
other options as well. While the CONFIG ADC used to store the setting during compilation and this was used the load the ADCSR register,
this has been changed.
Now it will set the ADCSR register and other registers(ADCSRB, ADMUX) once.
getad() will now pass the channel and set the proper mux bits in admux and adcsrB. The optional parameter is added to the ADMUX.
This means that when you used the additional parameter, you have to change your code. In most cases it is sufficient to remove the
additional parameter and provide the proper channel value.
The dat file has a new setting : ADC_MUX=6,ADMUX0-4,ADCSRB.3 ; 6 bits, reg-bits, optional other bits
This sample from the tiny261 informs that the muxbits 0-4 are in admux and that the upper bit is in adcsrb.
While we checked these new settings twice, we could not test it on real chips, it was a tested with real chips on a number of chips.
In case of a problem contact support and/or check the setting. Notice that the AD converter is started automatic with CONFIG ADC.
An example with temperature reading has been added (CHIPS\tiny261.bas)
- config 1wire has optional param : [,extended=0|1]
when using multiple port pins on mixed ports, that have normal IO address and extended IO address, the compiler will choose one.
I would not advise using multiple ports for multiple 1wire busses, but when you do that and the ports meet the above condition,
like PORTD and PORTL , you need the additional EXTENDED=1 parameter. This will instruct the compiler to generate the whole pin
address (r30+r31)
and not the lower address which would be sufficient for normal ports, or for extended ports only.
- AN_READHITAG_EM4095.BAS sample added. this is the sample from the reference KIT.
- received tiny261 chip and added support. a sample program was added too.
- setting/resetting a bit of an array manipulated the wrong bit (when using SET/RESET)
- gps-distance.bas example added for calculating distance and course
- AT KEYBOARD EMU : some motherboard seem to require a reversed ID. Usually AB83 must be sent.
But these require 83AB. CONFIG PS2 has an additional option : ,init=&HAB83 , which is the default.
To send in reverse order, use : ,init=&H83AB
You need the updated library which is available via the register.
- when using TOGGLE on a PORT pin, the PIN register will be set, resulting in a toggle of the PORT pin.
This will only work when the DAT file has the NEWPORT=1 option. Old chips do not support this option. In case of a problem you should
use NEWPORT=0. The setting in the DAT files reflect the DATA Sheet. It was not tested with all chips, a random test was performed.
Because you can write to a PIN register now, the error check has been removed.
- SHIFT RIGHT has extra option to preserve sign bit. SHIFT var, RIGHT, noshifts, SIGNED
This option will preserve the sign bit and add it back later after the shifts have been performed
- SPIIN sends a 0 now when getting the value from the SPI-bus. This keeps MOSI 0.
- changed all dat files with ADFR (free running mode) since the start bit was absent
- tiny461/861 had wrong timer1 reference.
- single.lbx , $external conditional compilation fixed
- $external when used with conditional compilation was not working the right way
- tiny85 had wrong romize in the def file,also address wrap was not set.
- tiny84 had address wrap not set.
- crc16UNI() function added.
- crc8-16-32.bas changed. demonstartes crc16UNI() function too.
- usb162 support added. See also CONFIG USB.
- simulator did not stopped correctly when interrupted by compilation
- the lcd-pcf8833 lib did not had a refernce to the needed _BOX code.
- timer4 and timer5 were not added as 16 bit variables.
Gibt es den auch deutsche programmier Programme, eventuell mit einem Hilfe butten, der einem absolutem einsteiger den anfang erleichtert?
Das währe schön, weil ich kann nicht so gut englisch, und will bald das erste mal programmieren. Habe davor aber noch nen bisschen angst.
Wieso, wo ist das Problem? Das Programm kann man doch auf Deutsch umstellen. OK, die Hilfe nicht, aber man könnte sich auch ein passendes Buch dazu gönnen.
Abgesehen davon, ist Basic immer Englisch - ohne kommt man also nicht aus. Dann müsstest du schon im Binärcode programmieren
das habe ich noch garnicht gesehen, wo den?
Optionen -> Environment -> IDE: Language
Ist nicht wirklich sehr Deutsch aber der gute Wille ist da.
Und wieder ist der beste Compiler, den's für Atmel AVRs gibt, nochmals etwas besser geworden \:D/ .
Wenn man die registrierte (also gekaufte) Version hat, dann wird der Changelog immer kurz beim automatischen Update im Update-Wizard angezeigt. Ausserdem kann man auf der Website von MCSELEC im Registrierungsinterface (wo man auch seine Licence-Files runterladen kann) immer die History-Dateien der versch. Versionen (seit man BASCOM gekauft hat) ansehen.
Wenn man 'nur' mit der Demo arbeitet, dann muss man die Changelog-Infos eben über's BASCOM-Forum holen (vorausgesetzt jemand veröffentlicht sie) oder per Studium der Veränderungen im Help-File rausknobeln.
Gruss
Neni
Ja, Bascom ist schon fein, ich würde mir aber noch mehr fertige Libs wünschen - bzw. teilweise bessere Implementierungen. RC5 in nem Interrupt z.B., sauber im ASM gecodet...