All Projects → haarer → toolchain68k

haarer / toolchain68k

Licence: other
build a toolchain for cross developement. Supports motorola m68k-elf, avr and arm-none-eabi

Programming Languages

shell
77523 projects

Projects that are alternatives of or similar to toolchain68k

Tinygo
Go compiler for small places. Microcontrollers, WebAssembly (WASM/WASI), and command-line tools. Based on LLVM.
Stars: ✭ 9,068 (+50277.78%)
Mutual labels:  avr, arm, stm32
Platformio Core
PlatformIO is a professional collaborative platform for embedded development 👽 A place where Developers and Teams have true Freedom! No more vendor lock-in!
Stars: ✭ 5,539 (+30672.22%)
Mutual labels:  avr, arm, platformio
terminal
Terminal inside the microcontroller (cli for mcu)
Stars: ✭ 31 (+72.22%)
Mutual labels:  avr, arm, stm32
Xpcc
DEPRECATED, use our successor library https://modm.io instead
Stars: ✭ 177 (+883.33%)
Mutual labels:  avr, arm, stm32
Arduino-Log
Simple application log library. supporting multiple log levels, custom output & flash memory support.
Stars: ✭ 132 (+633.33%)
Mutual labels:  avr, platformio
docker
Docker-related material to setup, configure and develop with micro-ROS hardware.
Stars: ✭ 32 (+77.78%)
Mutual labels:  toolchain, stm32
tinyfont
Text library for TinyGo displays
Stars: ✭ 37 (+105.56%)
Mutual labels:  arm, stm32
FT800-FT813
Multi-Platform C code Library for EVE graphics controllers from FTDI / Bridgetek (FT810, FT811, FT812, FT813, BT815, BT816, BT817, BT818)
Stars: ✭ 80 (+344.44%)
Mutual labels:  avr, stm32
drone-stm32-map
STM32 peripheral mappings for Drone, an Embedded Operating System.
Stars: ✭ 16 (-11.11%)
Mutual labels:  arm, stm32
ultra-dma-queue
Super fast DMA queue for the Sega Genesis
Stars: ✭ 25 (+38.89%)
Mutual labels:  68k, 68000
LMIC-node
LMIC-node | One example to rule them all. LMIC-node is an example LoRaWAN application for a node that can be used with The Things Network. It demonstrates how to send uplink messages, how to receive downlink messages, how to implement a downlink command and it provides useful status information. With LMIC-node it is easy to get a working node qu…
Stars: ✭ 108 (+500%)
Mutual labels:  stm32, platformio
TMcuSys
🍆 STM32平台uCos与emWin练习项目。图片、音乐、视频、游戏、IAP运行器。
Stars: ✭ 25 (+38.89%)
Mutual labels:  arm, stm32
JBC SolderingStation
JBC_SolderingStation
Stars: ✭ 63 (+250%)
Mutual labels:  arm, stm32
Open-SAE-J1939
SAE J1939 protocol free to use for embedded systems or PC with CAN-bus
Stars: ✭ 120 (+566.67%)
Mutual labels:  avr, stm32
DemOS
Free, simple, extremely lightweight, stackless, cooperative, co-routine system (OS) for microcontrollers
Stars: ✭ 18 (+0%)
Mutual labels:  avr, arm
stm32f7xx-hal
A Rust embedded-hal HAL for all MCUs in the STM32 F7 family
Stars: ✭ 71 (+294.44%)
Mutual labels:  arm, stm32
open-watch
An open-source handmade smartwatch. All of the codes, PCBs and schematics are available. ⌚
Stars: ✭ 35 (+94.44%)
Mutual labels:  arm, stm32
bx-github-ci
This tutorial provides one example on how a CI (Continuous Integration) workflow with the IAR Build Tools for Linux can be set up on GitHub. The IAR Build Tools on Linux are available for Arm, RISC-V and Renesas (RH850, RL78 and RX).
Stars: ✭ 20 (+11.11%)
Mutual labels:  toolchain, arm
CML
Fast, safe and easy to use Cortex-M HAL Library, written in C++ 17
Stars: ✭ 17 (-5.56%)
Mutual labels:  arm, stm32
stm32 template
这是一个stm32f103 和 stm32f407单片机在Unix、Linux等系统下使用的模版,可以使用make编译、下载、调试。
Stars: ✭ 48 (+166.67%)
Mutual labels:  arm, stm32

toolchain68k

Main Goal: Build a toolchain for 68k, avr and cortex-m3 and cortex-m4 cross developement using recent compilers and libraries. Examples

This supports development for various m68k boards, Arduinos and STM32 Boards (STM32F411 Nucleo, 32F411EDiscovery, Blue Pill )

The used toolchain versions are

  • gcc 11.2.0
  • binutils 2.37 (with an the ususal avr size patch ported to the recent changes in binutils)
  • gdb 11.1
  • newlib 4.1.0
  • avr-libc 2.0.0

The build script can build for the following target architectures

  • m68k-elf
  • avr
  • arm-none-eabi

The script works on Windows 10 with MSYS2 and on Debian 10. It may work on other platforms but i dont run any tests.

The toolchains are packaged into archives suitable for the platformio development environment (https://platformio.org). The archives can be used with eclipse or with make files as well - just unpack them.

The releases section of this git repo contains pre built toolchains. This can be used as package repository for platformio and there is a platform definition referencing the toolchain packages for platformio use.

The Platform URL to be used for platformio projects are

There are example projects for m68k and avr.

Prepare Build Environment for Windows and MSYS

all commands are to be typed into the msys shell

Installation of MSYS2 Base System and needed packages

  • download the MSYS2 Installer from the MSYS Home Page, use the 64 Bit Version
  • execute installer and chose the installation path according to the following criteria
    • best performance will be on a SSD
    • ite will need approx 4 GB space
    • exclude it from the virus scanner
    • exclude it form the windows index service
    • use a short path without spaces
    • do not put it on a FAT Filesystem
    • i use C:\Tools\msys64
  • update the base system as described on the MSYS Home Page
    • pacman -Syu
    • ok the questions, close window when ready
    • open MSYS Shell again(start menu, use 64bit version)
    • pacman -Su
  • install git
    • pacman -S git

Now clone the git repository.

git clone https://github.com/haarer/toolchain68k.git

Install the required packages for msys

cd toolchain68k
sh install_req_pkg_windows-latest.sh

Prepare Build Environment for Debian 8

First install git.

sudo apt-get install git

Now clone the git repository.

git clone https://github.com/haarer/toolchain68k.git

Install the required packages for msys.

cd toolchain68k
bash install_req_pkg_ubuntu-latest.sh

Prepare Build Environment for Fedora

First install git.

sudo yum install git

Now clone the git repository.

git clone https://github.com/haarer/toolchain68k.git

Install the required packages for fedora.

sh install_req_pkg_fedora.sh

Building and Installing of the Toolchain

Set the wanted target architecture by passing it to the build script as second parameter. In order to change or add target specific build options, see the arm-none-eabi target in the script how to do this.

bash buildtoolchain linux m68k-elf

The script obtains the sources, unpacks them and builds the tools of the toolchain.

The progress of the build is written to a logfile: buildlog.txt

Note that the toolchain script no longer "installs" the toolchain, it always creates platformio toolchain packages.

Testing the Toolchain

Add the path to the binaries and run gcc

export PATH=$PATH:<your toolchain dir>/bin:
<architecture>-gcc --version

for example

export PATH=$PATH://home/mac/toolchain68k/toolchain-avr-current/bin/bin:
avr-gcc --version

compile one of the 68k toolchain examples

see the linker scripts called for the make file. One example uses toolchain provided startup files and linkerscript (m68k-example2), the other one uses custom linker scripts and own startup files (m68k-example)

cd examples/m68k-example
make 

compile the simple avr toolchain example

This example assumes an arduino mega connected to usb (see makefile and change com port accordingly) and is a simple led blink example.

cd examples/avr-example-example
make 
make flash

compile the simple arm-none-eabi toolchain example

This example assumes blue pill STM32F103C8 board connected via a STLINK-2 adapter to usb (see makefile ) and is a simple led blink example. It requires the ST Microelectronics Std_Peripheral Lib unpacked into the example directory

cd examples/arm-none-eabi
make 
make flash
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].