0.1.4 shiftInSlow

This commit is contained in:
Rob Tillaart 2023-11-22 10:23:18 +01:00
parent 82e8f2e3c5
commit 1a83855992
6 changed files with 40 additions and 19 deletions

View File

@ -6,8 +6,12 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/)
and this project adheres to [Semantic Versioning](http://semver.org/).
## [0.1.4] - 2023-11-22
- update readme.md
## [0.1.3] - 2023-02-21
- add default **LSBFIRST** for **setBItOrder()**
- add default **LSBFIRST** for **setBitOrder()**
- add default **0** for **setDelay()**
- update readme.md
- move code from .h to .cpp
@ -16,7 +20,6 @@ and this project adheres to [Semantic Versioning](http://semver.org/).
- update license 2023
- minor edits
## [0.1.2] - 2022-11-24
- Add RP2040 support to build-CI.
- Add CHANGELOG.md

View File

@ -2,21 +2,17 @@
[![Arduino CI](https://github.com/RobTillaart/ShiftInSlow/workflows/Arduino%20CI/badge.svg)](https://github.com/marketplace/actions/arduino_ci)
[![Arduino-lint](https://github.com/RobTillaart/ShiftInSlow/actions/workflows/arduino-lint.yml/badge.svg)](https://github.com/RobTillaart/ShiftInSlow/actions/workflows/arduino-lint.yml)
[![JSON check](https://github.com/RobTillaart/ShiftInSlow/actions/workflows/jsoncheck.yml/badge.svg)](https://github.com/RobTillaart/ShiftInSlow/actions/workflows/jsoncheck.yml)
[![GitHub issues](https://img.shields.io/github/issues/RobTillaart/ShiftInSlow.svg)](https://github.com/RobTillaart/ShiftInSlow/issues)
[![License: MIT](https://img.shields.io/badge/license-MIT-green.svg)](https://github.com/RobTillaart/ShiftInSlow/blob/master/LICENSE)
[![GitHub release](https://img.shields.io/github/release/RobTillaart/ShiftInSlow.svg?maxAge=3600)](https://github.com/RobTillaart/ShiftInSlow/releases)
[![PlatformIO Registry](https://badges.registry.platformio.org/packages/robtillaart/library/ShiftInSlow.svg)](https://registry.platformio.org/libraries/robtillaart/ShiftInSlow)
# ShiftInSlow
Arduino library for shiftIn with build-in delay - e.g. for 74HC165.
Related libraries
- https://github.com/RobTillaart/FastShiftIn
- https://github.com/RobTillaart/FastShiftOut
- https://github.com/RobTillaart/FastShiftInOut
- https://github.com/RobTillaart/ShiftInSlow
- https://github.com/RobTillaart/ShiftOutSlow
## Description
@ -26,6 +22,15 @@ This allows one to improve reliability e.g. when using longer lines.
The dataPin and clockPin are set in the constructor, the delay is configurable per byte send to be able to optimize runtime.
#### Related
- https://github.com/RobTillaart/FastShiftIn
- https://github.com/RobTillaart/FastShiftOut
- https://github.com/RobTillaart/FastShiftInOut
- https://github.com/RobTillaart/ShiftInSlow
- https://github.com/RobTillaart/ShiftOutSlow
## Performance
The performance of **read()** with a delay of 0 microseconds is slower than the default Arduino
@ -71,18 +76,31 @@ See examples.
#### Should
- add examples
- adaptive speed example?
- Add a select pin to be more SPI alike?
- would allow SPI debugging?
- increase max delay uint32_t ?
- would allow pulses in "second" domain.
#### Could
- Add a select pin to be more SPI alike?
- increase max delay uint32_t ?
- add examples
- adaptive speed example?
#### Wont
- delay/2 is not exact half when delay is odd.
- no big issue.
- del_before and del_after could prepare for duty cycle.
- get set dutyCycle(0 .. 99%)
- set delay in terms of frequency - delay is 'wave length'
- set delay in terms of max total time the read may cost.
- read16/24/32 to read more bytes is a user task.
## Support
If you appreciate my libraries, you can support the development and maintenance.
Improve the quality of the libraries by providing issues and Pull Requests, or
donate through PayPal or GitHub sponsors.
Thank you,

View File

@ -1,7 +1,7 @@
//
// FILE: ShiftInSlow.cpp
// AUTHOR: Rob Tillaart
// VERSION: 0.1.3
// VERSION: 0.1.4
// PURPOSE: Arduino library for shiftIn with build-in delay
// DATE: 2021-05-11
// URL: https://github.com/RobTillaart/ShiftInSlow

View File

@ -2,7 +2,7 @@
//
// FILE: ShiftInSlow.h
// AUTHOR: Rob Tillaart
// VERSION: 0.1.3
// VERSION: 0.1.4
// PURPOSE: Arduino library for shiftIn with build-in delay
// DATE: 2021-05-11
// URL: https://github.com/RobTillaart/ShiftInSlow
@ -11,7 +11,7 @@
#include "Arduino.h"
#define SHIFTINSLOW_LIB_VERSION (F("0.1.3"))
#define SHIFTINSLOW_LIB_VERSION (F("0.1.4"))
class ShiftInSlow

View File

@ -15,9 +15,9 @@
"type": "git",
"url": "https://github.com/RobTillaart/ShiftInSlow.git"
},
"version": "0.1.3",
"version": "0.1.4",
"license": "MIT",
"frameworks": "arduino",
"frameworks": "*",
"platforms": "*",
"headers": "ShiftInSlow.h"
}

View File

@ -1,5 +1,5 @@
name=ShiftInSlow
version=0.1.3
version=0.1.4
author=Rob Tillaart <rob.tillaart@gmail.com>
maintainer=Rob Tillaart <rob.tillaart@gmail.com>
sentence=Arduino library for shiftIn with build-in delay - e.g. for 74HC165