Lucky Resistor
Menu
  • Home
  • Learn
    • Learn C++
    • Product Photography for Electronics
      • Required Equipment and Software
    • Soldering for Show
  • Projects
  • Libraries
  • Applications
  • Shop
  • About
    • About Me
    • Contact
    • Stay Informed
  •  
Menu

HAL LCD Demo

Posted on 2019-08-18 by Lucky Resistor

I added more modules to the HAL layer. The Hitachi LCD driver is now in a stable state. It uses a MCP23008 chip-based backend to reduce the number of wires required to access the display.

  • Video
  • Parts
  • Setup
  • Sourcecode

Video

Parts

This demo uses a number of Adafruit boards and components:

  • Adafruit Feather M0 (any type)
  • Adafruit I2C / SPI character LCD backpack
    • Or just use an MCP23008 IO chip directly.
  • Adafruit LCD 20×4
    • Any LCD with a Hitachi HD44780 compatible chip will work.

Setup

Firmware

You will find all the firmware files in the following repositories. The demo repository includes all required dependencies using submodules.

  • https://github.com/LuckyResistor/HAL-example-fm0-lcd-hitachi
  • https://github.com/LuckyResistor/HAL-common
  • https://github.com/LuckyResistor/HAL-lcd-hitachi
  • https://github.com/LuckyResistor/HAL-feather-m0
  • https://github.com/LuckyResistor/HAL-mcp230xx
  • https://github.com/LuckyResistor/HAL-lcd-character
  • https://github.com/LuckyResistor/HAL-toolchain

Usage

After installing the firmware on the board, just connect a USB cable and start a terminal on the computer. The firmware waits for the serial connection. A shell with command prompt is displayed in the terminal.

Enter help to get a list of supported commands. Some of them take additional arguments.

Conclusion

The HAL system provides a complete framework for firmware development. It is still in an early stage, but already provides concepts and tools which can be useful for productive projects. This demo illustrates a number of these features.

If you have any questions, missing some information, or simply wish to provide feedback, feel free to comment below!

Leave a Reply Cancel reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Stay Updated

Join me on Mastodon!

Top Posts & Pages

  • Storage Boxes System for 3D Print
  • Use Enum with More Class!
  • Simple Box with Lid for 3D-Print
  • Fan Controller
  • Shop
  • Real Time Counter and Integer Overflow
  • How and Why to use Namespaces
  • The Hinges and its Secrets for Perfect PETG Print
  • Extreme Integers – Doom from Below
  • Build a 3D Printer Enclosure

Latest Posts

  • The Importance of Wall Profiles in 3D Printing2023-02-12
  • The Hinges and its Secrets for Perfect PETG Print2023-02-07
  • Better Bridging with Slicer Guides2023-02-04
  • Stronger 3D Printed Parts with Vertical Perimeter Linking2023-02-02
  • Logic Gates Puzzle 1012023-02-02
  • Candlelight Emulation – Complexity with Layering2023-02-01
  • Three Ways to Integrate LED Light Into the Modular Lantern2023-01-29
  • The 3D Printed Modular Lantern2023-01-17

Categories

  • 3D Printing
  • Build
  • Common
  • Fail
  • Fun
  • Learn
  • Projects
  • Puzzle
  • Recommendations
  • Request for Comments
  • Review
  • Software
Copyright (c)2022 by Lucky Resistor. All rights reserved.
 

Loading Comments...