Skip to content

Commit

Permalink
Version 3.2
Browse files Browse the repository at this point in the history
  • Loading branch information
ArminJo committed Nov 14, 2019
1 parent d10fc8a commit ed2ea66
Show file tree
Hide file tree
Showing 28 changed files with 81 additions and 64 deletions.
18 changes: 9 additions & 9 deletions .cproject
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
<?fileVersion 4.0.0?><cproject storage_type_id="org.eclipse.cdt.core.XmlProjectDescriptionStorage">
<storageModule moduleId="org.eclipse.cdt.core.settings">
<cconfiguration id="de.innot.avreclipse.configuration.app.debug.961549999">
<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="de.innot.avreclipse.configuration.app.debug.961549999" moduleId="org.eclipse.cdt.core.settings" name="Nano">
<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="de.innot.avreclipse.configuration.app.debug.961549999" moduleId="org.eclipse.cdt.core.settings" name="_Nano">
<externalSettings/>
<extensions>
<extension id="org.eclipse.cdt.core.ELF" point="org.eclipse.cdt.core.BinaryParser"/>
Expand All @@ -13,7 +13,7 @@
</extensions>
</storageModule>
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
<configuration artifactName="${ProjName}" buildArtefactType="de.innot.avreclipse.buildArtefactType.app" buildProperties="org.eclipse.cdt.build.core.buildArtefactType=de.innot.avreclipse.buildArtefactType.app,org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.debug" description="" errorParsers="org.eclipse.cdt.core.GASErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.MakeErrorParser;org.eclipse.cdt.core.GCCErrorParser" id="de.innot.avreclipse.configuration.app.debug.961549999" name="Nano" optionalBuildProperties="org.eclipse.cdt.docker.launcher.containerbuild.property.selectedvolumes=,org.eclipse.cdt.docker.launcher.containerbuild.property.volumes=" parent="de.innot.avreclipse.configuration.app.debug" postannouncebuildStep="Memory Map" postbuildStep="avr-nm -l -S -n ${BuildArtifactFileBaseName}.elf &gt;${BuildArtifactFileBaseName}.lst" preannouncebuildStep="" prebuildStep="">
<configuration artifactName="${ProjName}" buildArtefactType="de.innot.avreclipse.buildArtefactType.app" buildProperties="org.eclipse.cdt.build.core.buildArtefactType=de.innot.avreclipse.buildArtefactType.app,org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.debug" description="" errorParsers="org.eclipse.cdt.core.GASErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.MakeErrorParser;org.eclipse.cdt.core.GCCErrorParser" id="de.innot.avreclipse.configuration.app.debug.961549999" name="_Nano" optionalBuildProperties="org.eclipse.cdt.docker.launcher.containerbuild.property.selectedvolumes=,org.eclipse.cdt.docker.launcher.containerbuild.property.volumes=" parent="de.innot.avreclipse.configuration.app.debug" postannouncebuildStep="Memory Map" postbuildStep="avr-nm -l -S -n ${BuildArtifactFileBaseName}.elf &gt;${BuildArtifactFileBaseName}.lst" preannouncebuildStep="" prebuildStep="">
<folderInfo id="de.innot.avreclipse.configuration.app.debug.961549999." name="/" resourcePath="">
<toolChain errorParsers="" id="de.innot.avreclipse.toolchain.winavr.app.debug.812956350" name="AVR-GCC Toolchain" superClass="de.innot.avreclipse.toolchain.winavr.app.debug">
<option id="de.innot.avreclipse.toolchain.options.toolchain.objcopy.flash.app.debug.166226200" name="Generate HEX file for Flash memory" superClass="de.innot.avreclipse.toolchain.options.toolchain.objcopy.flash.app.debug" useByScannerDiscovery="false" value="true" valueType="boolean"/>
Expand Down Expand Up @@ -47,7 +47,7 @@
</option>
<option id="de.innot.avreclipse.cppcompiler.option.optimize.other.553758201" name="Other Optimization Flags" superClass="de.innot.avreclipse.cppcompiler.option.optimize.other" useByScannerDiscovery="false" value="-flto -fmerge-all-constants -fno-threadsafe-statics -mcall-prologues" valueType="string"/>
<option id="de.innot.avreclipse.cppcompiler.option.otherflags.1785707671" name="Other flags" superClass="de.innot.avreclipse.cppcompiler.option.otherflags" useByScannerDiscovery="false" value="-fpermissive -std=gnu++11" valueType="string"/>
<option IS_BUILTIN_EMPTY="false" IS_VALUE_EMPTY="false" id="de.innot.avreclipse.cppcompiler.option.def.761581305" superClass="de.innot.avreclipse.cppcompiler.option.def" valueType="definedSymbols">
<option IS_BUILTIN_EMPTY="false" IS_VALUE_EMPTY="false" id="de.innot.avreclipse.cppcompiler.option.def.761581305" name="Define Syms (-D)" superClass="de.innot.avreclipse.cppcompiler.option.def" valueType="definedSymbols">
<listOptionValue builtIn="false" value="HC_05_BAUD_RATE=BAUD_115200"/>
</option>
<inputType id="de.innot.avreclipse.cppcompiler.input.1705245366" superClass="de.innot.avreclipse.cppcompiler.input"/>
Expand Down Expand Up @@ -85,7 +85,7 @@
<storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
</cconfiguration>
<cconfiguration id="de.innot.avreclipse.configuration.app.debug.961549999.2003113689">
<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="de.innot.avreclipse.configuration.app.debug.961549999.2003113689" moduleId="org.eclipse.cdt.core.settings" name="Nano Debug">
<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="de.innot.avreclipse.configuration.app.debug.961549999.2003113689" moduleId="org.eclipse.cdt.core.settings" name="_Nano Debug">
<externalSettings/>
<extensions>
<extension id="org.eclipse.cdt.core.ELF" point="org.eclipse.cdt.core.BinaryParser"/>
Expand All @@ -96,7 +96,7 @@
</extensions>
</storageModule>
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
<configuration artifactName="${ProjName}" buildArtefactType="de.innot.avreclipse.buildArtefactType.app" buildProperties="org.eclipse.cdt.build.core.buildArtefactType=de.innot.avreclipse.buildArtefactType.app,org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.debug" description="Nano without -flto" errorParsers="org.eclipse.cdt.core.GASErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.MakeErrorParser;org.eclipse.cdt.core.GCCErrorParser" id="de.innot.avreclipse.configuration.app.debug.961549999.2003113689" name="Nano Debug" parent="de.innot.avreclipse.configuration.app.debug" postannouncebuildStep="" postbuildStep="" preannouncebuildStep="" prebuildStep="">
<configuration artifactName="${ProjName}" buildArtefactType="de.innot.avreclipse.buildArtefactType.app" buildProperties="org.eclipse.cdt.build.core.buildArtefactType=de.innot.avreclipse.buildArtefactType.app,org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.debug" description="Nano without -flto" errorParsers="org.eclipse.cdt.core.GASErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.MakeErrorParser;org.eclipse.cdt.core.GCCErrorParser" id="de.innot.avreclipse.configuration.app.debug.961549999.2003113689" name="_Nano Debug" parent="de.innot.avreclipse.configuration.app.debug" postannouncebuildStep="" postbuildStep="" preannouncebuildStep="" prebuildStep="">
<folderInfo id="de.innot.avreclipse.configuration.app.debug.961549999.2003113689." name="/" resourcePath="">
<toolChain errorParsers="" id="de.innot.avreclipse.toolchain.winavr.app.debug.1478472079" name="AVR-GCC Toolchain" superClass="de.innot.avreclipse.toolchain.winavr.app.debug">
<option id="de.innot.avreclipse.toolchain.options.toolchain.objcopy.flash.app.debug.918197877" name="Generate HEX file for Flash memory" superClass="de.innot.avreclipse.toolchain.options.toolchain.objcopy.flash.app.debug" useByScannerDiscovery="false" value="true" valueType="boolean"/>
Expand Down Expand Up @@ -130,7 +130,7 @@
</option>
<option id="de.innot.avreclipse.cppcompiler.option.optimize.other.769122275" name="Other Optimization Flags" superClass="de.innot.avreclipse.cppcompiler.option.optimize.other" useByScannerDiscovery="false" value="-fmerge-all-constants -fno-threadsafe-statics -mcall-prologues" valueType="string"/>
<option id="de.innot.avreclipse.cppcompiler.option.otherflags.1777899965" name="Other flags" superClass="de.innot.avreclipse.cppcompiler.option.otherflags" useByScannerDiscovery="false" value="-fpermissive -std=gnu++11" valueType="string"/>
<option IS_BUILTIN_EMPTY="false" IS_VALUE_EMPTY="false" id="de.innot.avreclipse.cppcompiler.option.def.528895577" superClass="de.innot.avreclipse.cppcompiler.option.def" valueType="definedSymbols">
<option IS_BUILTIN_EMPTY="false" IS_VALUE_EMPTY="false" id="de.innot.avreclipse.cppcompiler.option.def.528895577" name="Define Syms (-D)" superClass="de.innot.avreclipse.cppcompiler.option.def" valueType="definedSymbols">
<listOptionValue builtIn="false" value="HC_05_BAUD_RATE=BAUD_115200"/>
</option>
<inputType id="de.innot.avreclipse.cppcompiler.input.106816857" superClass="de.innot.avreclipse.cppcompiler.input"/>
Expand Down Expand Up @@ -167,7 +167,7 @@
<storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
</cconfiguration>
<cconfiguration id="de.innot.avreclipse.configuration.app.debug.961549999.627252364">
<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="de.innot.avreclipse.configuration.app.debug.961549999.627252364" moduleId="org.eclipse.cdt.core.settings" name="Leonardo">
<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="de.innot.avreclipse.configuration.app.debug.961549999.627252364" moduleId="org.eclipse.cdt.core.settings" name="_Leonardo">
<externalSettings/>
<extensions>
<extension id="org.eclipse.cdt.core.ELF" point="org.eclipse.cdt.core.BinaryParser"/>
Expand All @@ -178,7 +178,7 @@
</extensions>
</storageModule>
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
<configuration artifactName="${ProjName}" buildArtefactType="de.innot.avreclipse.buildArtefactType.app" buildProperties="org.eclipse.cdt.build.core.buildArtefactType=de.innot.avreclipse.buildArtefactType.app,org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.debug" description="Test for compile on Leonardo" errorParsers="org.eclipse.cdt.core.GASErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.MakeErrorParser;org.eclipse.cdt.core.GCCErrorParser" id="de.innot.avreclipse.configuration.app.debug.961549999.627252364" name="Leonardo" parent="de.innot.avreclipse.configuration.app.debug" postannouncebuildStep="" postbuildStep="" preannouncebuildStep="" prebuildStep="">
<configuration artifactName="${ProjName}" buildArtefactType="de.innot.avreclipse.buildArtefactType.app" buildProperties="org.eclipse.cdt.build.core.buildArtefactType=de.innot.avreclipse.buildArtefactType.app,org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.debug" description="Test for compile on Leonardo" errorParsers="org.eclipse.cdt.core.GASErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.MakeErrorParser;org.eclipse.cdt.core.GCCErrorParser" id="de.innot.avreclipse.configuration.app.debug.961549999.627252364" name="_Leonardo" parent="de.innot.avreclipse.configuration.app.debug" postannouncebuildStep="" postbuildStep="" preannouncebuildStep="" prebuildStep="">
<folderInfo id="de.innot.avreclipse.configuration.app.debug.961549999.627252364." name="/" resourcePath="">
<toolChain errorParsers="" id="de.innot.avreclipse.toolchain.winavr.app.debug.1792789528" name="AVR-GCC Toolchain" superClass="de.innot.avreclipse.toolchain.winavr.app.debug">
<option id="de.innot.avreclipse.toolchain.options.toolchain.objcopy.flash.app.debug.691755733" name="Generate HEX file for Flash memory" superClass="de.innot.avreclipse.toolchain.options.toolchain.objcopy.flash.app.debug" useByScannerDiscovery="false" value="true" valueType="boolean"/>
Expand Down Expand Up @@ -212,7 +212,7 @@
</option>
<option id="de.innot.avreclipse.cppcompiler.option.optimize.other.1860346594" name="Other Optimization Flags" superClass="de.innot.avreclipse.cppcompiler.option.optimize.other" useByScannerDiscovery="false" value="-flto -fmerge-all-constants -fno-threadsafe-statics -mcall-prologues" valueType="string"/>
<option id="de.innot.avreclipse.cppcompiler.option.otherflags.559680386" name="Other flags" superClass="de.innot.avreclipse.cppcompiler.option.otherflags" useByScannerDiscovery="false" value="-std=gnu++11" valueType="string"/>
<option IS_BUILTIN_EMPTY="false" IS_VALUE_EMPTY="false" id="de.innot.avreclipse.cppcompiler.option.def.914288541" superClass="de.innot.avreclipse.cppcompiler.option.def" valueType="definedSymbols">
<option IS_BUILTIN_EMPTY="false" IS_VALUE_EMPTY="false" id="de.innot.avreclipse.cppcompiler.option.def.914288541" name="Define Syms (-D)" superClass="de.innot.avreclipse.cppcompiler.option.def" valueType="definedSymbols">
<listOptionValue builtIn="false" value="HC_05_BAUD_RATE=BAUD_115200"/>
</option>
<inputType id="de.innot.avreclipse.cppcompiler.input.1016615601" superClass="de.innot.avreclipse.cppcompiler.input"/>
Expand Down
2 changes: 1 addition & 1 deletion .project
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>SimpleTouchScreenDSO_BlueDisplay</name>
<name>SimpleDSO_BlueDisplay</name>
<comment></comment>
<projects>
</projects>
Expand Down
25 changes: 16 additions & 9 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ This DSO needs only a standard Arduino-Uno or Arduino-Nano, a HC-05 Bluetooth mo

| Simple DSO with no attenuator on breadboard | DSO Chart screen |
| :-: | :-: |
| ![DSO with passive attenuator on breadboard](https://github.com/ArminJo/Arduino-Simple-DSO/blob/master/media/ArduinoDSO_Simple.jpg) | ![DSO chart screen](https://github.com/ArminJo/Arduino-Simple-DSO/blob/master/media/Chart.jpg) |
| ![DSO with passive attenuator on breadboard](https://github.com/ArminJo/Arduino-Simple-DSO/blob/master/pictures/ArduinoDSO_simple.jpg) | ![DSO chart screen](https://github.com/ArminJo/Arduino-Simple-DSO/blob/master/pictures/Chart.jpg) |

## Features
- 150 kSamples per second with good quality.
Expand Down Expand Up @@ -151,23 +151,30 @@ and waveform frequency is not stable and decreased, since not all TIMER1 OVERFLO

# SCREENSHOTS
DSO start screen
![DSO start screen](https://github.com/ArminJo/Arduino-Simple-DSO/blob/master/media/Welcome.jpg)
![DSO start screen](https://github.com/ArminJo/Arduino-Simple-DSO/blob/master/pictures/Welcome.jpg)

| DSO Chart screen | DSO Chart screen with long info |
| :-: | :-: |
| ![DSO chart screen](https://github.com/ArminJo/Arduino-Simple-DSO/blob/master/media/Chart.jpg) | ![DSO chart screen with long info](https://github.com/ArminJo/Arduino-Simple-DSO/blob/master/media/Chart_Long_Info.jpg) |
| ![DSO chart screen](https://github.com/ArminJo/Arduino-Simple-DSO/blob/master/pictures/Chart.jpg) | ![DSO chart screen with long info](https://github.com/ArminJo/Arduino-Simple-DSO/blob/master/pictures/Chart_Long_Info.jpg) |
| DSO settings menu | DSO frequency / waveform generator menu |
| ![DSO settings menu](https://github.com/ArminJo/Arduino-Simple-DSO/blob/master/media/Settings_Passive_Attenuator.jpg) | ![Frequency / waveform generator menu](https://github.com/ArminJo/Arduino-Simple-DSO/blob/master/media/Frequency.jpg) |
| ![DSO settings menu](https://github.com/ArminJo/Arduino-Simple-DSO/blob/master/pictures/Settings_Passive_Attenuator.jpg) | ![Frequency / waveform generator menu](https://github.com/ArminJo/Arduino-Simple-DSO/blob/master/pictures/Frequency.jpg) |
| ![DSO at work](https://github.com/ArminJo/android-blue-display/blob/gh-pages/pictures/DSO+Tablet.jpg) | |

# SCHEMATICS
| SIMPLE 1 RANGE VERSION | 3 RANGE VERSION |
| :-: | :-: |
| ![Fritzing schematic](https://github.com/ArminJo/Arduino-Simple-DSO/blob/master/fritzing/Arduino_Nano_DSO_Simple_Schaltplan.png) | ![Fritzing schematic](https://github.com/ArminJo/Arduino-Simple-DSO/blob/master/fritzing/Arduino_Nano_DSO_BT_Schaltplan.png) |
| ![Fritzing breadboard](https://github.com/ArminJo/Arduino-Simple-DSO/blob/master/fritzing/Arduino_Nano_DSO_Simple_Steckplatine.png) | ![Fritzing breadboard](https://github.com/ArminJo/Arduino-Simple-DSO/blob/master/fritzing/Arduino_Nano_DSO_BT_Steckplatine.png) |
| ![DSO with passive attenuator on breadboard](https://github.com/ArminJo/Arduino-Simple-DSO/blob/master/media/ArduinoDSO_Simple.jpg) | ![DSO with passive attenuator on breadboard](https://github.com/ArminJo/Arduino-Simple-DSO/blob/master/media/ArduinoDSO.jpg) |
| ![Fritzing schematic](https://github.com/ArminJo/Arduino-Simple-DSO/blob/master/fritzing/Arduino_Nano_DSO_simple_Schaltplan.png) | ![Fritzing schematic](https://github.com/ArminJo/Arduino-Simple-DSO/blob/master/fritzing/Arduino_Nano_DSO_BT_full_Schaltplan.png) |
| ![Fritzing breadboard](https://github.com/ArminJo/Arduino-Simple-DSO/blob/master/fritzing/Arduino_Nano_DSO_simple_Steckplatine.png) | ![Fritzing breadboard](https://github.com/ArminJo/Arduino-Simple-DSO/blob/master/fritzing/Arduino_Nano_DSO_BT_full_Steckplatine.png) |
| ![DSO with passive attenuator on breadboard](https://github.com/ArminJo/Arduino-Simple-DSO/blob/master/pictures/ArduinoDSO_simple.jpg) | ![DSO with passive attenuator on breadboard](https://github.com/ArminJo/Arduino-Simple-DSO/blob/master/pictures/ArduinoDSO.jpg) |

# Revision History
### Version 1.0.0
Initial Arduino library version
### Version 3.2 - 11/2019
- Clear display buffer at start and at switching inputs.
- Multiline button caption.

### Version 3.1
- stop response improved for fast mode.
- value computation for ultra fast modes fixed.
- millis() timer compensation formula fixed.
- AC/DC button and info line handling improved.

File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
Binary file added pictures/DSO+Tablet.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
10 changes: 7 additions & 3 deletions src/SimpleTouchScreenDSO.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -475,6 +475,7 @@ void setup() {
DisplayControl.showInfoMode = INFO_MODE_SHORT_INFO;

//setACMode(!digitalReadFast(AC_DC_PIN));
clearDataBuffer();

// first synchronize. Since a complete chart data can be missing, send minimum 320 byte
for (int i = 0; i < 16; ++i) {
Expand Down Expand Up @@ -1597,7 +1598,7 @@ uint16_t getAttenuatorFactor(void) {
/*
* toggle between DC and AC mode
*/
void doAcDcMode(__attribute__((unused)) BDButton * aTheTouchedButton, __attribute__((unused)) int16_t aValue) {
void doAcDcMode(__attribute__((unused)) BDButton * aTheTouchedButton, __attribute__((unused)) int16_t aValue) {
setACMode(!MeasurementControl.ChannelIsACMode);
}

Expand Down Expand Up @@ -1631,7 +1632,7 @@ void doSetTriggerDelay(float aValue) {
/*
* toggle between 5 and 1.1 volt reference
*/
void doADCReference(__attribute__((unused)) BDButton * aTheTouchedButton, __attribute__((unused)) int16_t aValue) {
void doADCReference(__attribute__((unused)) BDButton * aTheTouchedButton, __attribute__((unused)) int16_t aValue) {
uint8_t tNewReference = MeasurementControl.ADCReference;
if (MeasurementControl.ADCReference == DEFAULT) {
tNewReference = INTERNAL;
Expand All @@ -1646,7 +1647,7 @@ void doADCReference(__attribute__((unused)) BDButton * aTheTouchedButton, __attr
}
}

void doStartStopDSO(__attribute__((unused)) BDButton * aTheTouchedButton, __attribute__((unused)) int16_t aValue) {
void doStartStopDSO(__attribute__((unused)) BDButton * aTheTouchedButton, __attribute__((unused)) int16_t aValue) {
if (MeasurementControl.isRunning) {
/*
* Stop here
Expand Down Expand Up @@ -1762,6 +1763,9 @@ void clearDisplayedChart(uint8_t * aDisplayBufferPtr) {
sizeof(DataBufferControl.DisplayBuffer));
}

void clearDataBuffer() {
memset(DataBufferControl.DataBuffer, 0, sizeof(DataBufferControl.DataBuffer));
}
/*
* Draws only one chart value - used for drawing while sampling
*/
Expand Down
Loading

0 comments on commit ed2ea66

Please sign in to comment.