Port of LogicalNucleo to F411RE

Dependencies:   mbed

Fork of LogicAlNucleo by joao barraca

Committer:
gavwhela
Date:
Wed Mar 29 21:15:00 2017 +0000
Revision:
1:cf544bd09176
Parent:
0:41db3ed6754d
Changed NOP's for Nucleo F411RE and doubled buffer size for samples and serial rate for PC connection.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
jpbarraca 0:41db3ed6754d 1 /*
jpbarraca 0:41db3ed6754d 2 This program is free software: you can redistribute it and/or modify
jpbarraca 0:41db3ed6754d 3 it under the terms of the GNU General Public License as published by
jpbarraca 0:41db3ed6754d 4 the Free Software Foundation, either version 3 of the License, or
jpbarraca 0:41db3ed6754d 5 (at your option) any later version.
jpbarraca 0:41db3ed6754d 6
jpbarraca 0:41db3ed6754d 7 This program is distributed in the hope that it will be useful,
jpbarraca 0:41db3ed6754d 8 but WITHOUT ANY WARRANTY; without even the implied warranty of
jpbarraca 0:41db3ed6754d 9 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
jpbarraca 0:41db3ed6754d 10 GNU General Public License for more details.
jpbarraca 0:41db3ed6754d 11
jpbarraca 0:41db3ed6754d 12 Author: Joao Paulo Barraca <jpbarraca@gmail.com>
jpbarraca 0:41db3ed6754d 13 */
jpbarraca 0:41db3ed6754d 14
jpbarraca 0:41db3ed6754d 15 #ifndef SAMPLER_H
jpbarraca 0:41db3ed6754d 16 #define SAMPLER_H
jpbarraca 0:41db3ed6754d 17 #include "mbed.h"
jpbarraca 0:41db3ed6754d 18
jpbarraca 0:41db3ed6754d 19 class Sampler{
jpbarraca 0:41db3ed6754d 20
jpbarraca 0:41db3ed6754d 21 public:
jpbarraca 0:41db3ed6754d 22
jpbarraca 0:41db3ed6754d 23 Sampler(Serial*);
jpbarraca 0:41db3ed6754d 24
jpbarraca 0:41db3ed6754d 25 void start();
jpbarraca 0:41db3ed6754d 26 void arm();
jpbarraca 0:41db3ed6754d 27 void stop();
jpbarraca 0:41db3ed6754d 28 void reset();
jpbarraca 0:41db3ed6754d 29 void runTest();
jpbarraca 0:41db3ed6754d 30
jpbarraca 0:41db3ed6754d 31 //Getters and Setters
jpbarraca 0:41db3ed6754d 32 uint32_t getBufferSize();
jpbarraca 0:41db3ed6754d 33 uint32_t getMaxFrequency();
jpbarraca 0:41db3ed6754d 34
jpbarraca 0:41db3ed6754d 35 void setSamplingDivider(uint32_t);
jpbarraca 0:41db3ed6754d 36 void setSampleNumber(uint32_t);
jpbarraca 0:41db3ed6754d 37 void setSamplingDelay(uint16_t);
jpbarraca 0:41db3ed6754d 38 void setTriggerMask(uint32_t);
jpbarraca 0:41db3ed6754d 39 void setTriggerValue(uint32_t);
jpbarraca 0:41db3ed6754d 40 void setTriggerState(uint8_t);
jpbarraca 0:41db3ed6754d 41 void setFlags(uint32_t);
jpbarraca 0:41db3ed6754d 42
jpbarraca 0:41db3ed6754d 43
jpbarraca 0:41db3ed6754d 44 private:
jpbarraca 0:41db3ed6754d 45 uint8_t *buffer;
jpbarraca 0:41db3ed6754d 46 uint16_t buffer_index;
jpbarraca 0:41db3ed6754d 47 uint8_t buffer_rle_value;
jpbarraca 0:41db3ed6754d 48 uint8_t buffer_rle_count;
jpbarraca 0:41db3ed6754d 49
jpbarraca 0:41db3ed6754d 50 uint32_t samplingPeriod;
jpbarraca 0:41db3ed6754d 51 uint32_t sampleNumber;
jpbarraca 0:41db3ed6754d 52 uint32_t sampleDelay;
jpbarraca 0:41db3ed6754d 53 uint32_t triggerMask;
jpbarraca 0:41db3ed6754d 54 uint32_t triggerValue;
jpbarraca 0:41db3ed6754d 55 uint8_t triggerState;
jpbarraca 0:41db3ed6754d 56 uint32_t flags;
jpbarraca 0:41db3ed6754d 57
jpbarraca 0:41db3ed6754d 58 uint32_t bufferSize;
jpbarraca 0:41db3ed6754d 59
jpbarraca 0:41db3ed6754d 60 Serial *pc;
jpbarraca 0:41db3ed6754d 61 };
jpbarraca 0:41db3ed6754d 62 #endif