Skip to content

Commit

Permalink
Merge pull request #143 from spacelab-ufsc/dev_firmware
Browse files Browse the repository at this point in the history
Merge pull request from #141 spacelab-ufsc/dev_firmware
  • Loading branch information
miguelboing authored Nov 6, 2023
2 parents cb63b9e + 9e6df58 commit 53fd6ac
Show file tree
Hide file tree
Showing 227 changed files with 4,433 additions and 21,063 deletions.
63 changes: 63 additions & 0 deletions .github/workflows/unit-test-ngham.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
#
# unit-test-ngham.yml
#
# Copyright The TTC 2.0 Contributors.
#
# This file is part of TTC 2.0.
#
# TTC 2.0 is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# TTC 2.0 is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with TTC 2.0. If not, see <http://www.gnu.org/licenses/>.
#
#

name: NGHam unit tests

on:
push:
branches: [dev_firmware]
pull_request:
branches: [master, dev, dev_firmware]

# 'workflow_dispatch' allows manual execution of this workflow under the repository's 'Actions' tab
workflow_dispatch:

jobs:

unit-tests:
name: NGHam unit tests
runs-on: ubuntu-latest

strategy:
fail-fast: false

steps:
- uses: actions/checkout@v3

- name: Install dependencies
run: |
sudo apt install -y cmake libcmocka0 libcmocka-dev
git clone https://github.com/mgm8/rsclib.git
cd rsclib
mkdir build
cd build
cmake ..
make
sudo make install
- name: Compile the test
run: |
cd firmware/app/libs/ngham-0.1/tests
make
- name: Execute the test
run: ./firmware/app/libs/ngham-0.1/tests/ngham_unit_test
56 changes: 56 additions & 0 deletions .github/workflows/unit-test-rsclib.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
#
# unit-test-rsclib.yml
#
# Copyright The TTC 2.0 Contributors.
#
# This file is part of TTC 2.0.
#
# TTC 2.0 is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# TTC 2.0 is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with TTC 2.0. If not, see <http://www.gnu.org/licenses/>.
#
#

name: RSCLib unit tests

on:
push:
branches: [dev_firmware]
pull_request:
branches: [master, dev, dev_firmware]

# 'workflow_dispatch' allows manual execution of this workflow under the repository's 'Actions' tab
workflow_dispatch:

jobs:

unit-tests:
name: RSCLib unit tests
runs-on: ubuntu-latest

strategy:
fail-fast: false

steps:
- uses: actions/checkout@v3

- name: Install dependencies
run: sudo apt install -y cmake libcmocka0 libcmocka-dev

- name: Compile the test
run: |
cd firmware/app/libs/rsclib-0.1/tests
cmake .
make
- name: Execute the test
run: ./firmware/app/libs/rsclib-0.1/tests/rsc_test
10 changes: 6 additions & 4 deletions firmware/.cproject
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,8 @@
<listOptionValue builtIn="false" value="${PROJECT_ROOT}/freertos/include"/>
<listOptionValue builtIn="false" value="${PROJECT_ROOT}/config"/>
<listOptionValue builtIn="false" value="${PROJECT_ROOT}/freertos/portable/CCS/MSP430X"/>
<listOptionValue builtIn="false" value="${PROJECT_ROOT}/app/libs/ngham-0.1/include"/>
<listOptionValue builtIn="false" value="${PROJECT_ROOT}/app/libs/rsclib-0.1/include"/>
</option>
<option id="com.ti.ccstudio.buildDefinitions.MSP430_18.12.compilerID.ADVICE__POWER.1792356630" name="Enable checking of ULP power rules (--advice:power)" superClass="com.ti.ccstudio.buildDefinitions.MSP430_18.12.compilerID.ADVICE__POWER" useByScannerDiscovery="false" value="all" valueType="string"/>
<option id="com.ti.ccstudio.buildDefinitions.MSP430_18.12.compilerID.OPT_LEVEL.1099029684" name="Optimization level (--opt_level, -O)" superClass="com.ti.ccstudio.buildDefinitions.MSP430_18.12.compilerID.OPT_LEVEL" value="com.ti.ccstudio.buildDefinitions.MSP430_18.12.compilerID.OPT_LEVEL.off" valueType="enumerated"/>
Expand Down Expand Up @@ -89,13 +91,13 @@
<inputType id="com.ti.ccstudio.buildDefinitions.MSP430_18.12.exeLinker.inputType__GEN_CMDS.1949087727" name="Generated Linker Command Files" superClass="com.ti.ccstudio.buildDefinitions.MSP430_18.12.exeLinker.inputType__GEN_CMDS"/>
</tool>
<tool id="com.ti.ccstudio.buildDefinitions.MSP430_18.12.hex.896402343" name="MSP430 Hex Utility" superClass="com.ti.ccstudio.buildDefinitions.MSP430_18.12.hex">
<option id="com.ti.ccstudio.buildDefinitions.MSP430_18.12.hex.ROMWIDTH.1763970979" name="Specify rom width (--romwidth, -romwidth=width)" superClass="com.ti.ccstudio.buildDefinitions.MSP430_18.12.hex.ROMWIDTH" useByScannerDiscovery="false" value="8" valueType="string"/>
<option id="com.ti.ccstudio.buildDefinitions.MSP430_18.12.hex.MEMWIDTH.1028001339" name="Specify memory width (--memwidth, -memwidth=width)" superClass="com.ti.ccstudio.buildDefinitions.MSP430_18.12.hex.MEMWIDTH" useByScannerDiscovery="false" value="8" valueType="string"/>
<option id="com.ti.ccstudio.buildDefinitions.MSP430_18.12.hex.ROMWIDTH.1763970979" name="Specify rom width (--romwidth, -romwidth)" superClass="com.ti.ccstudio.buildDefinitions.MSP430_18.12.hex.ROMWIDTH" useByScannerDiscovery="false" value="8" valueType="string"/>
<option id="com.ti.ccstudio.buildDefinitions.MSP430_18.12.hex.MEMWIDTH.1028001339" name="Specify memory width (--memwidth, -memwidth)" superClass="com.ti.ccstudio.buildDefinitions.MSP430_18.12.hex.MEMWIDTH" useByScannerDiscovery="false" value="8" valueType="string"/>
</tool>
</toolChain>
</folderInfo>
<sourceEntries>
<entry excluding="app/libs/ngham/unused|app/libs/ngham/fec-3.0.1/sumsq_sse2_assist.s|app/libs/ngham/fec-3.0.1/sumsq_mmx_assist.s|app/libs/ngham/fec-3.0.1/ssebfly29.s|app/libs/ngham/fec-3.0.1/ssebfly27.s|app/libs/ngham/fec-3.0.1/sse2bfly29.s|app/libs/ngham/fec-3.0.1/sse2bfly27.s|app/libs/ngham/fec-3.0.1/peakval_sse_assist.s|app/libs/ngham/fec-3.0.1/peakval_mmx_assist.s|app/libs/ngham/fec-3.0.1/peak_sse2_assist.s|app/libs/ngham/fec-3.0.1/peak_sse_assist.s|app/libs/ngham/fec-3.0.1/peak_mmx_assist.s|app/libs/ngham/fec-3.0.1/mmxbfly29.s|app/libs/ngham/fec-3.0.1/mmxbfly27.s|app/libs/ngham/fec-3.0.1/cpu_features.s|app/libs/ngham/fec-3.0.1/vtest615.c|app/libs/ngham/fec-3.0.1/vtest39.c|app/libs/ngham/fec-3.0.1/vtest29.c|app/libs/ngham/fec-3.0.1/vtest27.c|app/libs/ngham/fec-3.0.1/viterbi615.c|app/libs/ngham/fec-3.0.1/viterbi615_sse2.c|app/libs/ngham/fec-3.0.1/viterbi615_sse.c|app/libs/ngham/fec-3.0.1/viterbi615_port.c|app/libs/ngham/fec-3.0.1/viterbi615_mmx.c|app/libs/ngham/fec-3.0.1/viterbi615_av.c|app/libs/ngham/fec-3.0.1/viterbi39.c|app/libs/ngham/fec-3.0.1/viterbi39_sse2.c|app/libs/ngham/fec-3.0.1/viterbi39_sse.c|app/libs/ngham/fec-3.0.1/viterbi39_port.c|app/libs/ngham/fec-3.0.1/viterbi39_mmx.c|app/libs/ngham/fec-3.0.1/viterbi39_av.c|app/libs/ngham/fec-3.0.1/viterbi29.c|app/libs/ngham/fec-3.0.1/viterbi29_sse2.c|app/libs/ngham/fec-3.0.1/viterbi29_sse.c|app/libs/ngham/fec-3.0.1/viterbi29_port.c|app/libs/ngham/fec-3.0.1/viterbi29_mmx.c|app/libs/ngham/fec-3.0.1/viterbi29_av.c|app/libs/ngham/fec-3.0.1/viterbi27.c|app/libs/ngham/fec-3.0.1/viterbi27_sse2.c|app/libs/ngham/fec-3.0.1/viterbi27_sse.c|app/libs/ngham/fec-3.0.1/viterbi27_port.c|app/libs/ngham/fec-3.0.1/viterbi27_mmx.c|app/libs/ngham/fec-3.0.1/viterbi27_av.c|app/libs/ngham/fec-3.0.1/sumsq.c|app/libs/ngham/fec-3.0.1/sumsq_test.c|app/libs/ngham/fec-3.0.1/sumsq_sse2.c|app/libs/ngham/fec-3.0.1/sumsq_port.c|app/libs/ngham/fec-3.0.1/sumsq_mmx.c|app/libs/ngham/fec-3.0.1/sumsq_av.c|app/libs/ngham/fec-3.0.1/sqtest.c|app/libs/ngham/fec-3.0.1/sim.c|app/libs/ngham/fec-3.0.1/rstest.c|app/libs/ngham/fec-3.0.1/rs_speedtest.c|app/libs/ngham/fec-3.0.1/peakval.c|app/libs/ngham/fec-3.0.1/peakval_sse2.c|app/libs/ngham/fec-3.0.1/peakval_sse2_assist.s|app/libs/ngham/fec-3.0.1/peakval_sse.c|app/libs/ngham/fec-3.0.1/peakval_port.c|app/libs/ngham/fec-3.0.1/peakval_mmx.c|app/libs/ngham/fec-3.0.1/peakval_av.c|app/libs/ngham/fec-3.0.1/peaktest.c|app/libs/ngham/fec-3.0.1/init_rs.c|app/libs/ngham/fec-3.0.1/init_rs_int.c|app/libs/ngham/fec-3.0.1/gen_ccsds.c|app/libs/ngham/fec-3.0.1/gen_ccsds_tal.c|app/libs/ngham/fec-3.0.1/fec.c|app/libs/ngham/fec-3.0.1/exercise.c|app/libs/ngham/fec-3.0.1/encode_rs.c|app/libs/ngham/fec-3.0.1/encode_rs_int.c|app/libs/ngham/fec-3.0.1/encode_rs_ccsds.c|app/libs/ngham/fec-3.0.1/encode_rs_av.c|app/libs/ngham/fec-3.0.1/encode_rs_8.c|app/libs/ngham/fec-3.0.1/dtest.c|app/libs/ngham/fec-3.0.1/dotprod.c|app/libs/ngham/fec-3.0.1/dotprod_sse2.c|app/libs/ngham/fec-3.0.1/dotprod_sse2_assist.s|app/libs/ngham/fec-3.0.1/dotprod_port.c|app/libs/ngham/fec-3.0.1/dotprod_mmx.c|app/libs/ngham/fec-3.0.1/dotprod_mmx_assist.s|app/libs/ngham/fec-3.0.1/dotprod_av.c|app/libs/ngham/fec-3.0.1/decode_rs.c|app/libs/ngham/fec-3.0.1/decode_rs_int.c|app/libs/ngham/fec-3.0.1/decode_rs_ccsds.c|app/libs/ngham/fec-3.0.1/decode_rs_8.c|app/libs/ngham/fec-3.0.1/cpu_mode_x86.c|app/libs/ngham/fec-3.0.1/cpu_mode_ppc.c|app/libs/ngham/ngham_spp.c|tests" flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name=""/>
<entry excluding="app/libs/ngham-0.1/src/ngham_packets.c|app/libs/ngham-0.1/src/ngham_spp.c|app/libs/ngham-0.1/src/ngham_extension.c|app/libs/rsclib-0.1/tests|app/libs/ngham-0.1/tests|app/libs/ngham/unused|app/libs/ngham/fec-3.0.1/sumsq_sse2_assist.s|app/libs/ngham/fec-3.0.1/sumsq_mmx_assist.s|app/libs/ngham/fec-3.0.1/ssebfly29.s|app/libs/ngham/fec-3.0.1/ssebfly27.s|app/libs/ngham/fec-3.0.1/sse2bfly29.s|app/libs/ngham/fec-3.0.1/sse2bfly27.s|app/libs/ngham/fec-3.0.1/peakval_sse_assist.s|app/libs/ngham/fec-3.0.1/peakval_mmx_assist.s|app/libs/ngham/fec-3.0.1/peak_sse2_assist.s|app/libs/ngham/fec-3.0.1/peak_sse_assist.s|app/libs/ngham/fec-3.0.1/peak_mmx_assist.s|app/libs/ngham/fec-3.0.1/mmxbfly29.s|app/libs/ngham/fec-3.0.1/mmxbfly27.s|app/libs/ngham/fec-3.0.1/cpu_features.s|app/libs/ngham/fec-3.0.1/vtest615.c|app/libs/ngham/fec-3.0.1/vtest39.c|app/libs/ngham/fec-3.0.1/vtest29.c|app/libs/ngham/fec-3.0.1/vtest27.c|app/libs/ngham/fec-3.0.1/viterbi615.c|app/libs/ngham/fec-3.0.1/viterbi615_sse2.c|app/libs/ngham/fec-3.0.1/viterbi615_sse.c|app/libs/ngham/fec-3.0.1/viterbi615_port.c|app/libs/ngham/fec-3.0.1/viterbi615_mmx.c|app/libs/ngham/fec-3.0.1/viterbi615_av.c|app/libs/ngham/fec-3.0.1/viterbi39.c|app/libs/ngham/fec-3.0.1/viterbi39_sse2.c|app/libs/ngham/fec-3.0.1/viterbi39_sse.c|app/libs/ngham/fec-3.0.1/viterbi39_port.c|app/libs/ngham/fec-3.0.1/viterbi39_mmx.c|app/libs/ngham/fec-3.0.1/viterbi39_av.c|app/libs/ngham/fec-3.0.1/viterbi29.c|app/libs/ngham/fec-3.0.1/viterbi29_sse2.c|app/libs/ngham/fec-3.0.1/viterbi29_sse.c|app/libs/ngham/fec-3.0.1/viterbi29_port.c|app/libs/ngham/fec-3.0.1/viterbi29_mmx.c|app/libs/ngham/fec-3.0.1/viterbi29_av.c|app/libs/ngham/fec-3.0.1/viterbi27.c|app/libs/ngham/fec-3.0.1/viterbi27_sse2.c|app/libs/ngham/fec-3.0.1/viterbi27_sse.c|app/libs/ngham/fec-3.0.1/viterbi27_port.c|app/libs/ngham/fec-3.0.1/viterbi27_mmx.c|app/libs/ngham/fec-3.0.1/viterbi27_av.c|app/libs/ngham/fec-3.0.1/sumsq.c|app/libs/ngham/fec-3.0.1/sumsq_test.c|app/libs/ngham/fec-3.0.1/sumsq_sse2.c|app/libs/ngham/fec-3.0.1/sumsq_port.c|app/libs/ngham/fec-3.0.1/sumsq_mmx.c|app/libs/ngham/fec-3.0.1/sumsq_av.c|app/libs/ngham/fec-3.0.1/sqtest.c|app/libs/ngham/fec-3.0.1/sim.c|app/libs/ngham/fec-3.0.1/rstest.c|app/libs/ngham/fec-3.0.1/rs_speedtest.c|app/libs/ngham/fec-3.0.1/peakval.c|app/libs/ngham/fec-3.0.1/peakval_sse2.c|app/libs/ngham/fec-3.0.1/peakval_sse2_assist.s|app/libs/ngham/fec-3.0.1/peakval_sse.c|app/libs/ngham/fec-3.0.1/peakval_port.c|app/libs/ngham/fec-3.0.1/peakval_mmx.c|app/libs/ngham/fec-3.0.1/peakval_av.c|app/libs/ngham/fec-3.0.1/peaktest.c|app/libs/ngham/fec-3.0.1/init_rs.c|app/libs/ngham/fec-3.0.1/init_rs_int.c|app/libs/ngham/fec-3.0.1/gen_ccsds.c|app/libs/ngham/fec-3.0.1/gen_ccsds_tal.c|app/libs/ngham/fec-3.0.1/fec.c|app/libs/ngham/fec-3.0.1/exercise.c|app/libs/ngham/fec-3.0.1/encode_rs.c|app/libs/ngham/fec-3.0.1/encode_rs_int.c|app/libs/ngham/fec-3.0.1/encode_rs_ccsds.c|app/libs/ngham/fec-3.0.1/encode_rs_av.c|app/libs/ngham/fec-3.0.1/encode_rs_8.c|app/libs/ngham/fec-3.0.1/dtest.c|app/libs/ngham/fec-3.0.1/dotprod.c|app/libs/ngham/fec-3.0.1/dotprod_sse2.c|app/libs/ngham/fec-3.0.1/dotprod_sse2_assist.s|app/libs/ngham/fec-3.0.1/dotprod_port.c|app/libs/ngham/fec-3.0.1/dotprod_mmx.c|app/libs/ngham/fec-3.0.1/dotprod_mmx_assist.s|app/libs/ngham/fec-3.0.1/dotprod_av.c|app/libs/ngham/fec-3.0.1/decode_rs.c|app/libs/ngham/fec-3.0.1/decode_rs_int.c|app/libs/ngham/fec-3.0.1/decode_rs_ccsds.c|app/libs/ngham/fec-3.0.1/decode_rs_8.c|app/libs/ngham/fec-3.0.1/cpu_mode_x86.c|app/libs/ngham/fec-3.0.1/cpu_mode_ppc.c|app/libs/ngham/ngham_spp.c|tests" flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name=""/>
</sourceEntries>
</configuration>
</storageModule>
Expand Down Expand Up @@ -197,4 +199,4 @@
</storageModule>
<storageModule moduleId="scannerConfiguration"/>
<storageModule moduleId="org.eclipse.cdt.make.core.buildtargets"/>
</cproject>
</cproject>
10 changes: 10 additions & 0 deletions firmware/CHANGELOG
Original file line number Diff line number Diff line change
@@ -1,3 +1,13 @@
v0.5 - 2023/11/01

- Improving ttc struct
- Antenna read and deployment implementation
- Downlink manager implementation
- Uplink manager initial implementation
- si446x mutex
- OBDH device and server task improvements
- NGHam codification

===========================================

v0.4 - 2023/03/20
Expand Down
63 changes: 63 additions & 0 deletions firmware/app/libs/ngham-0.1/.github/workflows/test.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
#
# test.yml
#
# Copyright The RSCLib Contributors.
#
# This file is part of RSCLib.
#
# RSCLib is free software: you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# RSCLib is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public License
# along with RSCLib. If not, see <http://www.gnu.org/licenses/>.
#
#

name: Unit tests

on:
push:
branches: [dev]
pull_request:
branches: [main, dev]

# 'workflow_dispatch' allows manual execution of this workflow under the repository's 'Actions' tab
workflow_dispatch:

jobs:

unit-tests:
name: Unit tests
runs-on: ubuntu-latest

strategy:
fail-fast: false

steps:
- uses: actions/checkout@v3

- name: Install dependencies
run: |
sudo apt install -y cmake libcmocka0 libcmocka-dev
git clone https://github.com/mgm8/rsclib.git
cd rsclib
mkdir build
cd build
cmake ..
make
sudo make install
- name: Compile the test
run: |
cd tests
make
- name: Execute the test
run: ./tests/ngham_unit_test
52 changes: 52 additions & 0 deletions firmware/app/libs/ngham-0.1/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
# Prerequisites
*.d

# Object files
*.o
*.ko
*.obj
*.elf

# Linker output
*.ilk
*.map
*.exp

# Precompiled Headers
*.gch
*.pch

# Libraries
*.lib
*.a
*.la
*.lo

# Shared objects (inc. Windows DLLs)
*.dll
*.so
*.so.*
*.dylib

# Executables
*.exe
*.out
*.app
*.i*86
*.x86_64
*.hex

# Debug files
*.dSYM/
*.su
*.idb
*.pdb

# Kernel Module Compile Results
*.mod*
*.cmd
.tmp_versions/
modules.order
Module.symvers
Mkfile.old
dkms.conf
16 changes: 16 additions & 0 deletions firmware/app/libs/ngham-0.1/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
cmake_minimum_required(VERSION 3.0)

# Disable in-source builds to prevent source tree corruption.
if(" ${CMAKE_SOURCE_DIR}" STREQUAL " ${CMAKE_BINARY_DIR}")
message(FATAL_ERROR "FATAL: In-source builds are not allowed. You should create a separate directory for build files.")
endif()

project(ngham C)

include_directories(${CMAKE_SOURCE_DIR}/include)

add_library(ngham STATIC ${CMAKE_SOURCE_DIR}/src/ngham.c)
add_library(crc_ccitt STATIC ${CMAKE_SOURCE_DIR}/src/crc_ccitt.c)

install(DIRECTORY ${CMAKE_SOURCE_DIR}/include/ DESTINATION include)
install(TARGETS ngham DESTINATION lib)
File renamed without changes.
File renamed without changes.
62 changes: 62 additions & 0 deletions firmware/app/libs/ngham-0.1/include/ngham/ccsds_scrambler.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
/*
* ccsds_scrambler.h
*
* Copyright The NGHam Contributors.
*
* This file is part of NGHam.
*
* NGHam is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* NGHam is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with NGHam. If not, see <http://www.gnu.org/licenses/>.
*
*/

/**
* \brief CCSDS scrambler definition.
*
* \author Gabriel Mariano Marcelino <[email protected]>
*
* \version 0.0.0
*
* \date 2023/03/12
*
* \defgroup ccsds-scrambler CCSDS Scrambler
* \ingroup ngham
* \{
*/

#ifndef CCSDS_SCRAMBLER_H_
#define CCSDS_SCRAMBLER_H_

#include <stdint.h>

extern const uint8_t ccsds_poly[255];

/**
* \brief .
*
* \return .
*/
void ccsds_scrambler_init(void);

/**
* \brief .
*
* \param[in] data .
*
* \return .
*/
uint8_t ccsds_scrambler_xor(uint8_t data);

#endif /* CCSDS_SCRAMBLER_H_ */

/**< \} End of ccsds-scrambler group */
Loading

0 comments on commit 53fd6ac

Please sign in to comment.