17
17
#define LIGHT_TIME_MS 165 // время на которое загорается светодиод после обнаружения события
18
18
19
19
#define SOUND_TIME_MS LIGHT_TIME_MS // время на которое включается звуковой сигнал после обнаружения события
20
- #define SOUND_TOUCH_FREQ_HZ 800 // частота звукового сигнала после обнаружения касания
20
+ #define SOUND_TOUCH_FREQ_HZ 1200 // частота звукового сигнала после обнаружения касания
21
21
#define SOUND_VIBR_FREQ_HZ 2500 // частота звукового сигнала после обнаружения вибрации
22
22
23
23
#include < SPI.h>
@@ -32,7 +32,6 @@ TM74HC595Display disp(SCLK_PIN, RCLK_PIN, DIO_PIN); // дисплей
32
32
EthernetClient client; // клиент Ethernet
33
33
34
34
void setup () {
35
-
36
35
// если кабель не отключен
37
36
if (Ethernet.linkStatus () != LinkOFF) {
38
37
byte mac[] = {0xDE , 0xAD , 0xBE , 0xEF , 0xFE , 0xED }; // из урока по Ethernet Arduino
@@ -117,33 +116,51 @@ void http_send_post(uint16_t num_touches, uint16_t num_vibrs, uint16_t num_detec
117
116
if (millis () - http_send_timer >= HTTP_POST_SEND_TIME_MS) {
118
117
if (Ethernet.linkStatus () != LinkOFF) {
119
118
if (client.connect (" afternoon-ravine-88100.herokuapp.com" , 80 )) {
120
- uint16_t content_length = strlen (" touches=&vibrs=&total=&first_connected=" );
119
+ uint16_t content_length = 0 ;
120
+ content_length += strlen (" {}" );
121
+ content_length += strlen (" \" touches\" :," );
122
+ content_length += strlen (" \" vibrs\" :," );
123
+ content_length += strlen (" \" total\" :," );
124
+ content_length += strlen (" \" first_connected\" :" );
121
125
122
126
client.println (" POST /update HTTP/1.1" );
123
127
client.println (" Host: afternoon-ravine-88100.herokuapp.com" );
124
- client.println (" Content-Type: application/x-www-form-urlencoded " );
128
+ client.println (" Content-Type: application/json " );
125
129
126
130
client.print (" Content-Length: " );
127
- content_length += count_digits_uint (num_touches) + count_digits_uint (num_vibrs) + count_digits_uint (num_detected);
131
+
132
+ content_length += count_digits_uint (num_touches);
133
+ content_length += count_digits_uint (num_vibrs);
134
+ content_length += count_digits_uint (num_detected);
128
135
content_length += first_connected ? strlen (" true" ) : strlen (" false" );
129
- client.println (content_length);
136
+
137
+ client.println (content_length + 2 );
130
138
client.println ();
131
139
132
- client.print (" touches=" );
140
+ client.print (" {" );
141
+
142
+ client.print (" \" touches\" :" );
133
143
client.print (num_touches);
134
- client.print (" &vibrs=" );
144
+ client.print (" ," );
145
+
146
+ client.print (" \" vibrs\" :" );
135
147
client.print (num_vibrs);
136
- client.print (" &total=" );
148
+ client.print (" ," );
149
+
150
+ client.print (" \" total\" :" );
137
151
client.print (num_detected);
152
+ client.print (" ," );
138
153
139
- client.print (" & first_connected= " );
154
+ client.print (" \" first_connected\" : " );
140
155
if (first_connected) {
141
- client.println (" true" );
156
+ client.print (" true" );
142
157
}
143
158
else {
144
- client.println (" false" );
159
+ client.print (" false" );
145
160
}
146
-
161
+
162
+ client.println (" }" );
163
+
147
164
client.println (" Connection: close" );
148
165
client.println ();
149
166
}
0 commit comments