Skip to content

nickgeoca/libmaple

Repository files navigation

Overview
------------------------------------------------------------------------------
This repo is a work in progress for a libmaple port to the SiM3U1 MCU (ARM M3). 

If your interested in contributing to the Silabs based project then email me at [email protected]. Leaflabs is kind enough to acomodate Silabs in their libraries (thanks Leaflabs!) and we follow their standards. See the resources below:
Leaflab's Coding Standard: http://leaflabs.com/docs/libmaple/coding-standard.html#libmaple-coding-standard
Leaflab's libmaple Repo: https://github.com/leaflabs/libmaple

The readme has the following instructions:
 * Bootloader Installation
 * Wiring Installation
 * Silabs Bugs
 * libmaple Port Tasks
 
 
Bootloader Installation
------------------------------------------------------------------------------
 * Steps
  1) Download repository
  2) Flash Bootloader
  3) Test Bootloader
  
	* Download Repository
		* Download this repo using Git. 
		* (Here's one Git Client for Windows: http://git-scm.com/downloads/guis)
 
	* Flash Bootloader
		* Connect the board to the PC with the debugger, then power on.
		* Flash the bootloader by running the Si32Flash_boot.bat file located in \GitHub\libmaple\Si32FlashUtility\
		* Verify the LED blinks when it starts
 
	* Test Bootloader
		* Connect the board to the PC with the debugger, then power on.
		* Flash the test program on the board by running the Si32Flash_wiring.bat file located in \GitHub\libmaple\Si32FlashUtility\
		* Restart the board and verify the test app operates as follows:
			* LED blinks intermittently
			* UART (115200 baud, 8 data bits, 1 stop bit, no parity bit, no flow control) is spitting out data on D0/D1. J17 and J18 should select UART lines D0/D1. 
 
 
Wiring Installation
------------------------------------------------------------------------------
 * Steps
  1) Install ARM toolchain
  2) Modify Wiring code!
 
 * Install the ARM toolchain (Windows)
   * Create a new folder called "arm" in the local repository
   * Download an ARM toolchain. https://launchpad.net/gcc-arm-embedded/4.6/4.6-2012-q2-update/+download/gcc-arm-none-eabi-4_6-2012q2-20120614.exe
   * Install it in the "arm" folder and check the set PATH variables box.
   * Move "cs-make.exe" at the top level into into arm/bin
   * Verify it works. Execute silabs_build_flash.bat.
   * Result should be a successful build and flash.  
   
 * Modify Wiring Code!
   * Change main.cpp and board.h
   * Execute silabs_build_flash.bat
   * For now the crossbar is static. A more powerful implementation will be done in the future. To change, goto gpio init function in gpio.c under /libmaple/sim3u1/
 
 
Silabs Bugs
------------------------------------------------------------------------------
 * view bugs...

 
libmaple Port Tasks
------------------------------------------------------------------------------
 * view tasks...