Skip to content

Commit 17a054b

Browse files
committed
readme update
1 parent 0d1d1f9 commit 17a054b

File tree

1 file changed

+14
-2
lines changed

1 file changed

+14
-2
lines changed

README.md

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,8 @@
66
![Hit Counter](https://visitor-badge.laobi.icu/badge?page_id=felias-fogg_SingleWireSerial)
77

88

9-
A software serial library that uses only a single wire for half-duplex serial communication. It makes use of the input capture and output compare match features of the 16-bit timers in AVR MCUs and is for this reason highly accurate and reliable up to 250 kbps. So it can be used, for instance, for debugWIRE communication.
9+
A software serial library that uses only a single wire for half-duplex serial communication. It makes use of the input capture and output compare match features of the 16-bit timers in AVR MCUs and is for this reason highly accurate and reliable up to 250 kbps. So it can be used, for instance, for debugWIRE communication. Furthermore, you can also use it as a two wire library.
10+
1011

1112

1213

@@ -16,7 +17,18 @@ The SingleWireSerial library uses the *input capture* and the *output compare ma
1617

1718
However, there is a price to pay. First of all, Timer 1, the 16-bit timer on the ATmega328P, is used for this purpose and for this reason, some of the PWM pins cannot be used for analog output (Arduino pins 9 and 10 on the ATmega328 boards). Second, the Servo library cannot be used, because it uses Timer 1. Third, there is a fixed input pin, namely Arduino pin 8 on ATmega328 boards. Fourth, since there is only one pin that can be used for input capture, you cannot have multiple instances of the SingleWireSerial class.
1819

19-
There exist also support for running the library on other AVR MCUs (see `SingleWireSerial_config.h`). It should work for all MCUs which have a 16-bit timer and the input capture feature, but it is untested. Furthermore, you can also use it as a two wire library, but the output pin is also fixed (for the Arduino UNO it is pin 9).
20+
There exist also support for running the library on other AVR MCUs than the ATmega328P (see `SingleWireSerial_config.h`). It should work for all MCUs which have a 16-bit timer, the input capture feature and the corresponding timer flag register among the first 32 I/O registers, but it is untested. It compiles for the following MCUs:
21+
22+
- ATmegaX8(P)
23+
- ATmega32U4
24+
- ATmega1284(P)
25+
- ATmega2560
26+
- ATtinyX4
27+
- ATtinyX41
28+
- ATtinyX7
29+
- ATtinyX8
30+
- ATtiny828
31+
2032

2133
## Installation
2234

0 commit comments

Comments
 (0)