Hallo Leute, da ist der Port Support 2 2
Paketprojekt habe ich an dieses angehängt 3 3
Video, also werde ich dich einfach durchziehen 4 4
wie gesagt dieser abschnitt ist nicht zu unterrichten 5 5
Sie, wie man Peripherietreiber schreibt, wenn 6 6
Sie möchten lernen, wie Sie das tun können 7 7
sende mir eine Nachricht, die ich dir beibringe 8 8
Tag, wie man einen Peripherietreiber schreibt 9 9
Aber der Schwerpunkt des Kurses liegt auf 10 10
Erstellen von Echtzeitanwendungen und -systemen 11 11
Ich werde diesen Abschnitt also sehr kurz halten und 12 12
dann springen wir zurück zum arm der hauptleitung 13 13
Agenda also nur um dir ein kurzes zu geben 14 14
Überblick über das Port Support Package 15 15
Wenn du den Arm herunterlädst, habe ich die bsp 16 16
an das video angehängt siehst du eine 17 17
Anzahl der Dateien Ich werde zwei anhängen 18 18
Versionen und ich werde beide Versionen erklären 19 19
Also, wenn Sie Version 1 öffnen, ist das ich 20 20
denke, es wird PSP v2 heißen, wenn 21 21
Sie öffnen Version 2 TM4C 1-2-3 PSP 22 22
Version 2 gibt es eine Reihe von Dateien 23 23
Beginnen wir aber mit dem abstrakten Punkt 24 24
txt so beschreibt die Zusammenfassung nur die 25 25
Pin-Verbindung im Grunde werden wir 26 26
Wir werden eine Reihe von aktivieren 27 27
Hardware-Geräte, mit denen wir testen und ausführen können 28 28
unsere Echtzeitanwendungen einer von ihnen 29 29
ist eine Sonde, für die wir initialisieren werden 30 30
GPIO-Pins und wir werden sie als verwenden 31 31
Sonden, was wir tun werden, ist, wir sind 32 32
Ich werde diese Stifte setzen, um umzuschalten und wir 33 33
wenn wir die Frequenz von a überprüfen wollen 34 34
bestimmten Thread, in dem wir was laufen 35 35
andere frequenz ist genau wir gerade 36 36
Setzen Sie diese Sonde in diesen Faden und 37 37
dann verwenden wir einen tatsächlichen oder Silla-Bereich, um 38 38
Ich werde erklären, was ich meine 39 39
Wir haben also die Sonde, die wir verwenden werden 40 40
Port Port C Pin 0 Pin 1 Pin auf Pin 3 als 41 41
Die Sonde schaut auf die Apis der Sonde 42 42
sehr bald und du verstehst mehr und 43 43
dann haben wir diese Stifte zum Initialisieren 44 44
das Grafikdisplay haben wir PA - PA genannt 45 45
5 PS 7 PS 6 und PA 3, wenn Sie die SD haben 46 46
7 735 nur durch Verbinden 47 47
Stifte zu diesen GPIO-Stiften können Sie es bekommen 48 48
Arbeite ohne Hektik 49 49
und dann werden wir einen ADC von verwenden 50 50
natürlich zum experimentieren und mit dem ADC 51 51
initialisiert ist also mit P III verbunden 52 52
wenn Sie Ihre Hardware tun 53 53
anschlüsse kannst du einfach an die kommen 54 54
Vertrag txt, um so jetzt einen Blick zu werfen 55 55
Gehen wir zum eigentlichen Board Support 56 56
Paket Ich werde mit der Schnittstelle beginnen 57 57
Datei der BSP Punkt H Ich werde hierher kommen 58 58
und diesen herbst gibt es hier im grunde 59 59
eine Übersicht über einige der Arm einige von 60 60
Die Treiber, die wir initialisiert haben, haben wir 61 61
Habe das RCC hier, das wird helfen 62 62
uns die Systemfrequenz zu ändern 63 63
Hier gibt es eine Funktion, die uns erlaubt 64 64
um unsere Systemfrequenz auf 80 zu verschieben 65 65
Megahertz, wenn wir es brauchen 66 66
wir können wir können die API verwenden und wegen 67 67
dass wir Treiber für das RCC schreiben mussten 68 68
Modul verwenden wir die Allzweckzeit 69 69
RA sowie Zeit r3 und dann 70 70
Wir verwenden eine breite Zeit, warum die Timer sind 71 71
32-Bit-Timer und sie können 64-Bit sein 72 72
Zeit, als ob Sie zwei von ihnen wir verbinden 73 73
Nutze auch diese Art von Zeit und wir nutzen sie 74 74
ein TC 0 und dann SSI 0 zur Bereitstellung des 75 75
Verbindung zum LCD-Display und dann 76 76
Wie ich bereits erwähnte, verwenden wir GPIO 77 77
Unser Sondenport, das sind nur einige davon 78 78
definierte Aussage für Konstante 79 79
Parameter zur Initialisierung des RCC 80 80
Modul so haben wir das und wir haben ein 81 81
Standard API zur Initialisierung des Timers 82 82
hier ist das sehr einfach wir verwenden 83 83
dies, um den allgemeinen Zweck zu initialisieren 84 84
breiter timer 5 und wir haben diesen mikro bekommen 85 85
diese Funktion, die verwendet werden, um eine zu bekommen 86 86
Systemzeit werden wir sehen, wie es ist 87 87
angewendet, wenn wir in unserer Zeitschrift entwerfen 88 88
Threads oder wenn wir regelmäßig ausgeführt wurden 89 89
Anwendungen und dieser hier ist Timer 90 90
3a verwenden wir die Zeit a 3a verwenden wir einen anderen Timer 91 91
hier timer 2 a und wir haben diese funktion 92 92
Hier wird diese Funktion verwendet, um die 93 93
Ergebnis der ADC-Konvertierung und von 94 94
Natürlich haben wir diese Funktion dazu 95 95
Initialisieren Sie den ADC und dann diesen 96 96
Funktion, die ich erwähnt habe 97 97
früher wird uns das helfen 98 98
Konfigurieren Sie die Systemuhr so, dass sie bei 80 ausgeführt wird 99 99
Megahertz und wir haben eine verzögerte MS 100 100
Funktion, die Millisekunden liefert 101 101
Verzögerung werden wir die Umsetzung von sehen 102 102
all diese API Slater und natürlich wir 103 103
müssen darin für GPIO initialisieren prüfen 104 104
C-Pins als Ausgang und dann haben wir Sonde 105 105
CH 0 ist ein einfaches Umschalten von Pin Null 106 106
Ein- und Ausschalten und Sonde ch1 ist 107 107
tako pin 1 und dann ch2 tonga auf 108 108
und natürlich spricht Sonde CH 3 Pin 109 109
3 Das ist also so, wie ich sagte, ich gehe 110 110
zwei Versionen des Ports Support haben 111 111
Paket 112 112
diese version hab ich wie du siehst 113 113
trennte alle Module vom LCD 114 114
Modul der Grund dafür ist, dass, wenn ich hinzufüge 115 115
die LCD-Initialisierungsparameter und 116 116
treiber auf das unmögliche paket drauf 117 117
wird so ein sehr sehr langes dokument 118 118
wird verwirrender und Sie wissen mehr 119 119
schwer zu verfolgen also was ich tue ist 120 120
Ich habe das LCD, das ich erstellt habe, getrennt 121 121
neue Datei hier als LCD bekannt 122 122
unterstreiche SD 7 7 3 5 Punkt C und es Punkt H 123 123
Datei und was ich tue, ist, ich habe alles gesetzt 124 124
die Initialisierungsparameter und 125 125
Funktionen für das LCD in diesen Dateien und 126 126
Ich rufe diese Datei mit Punkt H in der an 127 127
schlechtes Support-Paket also, wenn Sie hierher kommen 128 128
mal sehen, ja, ich repariere das hier 129 129
so können wir entweder diese beiden und nennen 130 130
die Hauptdatei, die enthalten soll 131 131
unsere Fäden und andere Dinge oder wir können 132 132
schneide es einfach ab und rufe es dann in dir auf 133 133
das arme support paket damit bei uns 134 134
Das Board Support Package importieren wir 135 135
automatisch die Treiber für die 136 136
LCD auch so schneiden Sie es und kleben Sie die Haare 137 137
so und es funktioniert immer noch genauso 138 138
So kann ich wieder aufbauen und du siehst ich immer noch 139 139
habe null Fehler richtig, das ist also die 140 140
Das ist die Interface-Datei 141 141
Implementierungen der APIs wir gerade 142 142
angeschaut und dazu kommen wir heute 143 143
Punkt C für 144 144
Fangen wir also mit dem ABC 0 an 145 145
Darin ist dies ein Standard-ADC 146 146
Initialisierung Wir initialisieren einen ADC 0 147 147
die mit PE 3 verbunden ist, initialisieren wir 148 148
es als alternative Funktion ADC also ja 149 149
das ist für die initialisierung und das 150 150
ist die Funktion, die den ADC zurückgibt 151 151
Resort und es bringt Sie in 32 Sie zurück 152 152
Weiß wie gesagt wenn du willst 153 153
Verstehe, wie das geschrieben steht, wenn du 154 154
Ich möchte im Allgemeinen wissen, wie man schreibt 155 155
Peripherietreiber schickst du mir ein 156 156
Nachricht, die ich gerne entgegennehme 157 157
Sie durch und Sie können auch überprüfen 158 158
cortex-m comm Ich gebe Unterricht, wie es geht 159 159
Schreiben Sie periphere Treiber gibt es eine 160 160
Abschnitt über kostenlose Lektionen, wo diese 161 161
Dinge werden so erklärt und geschrieben 162 162
die Sonde drin und das ist ein Standard 163 163
GPIO in es begann mit der Initialisierung 164 164
den GPIO-Port, den wir hier in Port B verwenden 165 165
Deshalb initialisieren wir eine Uhr für den Port 166 166
P und dann setzen wir den CH 0 CH 1 CH 2 CH 167 167
3 als Ausgangspins und dann digital 168 168
Aktivieren Sie sie dann danach ist dies die 169 169
die Implementierung von Sonde CH 0 ist es ein 170 170
Einfach ist ein Stonker und Sonde CH 1 171 171
Ich werde nur kopieren 172 172
das legte es hier 173 173
tako ch1 und tonko ch2 ja der grund 174 174
warum dieser Code unvollständig aussieht und ich bin 175 175
keine näheren angaben, da ich alle getestet habe 176 176
davon für das stm32 board so scheint es a 177 177
Bit redundant, um genau das gleiche zu tun 178 178
was für die tiva c board und das ist 179 179
die Implementierung der Systemkonfiguration und 180 180
hier haben wir die verzögerungsfunktion da 181 181
Eine normale Initialisierung des von uns verwendeten Timers 182 182
Mal möchte ich eine Delay-Funktion bereitstellen 183 183
und wir initialisieren die Zeit r2 für Interrupts 184 184
Wir werden Timer verwenden, um uns 185 185
Hintergrund Thread später in der in der 186 186
natürlich sowie timer 3 haben wir initialisiert 187 187
es auch für die Unterbrechung, ja 188 188
Bereitstellung von 500 Hertz 189 189
Ich werde das später auch benutzen und 190 190
dann der weite Timer, von dem ich gesprochen habe 191 191
Wir werden dies nutzen, um die Zeit zu halten 192 192
des Systems ist dies die Schnittstellendatei 193 193
vom lcd und hier drüben hab ich gerade benutzt 194 194
die find-Anweisung, um symbolisch zu geben 195 195
Namen zu den GPIO-Pins, die wir brauchen 196 196
PA sieben PA 3 PA sechs und ich habe definiert 197 197
Ich habe sie alle neu definiert, damit ich kann 198 198
Verwenden Sie einfach diese Namen, um auf sie zu verweisen 199 199
Wir haben auch eine define-Anweisung für erstellt 200 200
bestimmte anweisungen sowas 201 201
Setzen von RS-Pin Null Setzen des Rücksetzens 202 202
Pin zum Absenken des mittleren Befehls auf den 203 203
symbolischer name also einfach durch anrufen der 204 204
symbolischer Name dieser Anweisung ist 205 205
ausgeführt und diese sind konstant farbig 206 206
Definitionen und diese sind einige 207 207
Definitionen zu bestimmten Registern der 208 208
LCD-Bildschirm und diese Schriftart ist die Telefone 209 209
sind bereit, es ist lange her, das sind diese 210 210
ap steht für Standardgrafiken zum Zeichnen 211 211
und Färben und Löschen des Bildschirms und 212 212
Punkte etc. wieder aufzeichnen würde ich nicht gehen 213 213
viel in die Details, wenn Sie welche brauchen 214 214
Hilfe, wenn Sie ein LCD-Projekt erstellen 215 215
und Sie müssen zeigen, dass Sie können 216 216
Schreibe LCD-Treiber sende mir eine Nachricht 217 217
das ist also ein ende hier drüben ich nur ich 218 218
Führen Sie einfach einen kurzen Test durch, indem Sie eine Verbindung herstellen 219 219
mein LCD-Bildschirm und Anschließen meines ADC an P 220 220
III und dann diesen Code ausführen und wenn 221 221
Wenn du das tust, wirst du sehen, dass das was ist 222 222
Sie gelangen auf den Bildschirm, während Sie die bewegen 223 223
Mit dem ADC-Regler sehen Sie den eingezeichneten Wert 224 224
der Bildschirm wie Sie in diesem sehen 225 225
Video so ist dies ein sehr kurzes und 226 226
Ich werde in der nächsten Lektion sehen