Forum: Mikrocontroller und Digitale Elektronik midi-sound auf Evaluations-Board von Pollin


von Hannes .. (hans_m)


Lesenswert?

Hi,

habe ein kleines Programm um eine Spur einer midi abzuspielen
geschrieben. Der Code ist für das ATMEL Evaluations-Board von Pollin mit
einem Atmega8.

Allerdings habe ich kein Programm gefunden welches aus einer midi-Datei
eine Spur extrahieren kann. Evtl. hat ein Interessierter einen Tipp.

Das Ganze habe ich schon in der Code-Sammlung veröffentlicht. Leider hat 
sich bisher noch niemand gemeldet. Entweder es interessiert keinen oder 
ich habe es in der falschen Rubrik gepostet.

siehe: [Beitrag "midi-sound auf Evaluations-Board von Pollin"]

Hoffe das ich jetzt nix falsch gemacht habe.
Für Hilfe wäre ich dankbar.

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

Hannes ... schrieb:
> habe ein kleines Programm um eine Spur einer midi abzuspielen
> geschrieben.

Das ist etwas missverständlich. Was macht dein Programm?
Ist es ein MIDI Expander - bekommt über MIDI In Daten und spielt die mit 
seinen Voices ab?
Ist es ein Player für *.MID Dateien? Wenn ja, spielt es diese über MIDI 
Out oder mit internen Stimmen?

Da mir 900kB ZIP im Moment zu viel zum Durchwühlen sind, mach doch mal 
eine kurze Beschreibung, auch für andere Interessierte.

: Bearbeitet durch User
von Hannes .. (hans_m)


Lesenswert?

Hi Matthias,

Das Programm wandelt nur eine Spur einer Midi-Datei in C-Code um 
(frequenz und länge).

z.B.:
1
 Timer_io_init(415); _delay_ms(960);

Diese Codezeilen können dann 1 zu 1 in das Projekt kopiert werden. Es 
werden also alle Töne auf dem ROM des Atmega gespeichert. Das sieht dann 
so aus:
1
 void sail()
2
{
3
Timer_io_init(415); _delay_ms(960); 
4
Timer_io_init(415); _delay_ms(480); 
5
Timer_io_init(77); _delay_ms(480); 
6
Timer_io_init(77); _delay_ms(480); 
7
Timer_io_init(77); _delay_ms(480); 
8
Timer_io_init(77); _delay_ms(480); 
9
Timer_io_init(77); _delay_ms(480); 
10
Timer_io_init(77); _delay_ms(480); 
11
Timer_io_init(77); _delay_ms(480); 
12
Timer_io_init(77); _delay_ms(480); 
13
Timer_io_init(77); _delay_ms(480); 
14
Timer_io_init(77); _delay_ms(480); 
15
Timer_io_init(77); _delay_ms(480); 
16
Timer_io_init(77); _delay_ms(480); 
17
Timer_io_init(77); _delay_ms(480); 
18
Timer_io_init(77); _delay_ms(480); 
19
Timer_io_init(77); _delay_ms(480); 
20
Timer_io_init(77); _delay_ms(480); 
21
Timer_io_init(69); _delay_ms(480); 
22
Timer_io_init(69); _delay_ms(480); 
23
Timer_io_init(69); _delay_ms(480); 
24
Timer_io_init(69); _delay_ms(480); 
25
Timer_io_init(69); _delay_ms(480); 
26
Timer_io_init(69); _delay_ms(480); 
27
Timer_io_init(69); _delay_ms(480); 
28
Timer_io_init(69); _delay_ms(480); 
29
Timer_io_init(92); _delay_ms(480); 
30
Timer_io_init(92); _delay_ms(480); 
31
Timer_io_init(92); _delay_ms(480); 
32
Timer_io_init(92); _delay_ms(480); 
33
Timer_io_init(69); _delay_ms(480); 
34
Timer_io_init(69); _delay_ms(480); 
35
Timer_io_init(69); _delay_ms(480); 
36
Timer_io_init(69); _delay_ms(480); 
37
Timer_io_init(116); _delay_ms(480); 
38
Timer_io_init(311); _delay_ms(960); 
39
Timer_io_init(311); _delay_ms(160); 
40
Timer_io_init(311); _delay_ms(160); 
41
Timer_io_init(369); _delay_ms(160); 
42
Timer_io_init(369); _delay_ms(160); 
43
Timer_io_init(369); _delay_ms(160); 
44
Timer_io_init(415); _delay_ms(160); 
45
Timer_io_init(466); _delay_ms(480); 
46
Timer_io_init(415); _delay_ms(480); 
47
Timer_io_init(369); _delay_ms(320); 
48
Timer_io_init(311); _delay_ms(160); 
49
Timer_io_init(116); _delay_ms(480); 
50
Timer_io_init(311); _delay_ms(960); 
51
Timer_io_init(311); _delay_ms(160); 
52
Timer_io_init(311); _delay_ms(160); 
53
Timer_io_init(369); _delay_ms(160); 
54
Timer_io_init(369); _delay_ms(160); 
55
Timer_io_init(369); _delay_ms(160); 
56
Timer_io_init(415); _delay_ms(160); 
57
Timer_io_init(466); _delay_ms(480); 
58
Timer_io_init(415); _delay_ms(480); 
59
Timer_io_init(369); _delay_ms(320); 
60
Timer_io_init(311); _delay_ms(160); 
61
Timer_io_init(103); _delay_ms(480); 
62
Timer_io_init(277); _delay_ms(960); 
63
Timer_io_init(277); _delay_ms(160); 
64
Timer_io_init(277); _delay_ms(160); 
65
Timer_io_init(311); _delay_ms(160); 
66
Timer_io_init(311); _delay_ms(160); 
67
Timer_io_init(311); _delay_ms(160); 
68
Timer_io_init(233); _delay_ms(160); 
69
Timer_io_init(311); _delay_ms(480); 
70
Timer_io_init(369); _delay_ms(480); 
71
Timer_io_init(311); _delay_ms(320); 
72
Timer_io_init(277); _delay_ms(160); 
73
Timer_io_init(138); _delay_ms(480); 
74
Timer_io_init(466); _delay_ms(480); 
75
Timer_io_init(466); _delay_ms(480); 
76
Timer_io_init(466); _delay_ms(160); 
77
Timer_io_init(466); _delay_ms(160); 
78
Timer_io_init(554); _delay_ms(160); 
79
Timer_io_init(554); _delay_ms(160); 
80
Timer_io_init(554); _delay_ms(160); 
81
Timer_io_init(138); _delay_ms(160); 
82
Timer_io_init(415); _delay_ms(480); 
83
Timer_io_init(622); _delay_ms(480); 
84
Timer_io_init(622); _delay_ms(160); 
85
Timer_io_init(622); _delay_ms(160); 
86
Timer_io_init(739); _delay_ms(160); 
87
Timer_io_init(116); _delay_ms(480); 
88
Timer_io_init(77); _delay_ms(480); 
89
Timer_io_init(155); _delay_ms(480); 
90
Timer_io_init(311); _delay_ms(160); 
91
Timer_io_init(311); _delay_ms(160); 
92
Timer_io_init(369); _delay_ms(160); 
93
Timer_io_init(369); _delay_ms(160); 
94
Timer_io_init(77); _delay_ms(80); 
95
Timer_io_init(369); _delay_ms(80); 
96
Timer_io_init(116); _delay_ms(160); 
97
Timer_io_init(77); _delay_ms(480); 
98
Timer_io_init(155); _delay_ms(480); 
99
Timer_io_init(369); _delay_ms(320); 
100
Timer_io_init(77); _delay_ms(160); 
101
Timer_io_init(116); _delay_ms(480); 
102
Timer_io_init(77); _delay_ms(480); 
103
Timer_io_init(155); _delay_ms(480); 
104
Timer_io_init(311); _delay_ms(160); 
105
Timer_io_init(311); _delay_ms(160); 
106
Timer_io_init(369); _delay_ms(160); 
107
Timer_io_init(369); _delay_ms(160); 
108
Timer_io_init(77); _delay_ms(80); 
109
Timer_io_init(369); _delay_ms(80); 
110
Timer_io_init(116); _delay_ms(160); 
111
Timer_io_init(77); _delay_ms(480); 
112
Timer_io_init(155); _delay_ms(480); 
113
Timer_io_init(116); _delay_ms(320); 
114
Timer_io_init(77); _delay_ms(160); 
115
Timer_io_init(116); _delay_ms(320); 
116
Timer_io_init(103); _delay_ms(160); 
117
Timer_io_init(69); _delay_ms(480); 
118
Timer_io_init(138); _delay_ms(480); 
119
Timer_io_init(277); _delay_ms(160); 
120
Timer_io_init(277); _delay_ms(160); 
121
Timer_io_init(311); _delay_ms(160); 
122
Timer_io_init(311); _delay_ms(160); 
123
Timer_io_init(69); _delay_ms(80); 
124
Timer_io_init(311); _delay_ms(80); 
125
Timer_io_init(103); _delay_ms(160); 
126
Timer_io_init(69); _delay_ms(480); 
127
Timer_io_init(174); _delay_ms(480); 
128
Timer_io_init(311); _delay_ms(320); 
129
Timer_io_init(69); _delay_ms(160); 
130
Timer_io_init(138); _delay_ms(480); 
131
Timer_io_init(138); _delay_ms(480); 
132
Timer_io_init(138); _delay_ms(480); 
133
Timer_io_init(466); _delay_ms(160); 
134
Timer_io_init(466); _delay_ms(160); 
135
Timer_io_init(138); _delay_ms(160); 
136
Timer_io_init(554); _delay_ms(160); 
137
Timer_io_init(554); _delay_ms(160); 
138
Timer_io_init(103); _delay_ms(160); 
139
Timer_io_init(103); _delay_ms(480); 
140
Timer_io_init(103); _delay_ms(480); 
141
Timer_io_init(622); _delay_ms(160); 
142
Timer_io_init(622); _delay_ms(160); 
143
Timer_io_init(103); _delay_ms(160); 
144
Timer_io_init(116); _delay_ms(480); 
145
Timer_io_init(77); _delay_ms(480); 
146
Timer_io_init(155); _delay_ms(480); 
147
Timer_io_init(155); _delay_ms(160); 
148
Timer_io_init(311); _delay_ms(160); 
149
Timer_io_init(184); _delay_ms(160); 
150
Timer_io_init(184); _delay_ms(160); 
151
Timer_io_init(311); _delay_ms(160); 
152
Timer_io_init(207); _delay_ms(160); 
153
Timer_io_init(233); _delay_ms(480); 
154
Timer_io_init(207); _delay_ms(480); 
155
Timer_io_init(184); _delay_ms(320); 
156
Timer_io_init(155); _delay_ms(160); 
157
Timer_io_init(77); _delay_ms(480); 
158
Timer_io_init(77); _delay_ms(480); 
159
Timer_io_init(369); _delay_ms(320); 
160
Timer_io_init(155); _delay_ms(160); 
161
Timer_io_init(155); _delay_ms(160); 
162
Timer_io_init(311); _delay_ms(160); 
163
Timer_io_init(184); _delay_ms(160); 
164
Timer_io_init(184); _delay_ms(160); 
165
Timer_io_init(311); _delay_ms(160); 
166
Timer_io_init(207); _delay_ms(160); 
167
Timer_io_init(233); _delay_ms(480); 
168
Timer_io_init(207); _delay_ms(480); 
169
Timer_io_init(184); _delay_ms(320); 
170
Timer_io_init(155); _delay_ms(160); 
171
Timer_io_init(69); _delay_ms(480); 
172
Timer_io_init(69); _delay_ms(480); 
173
Timer_io_init(369); _delay_ms(320); 
174
Timer_io_init(138); _delay_ms(160); 
175
Timer_io_init(138); _delay_ms(160); 
176
Timer_io_init(277); _delay_ms(160); 
177
Timer_io_init(155); _delay_ms(160); 
178
Timer_io_init(155); _delay_ms(160); 
179
Timer_io_init(277); _delay_ms(160); 
180
Timer_io_init(116); _delay_ms(160); 
181
Timer_io_init(155); _delay_ms(480); 
182
Timer_io_init(184); _delay_ms(480); 
183
Timer_io_init(155); _delay_ms(320); 
184
Timer_io_init(138); _delay_ms(160); 
185
Timer_io_init(369); _delay_ms(320); 
186
Timer_io_init(138); _delay_ms(160); 
187
Timer_io_init(466); _delay_ms(480); 
188
Timer_io_init(138); _delay_ms(480); 
189
Timer_io_init(466); _delay_ms(160); 
190
Timer_io_init(466); _delay_ms(160); 
191
Timer_io_init(138); _delay_ms(160); 
192
Timer_io_init(554); _delay_ms(160); 
193
Timer_io_init(554); _delay_ms(160); 
194
Timer_io_init(103); _delay_ms(160); 
195
Timer_io_init(103); _delay_ms(480); 
196
Timer_io_init(103); _delay_ms(480); 
197
Timer_io_init(622); _delay_ms(160); 
198
Timer_io_init(622); _delay_ms(160); 
199
Timer_io_init(103); _delay_ms(160); 
200
Timer_io_init(116); _delay_ms(480); 
201
Timer_io_init(77); _delay_ms(480); 
202
Timer_io_init(155); _delay_ms(480); 
203
Timer_io_init(155); _delay_ms(160); 
204
Timer_io_init(311); _delay_ms(160); 
205
Timer_io_init(184); _delay_ms(160); 
206
Timer_io_init(184); _delay_ms(160); 
207
Timer_io_init(311); _delay_ms(160); 
208
Timer_io_init(207); _delay_ms(160); 
209
Timer_io_init(233); _delay_ms(480); 
210
Timer_io_init(207); _delay_ms(480); 
211
Timer_io_init(184); _delay_ms(320); 
212
Timer_io_init(155); _delay_ms(160); 
213
Timer_io_init(77); _delay_ms(480); 
214
Timer_io_init(77); _delay_ms(480); 
215
Timer_io_init(155); _delay_ms(480); 
216
Timer_io_init(155); _delay_ms(160); 
217
Timer_io_init(311); _delay_ms(160); 
218
Timer_io_init(184); _delay_ms(160); 
219
Timer_io_init(184); _delay_ms(160); 
220
Timer_io_init(311); _delay_ms(160); 
221
Timer_io_init(207); _delay_ms(160); 
222
Timer_io_init(233); _delay_ms(480); 
223
Timer_io_init(207); _delay_ms(480); 
224
Timer_io_init(184); _delay_ms(320); 
225
Timer_io_init(155); _delay_ms(160); 
226
Timer_io_init(69); _delay_ms(480); 
227
Timer_io_init(69); _delay_ms(480); 
228
Timer_io_init(138); _delay_ms(480); 
229
Timer_io_init(138); _delay_ms(160); 
230
Timer_io_init(277); _delay_ms(160); 
231
Timer_io_init(155); _delay_ms(160); 
232
Timer_io_init(155); _delay_ms(160); 
233
Timer_io_init(277); _delay_ms(160); 
234
Timer_io_init(116); _delay_ms(160); 
235
Timer_io_init(155); _delay_ms(480); 
236
Timer_io_init(184); _delay_ms(480); 
237
Timer_io_init(155); _delay_ms(320); 
238
Timer_io_init(138); _delay_ms(160); 
239
Timer_io_init(369); _delay_ms(320); 
240
Timer_io_init(138); _delay_ms(160); 
241
Timer_io_init(138); _delay_ms(480); 
242
Timer_io_init(138); _delay_ms(480); 
243
Timer_io_init(466); _delay_ms(160); 
244
Timer_io_init(466); _delay_ms(160); 
245
Timer_io_init(138); _delay_ms(160); 
246
Timer_io_init(554); _delay_ms(160); 
247
Timer_io_init(554); _delay_ms(160); 
248
Timer_io_init(103); _delay_ms(160); 
249
Timer_io_init(103); _delay_ms(480); 
250
Timer_io_init(103); _delay_ms(480); 
251
Timer_io_init(622); _delay_ms(160); 
252
Timer_io_init(622); _delay_ms(160); 
253
Timer_io_init(103); _delay_ms(160); 
254
Timer_io_init(116); _delay_ms(480); 
255
Timer_io_init(77); _delay_ms(480); 
256
Timer_io_init(155); _delay_ms(480); 
257
Timer_io_init(622); _delay_ms(160); 
258
}

Hoffe ich konnte meine unzureichende Dokumentation verbessern.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.