PicoHomeComputer
The PicoHomeComputer project is intended to make it possible to build a simple but fully functional (home) computer completely by yourself. The project is also intended as teaching project to show what hardware and software is needed to build a computer from scratch.
With the documentation in this project it is possible to use the board, buy the needed electronic parts and then mount and solder the electronic parts on the board. After that one can install the software/firmware and connect periphery like keyboard, mouse and monitor to the board and run and use the computer. The PicoHomeComputer has all the functionality of a home computer from the 80ies and even a litle bit more, for example the computer can be connected via LAN to the internet.
Technical specifications
- Processor: PIC32 microcontroller (MIPS based, PIC32MX270F256B), optional: ESP32 from espressif
- CPU clock speed: 48 MHz
- RAM: 64 kByte
- ROM: 256 kByte
- (S)RAM: 1 MBit = 128 kByte via SPI Bus (23LC1024)
- SD card interface via SPI Bus
- LAN interface via SPI Bus (ENC28J60)
- Real Time Clock via I2C Bus (DS1307)
- IO Processor (Propeller P8X32A from Parallax)
- VGA output
- Keyboard
- Mouse
- Audio
Conections for periphery
- VGA monitor interface
- PS/2 for keyboard
- PS/2 for mouse
- Audio interface
- USB 2.0 interface
- SD card interface
- 10 MBit LAN interface
- 2x RS232 interface
- Extension slot with voltages, I2C Bus and SPI Bus
- Powersupply interface (for a 7-12 Volt power supply)
Parts
- Board
- Documentation
- Setup and Operation of the Board
- Setup ArduinoIDE for PicoHomeComputer
- Software for the PicoHomeComputer
- chipKIT, this is the PIC32 platform support for the Arduiono IDE
- chipKIT patches for the PicoHomeComputer
- uLisp for chipKIT, the uLisp (a lisp for microcontrollers) for the PIC32 microcontroller
- only communication via RS232 interface possible
- uLisp for PicoHomeComputer, the uLisp (a lisp for microcontrollers) for the PicoHomeComputer
- using the Propeller IO Processer for full IO support with Keyboard, Mouse and VGA
- Bootloader for the PicoHomeComputer
- Library for ENC28J60 for chipKIT/PicoHomeComputer
- Libraries for Propeller
- Other Software
- Supported Hardware Modules
- Datasheets
Some useful informations about microcontrollers
Interpreters for microcontrollers
- uLisp
- ESP lisp
- MicroPython on github, see also Python for PIC32
- Lua
- MMBasic
- AVR Basic
- my_basic
- Overview of interpreters on stackexchange
- Overview of interpreters on stackoverview
- Single-File Implementations of Programming Languages