JAL (compiler)
From Wikipedia, the free encyclopedia
JAL (Just Another Language) is a Pascal-like programming language and compiler that generates executable code for PIC microcontrollers. It is a free-format language for programming PIC microcontrollers and the compiler runs on Linux, Mac OS X, and MS-Windows. JAL is the only free-of-charge advanced language for PICs, and has a large and active international user base. It is configurable and extendable by use of libraries and can even be combined with assembler.
Contents |
[edit] History
It was originally created by Wouter van Ooijen, but was released as free software under the GNU General Public License in 2003. In 2006, Stef Mientki initiated the development of a brand new JAL version: V2. Kyle York is the programmer of this new version, and an international user group took care of the beta testing.[1]
[edit] 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
[edit] References
- ^ 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
[edit] Links
These are the basic links that will help you get started with JAL. For a selected range of PIC microcontrollers starterpacks are available that will get you up and running in minutes. For other PICs or other functionalities download additional libraries.
[edit] Books
- Dutch: PIC Microcontrollers, 50 projecten voor beginners en experts
- Dutch: Kunstmatige Intelligentie, breng uw microcontroller tot leven
- English: PIC Microcontrollers, 50 projects for beginners and experts
- Turkish: JAL ile PIC programlama
- Romanian: Microcontrolere Pentru Toti
[edit] User websites
This section may require cleanup to meet Wikipedia's quality standards. Please improve this article if you can (March 2008). |
Browse these websites to get an idea of JAL's possibilities.
- Watty http://www.wattystuff.net/tiki/tiki-index.php?page=PIC+Micro
- Stef http://pic.flappie.nl/
- Javi http://personal.telefonica.terra.es/web/japus/
- Vasile http://www.geocities.com/vsurducan/electro/PIC/pic.htm
- Joep http://home.westbrabant.net/~jsuijs/myrobots/MyRobots.html
- Sébastien http://sirbot.org/
- Olivier http://oca.memebot.com/picshell/
- Wouter http://www.voti.nl/e_index.html
- Bert http://members.home.nl/b.vandam/lonely/index.html
- Kyle http://www.casadeyork.com/jalv2/
- Rob http://www.robh.nl/
- Mike http://mikerey35475.tripod.com/index.html
- William http://jalethernet.com/
- Steven http://www.semifluid.com/?cat=4
- Andre http://www.100acre.org/elec/
- Sunish http://sunish.net/jaledit
- The Yahoo! Group http://tech.groups.yahoo.com/group/jallist