On this page you can download some interface libraries to use with the BoostC compiler. After long years of assembly PIC programming, I finally moved on to a C compiler for faster development and easier code reuse.
The libraries you find here can simply be included in your BoostC project by adding the appropriate source and header files to the project tab. Available libraries are:
- DS1820 One-Wire interface: bit-bangs a one wire interface on any I/O of the PIC microcontroller.
- PIC16F87X internal ADC lib: A simple interface to the internal ADC modules of the PIC16F87X.
- PIC16/PIC18 internal UART lib: Blocking functions to write to read and write from the hardware UART in the PIC16F87X.
- PIC16/PIC18 internal SPI lib: Non-blocking funtions that interface to the SPI hardware unit in the PIC. Uses a buffer that is loaded before the transaction, the transfer itself is handled through interrupts.
- PIC16F87X internal FLASH memory access: Read and write the internal program memory of the controller from your user code.
- PIC16/PIC18 internal EEPROM memory access: Easily read and write the EEPROM memory in the PIC device, using the same syntax as the FLASH lib.
- MCP2515 CAN controller lib: Interface to the Microchip standalone CAN controller. Depends on the SPI library that is presented above.
- LCD 4-bit interface: 4-bit data interface to an LCD. Reads the status of the LCD before sending a command, so the library is not depending on timing loops in the PIC.
- Clock lib: Library that keeps track of the time. You’ll need to setup a timer that calls the update function every second.
- PIC16F87X internal timer library: Let’s you easily setup and use one of the internal timers.
- Nordic nrf2401 2.4 GHz transceiver library: no more wires, connect through the ether using these nifty devices from Nordic. The library puts the devices in Shockburst mode.
- Nokia 3310 graphical LCD interface: why use a character-based display if you can get graphical? Interfacing a 3310 display is really easy…
- 595 shift register: interfaces to a simple 595 shift register. I use this for expanding the number of output ports of a circuit.
Is my work useful for you? Show your appreciation!
All source files including test suites for the different libraries are available in the following zip-files: [download#1#size#nohits]
20060625: Version 1.3
- Added Nordic nrf2401 2.4 GHz transceiver library
- Added Nokia 3310 graphical lcd interface + characterset
- Added 595 shift register interface
- Update the OneWire lib: a bugfix in the bit TX routines, added CRC check, added more extensive support for the DS1820
- Updated the serial lib: check for overrun error in the hardware UART, added a first version of a packet-based serial protocol.
- Updated the EEPROM lib for support on PIC18F devices.
20060427: Version 1.2
- Internal revision
20060115: Version 1.1
- Major SPI lib update: added support for the first SPI port of PIC18F devices, added support for user-generated chip select signal, added an extra read function for devices that have a 2-pin SPI port (instead of the standard three pins)
- Added the timer interface library
- Added the clock library
- Added the EEPROM library