# print

Writes variables to output device

Author | Oliver "Kiste" Seitz, Copyright © 2011..2025, all rights reserved.
Adapted-by | Rob Hamerling, Rob Jansen
Compiler | 2.5r8

Description

    .
    Prints variables to output device, typically an lcd or a serial port
    Input variables: bit, byte, sbyte, word, sword, dword, sdword, float
    Output formats: decimal, hexadecimal, binary and some specials
    .
    For decimal output an arbitrary variable size supported.
    The user may define a constant with a positive value greater than one.
      const PRINT_MAX_VAR_SIZE
    before including this library to specify the highest variable size
    is required for his program.
    When not specified by the user a default of 4 is used, which means
    variables upto dword or sdword are supported.
    .
    Examples:
    .
    var sword bhl = -684
    .
    Print the signed word in decimal notation on an LCD
      print_sword_dec(lcd, bhl)
    will send "-684" to device 'lcd'
    .
    To send the same signed word to a serial port:
      print_sword_dec(serial_hw_data, bhl)
    .
    Specials:
    print_crlf(serial_hw_data) will send CR + LF to the device 'serial_hw_data'.
    .
    const byte str1[] = "JalLibWorld V1.0"
    print_string(lcd, str1) will display the string 'str' on an lcd.
    .
    . Note - the whole string - that is the length of the array -
    . is printed. When you use a variable array to construct strings,
    . you might want to terminate at a termination character like 0x00.
    . You can set this termination character with:
    . const byte print_string_terminator = 0x00
    . (or use a var if you want to change it at runtime.)

Notes

    .
    - This library replaces an older version which had no scalability.
      It should be compatible with the old library except for:
      * All procedures for binary output have been renamed to
        print_xxxx_bin() for name consistency with '_dec' and '_hex'.
      * print_bit_truefalse() has been renamed to print_bit_logic()
      * print_bit_highlow() has been renamed to print_bit_level()
      * print_bit_10() has been renamed to print_bit_bin()
      * For renamed procedures a procedure issuing a deprecation
        warning is provided for compatibility.
      * The procedure print_sword_fp_dec() has been dropped.
        For output of fixed point numbers use the format library.
      * Some procedures are added to print signed bytes, words and double
        words in binary and hexadecimal format (without sign!).

Dependencies

- jascii

## Summary

### Global variables/contants

- `var bit print_prefix = FALSE`
- `const PRINT_MAX_VAR_SIZE = 4`
- `var byte*PRINT_MAX_VAR_SIZE _print_dec_divisor`

### Procedures

- `print_sdword_bin(volatile byte out device, dword in data)`
- `print_maxsvar_dec(volatile byte out device, sbyte*PRINT_MAX_VAR_SIZE in data)`
- `print_nibble_binary(volatile byte out device, bit in data)`
- `print_dword_bin(volatile byte out device, dword in data)`
- `print_bit_bin(volatile byte out device, bit in data)`
- `print_byte_binary(volatile byte out device, byte in data)`
- `print_sbyte_dec(volatile byte out device, sbyte in data)`
- `print_sbyte_bin(volatile byte out device, sbyte in data)`
- `print_sword_dec(volatile byte out device, sword in data)`
- `print_word_dec(volatile byte out device, word in data)`
- `print_byte_bin(volatile byte out device, byte in data)`
- `print_bit_highlow(volatile byte out device, bit in data)`
- `print_sbyte_hex(volatile byte out device, sbyte in data)`
- `print_word_hex(volatile byte out device, word in data)`
- `print_float(volatile byte out device, float in data)`
- `print_bit_logic(volatile byte out device, bit in data)`
- `print_string(volatile byte out device, byte in str[])`
- `print_byte_dec(volatile byte out device, byte in data)`
- `print_byte_hex(volatile byte out device, byte in data)`
- `print_maxvar_dec(volatile byte out device, byte*PRINT_MAX_VAR_SIZE in data)`
- `print_bit_10(volatile byte out device, bit in data)`
- `print_sdword_hex(volatile byte out device, sdword in data)`
- `print_nibble_bin(volatile byte out device, byte in data)`
- `print_dword_binary(volatile byte out device, dword in data)`
- `print_crlf(volatile byte out device)`
- `print_sdword_dec(volatile byte out device, sdword in data)`
- `print_sword_hex(volatile byte out device, sword in data)`
- `print_sword_bin(volatile byte out device, sword in data)`
- `print_word_binary(volatile byte out device, word in data)`
- `print_dword_hex(volatile byte out device, dword in data)`
- `print_cls_ansi(volatile byte out device)`
- `print_word_bin(volatile byte out device, word in data)`
- `print_dword_dec(volatile byte out device, dword in data)`
- `print_bit_truefalse(volatile byte out device, bit in data)`
- `print_bit_level(volatile byte out device, bit in data)`

Private

- `_make_tenfold_divisor()`

### Functions

- `nibble2hex(bit*4 in nibble) return byte`

## API details

### Global variables/contants

- `var bit print_prefix = FALSE`

      Variable to indicate if formatted variables should have a prefix.
      When specified 'TRUE' the following prefixes will be part of the output:
       binary formats will be prefixed with '0b'
       hexadecimal formats will be prefixed with '0x'
       (decimal formats never have prefixes)

- `const PRINT_MAX_VAR_SIZE = 4`

      Constant to define the maximum supported variable size (in bytes)
      to be supported by this library.

- `var byte*PRINT_MAX_VAR_SIZE _print_dec_divisor`

      Global variable to determine number of decimal digits

### Procedures

- `print_sdword_bin(volatile byte out device, dword in data)`

      Title:     Print signed double word binary
      Arguments: - device name
       sdword (byte*4 variable)
      Returns:   nothing
      Notes:     Sign is ignored for binary format

- `print_maxsvar_dec(volatile byte out device, sbyte*PRINT_MAX_VAR_SIZE in data)`

      Title:     Print signed decimal value
      Arguments: - device name
       decimal variable (byte*PRINT_MAX_VAR_SIZE variable)
      Returns:   nothing

- `print_nibble_binary(volatile byte out device, bit in data)`

      Deprecated

- `print_dword_bin(volatile byte out device, dword in data)`

      Title:     Print unsigned double word binary
      Arguments: - device name
       dword (byte*4 variable)
      Returns:   nothing

- `print_bit_bin(volatile byte out device, bit in data)`

      Title:     Print binary value of a bit
      Arguments: - device name
       bit
      Returns:   nothing

- `print_byte_binary(volatile byte out device, byte in data)`

      Deprecated

- `print_sbyte_dec(volatile byte out device, sbyte in data)`

      Title:     Print unsigned byte decimal
      Arguments: - device name
       byte
      Returns:   nothing

- `print_sbyte_bin(volatile byte out device, sbyte in data)`

      Title:     Print signed byte binary
      Arguments: - device name
       sbyte
      Returns:   nothing
      Notes:     Sign is ignored for binary format

- `print_sword_dec(volatile byte out device, sword in data)`

      Title:     Print signed word decimal
      Arguments: - device name
       sword (sbyte*2 variable)
      Returns:   nothing

- `print_word_dec(volatile byte out device, word in data)`

      Title:     Print unsigned word decimal
      Arguments: - device name
       word (byte*2 variable)
      Returns:   nothing

- `print_byte_bin(volatile byte out device, byte in data)`

      Title:     Print unsigned byte binary
      Arguments: - device name
       byte
      Returns:   nothing

- `print_bit_highlow(volatile byte out device, bit in data)`

      Deprecated

- `print_sbyte_hex(volatile byte out device, sbyte in data)`

      Title:     Print signed byte hexadecimal
      Arguments: - device name
       sbyte
      Returns:   nothing
      Notes:     Sign is ignored for hexadecimal format

- `print_word_hex(volatile byte out device, word in data)`

      Title:     Print unsigned word hexadecimal
      Arguments: - device name
       word (byte*2 variable)
      Returns:   nothing

- `print_float(volatile byte out device, float in data)`

      Title:     Print float
      Arguments: - device name
       float
      Returns:   nothing
      Note:      results in [-]#.#######e[-]##
      Based on float to ascii in 'funcs'

- `print_bit_logic(volatile byte out device, bit in data)`

      Title:     Print logical value of a bit
      Arguments: - device name
       bit
      Returns:   nothing

- `print_string(volatile byte out device, byte in str[])`

      Title:     Print string
      Arguments: - device name
       string (array of bytes)
      Returns:   nothing

- `print_byte_dec(volatile byte out device, byte in data)`

      Title:     Print unsigned byte decimal
      Arguments: - device name
       byte
      Returns:   nothing

- `print_byte_hex(volatile byte out device, byte in data)`

      Title:     Print unsigned byte hexadecimal
      Arguments: - device name
       byte
      Returns:   nothing

- `print_maxvar_dec(volatile byte out device, byte*PRINT_MAX_VAR_SIZE in data)`

      Title:     Print unsigned decimal value
      Arguments: - device name
       decimal variable (byte*PRINT_MAX_VAR_SIZE variable)
      Returns:   nothing

- `print_bit_10(volatile byte out device, bit in data)`

      Deprecated

- `print_sdword_hex(volatile byte out device, sdword in data)`

      Title:     Print signed double word hexadecimal
      Arguments: - device name
       sdword (sbyte*4 variable)
      Returns:   nothing
      Notes:     Sign is ignored for hexadecimal format

- `print_nibble_bin(volatile byte out device, byte in data)`

      Title:     Print nibble binary
      Arguments: - device name
       nibble (bit*4 variable)
      Returns:   nothing

- `print_dword_binary(volatile byte out device, dword in data)`

      Deprecated

- `print_crlf(volatile byte out device)`

      Title:     Print Carriage Return + LineFeed
      Arguments: - device name
      Returns:   nothing

- `print_sdword_dec(volatile byte out device, sdword in data)`

      Title:     Print signed double word decimal
      Arguments: - device name
       sdword (sbyte*4 variable)
      Returns:   nothing

- `print_sword_hex(volatile byte out device, sword in data)`

      Title:     Print signed word hexadecimal
      Arguments: - device name
       sword (sbyte*2 variable)
      Returns:   nothing
      Notes:     Sign is ignored for hexadecimal format

- `print_sword_bin(volatile byte out device, sword in data)`

      Title:     Print signed word binary
      Arguments: - device name
       sword (byte*2 variable)
      Returns:   nothing
      Notes:     Sign is ignored for binary format

- `print_word_binary(volatile byte out device, word in data)`

      Deprecated

- `print_dword_hex(volatile byte out device, dword in data)`

      Title:     Print unsigned double word hexadecimal
      Arguments: - device name
       dword (byte*4 variable)
      Returns:   nothing

- `print_cls_ansi(volatile byte out device)`

      Title:     Clear screen on ANSI-compatible terminals
      Arguments: - device name
      Returns:   nothing

- `print_word_bin(volatile byte out device, word in data)`

      Title:     Print unsigned word binary
      Arguments: - device name
       word (byte*2 variable)
      Returns:   nothing

- `print_dword_dec(volatile byte out device, dword in data)`

      Title:     Print unsigned double word decimal
      Arguments: - device name
       dword (byte*4 variable)
      Returns:   nothing

- `print_bit_truefalse(volatile byte out device, bit in data)`

      Deprecated

- `print_bit_level(volatile byte out device, bit in data)`

      Title:     Print voltage level of a bit
      Arguments: - device name
       bit
      Returns:   nothing

Private

- `_make_tenfold_divisor()`

      Title:     Multiply _print_dec_divisor by 10
      Arguments: none
      Returns:   nothing
      Notes:     Used to determine the number of decimal digits

### Functions

- `nibble2hex(bit*4 in nibble) return byte`

      Title:     Convert nibble to hexadecimal digit (ASCII printable)
      Arguments: nibble (bit*4 variable)
      Returns:   byte

## Related samples

Here are the list of samples which use this library:

12f615 | 12f615_print_large_number2.jal
16f13115 | 16f13115_vl53l0x_continuous.jal
16f1455 | 16f1455_usb_serial.jal
16f1455 | 16f1455_usb_hid_generic.jal
16f1455 | 16f1455_tutorial_usb_serial.jal
16f1455 | 16f1455_usb_hid_mouse.jal
16f15325 | 16f15325_bluetooth_hc06_slave.jal
16f15325 | 16f15325_adc.jal
16f15325 | 16f15325_stopwatch.jal
16f15325 | 16f15325_stopwatch2.jal
16f15325 | 16f15325_bluetooth_hc05_master.jal
16f1708 | 16f1708_pps_serial_hw_int_cts.jal
16f1823 | 16f1823_i2c_hw_eeprom_serial.jal
16f1823 | 16f1823_serial_hardware.jal
16f1825 | 16f1825_as5600l.jal
16f1825 | 16f1825_dcf77_decoder_ssd1306.jal
16f1825 | 16f1825_si5351a.jal
16f1825 | 16f1825_ina3221.jal
16f1825 | 16f1825_rda5807m.jal
16f1825 | 16f1825_rtc_ds3231.jal
16f1825 | 16f1825_nec_rc_decoder_serial.jal
16f1825 | 16f1825_vl53l0x_single.jal
16f1825 | 16f1825_vl53l0x_continuous.jal
16f1825 | 16f1825_philips_rc_decoder_ssd1306.jal
16f1825 | 16f1825_philips_rc_decoder_serial.jal
16f1825 | 16f1825_gps_neo_6m_ssd1306_clock.jal
16f1825 | 16f1825_nec_rc_decoder_ssd1306.jal
16f1825 | 16f1825_nrf905.jal
16f1825 | 16f1825_large_array.jal
16f1825 | 16f1825_mcp23s08.jal
16f1825 | 16f1825_gps_neo_6m_serial.jal
16f1825 | 16f1825_bmp180.jal
16f1825 | 16f1825_mcp23008.jal
16f1825 | 16f1825_nrf24l01.jal
16f1825 | 16f1825_dcf77_decoder_serial.jal
16f1825 | 16f1825_glcd_ssd1306_font.jal
16f1825 | 16f1825_hcsr04_serial.jal
16f18323 | 16f18323_adc.jal
16f18325 | 16f18325_i2c_hw_l0.jal
16f18325 | 16f18325_i2c_hw2_l0.jal
16f18425 | 16f18425_i2c_hw2_l0.jal
16f18425 | 16f18425_i2c_hw_l0.jal
16f18855 | 16f18855_pps_serial_hw_int_cts.jal
16f18857 | 16f18857_touch_interrupt_ads7843.jal
16f18857 | 16f18857_adc.jal
16f18857 | 16f18857_si5351a.jal
16f18857 | 16f18857_philips_rc_decoder_serial.jal
16f18857 | 16f18857_glcd_ssd1306_font_graphics.jal
16f18857 | 16f18857_glcd_ili9341.jal
16f18857 | 16f18857_touch_ads7843.jal
16f18857 | 16f18857_nec_rc_decoder_serial.jal
16f18857 | 16f18857_glcd_ili9341_fat32_sd_card.jal
16f19176 | 16f19176_esp8266_web_client.jal
16f19176 | 16f19176_dfplayer.jal
16f19176 | 16f19176_esp8266_web_server.jal
16f19176 | 16f19176_esp8266_tcp_server.jal
16f19176 | 16f19176_esp8266_tcp_server_led.jal
16f19176 | 16f19176_serial_hardware2.jal
16f19176 | 16f19176_serial_hw2_int_cts.jal
16f19176 | 16f19176_esp8266_connect.jal
16f19176 | 16f19176_esp8266_web_server_led.jal
16f19176 | 16f19176_serial_hardware.jal
16f19176 | 16f19176_serial_hw_int_cts.jal
16f1947 | 16f1947_serial_hw2_int_cts.jal
16f1947 | 16f1947_serial_hardware2.jal
16f648a | 16f648a_serial_hw_int_cts.jal
16f648a | 16f648a_serial_print.jal
16f648a | 16f648a_keyboard.jal
16f648a | 16f648a_i2c_sw_l1.jal
16f648a | 16f648a_queue.jal
16f648a | 16f648a_sirc.jal
16f648a | 16f648a_print_large_number.jal
16f648a | 16f648a_lcd_dsm0822a.jal
16f648a | 16f648a_startersguide.jal
16f648a | 16f648a_backlight.jal
16f648a | 16f648a_lcd_hd44780_pcf8574.jal
16f648a | 16f648a_stopwatch.jal
16f648a | 16f648a_lcd_hd44780_4bit.jal
16f648a | 16f648a_random.jal
16f648a | 16f648a_serial_hardware.jal
16f648a | 16f648a_ds18b20_single.jal
16f648a | 16f648a_sqrt.jal
16f648a | 16f648a_i2c_sw_l0.jal
16f688 | 16f688_big_calendar.jal
16f723 | 16f723_serial_print.jal
16f723 | 16f723_i2c_hw_slave_eeprom_simulator.jal
16f723 | 16f723_lcd_hd44780_pcf8574.jal
16f723 | 16f723_stopwatch.jal
16f723 | 16f723_startersguide.jal
16f723 | 16f723_serial_hardware.jal
16f723 | 16f723_keyboard.jal
16f723 | 16f723_queue.jal
16f723 | 16f723_sqrt.jal
16f723 | 16f723_i2c_sw_l0.jal
16f723 | 16f723_sirc.jal
16f723 | 16f723_lcd_dsm0822a.jal
16f723 | 16f723_i2c_hw_slave_msg.jal
16f723 | 16f723_adc_independent.jal
16f723 | 16f723_random.jal
16f723 | 16f723_serial_hw_int_cts.jal
16f723 | 16f723_i2c_sw_l1.jal
16f73 | 16f73_keyboard.jal
16f73 | 16f73_lcd_dsm0822a.jal
16f73 | 16f73_serial_hardware.jal
16f73 | 16f73_temperature_tc77.jal
16f73 | 16f73_adc_dependent.jal
16f73 | 16f73_i2c_hw_slave_msg.jal
16f73 | 16f73_stopwatch.jal
16f73 | 16f73_sirc.jal
16f73 | 16f73_startersguide.jal
16f73 | 16f73_i2c_hw_slave_eeprom_simulator.jal
16f73 | 16f73_serial_print.jal
16f73 | 16f73_sqrt.jal
16f73 | 16f73_serial_hw_int_cts.jal
16f73 | 16f73_random.jal
16f73 | 16f73_lcd_hd44780_pcf8574.jal
16f73 | 16f73_queue.jal
16f73 | 16f73_serial_software.jal
16f73 | 16f73_i2c_sw_l0.jal
16f73 | 16f73_i2c_sw_l1.jal
16f767 | 16f767_pwm_adc.jal
16f819 | 16f819_ee25aa02e48_lcd.jal
16f819 | 16f819_mcp2515_canid4_monitor.jal
16f819 | 16f819_mcp2515_can_monitor.jal
16f876a | 16f876a_tc77.jal
16f876a | 16f876a_co2_t6603.jal
16f876a | 16f876a_rtc_timeset.jal
16f876a | 16f876a_keyboard_lcd.jal
16f876a | 16f876a_humidity_sht.jal
16f876a | 16f876a_adc.jal
16f876a | 16f876a_rtc_lcd.jal
16f877 | 16f877_temperature_tc77.jal
16f877 | 16f877_servo_rc_slave.jal
16f877 | 16f877_serial_hw_int_cts.jal
16f877 | 16f877_serial_print.jal
16f877 | 16f877_queue.jal
16f877 | 16f877_startersguide.jal
16f877 | 16f877_fat32_small_pata_hard_disk.jal
16f877 | 16f877_i2c_hw_slave_msg.jal
16f877 | 16f877_random.jal
16f877 | 16f877_lcd_dsm0822a.jal
16f877 | 16f877_adc_dependent.jal
16f877 | 16f877_lcd_hd44780_4bit.jal
16f877 | 16f877_print_large_number.jal
16f877 | 16f877_keyboard.jal
16f877 | 16f877_serial_software.jal
16f877 | 16f877_pata_hard_disk.jal
16f877 | 16f877_slip_isr.jal
16f877 | 16f877_i2c_sw_l1.jal
16f877 | 16f877_sqrt.jal
16f877 | 16f877_serial_hardware.jal
16f877 | 16f877_i2c_sw_l0.jal
16f877 | 16f877_i2c_hw_l1.jal
16f877 | 16f877_i2c_hw_l0.jal
16f877 | 16f877_stopwatch.jal
16f877 | 16f877_backlight.jal
16f877 | 16f877_i2c_hw_slave_eeprom_simulator.jal
16f877 | 16f877_lcd_hd44780_pcf8574.jal
16f877 | 16f877_adc.jal
16f877 | 16f877_sirc.jal
16f877 | 16f877_slip_poll.jal
16f877 | 16f877_ds18b20_single.jal
16f877a | 16f877a_lcd_hd44780_pcf8574.jal
16f877a | 16f877a_23k256.jal
16f877a | 16f877a_backlight.jal
16f877a | 16f877a_rtc_lcd.jal
16f877a | 16f877a_nec_rc_decoder_serial.jal
16f877a | 16f877a_glcd_t6963.jal
16f877a | 16f877a_pata_hard_disk.jal
16f877a | 16f877a_ds1307_sw.jal
16f877a | 16f877a_serial_software.jal
16f877a | 16f877a_serial_print.jal
16f877a | 16f877a_i2c_hw_l0.jal
16f877a | 16f877a_sirc.jal
16f877a | 16f877a_serial_hw_int_cts.jal
16f877a | 16f877a_i2c_sw_l0.jal
16f877a | 16f877a_rtc_timeset.jal
16f877a | 16f877a_ds1307_hw.jal
16f877a | 16f877a_glcd_ks0108.jal
16f877a | 16f877a_rtc_pcf8563.jal
16f877a | 16f877a_i2c_hw_slave_msg.jal
16f877a | 16f877a_i2c_hw_l1.jal
16f877a | 16f877a_keyboard.jal
16f877a | 16f877a_startersguide.jal
16f877a | 16f877a_lcd_dsm0822a.jal
16f877a | 16f877a_i2c_hw_slave_eeprom_simulator.jal
16f877a | 16f877a_adc_dependent.jal
16f877a | 16f877a_sqrt.jal
16f877a | 16f877a_servo_rc_slave.jal
16f877a | 16f877a_keyboard_lcd.jal
16f877a | 16f877a_philips_rc_decoder_serial.jal
16f877a | 16f877a_i2c_sw_l1.jal
16f877a | 16f877a_co2_t6603.jal
16f877a | 16f877a_print_large_number.jal
16f877a | 16f877a_temperature_tc77.jal
16f877a | 16f877a_queue.jal
16f877a | 16f877a_servo_rc_master.jal
16f877a | 16f877a_serial_hardware.jal
16f877a | 16f877a_stopwatch.jal
16f877a | 16f877a_random.jal
16f877a | 16f877a_lcd_hd44780_4bit.jal
16f877a | 16f877a_fat32_small_pata_hard_disk.jal
16f877a | 16f877a_slip_poll.jal
16f877a | 16f877a_ds18b20_single.jal
16f877a | 16f877a_slip_isr.jal
16f88 | 16f88_temperature_tc77.jal
16f88 | 16f88_keyboard.jal
16f88 | 16f88_lcd_hd44780_pcf8574.jal
16f88 | 16f88_sirc.jal
16f88 | 16f88_adc_lowres.jal
16f88 | 16f88_lcd_hd44780_4bit.jal
16f88 | 16f88_sqrt.jal
16f88 | 16f88_serial_hw_int_cts.jal
16f88 | 16f88_i2c_sw_l0.jal
16f88 | 16f88_ds18b20_single.jal
16f88 | 16f88_backlight.jal
16f88 | 16f88_random.jal
16f88 | 16f88_stopwatch.jal
16f88 | 16f88_remember_me.jal
16f88 | 16f88_i2c_hw_slave_msg.jal
16f88 | 16f88_queue.jal
16f88 | 16f88_adc_highres.jal
16f88 | 16f88_serial_print.jal
16f88 | 16f88_i2c_hw_slave_eeprom_simulator.jal
16f88 | 16f88_startersguide.jal
16f88 | 16f88_print_large_number.jal
16f88 | 16f88_i2c_sw_l1.jal
16f88 | 16f88_serial_software.jal
16f88 | 16f88_adc_independent.jal
16f88 | 16f88_serial_hardware.jal
16f88 | 16f88_lcd_dsm0822a.jal
16f886 | 16f886_rtc_lcd_4mhz.jal
16f886 | 16f886_math.jal
16f886 | 16f886_pwm_adc_freq.jal
16f886 | 16f886_pwm_adc_res.jal
16f886 | 16f886_rtc_lcd_125khz.jal
16f886 | 16f886_rtc_lcd_20mhz.jal
18f14k50 | 18f14k50_random.jal
18f14k50 | 18f14k50_usb_hid_mouse.jal
18f14k50 | 18f14k50_lcd_dsm0822a.jal
18f14k50 | 18f14k50_lcd_hd44780_pcf8574.jal
18f14k50 | 18f14k50_i2c_sw_l0.jal
18f14k50 | 18f14k50_serial_print.jal
18f14k50 | 18f14k50_print_large_number.jal
18f14k50 | 18f14k50_usb_bootloader.jal
18f14k50 | 18f14k50_i2c_hw_l0.jal
18f14k50 | 18f14k50_stopwatch.jal
18f14k50 | 18f14k50_i2c_sw_l1.jal
18f14k50 | 18f14k50_i2c_hw_l1.jal
18f14k50 | 18f14k50_startersguide.jal
18f14k50 | 18f14k50_i2c_hw_slave_eeprom_simulator.jal
18f14k50 | 18f14k50_usb_hid_generic.jal
18f14k50 | 18f14k50_sqrt.jal
18f14k50 | 18f14k50_i2c_hw_slave_msg.jal
18f14k50 | 18f14k50_queue.jal
18f14k50 | 18f14k50_serial_hw_int_cts.jal
18f14k50 | 18f14k50_usb_bootloader_autostart.jal
18f14k50 | 18f14k50_adc_independent.jal
18f14k50 | 18f14k50_usb_serial.jal
18f14k50 | 18f14k50_temperature_tc77.jal
18f14k50 | 18f14k50_serial_hardware.jal
18f14k50 | 18f14k50_keyboard.jal
18f14k50 | 18f14k50_pll.jal
18f15q40 | 18f15q40_memory_pointer.jal
18f15q40 | 18f15q40_dma_glcd_ili9341.jal
18f15q40 | 18f15q40_stopwatch.jal
18f15q40 | 18f15q40_spi2.jal
18f15q40 | 18f15q40_spi.jal
18f15q40 | 18f15q40_mcp23s08.jal
18f15q40 | 18f15q40_dma_usart.jal
18f16q20 | 18f16q20_serial_hardware.jal
18f16q40 | 18f16q40_serial_hw3_int_cts.jal
18f16q40 | 18f16q40_serial_hardware3.jal
18f2450 | 18f2450_usb_bootloader_autostart.jal
18f2450 | 18f2450_lcd_hd44780_pcf8574.jal
18f2450 | 18f2450_usb_bootloader.jal
18f2450 | 18f2450_lcd_hd44780_4bit.jal
18f2450 | 18f2450_adc_dependent.jal
18f2450 | 18f2450_usb_serial.jal
18f2450 | 18f2450_serial_print.jal
18f2450 | 18f2450_print_large_number.jal
18f2450 | 18f2450_random.jal
18f2450 | 18f2450_startersguide.jal
18f2450 | 18f2450_lcd_dsm0822a.jal
18f2450 | 18f2450_keyboard.jal
18f2450 | 18f2450_ds18b20_single.jal
18f2450 | 18f2450_serial_hardware.jal
18f2450 | 18f2450_queue.jal
18f2450 | 18f2450_sirc.jal
18f2450 | 18f2450_i2c_sw_l0.jal
18f2450 | 18f2450_usb_hid_mouse.jal
18f2450 | 18f2450_stopwatch.jal
18f2450 | 18f2450_usb_hid_generic.jal
18f2450 | 18f2450_sqrt.jal
18f2450 | 18f2450_serial_hw_int_cts.jal
18f2450 | 18f2450_i2c_sw_l1.jal
18f2520 | 18f2520_i2c_hw_l0.jal
18f2520 | 18f2520_random.jal
18f2520 | 18f2520_lcd_dsm0822a.jal
18f2520 | 18f2520_queue.jal
18f2520 | 18f2520_temperature_tc77.jal
18f2520 | 18f2520_i2c_hw_slave_eeprom_simulator.jal
18f2520 | 18f2520_serial_hw_int_cts.jal
18f2520 | 18f2520_keyboard.jal
18f2520 | 18f2520_i2c_hw_l1.jal
18f2520 | 18f2520_adc_dependent.jal
18f2520 | 18f2520_stopwatch.jal
18f2520 | 18f2520_lcd_hd44780_pcf8574.jal
18f2520 | 18f2520_i2c_sw_l0.jal
18f2520 | 18f2520_print_large_number.jal
18f2520 | 18f2520_startersguide.jal
18f2520 | 18f2520_i2c_hw_slave_msg.jal
18f2520 | 18f2520_sqrt.jal
18f2520 | 18f2520_serial_print.jal
18f2520 | 18f2520_serial_hardware.jal
18f2520 | 18f2520_i2c_sw_l1.jal
18f2520 | 18f2520_sirc.jal
18f2550 | 18f2550_lcd_dsm0822a.jal
18f2550 | 18f2550_i2c_hw_slave_msg.jal
18f2550 | 18f2550_serial_hw_int_cts.jal
18f2550 | 18f2550_startersguide.jal
18f2550 | 18f2550_keyboard.jal
18f2550 | 18f2550_sqrt.jal
18f2550 | 18f2550_sirc.jal
18f2550 | 18f2550_i2c_hw_l0.jal
18f2550 | 18f2550_temperature_tc77.jal
18f2550 | 18f2550_usb_bootloader_autostart.jal
18f2550 | 18f2550_usb_serial.jal
18f2550 | 18f2550_queue.jal
18f2550 | 18f2550_i2c_hw_l1.jal
18f2550 | 18f2550_serial_print.jal
18f2550 | 18f2550_usb_hid_mouse.jal
18f2550 | 18f2550_i2c_sw_l0.jal
18f2550 | 18f2550_i2c_sw_l1.jal
18f2550 | 18f2550_usb_hid_generic.jal
18f2550 | 18f2550_i2c_hw_slave_eeprom_simulator.jal
18f2550 | 18f2550_print_large_number.jal
18f2550 | 18f2550_adc_dependent.jal
18f2550 | 18f2550_lcd_hd44780_pcf8574.jal
18f2550 | 18f2550_random.jal
18f2550 | 18f2550_stopwatch.jal
18f2550 | 18f2550_serial_hardware.jal
18f2580 | 18f2580_rtc_ds1302_glcd.jal
18f2585 | 18f2585_can_serial_hw.jal
18f2585 | 18f2585_1wire_ds1820.jal
18f2585 | 18f2585_canid4_monitor.jal
18f2585 | 18f2585_canid4_serial_adapter.jal
18f2585 | 18f2585_can_monitor.jal
18f2585 | 18f2585_can_serial_adapter.jal
18f25j10 | 18f25j10_test_mlx90615.jal
18f25k22 | 18f25k22_eusart2.jal
18f25k22 | 18f25k22_lcd_one_dot_matrix.jal
18f25k22 | 18f25k22_adc.jal
18f25k50 | 18f25k50_usb_serial.jal
18f2620 | 18f2620_lcd_hd44780_pcf8574.jal
18f2620 | 18f2620_queue.jal
18f2620 | 18f2620_serial_hw_int_cts.jal
18f2620 | 18f2620_sirc.jal
18f2620 | 18f2620_startersguide.jal
18f2620 | 18f2620_i2c_sw_l0.jal
18f2620 | 18f2620_lcd_dsm0822a.jal
18f2620 | 18f2620_adc_dependent.jal
18f2620 | 18f2620_i2c_hw_slave_eeprom_simulator.jal
18f2620 | 18f2620_i2c_hw_l0.jal
18f2620 | 18f2620_rtc_tmr3.jal
18f2620 | 18f2620_serial_hardware.jal
18f2620 | 18f2620_serial_print.jal
18f2620 | 18f2620_i2c_hw_l1.jal
18f2620 | 18f2620_i2c_hw_slave_msg.jal
18f2620 | 18f2620_random.jal
18f2620 | 18f2620_keyboard.jal
18f2620 | 18f2620_sqrt.jal
18f2620 | 18f2620_temperature_tc77.jal
18f2620 | 18f2620_i2c_sw_l1.jal
18f2620 | 18f2620_stopwatch.jal
18f2620 | 18f2620_print_large_number.jal
18f2685 | 18f2685_math.jal
18f26j11 | 18f26j11_rtcc_hw_kbd_lcd.jal
18f26j50 | 18f26j50_fat32_sd_card.jal
18f26j50 | 18f26j50_sd_card.jal
18f26j50 | 18f26j50_pps_rx2tx2.jal
18f26k42 | 18f26k42_serial_hw_int_cts.jal
18f26k42 | 18f26k42_serial_hardware.jal
18f26k42 | 18f26k42_serial_hw2_int_cts.jal
18f26k42 | 18f26k42_serial_hardware2.jal
18f27j53 | 18f27j53_dht11.jal
18f27j53 | 18f27j53_sd_card_minix_readi.jal
18f27j53 | 18f27j53_xbee_api_rx.jal
18f27j53 | 18f27j53_pps_rx2tx2.jal
18f27j53 | 18f27j53_sd_card_minix_demo.jal
18f27j53 | 18f27j53_xbee_api_tx.jal
18f27j53 | 18f27j53_sd_card_minix_read.jal
18f452 | 18f452_serial_print.jal
18f452 | 18f452_pata_hard_disk.jal
18f452 | 18f452_i2c_sw_l1.jal
18f452 | 18f452_23k256.jal
18f452 | 18f452_sd_card.jal
18f452 | 18f452_lcd_hd44780_pcf8574.jal
18f452 | 18f452_i2c_sw_l0.jal
18f452 | 18f452_sirc.jal
18f452 | 18f452_ds18b20_single.jal
18f452 | 18f452_startersguide.jal
18f452 | 18f452_fat32_small_sd_card.jal
18f452 | 18f452_queue.jal
18f452 | 18f452_serial_hardware.jal
18f452 | 18f452_i2c_hw_l1.jal
18f452 | 18f452_servo_rc_master.jal
18f452 | 18f452_stopwatch.jal
18f452 | 18f452_print_large_number.jal
18f452 | 18f452_i2c_hw_slave_msg.jal
18f452 | 18f452_random.jal
18f452 | 18f452_backlight.jal
18f452 | 18f452_i2c_hw_l0.jal
18f452 | 18f452_pressure.jal
18f452 | 18f452_keyboard.jal
18f452 | 18f452_temperature_tc77.jal
18f452 | 18f452_lcd_dsm0822a.jal
18f452 | 18f452_lcd_hd44780_4bit.jal
18f452 | 18f452_serial_hw_int_cts.jal
18f452 | 18f452_sqrt.jal
18f452 | 18f452_fat32_small_pata_hard_disk.jal
18f452 | 18f452_adc_dependent.jal
18f452 | 18f452_i2c_hw_slave_eeprom_simulator.jal
18f452 | 18f452_serial_software.jal
18f452 | 18f452_servo_rc_slave.jal
18f4525 | 18f4525_mp3_decoder_vs1053b_pata_hard_disk.jal
18f4525 | 18f4525_fat32_small_pata_hard_disk.jal
18f4525 | 18f4525_slip_poll.jal
18f4525 | 18f4525_slip_isr.jal
18f4525 | 18f4525_mp3_decoder_vs1053b_sd_card.jal
18f4525 | 18f4525_fat32_sd_card.jal
18f4525 | 18f4525_pata_hard_disk.jal
18f4525 | 18f4525_servo_rc_slave.jal
18f4525 | 18f4525_fat32_pata_hard_disk.jal
18f4525 | 18f4525_sd_card.jal
18f4525 | 18f4525_fat32_small_sd_card.jal
18f4550 | 18f4550_lcd_dsm0822a.jal
18f4550 | 18f4550_lcd_hd44780_4bit.jal
18f4550 | 18f4550_dynamic_adc.jal
18f4550 | 18f4550_ir2serial.jal
18f4550 | 18f4550_startersguide.jal
18f4550 | 18f4550_adc_dependent.jal
18f4550 | 18f4550_temperature_tc77.jal
18f4550 | 18f4550_sqrt.jal
18f4550 | 18f4550_i2c_hw_slave_eeprom_simulator.jal
18f4550 | 18f4550_usb_hid_mouse.jal
18f4550 | 18f4550_slip_poll_usb.jal
18f4550 | 18f4550_slip_poll.jal
18f4550 | 18f4550_random.jal
18f4550 | 18f4550_i2c_hw_l1.jal
18f4550 | 18f4550_stopwatch.jal
18f4550 | 18f4550_glcd_nokia_5110_sprite.jal
18f4550 | 18f4550_queue.jal
18f4550 | 18f4550_adc.jal
18f4550 | 18f4550_usb_hid_generic.jal
18f4550 | 18f4550_sirc.jal
18f4550 | 18f4550_servo_rc_slave.jal
18f4550 | 18f4550_glcd_nokia_5110_image.jal
18f4550 | 18f4550_usb_serial.jal
18f4550 | 18f4550_serial_hardware.jal
18f4550 | 18f4550_lcd_hd44780_pcf8574.jal
18f4550 | 18f4550_keyboard.jal
18f4550 | 18f4550_glcd_nokia_5110_pixel.jal
18f4550 | 18f4550_usb_bootloader_autostart.jal
18f4550 | 18f4550_i2c_sw_l0.jal
18f4550 | 18f4550_serial_hw_int_cts.jal
18f4550 | 18f4550_temperature_max6675.jal
18f4550 | 18f4550_serial_software.jal
18f4550 | 18f4550_ds18b20_single.jal
18f4550 | 18f4550_sd_card.jal
18f4550 | 18f4550_fat32_small_sd_card.jal
18f4550 | 18f4550_usb_bootloader.jal
18f4550 | 18f4550_glcd_nokia_5110_font.jal
18f4550 | 18f4550_large_array.jal
18f4550 | 18f4550_i2c_sw_l1.jal
18f4550 | 18f4550_print_large_number.jal
18f4550 | 18f4550_slip_isr.jal
18f4550 | 18f4550_i2c_hw_slave_msg.jal
18f4550 | 18f4550_i2c_hw_l0.jal
18f4550 | 18f4550_23k256.jal
18f4550 | 18f4550_serial_print.jal
18f4550 | 18f4550_glcd_nokia_5110_gfx.jal
18f4585 | 18f4585_canid4_monitor.jal
18f4620 | 18f4620_slip_poll.jal
18f4620 | 18f4620_mp3_decoder_vs1053b_sd_card.jal
18f4620 | 18f4620_lcd_hd44780_pcf8574.jal
18f4620 | 18f4620_spi_to_serial.jal
18f4620 | 18f4620_24lc256.jal
18f4620 | 18f4620_network_tcp_client.jal
18f4620 | 18f4620_startersguide.jal
18f4620 | 18f4620_i2c_hw_l1.jal
18f4620 | 18f4620_network_all_in_one.jal
18f4620 | 18f4620_i2c_sw_l1.jal
18f4620 | 18f4620_i2c_hw_slave_msg.jal
18f4620 | 18f4620_temperature_tc77.jal
18f4620 | 18f4620_interrupt_on_change_pin_b0.jal
18f4620 | 18f4620_quadrature_counter_ls7366r.jal
18f4620 | 18f4620_sirc.jal
18f4620 | 18f4620_i2c_hw_l0.jal
18f4620 | 18f4620_serial_print.jal
18f4620 | 18f4620_sd_card.jal
18f4620 | 18f4620_queue.jal
18f4620 | 18f4620_servo_rc_slave.jal
18f4620 | 18f4620_network_ping.jal
18f4620 | 18f4620_spi_slave_hw.jal
18f4620 | 18f4620_freq_counter_osc_in.jal
18f4620 | 18f4620_servo_rc_master.jal
18f4620 | 18f4620_serial_hw_int_cts.jal
18f4620 | 18f4620_serial_hardware.jal
18f4620 | 18f4620_i2c_hw_slave_eeprom_simulator.jal
18f4620 | 18f4620_transceiver_cc1101.jal
18f4620 | 18f4620_network_tcp_server.jal
18f4620 | 18f4620_stopwatch.jal
18f4620 | 18f4620_lcd_dsm0822a.jal
18f4620 | 18f4620_pata_hard_disk.jal
18f4620 | 18f4620_freq_counter_timer_in.jal
18f4620 | 18f4620_network_udp_server.jal
18f4620 | 18f4620_serial_software.jal
18f4620 | 18f4620_i2c_sw_l0.jal
18f4620 | 18f4620_network_webserver_enc28j60.jal
18f4620 | 18f4620_keyboard.jal
18f4620 | 18f4620_fat32_small_sd_card.jal
18f4620 | 18f4620_ps2_keyboard.jal
18f4620 | 18f4620_motor_hbridge.jal
18f4620 | 18f4620_slip_isr.jal
18f4620 | 18f4620_accelerometer_gyroscope_bmi160.jal
18f4620 | 18f4620_fat32_sd_card.jal
18f4620 | 18f4620_fat32_pata_hard_disk.jal
18f4620 | 18f4620_sqrt.jal
18f4620 | 18f4620_fat32_small_pata_hard_disk.jal
18f4620 | 18f4620_print_large_number.jal
18f4620 | 18f4620_network_udp_client.jal
18f4620 | 18f4620_adc_dependent.jal
18f4620 | 18f4620_mp3_decoder_vs1053b_pata_hard_disk.jal
18f4620 | 18f4620_random.jal
18f46k22 | 18f46k22_slip_poll.jal
18f46k22 | 18f46k22_slip_isr.jal
18f46q10 | 18f46q10_glcd_ili9341_font.jal
18f47q43 | 18f47q43_serial_hardware2.jal
18f47q43 | 18f47q43_serial_hardware3.jal
18f47q43 | 18f47q43_serial_hardware.jal
18f47q43 | 18f47q43_serial_hw2_int_cts.jal
18f47q43 | 18f47q43_serial_hw3_int_cts.jal
18f47q43 | 18f47q43_serial_hw_int_cts.jal
18f47q43 | 18f47q43_serial_software.jal
18f6310 | 18f6310_glcd_ks0108.jal
18f6310 | 18f6310_glcd_ks0108_math.jal
18f6722 | 18f6722_serial_hardware2.jal
18f6722 | 18f6722_serial_hw2_int_cts.jal
18f67j50 | 18f67j50_crc16_ccitt_bitwise.jal
18f67j50 | 18f67j50_random.jal
18f67j50 | 18f67j50_fat32_usb_msd_sd_card.jal
18f67j50 | 18f67j50_i2c_sw_l1.jal
18f67j50 | 18f67j50_fat32_small_sd_card.jal
18f67j50 | 18f67j50_lcd_hd44780_pcf8574.jal
18f67j50 | 18f67j50_stopwatch.jal
18f67j50 | 18f67j50_serial_software.jal
18f67j50 | 18f67j50_spi.jal
18f67j50 | 18f67j50_serial_hardware.jal
18f67j50 | 18f67j50_serial_print.jal
18f67j50 | 18f67j50_i2c_hw_l0.jal
18f67j50 | 18f67j50_pata_hard_disk.jal
18f67j50 | 18f67j50_usb_mouse.jal
18f67j50 | 18f67j50_fat32_pata_hard_disk.jal
18f67j50 | 18f67j50_crc16_ccitt_lookup.jal
18f67j50 | 18f67j50_keyboard.jal
18f67j50 | 18f67j50_usb_hid_generic.jal
18f67j50 | 18f67j50_print_large_number.jal
18f67j50 | 18f67j50_fat32_sd_card.jal
18f67j50 | 18f67j50_temperature_tc77.jal
18f67j50 | 18f67j50_crc7_bitwise.jal
18f67j50 | 18f67j50_mp3_decoder_vs1053b_sd_card.jal
18f67j50 | 18f67j50_usb_bootloader_autostart.jal
18f67j50 | 18f67j50_queue.jal
18f67j50 | 18f67j50_sqrt.jal
18f67j50 | 18f67j50_mp3_decoder_vs1053b_pata_hard_disk.jal
18f67j50 | 18f67j50_serial_hw_int_cts.jal
18f67j50 | 18f67j50_23k256.jal
18f67j50 | 18f67j50_slip_poll.jal
18f67j50 | 18f67j50_fat32_small_pata_hard_disk.jal
18f67j50 | 18f67j50_slip_poll_usb.jal
18f67j50 | 18f67j50_sd_card.jal
18f67j50 | 18f67j50_sirc.jal
18f67j50 | 18f67j50_sd_card_crc.jal
18f67j50 | 18f67j50_i2c_sw_l0.jal
18f67j50 | 18f67j50_startersguide.jal
18f67j50 | 18f67j50_slip_isr.jal
18f67j50 | 18f67j50_usb_hid_mouse.jal
18f67j50 | 18f67j50_usb_msd_pata_hard_disk.jal
18f67j50 | 18f67j50_fat32_usb_msd_pata_hard_disk.jal
18f67j50 | 18f67j50_i2c_hw_l1.jal
18f67j50 | 18f67j50_i2c_hw_slave_eeprom_simulator.jal
18f67j50 | 18f67j50_usb_serial.jal
18f67j50 | 18f67j50_usb_msd_sd_card.jal
18f67j50 | 18f67j50_i2c_hw_slave_msg.jal
18f67j50 | 18f67j50_spi2.jal
18f67j50 | 18f67j50_memory_pointer.jal
18f67j50 | 18f67j50_lcd_dsm0822a.jal
18f67j60 | 18f67j60_fat32_sd_card.jal
18f67k22 | 18f67k22_co2_i2c.jal