ivory-avr-atmega328p-registers: Ivory register bindings for the Atmega328p

This is a package candidate release! Here you can preview how this package release will appear once published to the main package index (which can be accomplished via the 'maintain' link below). Please note that once a package has been published to the main package index it cannot be undone! Please consult the package uploading documentation for more information.

[maintain] [Publish]

Autogenerated ivory register bindings for the AVR Atmega328p

[Skip to Readme]


Change log None available
Dependencies base (>=4.7 && <5), base-compat (>=0.10.5 && <0.11), ivory (>= && <0.2), ivory-hw (>= && <0.2), monadLib (>=3.7.3 && <3.8) [details]
License BSD-3-Clause
Copyright 2020 erdeszt
Author erdeszt
Maintainer erdeszt@gmail.com
Category Language
Home page https://github.com/erdeszt/ivory-avr-atmega328p-registers
Uploaded by erdeszt at 2020-11-19T18:24:18Z



Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Readme for ivory-avr-atmega328p-registers-

[back to package description]

Ivory register bindings for AVR Atmega328p

Build Status

Generated with: https://github.com/erdeszt/ivory-avr-generator


import Ivory.Language
import Ivory.HW
import Ivory.Avr.Atmega328p.Registers

-- Blink the onboard led (pin13, ddrb 5) on the Arduino Uno/Nano as fast as possible
rapidBlink :: Def ('[] :-> ())
rapidBlink = proc "rapidBlink" $ body $ do
    setReg regBitsDDRB (setBit ddb5)
    forever $ do
        setReg regBitsPORTB (setBit portb5)
        setReg regBitsPORTB (clearBit portb5)