Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: aliznayem/RFM69-Library-AVR
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: master
Choose a base ref
...
head repository: Makodan/RFM69-Library-STM32
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: master
Choose a head ref
Can’t automatically merge. Don’t worry, you can still create the pull request.
  • 14 commits
  • 11 files changed
  • 1 contributor

Commits on May 12, 2021

  1. Copy the full SHA
    68fbf89 View commit details

Commits on May 28, 2021

  1. Modifications on the library

    Makodan committed May 28, 2021
    Copy the full SHA
    5b7d7f6 View commit details
  2. Readme updated

    Makodan committed May 28, 2021
    Copy the full SHA
    09762d5 View commit details
  3. Update README.md

    Makodan authored May 28, 2021
    Copy the full SHA
    5e51f68 View commit details

Commits on Jun 8, 2021

  1. Update README.md

    Makodan authored Jun 8, 2021
    Copy the full SHA
    c61577b View commit details

Commits on Apr 30, 2024

  1. 1

    Makodan committed Apr 30, 2024
    Copy the full SHA
    7b3a459 View commit details
  2. Sync

    Makodan committed Apr 30, 2024
    Copy the full SHA
    cb0f9b1 View commit details
  3. Copy the full SHA
    12563ee View commit details

Commits on May 1, 2024

  1. Copy the full SHA
    195e6fc View commit details
  2. Copy the full SHA
    3bd689b View commit details

Commits on May 4, 2024

  1. Copy the full SHA
    e4fbfde View commit details
  2. Rx RSSI measurement has been made more precise - reading has been rep…

    …laced in the interrupt handling
    Makodan committed May 4, 2024
    Copy the full SHA
    7efb9e7 View commit details

Commits on Oct 30, 2024

  1. Copy the full SHA
    6f3915a View commit details
  2. Update README.md

    Makodan authored Oct 30, 2024
    Copy the full SHA
    fe2a266 View commit details
Showing with 599 additions and 744 deletions.
  1. +0 −1 Example/gateway/README.md
  2. +0 −50 Example/gateway/main.c
  3. +0 −1 Example/node/README.md
  4. +0 −26 Example/node/main.c
  5. +37 −3 README.md
  6. +554 −413 RFM69.c
  7. +8 −57 RFM69.h
  8. +0 −45 get_millis.c
  9. +0 −12 get_millis.h
  10. +0 −79 spi.c
  11. +0 −57 spi.h
1 change: 0 additions & 1 deletion Example/gateway/README.md

This file was deleted.

50 changes: 0 additions & 50 deletions Example/gateway/main.c

This file was deleted.

1 change: 0 additions & 1 deletion Example/node/README.md

This file was deleted.

26 changes: 0 additions & 26 deletions Example/node/main.c

This file was deleted.

40 changes: 37 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,10 @@
# RFM69-Library-AVR #
Original library is written for arduino by [LowPowerLab](https://github.com/LowPowerLab/RFM69). This is C ported version for AVR microcontrollers.
# RFM69-Library-STM32 #
Original library is written for arduino by [LowPowerLab](https://github.com/LowPowerLab/RFM69).

Tested on ATmega64, ATmega328, ATtiny84.
The AVR based library can be found: [RFM69-Library-AVR](https://github.com/nayem-cosmic/RFM69-Library-AVR).

The AVR based library has been modified for STM32 compatibility.
Tested on STM32F103C8 and on STM32L031F6P6.

</br>

@@ -17,6 +20,37 @@ Tested on ATmega64, ATmega328, ATtiny84.

</br>

## Functions need to be implemented: ##

**void spi_transfer_sync(uint8_t *dataout, uint8_t *datain, uint8_t len)**:\
Shift full array through target device.

**void spi_transmit_sync(uint8_t *dataout, uint8_t len)**:\
Shift full array to target device without receiving any byte.

**uint8_t spi_fast_shift(uint8_t data)**:\
Clocks only one byte to target device and returns the received one.

**uint32_t millis()**:\
Return with the millisecs. It can be done by a timer or by the ticks.

**void select()**:\
Enable SPI transfer. (Negated logic - Pulled LOW means selection)

**void unselect()**:\
Disable SPI transfer. (Negated logic - Pulled HIGH means unselection)

**void cli()**:\
Disable the interrupt of the RFM69 pin.

**void sei()**:\
Enable the interrupt of the RFM69 pin.

**void reset_rfm69(void)**:\
OPTIONAL - Reset the RFM69 modul via its reset pin.

These functions have to be externed, to make possible the function call by the library.

## Function Description: ##

1. **rfm69_init(*uint16_t freqBand, uint8_t nodeID, uint8_t networkID*):** Initializes rfm69 module. This function is called at the beginning of the program. Initializes IDs, modes etc. It takes three parameters. First one freqBand. You have to choose among 315, 433, 868 and 915. These specifies frequency in MHz. nodeID is analogues to device ID. Each RF module will have unique nodeID. Value must be within 0 to 255. Then comes notworkID. Say, a system has 5 rf modules to communicate with each other. All the modules must be in same networkID . networkID value range 0~255.
Loading