Skip to content

Commit 8499f79

Browse files
authored
Merge pull request #25 from kiyu-git/develop
Develop
2 parents ab63d0a + a1e5b7b commit 8499f79

File tree

12 files changed

+138
-30
lines changed

12 files changed

+138
-30
lines changed

.github/FUNDING.yml

Lines changed: 0 additions & 5 deletions
This file was deleted.

CHANGELOG.md

Lines changed: 22 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,25 @@
1+
# 0.2.0
2+
3+
- BaudRate の変更に対応
4+
5+
- 前バージョンまでは 9600 のみ対応でしたが、本バージョンで幅広い範囲の BaudRate に対応しました。
6+
- この対応に伴って、UI が一部変更になっています。
7+
- 対応 BaudRate - `300, 600, 750, 1200, 2400, 4800, 9600, 19200, 31250, 38400, 57600, 74880,
8+
115200, 230400, 250000, 460800, 500000, 921600, 1000000, 2000000`
9+
10+
- 記録中の SerialPort の変更を不可に
11+
12+
- 記録が停止するまでは SerialPort を変更できないようにしました。
13+
- 意図しない記録の中断を防ぐための対応です。
14+
15+
- Arduino Example の追加
16+
17+
- Arduino スケッチの例を追加しました。
18+
19+
- 正規表現の改善
20+
- `測定値A0: 1023`のような値ラベルに数字が入っている場合でも、正しくプロットできるように文字パース機能を改善しました。
21+
122
# 0.1.1
223

324
- ミリ秒単位の更新に対応
4-
- 全バージョンまでは秒単位のリアルタイム入力のみプロット可能でしたが、本バージョンでミリ秒単位の更新にも対応しました。
25+
- 前バージョンまでは秒単位のリアルタイム入力のみプロット可能でしたが、本バージョンでミリ秒単位の更新にも対応しました。

README.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,12 @@ Arduino などからのシリアル通信の値をリアルタイムにプロッ
55
![](./_img/SerialPlotTool.png)
66
![](./_img/RealtimeDataLogger.png)
77

8+
## How to use
9+
10+
Install の項に従ってインストールすると簡単に使用できます。
11+
12+
Arduino のスケッチファイルについては、`arduino_example`を参考にしてください。
13+
814
## Change log
915

1016
[Change Log](https://github.com/kiyu-git/Serial-Plot-Tools/blob/main/CHANGELOG.md)

_img/RealtimeDataLogger.png

-509 KB
Loading
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
void setup() {
2+
Serial.begin(9600);
3+
}
4+
5+
void loop() {
6+
int analogA0 = analogRead(A0);
7+
int analogA1 = analogRead(A1);
8+
Serial.print("測定値A0:");
9+
Serial.print(analogA0);
10+
Serial.print(",");
11+
Serial.print("測定値A1:");
12+
Serial.print(analogA1);
13+
Serial.println();
14+
delay(100);
15+
}

package.json

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "serial-plot-tools",
3-
"version": "0.1.0",
3+
"version": "0.1.1",
44
"description": "A foundation for scalable desktop apps",
55
"keywords": [
66
"electron",
@@ -23,9 +23,9 @@
2323
},
2424
"license": "MIT",
2525
"author": {
26-
"name": "Electron React Boilerplate Maintainers",
27-
"email": "electronreactboilerplate@gmail.com",
28-
"url": "https://electron-react-boilerplate.js.org"
26+
"name": "kiyu-git",
27+
"email": "",
28+
"url": "https://github.com/kiyu-git/Serial-Plot-Tools"
2929
},
3030
"contributors": [
3131
{

release/app/package-lock.json

Lines changed: 4 additions & 4 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

release/app/package.json

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
{
2-
"name": "electron-react-boilerplate",
3-
"version": "4.6.0",
2+
"name": "serial-plot-tools",
3+
"version": "0.2.0",
44
"description": "A foundation for scalable desktop apps",
55
"license": "MIT",
66
"author": {
7-
"name": "Electron React Boilerplate Maintainers",
8-
"email": "electronreactboilerplate@gmail.com",
9-
"url": "https://github.com/electron-react-boilerplate"
7+
"name": "kiyu-git",
8+
"email": "",
9+
"url": "https://github.com/kiyu-git/Serial-Plot-Tools"
1010
},
1111
"main": "./dist/main/main.js",
1212
"scripts": {

src/main/electron-src/lib/serialManager.js

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,14 +19,17 @@ const getSerialPorts = async () => {
1919

2020

2121
let port;
22+
let portPath;
23+
let baudRate = 9600;
2224
let webContents;
2325

2426
const setSerialPort = (_portPath, _webContents) => {
2527
return new Promise(function (resolve, reject) {
2628
closeSerialPort();
29+
portPath = _portPath
2730
port = new SerialPort({
28-
path: _portPath,
29-
baudRate: 9600
31+
path: portPath,
32+
baudRate: baudRate
3033
}, function (err) {
3134
if (err) {
3235
reject(err.message);
@@ -63,6 +66,12 @@ const closeSerialPort = () => {
6366
}
6467
}
6568

69+
// handle baudRate //
70+
const setBaudRate = async (_baudRate, _webContents) => {
71+
baudRate = Number(_baudRate);
72+
await setSerialPort(portPath, _webContents);
73+
}
74+
6675
// handle save //
6776
let dataRecorder;
6877
class DataRecorder {
@@ -166,6 +175,7 @@ module.exports = {
166175
getSerialPorts,
167176
setSerialPort,
168177
closeSerialPort,
178+
setBaudRate,
169179
recordStart,
170180
recordStop
171181
};

src/main/main.ts

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@ const {
2525
closeSerialPort,
2626
getSerialPorts,
2727
setSerialPort,
28+
setBaudRate,
2829
recordStart,
2930
recordStop,
3031
} = require('./electron-src/lib/serialManager');
@@ -185,6 +186,10 @@ const createWindow = async () => {
185186
return await setSerialPort(_arg, subWindowRealtimeDataLogger.webContents);
186187
});
187188

189+
ipcMain.handle('setBaudRate', async (_e, _arg) => {
190+
return await setBaudRate(_arg, subWindowRealtimeDataLogger.webContents);
191+
});
192+
188193
ipcMain.handle('recordStart', async (_e, _arg) => {
189194
return await recordStart(_arg, subWindowRealtimeDataLogger.webContents);
190195
});

0 commit comments

Comments
 (0)