HOME

TheInfoList



OR:

{{Other uses of, JAL, JAL (disambiguation){{!JAL JAL (Just Another Language) is a Pascal-like
programming language A programming language is a system of notation for writing computer programs. Programming languages are described in terms of their Syntax (programming languages), syntax (form) and semantics (computer science), semantics (meaning), usually def ...
and
compiler In computing, a compiler is a computer program that Translator (computing), translates computer code written in one programming language (the ''source'' language) into another language (the ''target'' language). The name "compiler" is primaril ...
that generates executable code for
PIC microcontroller PIC (usually pronounced as /pɪk/) is a family of microcontrollers made by Microchip Technology, derived from the PIC1640 originally developed by General Instrument's Microelectronics Division. The name PIC initially referred to ''Peripher ...
s. It is a
free-format language In computer programming, a free-form language is a programming language in which the positioning of characters on the page in program text is insignificant. Program text does not need to be placed in specific columns as on old punched card syst ...
with a compiler that runs on Linux, MS-Windows and MS-DOS (OSX support). It is configurable and extendable through the use of libraries and can even be combined with PIC assembly language.


History

JAL was originally created by Wouter van Ooijen and released as
free software Free software, libre software, libreware sometimes known as freedom-respecting software is computer software distributed open-source license, under terms that allow users to run the software for any purpose as well as to study, change, distribut ...
under the
GNU General Public License The GNU General Public Licenses (GNU GPL or simply GPL) are a series of widely used free software licenses, or ''copyleft'' licenses, that guarantee end users the freedom to run, study, share, or modify the software. The GPL was the first ...
in 2003. In 2006, Stef Mientki initiated the development of a new version, JALV2, which was programmed by Kyle York and beta tested by an international user group.Beta testing by: Bert van Dam, Sunish Isaac, Dave Lagzdin, Javier Martinez, Stef Mientki, Wouter van Ooijen, Michael Reynolds, André Steenveld, Joep Suijs, Vasile Surducan, and Michael Watterson


Sample code

-- JAL 2.3 include 16f877_bert--define the variables var byte resist--define the pins pin_a0_direction = input--variable resistor pin_d7_direction = input--switch pin_c2_direction = output--pwm led--enable pulse width modulation PWM_init_frequency (true, true) forever loop--convert analog on a0 to digital resist = ADC_read_low_res(0) -- run measurement through flash memory program_eeprom_write(2000,resist) program_eeprom_read(2000,resist) -- run measurement through data memory data_eeprom_write(10,resist) data_eeprom_read(10,resist) -- if the switch is pressed return random value if pin_d7

high then resist = random_byte end if--send resistance to PC serial_sw_write(resist) delay_100ms(1) -- set actual PWM duty cycle PWM_Set_DutyCycle (resist, resist) end loop


References


External links


JALv2 Compiler home pageOpen Source JAL LibrariesJAL Homepage
Procedural programming languages Programming languages created in 2003