BASCOM-AVR is the original Windows BASIC COMPILER for the AVR
It is designed to run on W95/W98/NT/W2000/XP and Vista
- Structured BASIC with labels.
- Structured programming with IF-THEN-ELSE-END IF, DO-LOOP, WHILE-WEND,
- Fast machine code instead of interpreted code.
- Variables and labels can be as long as 32 characters.
- Bit, Byte, Integer, Word, Long, Single
, DOUBLE and String variables.
- Support for the
DOUBLE. Not found in any AVR compiler, BASCOM gives you the advantage to
crunch huge numbers with the DOUBLE(8 byte Floating Point)
- Large set of Trig Floating point functions.
- Date &
Time calculation functions.
- Compiled programs work with all AVR microprocessors that have
- Statements are highly compatible with Microsoft’s VB/QB.
- Special commands for LCD-displays , I2C
chips and 1WIRE chips, PC keyboad, matrix keyboad, RC5
reception, software UART, SPI , graphical LCD, send IR RC5, RC6 or Sony code.
- TCP/IP with W3100A chip.
- Local variables, user functions, library support.
- Integrated terminal emulator with download option..
- Integrated simulator for testing.
- Integrated ISP programmer (application note AVR910.ASM).
- Integrated STK200 programmer and STK300 programmer.
Also supported is the low cost Sample Electronics programmer. Can be built
in 10 minutes! Many other programmers supported via the Universal Interface.
- Editor with statement highlighting.
- PDF datasheet viewer
- Context sensitive help.
- Perfectly matches the following boards :
- DEMO version compiles 4KB of code. Well suited for the ATmega48.
- English an German Books available
- Special Tcp/Ip library, AT mouse simulator, AT keyboard
simulator and others are available as add on.
The following statements are supported (actually
there are many more look in the helpfile):
Decision and structures
IF, THEN, ELSE, ELSEIF, END IF, DO, LOOP, WHILE, WEND, UNTIL, EXIT DO, EXIT WHILE,
FOR, NEXT, TO, STEP, EXIT FOR, ON .. GOTO/GOSUB, SELECT, CASE.
Input and output
PRINT, INPUT, INKEY, PRINT, INPUTHEX, LCD, UPPERLINE, LOWERLINE,DISPLAY ON/OFF, CURSOR
ON/OFF/BLINK/NOBLINK, HOME, LOCATE, SHIFTLCD LEFT/RIGHT, SHIFTCURSOR LEFT/RIGHT, CLS,
DEFLCDCHAR, WAITKEY, INPUTBIN, PRINTBIN, OPEN, CLOSE, DEBOUNCE, SHIFTIN,
SHIFTOUT, GETATKBD, SPC, SERIN, SEROUT
AND, OR, XOR, INC, DEC, MOD, NOT, ABS, BCD, LOG, EXP, SQR, SIN,COS,TAN,ATN, ATN2, ASIN, ACOS, FIX, ROUND, MOD, SGN,
POWER, RAD2DEG, DEG2RAD, LOG10, TANH, SINH, COSH.
I2CSTART, I2CSTOP, I2CWBYTE, I2CRBYTE, I2CSEND and I2CRECEIVE.
1WWRITE, 1WREAD, 1WRESET, 1WIRECOUNT, 1WSEARCHFIRST, 1WSEARCHNEXT.
SPIINIT, SPIIN, SPIOUT, SPIMOVE.
ON INT0/INT1/TIMER0/TIMER1/SERIAL, RETURN, ENABLE, DISABLE, COUNTERx, CAPTUREx,
INTERRUPTS, CONFIG, START, LOAD.
SET, RESET, ROTATE, SHIFT, BITWAIT, TOGGLE.
DIM, BIT , BYTE , INTEGER , WORD, LONG, SINGLE, STRING , DEFBIT, DEFBYTE,
REM, ' , SWAP, END, STOP, CONST, DELAY, WAIT, WAITMS, GOTO, GOSUB, POWERDOWN, IDLE,
DECLARE, CALL, SUB, END SUB, MAKEDEC, MAKEBCD, INP,OUT, ALIAS, DIM , ERASE, DATA, READ,
RESTORE, INCR, DECR, PEEK, POKE, CPEEK, FUNCTION, READMAGCARD, BIN2GREY,
GREY2BIN, CRC8, CRC16, CHECKSUM.
$INCLUDE, $BAUD and $CRYSTAL, $SERIALINPUT, $SERIALOUTPUT, $RAMSIZE, $RAMSTART,
$DEFAULT XRAM, $ASM-$END ASM, $LCD, $EXTERNAL, $LIB.
STRING, SPACE, LEFT, RIGHT, MID, VAL, HEXVAL, LEN, STR, HEX, LTRIM, RTRIM,
TRIM, LCASE, UCASE, FORMAT, FUSING, INSTR.
And many other functions, statements and
To make a program takes just a few steps :
- Write the program in BASIC
- Compile it to fast machine binary code
- Test the result with the integrated simulator(with
additional hardware you can simulate the hardware too).
- Program the chip with one of the integrated programmers.
(hardware must be purchased separately)
The program can be written in a comfortable MDI color coded editor.
Besides the normal editing features, the editor supports Undo, Redo, Bookmarks and block
The simulator let you test your program before writing it to the uP.
You can watch variables, step through the program one line at the time or run to a
or you can alter variables.
To watch a variables value you can also point the mouse cursor over it.
uP TAB of simulator
A powerful feature is the hardware emulator, to emulate the LCD display, and the ports.
The LCD emulator also emulates custom build LCD characters!
It is simple to control
various graphical LCD displays.
You can even simulate the hardware ports with the special basmon monitor
When you are done with the simulator it is time to program the chip using one of the
supported programmer drivers.
The program, documentation and samples are in English.