arduino-copilot-1.5.2: Arduino programming in haskell using the Copilot stream DSL

Safe HaskellNone
LanguageHaskell2010

Copilot.Arduino.Library.Serial.Device

Description

This module be used to create a new module targeting a specific serial device. See CoPilot.Arduino.Library.Serial and CoPilot.Arduino.Library.Serial.XBee for examples.

Synopsis

Documentation

data Base Source #

Constructors

BIN 
OCT 
DEC 
HEX 
Instances
Show Base Source # 
Instance details

Defined in Copilot.Arduino.Library.Serial.Device

Methods

showsPrec :: Int -> Base -> ShowS #

show :: Base -> String #

showList :: [Base] -> ShowS #

Integral t => FormatableType (t :: Type) Base Source # 
Instance details

Defined in Copilot.Arduino.Library.Serial.Device

Methods

formatter :: Proxy t -> Base -> String Source #

class FormatableType t f where Source #

Methods

formatter :: Proxy t -> f -> String Source #

newtype FlashString Source #

Normally a String will be copied into ram before it is output. A FlashString will be output directly from flash memory.

Using this with str will reduce the amount of memory used by your program, but will likely slightly increase the size of the program.

Constructors

FlashString String 

class OutputString t where Source #

Methods

str :: t -> FormatOutput Source #

Use this to output a String or FlashString

newtype Baud Source #

Constructors

Baud Int 
Instances
Eq Baud Source # 
Instance details

Defined in Copilot.Arduino.Library.Serial.Device

Methods

(==) :: Baud -> Baud -> Bool #

(/=) :: Baud -> Baud -> Bool #

Show Baud Source # 
Instance details

Defined in Copilot.Arduino.Library.Serial.Device

Methods

showsPrec :: Int -> Baud -> ShowS #

show :: Baud -> String #

showList :: [Baud] -> ShowS #

newtype SerialDeviceName Source #

Eg "Serial" or "Serial2"

Constructors

SerialDeviceName String 

noInput :: Int8 Source #

Value that is read from serial port when there is no input available.

char :: Char -> FormatOutput Source #

Use this to output a Char.

show :: forall t. (ShowCType t, Typed t) => Stream t -> FormatOutput Source #

Use this to show the current value of a Stream.

Numbers will be formatted in decimal. Bool is displayed as 0 and 1.

byte :: Stream Int8 -> FormatOutput Source #

Write a byte to the serial port.

showFormatted :: forall t f. (ShowCType t, Typed t, FormatableType t f) => Stream t -> f -> FormatOutput Source #

Show the current value of a Stream with control over the formatting.

When used with a Float, provide the number of decimal places to show.

Serial.showFormatted (constant (1.234 :: Float)) 2 -- "1.23"

When used with any Integral type, provide the Base to display it in

Serial.showFormatted (constant (78 :: Int8)) Serial.HEX -- "4E"

type family IsDigitalIOPin t where ... Source #

Equations

IsDigitalIOPin t = True ~ If (HasPinCapability DigitalIO t) True (TypeError (Text "This Pin does not support digital IO"))