Showing
1 changed file
with
97 additions
and
4 deletions
... | @@ -2,11 +2,104 @@ | ... | @@ -2,11 +2,104 @@ |
2 | #define __SENDER | 2 | #define __SENDER |
3 | #include <cmath> | 3 | #include <cmath> |
4 | #include "variables.h" | 4 | #include "variables.h" |
5 | -class Csender { | 5 | + |
6 | +#include <iostream> | ||
7 | +#include <cstdlib> | ||
8 | +#include <ctime> | ||
9 | +#include <fstream> | ||
10 | + | ||
11 | + | ||
12 | +#define PI 3.141592 | ||
13 | + | ||
14 | +using namespace std; | ||
15 | + | ||
16 | +class Csender | ||
17 | +{ | ||
18 | +private: | ||
19 | + | ||
20 | + | ||
6 | public: | 21 | public: |
7 | - Csender() {}; | 22 | + float c0; |
8 | - char data[Nbits]; | 23 | + float c1; |
24 | + float T = 20; | ||
25 | + float t = 0; | ||
26 | + float A = 100; | ||
27 | + | ||
28 | + float b0[500]; | ||
29 | + float b1[500]; | ||
30 | + | ||
31 | + int sum = 0; | ||
32 | + | ||
33 | + float data[Nbits]; // 1000°³ | ||
34 | + | ||
35 | + Csender() | ||
36 | + {}; | ||
37 | + | ||
38 | + | ||
39 | + | ||
40 | + | ||
41 | + | ||
9 | float s[Nbits/Nbitspersymbol*Nsamplespersymbol]; // trasmitted signal | 42 | float s[Nbits/Nbitspersymbol*Nsamplespersymbol]; // trasmitted signal |
10 | - void transmitData(); | 43 | + |
44 | + void transmitData() | ||
45 | + { | ||
46 | + | ||
47 | + ofstream out("senderoutput.txt"); | ||
48 | + | ||
49 | + srand((unsigned int)time(NULL)); | ||
50 | + for (int i = 0; i < 1000; i++) | ||
51 | + { | ||
52 | + data[i] = rand() % 2; | ||
53 | + out << data[i] << endl; | ||
54 | + } | ||
55 | + | ||
56 | + | ||
57 | + for (int i = 0; i < 1000; i++) | ||
58 | + { | ||
59 | + if (data[i] == 0) | ||
60 | + { | ||
61 | + data[i] = 1; | ||
62 | + } | ||
63 | + else if (data[i] == 1) | ||
64 | + { | ||
65 | + data[i] = -1; | ||
66 | + } | ||
67 | + } | ||
68 | + | ||
69 | + | ||
70 | + for (int i = 0; i < 500; i++) | ||
71 | + { | ||
72 | + b0[i] = data[2 * i]; | ||
73 | + b1[i] = data[(2 * i) + 1]; | ||
74 | + | ||
75 | + } | ||
76 | + | ||
77 | + c0 = sqrt(2 / T) * cos(2 * PI / T * t); | ||
78 | + c1 = sqrt(2 / T) * sin(2 * PI / T * t); | ||
79 | + | ||
80 | + sum = 0; | ||
81 | + | ||
82 | + for (int i = 0; i < 500; i++) | ||
83 | + { | ||
84 | + for (t = 0; t < 20; t++) | ||
85 | + { | ||
86 | + s[sum] = A * ((b0[i] * sqrt(2 / T) * cos(2 * PI / T * t)) + b1[i] * sqrt(2 / T) * sin(2 * PI / T * t)); | ||
87 | + sum++; | ||
88 | + } | ||
89 | + } | ||
90 | + | ||
91 | + | ||
92 | + | ||
93 | + } | ||
94 | + | ||
95 | + | ||
96 | + | ||
97 | + //1½Éº¼À» 20°³·Î Âɰµ´Ù. | ||
98 | + | ||
99 | + | ||
11 | }; | 100 | }; |
101 | + | ||
102 | + | ||
103 | + | ||
104 | + | ||
12 | #endif | 105 | #endif | ... | ... |
-
Please register or login to post a comment