ice40-prim-0.3.1.1: Lattice iCE40 Primitive IP
Copyright(c) David Cox 2021
LicenseBSD 3-Clause
Maintainerstandardsemiconductor@gmail.com
Safe HaskellNone
LanguageHaskell2010

Ice40.Led

Description

LED hard IP primitive from Lattice Ice Technology Library. See iCE40 LED Driver Usage Guide for more information.

Synopsis

Documentation

led Source #

Arguments

:: HiddenClock dom 
=> Signal dom Bit

cs - CS to write LEDD IP registers

-> Signal dom (BitVector 8)

dat - data to write into the LEDD IP registers

-> Signal dom (BitVector 4)

addr - LEDD IP register address

-> Signal dom Bool

en - data enable input to indicate data and address are stable

-> Signal dom Bool

exe - enable to IP to run the blinking sequence. When it is LOW, the sequence stops at the nearest OFF state

-> Unbundled dom (Bit, Bit, Bit, Bool)

(pwmOut0, pwmOut1, pwmOut2, LED on indicator)

SB_LEDDA_IP primitive generates the RGB PWM outputs for the RGB LED drivers.

LED Control Bus Addressable Registers

LEDD_ADR[3:0]NameUsageAccess
1000LEDDCR0LED Driver Control Register 0W
1001LEDDBRLED Driver Pre-scale RegisterW
1010LEDDONRLED Driver ON Time RegisterW
1011LEDDOFRLED Driver OFF Time RegisterW
0101LEDDBCRRLED Driver Breathe On Control RegisterW
0110LEDDBCFRLED Driver Breate Off Control RegisterW
0001LEDDPWRRLED Driver Pulse Width Register for REDW
0010LEDDPWRGLED Driver Pulse Width Register for GREENW
0011LEDDPWRBLED Driver Pulse Width Register for BLUEW