-
Notifications
You must be signed in to change notification settings - Fork 8
other_directives
The built-in #defines
are used to support the #IFDEF
command set are
as follows. The table also shows which #defines
are supported as
string in HSerPrint, SerPrint and other string related commands.
Directive | Description | Output Usage | Returns |
---|---|---|---|
|
String |
#IFDEF & Output commands |
The number of A/D inputs on the current chip |
|
Number |
#IFDEF & Output commands |
The number of Bytes in EEPROM memmory |
|
String |
#IFDEF & Output commands |
The number of general purpose IO pins |
|
String |
#IFDEF & Output commands |
The microcontroller clock speed |
|
Number |
#IFDEF Only |
The microcontroller type |
|
String |
#IFDEF & Output commands |
The microcontroller name |
|
Number |
#IFDEF & Output commands |
The number of microcontroller pins. |
|
Number |
#Scripts, #IFDEF & Output commands |
The value of the words reserved |
ChipProgrammerNameStr |
String |
Name of the chip type to be used by a programmer |
The psuedo microcontroller type |
|
Number |
#IFDEF & Output commands |
The RAM size |
|
Number |
#IFDEF & Output commands |
See the table below |
|
Number |
#IFDEF & Output commands |
The number of WORDS in Flash memmory |
|
Function |
Not applicable |
True if a register is declared (or false if not declared) in the currently specficied microcontroller’s .dat file. Var(register_name) |
|
Function |
Not applicable |
True if a register is NOT declared (or false if declared) in the currently specficied microcontroller’s .dat file. NoVar(register_name) |
|
Function |
Not applicable |
True if a bit is declared (or false if not declared) in the currently specficied microcontroller’s .dat file. Bit(bit_name) |
|
Function |
Not applicable |
True if a bit is NOT declared (or false if declared) in the currently specficied microcontroller’s .dat file. NoBit(bit_name) |
|
Function |
Not applicable |
True if all defines are declared:
|
|
Function |
Not applicable |
True if one of the defines is declared:
|
The table below shows two special directives that support the mapping for one variable or bit to anoher variable or bit. This is useful when creating portable code or libraries to ensure Great Cow BASIC
Directive | Explanation | Usage |
---|---|---|
#samebit |
The compiler checks each item in the list to see which ones are implemented on the current microcontroller. |
#samebit PLLEN, SPLLEN, SPLLMULT |
#samevar |
The compiler checks each item in the list to see which ones are implemented on the current microcontroller. |
#samevar CMCON, CMCON0, CMCONbob |
This table shows the ChipFamily constants mapped to the microcontroller architecture.
ChipFamily Value | Microcontroller Characteristics |
---|---|
100 | AVR core version V0E class microcontrollers |
110 | AVR core version V1E class microcontrollers |
120 | AVR core version V2E class microcontrollers |
121 | AVR core version AVR8L, also called AVRrc, reduced core class microcontrollers. ATTiny4-5-9-10 and ATTiny102-104 with only 16 GPR’s from r16-r31 and only 54 instructions. |
130 | AVR core version V3E class microcontrollers but essentially the mega32u6 only |
12 | Baseline devices. 12 Bit instruction set |
15 | Mid-range core devices. 14 Bit instruction set with enhanced instruction set class |
15 plus familyVariant=1 | Mid-range core devices. 14 Bit instruction set with enhanced instruction set and with large memory capability class |
16 | High end core devices. 16 Bit instruction set, memory addressing architecture and an extended instruction set. |