Hardware/PICEBS/Welcome

From UIT
Revision as of 12:48, 14 July 2015 by Pascal.sartoret (Talk | contribs)
Jump to: navigation, search

Contents

Welcome to the PICEBS2 wiki

If you don't know what the PICEBS2 project is, have a look a the presentation.

Presentation

PICEBS2 (hardware details) is the name of a small embedded computer board targeted at teaching embedded system programming. As it's name suggests, it's the second iteration of a successful family of Microchip PIC board, this time focused on a stronger system.

As a student, you can loan a board during your Hes-so//Valais studing process ;-) Just ask the laboratory responsible Pascal Sartoretti (sap).

PICEBS2.jpg

We, the PICEBS2 team, provide a comprehensive solution for

  • Practical work for HEI courses Information systems
  • All kind of project featuring a low-sized micro-controller.


What can be done with the PICEBS2 ?

The board is powerful enough to run applications with:

  • LCD and touch screen interface
  • Serial port usage (UART)
  • CAN interface
  • ...
  • This board includes the PICKIT3 for programming and debugging

Hardware

(hardware details).

Here is a list of the main PICEBS2's characteristics

  • CPU PIC18F87K22
    • High range PIC18 family with 128kB Flash & 4kB RAM
    • RTC
    • 12 bits ADC
    • 11 timers
    • UART, SPI, I2C
    • ...
  • Onboard PICKIT3 debugger
    • Compatible with MPLABX
  • LCD Display
    • 320x240
    • Touch screen
  • Networking and communication
    • CAN
    • RS232
    • PS2 keyboard
    • Olimex UEXT

Software

Tips & tricks

  • CPU speed control
// to work with maximum CPU speed (64MHz) insert following code at start.
   PLLEN = 1;            // activate PLL x4
   OSCCON = 0b01110000;  // for 64MHz cpu clock (default is 8MHz)
   ...
  • Change one bit on a port
// to change one bit on a port, use LATx and not PORTx
   LATH2 = 1;            // turn led on for example
   ...
  • Interrupt on change on PORTB (RB4-RB7)
// to clear the interrupt flag you have to read the PORTB
   ...
   PORTB;               // clear the latch change on PORTB
   RBIF = 0;            // clear the interrupt itself
   ...
  • Reduce current consumption
// To reduce consumption at minimum, do at least
   LCD_PowerOff();  // turn all LCD parts off
   UART_PowerOff(); // turn UART driver off
   Can_PowerOff();  // turn off MCP2515 chipset
// And define unused GPIOs as output
   TRISB5 = 0;      // for example
   ...
// You can measure (between white and yellow test points) about 630 uA after a sleep();

Bugs, issues, questions and comments

Feel free to contact the PICEBS2 team when you encounter a problem. Don't forget to have a look at the Tips & tricks section.

Personal tools
Namespaces
Variants
Actions
Navigation
Browse
Toolbox