Forum: Digitale Signalverarbeitung / DSP / Machine Learning RS 485 mit LTC2850


von Student (Gast)


Lesenswert?

#hallo, da bin ich wieder. Mir wurde hier ja schon mit den Interrupts 
geholfen, dafur bin ich auch dankbar. Jetzt habe ich aber ein anderes 
Problemchen. Ich soll die RS485 Schnittstelle zum laufen bringen.

Es sieht folgendermaßen aus. ich benutze immer noch den TMS320F2806. Die 
Übertragung funktioniert soweit mit der USB Schnittstelle. Jetzt muss 
ich das ganze über RS485 zum Laufen bringen um mehrere Geräte ansprechen 
zu können.

Der komplette Code is von der TI Homepage. Für die USB Kommunikation 
wurde folgendes implementiert,
1
//  GPIO-28 - PIN FUNCTION = SCI-RX
2
  GpioCtrlRegs.GPAMUX2.bit.GPIO28 = 1;  // 0=GPIO,  1=SCIRX-A,  2=Resv,  3=TZ5
3
//  GpioCtrlRegs.GPADIR.bit.GPIO28 = 1;    // 1=OUTput,  0=INput 
4
//  GpioDataRegs.GPACLEAR.bit.GPIO28 = 1;  // uncomment if --> Set Low initially
5
//  GpioDataRegs.GPASET.bit.GPIO28 = 1;    // uncomment if --> Set High initially
6
//--------------------------------------------------------------------------------------
7
//  GPIO-29 - PIN FUNCTION = SCI-TX
8
  GpioCtrlRegs.GPAMUX2.bit.GPIO29 = 1;  // 0=GPIO,  1=SCITXD-A,  2=Resv,  3=TZ6
9
//  GpioCtrlRegs.GPADIR.bit.GPIO29 = 0;    // 1=OUTput,  0=INput 
10
//  GpioDataRegs.GPACLEAR.bit.GPIO29 = 1;  // uncomment if --> Set Low initially
11
//  GpioDataRegs.GPASET.bit.GPIO29 = 1;    // uncomment if --> Set High initially

GPIO 28 ist für das Empfangen zuständig, GPIO 29 für das Senden. Klappt 
alles wurderbar.

Jetzt benutze ich den LTC2850CDD_PBF 
http://pdf1.alldatasheet.com/datasheet-pdf/view/266321/LINER/LTC2850CDD.html 
um die Datem vom PC zu meinem Gerät seriell zu senden.

Hardware ist folgendermaßen konfiguriert für RS485,

GPIO 11 --> RX485
GPIO 09 --> TX485
GPIO 21 --> DE485 (1 --> Senden, 0 --> Empfangsmodus, da half-duplex)

ich wollte erstmal einfach pausenlos Daten senden um zu sehen ob 
überhaupt was am HTerm ankommt, also setze USB auf null,
1
//  GPIO-28 - PIN FUNCTION = SCI-RX
2
  GpioCtrlRegs.GPAMUX2.bit.GPIO28 = 0;  // 0=GPIO,  1=SCIRX-A,  2=Resv,  3=TZ5
3
//  GpioCtrlRegs.GPADIR.bit.GPIO28 = 1;    // 1=OUTput,  0=INput 
4
//  GpioDataRegs.GPACLEAR.bit.GPIO28 = 1;  // uncomment if --> Set Low initially
5
//  GpioDataRegs.GPASET.bit.GPIO28 = 1;    // uncomment if --> Set High initially
6
//--------------------------------------------------------------------------------------
7
//  GPIO-29 - PIN FUNCTION = SCI-TX
8
  GpioCtrlRegs.GPAMUX2.bit.GPIO29 = 0;  // 0=GPIO,  1=SCITXD-A,  2=Resv,  3=TZ6
9
//  GpioCtrlRegs.GPADIR.bit.GPIO29 = 0;    // 1=OUTput,  0=INput 
10
//  GpioDataRegs.GPACLEAR.bit.GPIO29 = 1;  // uncomment if --> Set Low initially
11
//  GpioDataRegs.GPASET.bit.GPIO29 = 1;    // uncomment if --> Set High initially

aktiviere RS 485 GPIOs,
1
//  GPIO-09 - PIN FUNCTION = --Spare--
2
  GpioCtrlRegs.GPAMUX1.bit.GPIO9 = 2;    // 0=GPIO,  1=EPWM5B,  2=SCITX-B,  3=ECAP3
3
  GpioCtrlRegs.GPADIR.bit.GPIO9 = 1;    // 1=OUTput,  0=INput 
4
//  GpioDataRegs.GPACLEAR.bit.GPIO9 = 1;  // uncomment if --> Set Low initially
5
//  GpioDataRegs.GPASET.bit.GPIO9 = 1;    // uncomment if --> Set High initially
6
7
//  GPIO-11 - PIN FUNCTION = --Spare--
8
  GpioCtrlRegs.GPAMUX1.bit.GPIO11 = 2;  // 0=GPIO,  1=EPWM6B,  2=SCIRX-B,  3=ECAP4
9
//  GpioCtrlRegs.GPADIR.bit.GPIO11 = 0;    // 1=OUTput,  0=INput 
10
//  GpioDataRegs.GPACLEAR.bit.GPIO11 = 1;  // uncomment if --> Set Low initially
11
//  GpioDataRegs.GPASET.bit.GPIO11 = 1;    // uncomment if --> Set High initially
12
13
//  GPIO-21 - PIN FUNCTION = --Spare--
14
  GpioCtrlRegs.GPAMUX2.bit.GPIO21 = 1;  // 0=GPIO,  1=EQEPB-1,  2=SPISOMI-C,  3=CANRX-B
15
//  GpioCtrlRegs.GPADIR.bit.GPIO21 = 0;    // 1=OUTput,  0=INput 
16
//  GpioDataRegs.GPACLEAR.bit.GPIO21 = 1;  // uncomment if --> Set Low initially
17
//  GpioDataRegs.GPASET.bit.GPIO21 = 1;    // uncomment if --> Set High initially

kann aber immer noch nix am PC empfange. Habe unterschiedliche 
konfigurationen des GPIO 21 ausprobiert, blieb alles erfolgslos.

Muss ich bei der Implementierung was besonderes beachten ?

Wäre für jede Hilfe dankbar.

Gruß

von Peter D. (pdiener) Benutzerseite


Lesenswert?

>Muss ich bei der Implementierung was besonderes beachten ?

Ja, EALLOW und EDIS. Viele GPIO Register sind damit gesichert.
Ohne das korrekt zu verwenden, passiert die gewünschte 
GPIO-Konfiguration einfach nicht. Sie wird einfach still ignoriert.

Grüße,

Peter

von Student (Gast)


Lesenswert?

Hi Peter, EALLOW und EDIS sind drin im code, hier der Ausschnitt der 
Funktion.
1
//--------------------------------------------------------------------
2
//  Configure Device for target Application Here
3
//--------------------------------------------------------------------
4
void DeviceInit(void)
5
{
6
  WDogDisable();   // Disable the watchdog initially
7
  DINT;      // Global Disable all Interrupts
8
  IER = 0x0000;  // Disable CPU interrupts
9
  IFR = 0x0000;  // Clear all CPU interrupt flags
10
11
// SYSTEM CLOCK speed based on Crystal = 20 MHz
12
// 0xA =  100  MHz    (10)
13
// 0x9 =  90  MHz    (9)
14
// 0x8 =  80  MHz    (8)
15
// 0x7 =  70  MHz    (7)
16
// 0x6 =  60  MHz    (6)
17
// 0x5 =  50  MHz    (5)
18
// 0x4 =  40  MHz    (4)
19
// 0x3 =  30  MHz    (3)
20
// 0x2 =  20  MHz    (2)
21
22
  PLLset(0xA);  // choose from options above
23
24
// Initialise interrupt controller and Vector Table
25
// to defaults for now. Application ISR mapping done later.
26
  PieCntlInit();    
27
  PieVectTableInit();
28
29
30
   EALLOW; // below registers are "protected", allow access.
31
32
// HIGH / LOW SPEED CLOCKS prescale register settings
33
   SysCtrlRegs.HISPCP.all = 0x0002;    // Sysclk / 4 (25 MHz)
34
   SysCtrlRegs.LOSPCP.all = 0x0002;    // Sysclk / 4 (25 MHz)
35
   SysCtrlRegs.XCLK.bit.XCLKOUTDIV=2;
36
        
37
// PERIPHERAL CLOCK ENABLES 
38
//---------------------------------------------------
39
// If you are not using a peripheral you may want to switch
40
// the clock off to save power, i.e. set to =0 
41
// 
42
// Note: not all peripherals are available on all 280x derivates.
43
// Refer to the datasheet for your particular device. 
44
45
   SysCtrlRegs.PCLKCR0.bit.ADCENCLK = 1;    // ADC
46
   //------------------------------------------------
47
   SysCtrlRegs.PCLKCR0.bit.I2CAENCLK = 0;   // I2C
48
   //------------------------------------------------
49
   SysCtrlRegs.PCLKCR0.bit.SPIAENCLK=0;     // SPI-A
50
   SysCtrlRegs.PCLKCR0.bit.SPIBENCLK=0;     // SPI-B
51
   SysCtrlRegs.PCLKCR0.bit.SPICENCLK=0;     // SPI-C
52
   SysCtrlRegs.PCLKCR0.bit.SPIDENCLK=0;     // SPI-D
53
   //------------------------------------------------
54
   SysCtrlRegs.PCLKCR0.bit.SCIAENCLK=0;     // SCI-A  //mychanges was =1
55
   SysCtrlRegs.PCLKCR0.bit.SCIBENCLK=1;     // SCI-B  //       was =0
56
   //------------------------------------------------
57
   SysCtrlRegs.PCLKCR0.bit.ECANAENCLK=0;    // eCAN-A
58
   SysCtrlRegs.PCLKCR0.bit.ECANBENCLK=0;    // eCAN-B
59
   //------------------------------------------------
60
   SysCtrlRegs.PCLKCR1.bit.ECAP1ENCLK = 0;  // eCAP1
61
   SysCtrlRegs.PCLKCR1.bit.ECAP2ENCLK = 0;  // eCAP2
62
   SysCtrlRegs.PCLKCR1.bit.ECAP3ENCLK = 0;  // eCAP3
63
   SysCtrlRegs.PCLKCR1.bit.ECAP4ENCLK = 0;  // eCAP4
64
   //------------------------------------------------
65
   SysCtrlRegs.PCLKCR1.bit.EPWM1ENCLK = 0;   // ePWM1
66
   SysCtrlRegs.PCLKCR1.bit.EPWM2ENCLK = 0;   // ePWM2
67
   SysCtrlRegs.PCLKCR1.bit.EPWM3ENCLK = 0;   // ePWM3
68
   SysCtrlRegs.PCLKCR1.bit.EPWM4ENCLK = 0;   // ePWM4
69
   SysCtrlRegs.PCLKCR1.bit.EPWM5ENCLK = 0;   // ePWM5
70
   SysCtrlRegs.PCLKCR1.bit.EPWM6ENCLK = 0;   // ePWM6
71
   //------------------------------------------------
72
   SysCtrlRegs.PCLKCR1.bit.EQEP1ENCLK = 0;   // eQEP1
73
   SysCtrlRegs.PCLKCR1.bit.EQEP2ENCLK = 0;   // eQEP2
74
   //------------------------------------------------
75
   SysCtrlRegs.PCLKCR0.bit.TBCLKSYNC = 1;   // Enable TBCLK
76
   //------------------------------------------------
77
                                     
78
79
// GPIO (GENERAL PURPOSE I/O) CONFIG
80
//--------------------------------------------------------------------------------------
81
//--------------------------------------------------------------------------------------
82
// QUICK NOTES on USAGE:
83
//-----------------------
84
// If GpioCtrlRegs.GP?MUX?bit.GPIO?= 1, 2 or 3 (i.e. Non GPIO func), then leave
85
//  rest of lines commented
86
// If GpioCtrlRegs.GP?MUX?bit.GPIO?= 0 (i.e. GPIO func), then:
87
//  1) uncomment GpioCtrlRegs.GP?DIR.bit.GPIO? = ? and choose pin to be IN or OUT
88
//  2) If IN, can leave next to lines commented
89
//  3) If OUT, uncomment line with ..GPACLEAR.. to force pin LOW or
90
//         uncomment line with ..GPASET.. to force pin HIGH or
91
//--------------------------------------------------------------------------------------
92
//--------------------------------------------------------------------------------------
93
//  GPIO-00 - PIN FUNCTION = LTA3
94
  GpioCtrlRegs.GPAMUX1.bit.GPIO0 = 0;    // 0=GPIO,  1=EPWM1A,  2=Resv,  3=Resv
95
  GpioCtrlRegs.GPADIR.bit.GPIO0 = 1;    // 1=OUTput,  0=INput 
96
//  GpioDataRegs.GPACLEAR.bit.GPIO0 = 1;  // uncomment if --> Set Low initially
97
//  GpioDataRegs.GPASET.bit.GPIO0 = 1;    // uncomment if --> Set High initially
98
//--------------------------------------------------------------------------------------
99
//  GPIO-01 - PIN FUNCTION = SPIOD
100
  GpioCtrlRegs.GPAMUX1.bit.GPIO1 = 0;    // 0=GPIO,  1=EPWM1B,  2=SPISIMO-D,  3=Resv
101
  GpioCtrlRegs.GPADIR.bit.GPIO1 = 1;    // 1=OUTput,  0=INput 
102
//  GpioDataRegs.GPACLEAR.bit.GPIO1 = 1;  // uncomment if --> Set Low initially
103
//  GpioDataRegs.GPASET.bit.GPIO1 = 1;    // uncomment if --> Set High initially
104
//--------------------------------------------------------------------------------------
105
//  GPIO-02 - PIN FUNCTION = LTA2
106
  GpioCtrlRegs.GPAMUX1.bit.GPIO2 = 0;    // 0=GPIO,  1=EPWM2A,  2=Resv,  3=Resv
107
  GpioCtrlRegs.GPADIR.bit.GPIO2 = 1;    // 1=OUTput,  0=INput 
108
//  GpioDataRegs.GPACLEAR.bit.GPIO2 = 1;  // uncomment if --> Set Low initially
109
//  GpioDataRegs.GPASET.bit.GPIO2 = 1;    // uncomment if --> Set High initially
110
//--------------------------------------------------------------------------------------
111
//  GPIO-03 - PIN FUNCTION = --Spare--
112
  GpioCtrlRegs.GPAMUX1.bit.GPIO3 = 0;    // 0=GPIO,  1=EPWM2B,  2=SPISOMI-D,  3=Resv
113
  GpioCtrlRegs.GPADIR.bit.GPIO3 = 0;    // 1=OUTput,  0=INput 
114
//  GpioDataRegs.GPACLEAR.bit.GPIO3 = 1;  // uncomment if --> Set Low initially
115
//  GpioDataRegs.GPASET.bit.GPIO3 = 1;    // uncomment if --> Set High initially
116
//--------------------------------------------------------------------------------------
117
//  GPIO-04 - PIN FUNCTION = --Spare--
118
  GpioCtrlRegs.GPAMUX1.bit.GPIO4 = 0;    // 0=GPIO,  1=EPWM3A,  2=Resv,  3=Resv
119
  GpioCtrlRegs.GPADIR.bit.GPIO4 = 0;    // 1=OUTput,  0=INput 
120
//  GpioDataRegs.GPACLEAR.bit.GPIO4 = 1;  // uncomment if --> Set Low initially
121
//  GpioDataRegs.GPASET.bit.GPIO4 = 1;    // uncomment if --> Set High initially
122
//--------------------------------------------------------------------------------------
123
//  GPIO-05 - PIN FUNCTION = SPICLKD
124
  GpioCtrlRegs.GPAMUX1.bit.GPIO5 = 0;    // 0=GPIO,  1=EPWM3B,  2=SPICLK-D,  3=ECAP1
125
  GpioCtrlRegs.GPADIR.bit.GPIO5 = 1;    // 1=OUTput,  0=INput 
126
//  GpioDataRegs.GPACLEAR.bit.GPIO5 = 1;  // uncomment if --> Set Low initially
127
//  GpioDataRegs.GPASET.bit.GPIO5 = 1;    // uncomment if --> Set High initially
128
//--------------------------------------------------------------------------------------
129
//  GPIO-06 - PIN FUNCTION = LED_C2
130
  GpioCtrlRegs.GPAMUX1.bit.GPIO6 = 0;    // 0=GPIO,  1=EPWM4A,  2=SYNCI,  3=SYNCO
131
  GpioCtrlRegs.GPADIR.bit.GPIO6 = 1;    // 1=OUTput,  0=INput 
132
//  GpioDataRegs.GPACLEAR.bit.GPIO6 = 1;  // uncomment if --> Set Low initially
133
//  GpioDataRegs.GPASET.bit.GPIO6 = 1;    // uncomment if --> Set High initially
134
//--------------------------------------------------------------------------------------
135
//  GPIO-07 - PIN FUNCTION = --Spare--
136
  GpioCtrlRegs.GPAMUX1.bit.GPIO7 = 0;    // 0=GPIO,  1=EPWM4B,  2=SPISTE-D,  3=ECAP2
137
  GpioCtrlRegs.GPADIR.bit.GPIO7 = 0;    // 1=OUTput,  0=INput 
138
//  GpioDataRegs.GPACLEAR.bit.GPIO7 = 1;  // uncomment if --> Set Low initially
139
//  GpioDataRegs.GPASET.bit.GPIO7 = 1;    // uncomment if --> Set High initially
140
//--------------------------------------------------------------------------------------
141
//  GPIO-08 - PIN FUNCTION = --Spare--
142
  GpioCtrlRegs.GPAMUX1.bit.GPIO8 = 0;    // 0=GPIO,  1=EPWM5A,  2=CANTX-B,  3=ADCSOC-A
143
  GpioCtrlRegs.GPADIR.bit.GPIO8 = 1;    // 1=OUTput,  0=INput 
144
//  GpioDataRegs.GPACLEAR.bit.GPIO8 = 1;  // uncomment if --> Set Low initially
145
//  GpioDataRegs.GPASET.bit.GPIO8 = 1;    // uncomment if --> Set High initially
146
//--------------------------------------------------------------------------------------
147
//  GPIO-09 - PIN FUNCTION = --Spare--
148
//  GpioCtrlRegs.GPAPUD.bit.GPIO9 = 0;     // Enable pull-up for GPIO9  (SCITXDB)//mychanges
149
  GpioCtrlRegs.GPAMUX1.bit.GPIO9 = 2;    // 0=GPIO,  1=EPWM5B,  2=SCITX-B,  3=ECAP3
150
//  GpioCtrlRegs.GPADIR.bit.GPIO9 = 1;    // 1=OUTput,  0=INput 
151
//  GpioDataRegs.GPACLEAR.bit.GPIO9 = 1;  // uncomment if --> Set Low initially
152
//  GpioDataRegs.GPASET.bit.GPIO9 = 1;    // uncomment if --> Set High initially
153
//--------------------------------------------------------------------------------------
154
//  GPIO-10 - PIN FUNCTION = --Spare--
155
  GpioCtrlRegs.GPAMUX1.bit.GPIO10 = 0;  // 0=GPIO,  1=EPWM6A,  2=CANRX-B,  3=ADCSOC-B
156
  GpioCtrlRegs.GPADIR.bit.GPIO10 = 1;    // 1=OUTput,  0=INput 
157
//  GpioDataRegs.GPACLEAR.bit.GPIO10 = 1;  // uncomment if --> Set Low initially
158
//  GpioDataRegs.GPASET.bit.GPIO10 = 1;    // uncomment if --> Set High initially
159
//--------------------------------------------------------------------------------------
160
//  GPIO-11 - PIN FUNCTION = --Spare--
161
//  GpioCtrlRegs.GPAPUD.bit.GPIO11 = 0;    // Enable pull-up for GPIO11 (SCIRXDB)//mychanges
162
//  GpioCtrlRegs.GPAQSEL1.bit.GPIO11 = 3;  // Asynch input GPIO11 (SCIRXDB)//mychanges
163
  GpioCtrlRegs.GPAMUX1.bit.GPIO11 = 2;  // 0=GPIO,  1=EPWM6B,  2=SCIRX-B,  3=ECAP4
164
//  GpioCtrlRegs.GPADIR.bit.GPIO11 = 0;    // 1=OUTput,  0=INput 
165
//  GpioDataRegs.GPACLEAR.bit.GPIO11 = 1;  // uncomment if --> Set Low initially
166
//  GpioDataRegs.GPASET.bit.GPIO11 = 1;    // uncomment if --> Set High initially
167
//--------------------------------------------------------------------------------------
168
//  GPIO-21 - PIN FUNCTION = --Spare--
169
  GpioCtrlRegs.GPAMUX2.bit.GPIO21 = 0;  // 0=GPIO,  1=EQEPB-1,  2=SPISOMI-C,  3=CANRX-B
170
  GpioCtrlRegs.GPADIR.bit.GPIO21 = 0;    // 1=OUTput,  0=INput 
171
//  GpioDataRegs.GPACLEAR.bit.GPIO21 = 1;  // uncomment if --> Set Low initially
172
//  GpioDataRegs.GPASET.bit.GPIO21 = 1;    // uncomment if --> Set High initially
173
//--------------------------------------------------------------------------------------
174
//  GPIO-12 - PIN FUNCTION = --Spare--
175
  GpioCtrlRegs.GPAMUX1.bit.GPIO12 = 0;  // 0=GPIO,  1=TZ1,  2=CANTX-B,  3=SPISIMO-B
176
  GpioCtrlRegs.GPADIR.bit.GPIO12 = 1;    // 1=OUTput,  0=INput 
177
//  GpioDataRegs.GPACLEAR.bit.GPIO12 = 1;  // uncomment if --> Set Low initially
178
  GpioDataRegs.GPASET.bit.GPIO12 = 1;    // uncomment if --> Set High initially
179
//--------------------------------------------------------------------------------------
180
//  GPIO-13 - PIN FUNCTION = --Spare--
181
  GpioCtrlRegs.GPAMUX1.bit.GPIO13 = 0;  // 0=GPIO,  1=TZ2,  2=CANRX-B,  3=SPISOMI-B
182
  GpioCtrlRegs.GPADIR.bit.GPIO13 = 1;    // 1=OUTput,  0=INput 
183
//  GpioDataRegs.GPACLEAR.bit.GPIO13 = 1;  // uncomment if --> Set Low initially
184
//  GpioDataRegs.GPASET.bit.GPIO13 = 1;    // uncomment if --> Set High initially
185
//--------------------------------------------------------------------------------------
186
//  GPIO-14 - PIN FUNCTION = --Spare--
187
  GpioCtrlRegs.GPAMUX1.bit.GPIO14 = 0;  // 0=GPIO,  1=TZ3,  2=SCITX-B,  3=SPICLK-B
188
  GpioCtrlRegs.GPADIR.bit.GPIO14 = 1;    // 1=OUTput,  0=INput 
189
//  GpioDataRegs.GPACLEAR.bit.GPIO14 = 1;  // uncomment if --> Set Low initially
190
  GpioDataRegs.GPASET.bit.GPIO14 = 1;    // uncomment if --> Set High initially
191
//--------------------------------------------------------------------------------------
192
//  GPIO-15 - PIN FUNCTION = --Spare--
193
  GpioCtrlRegs.GPAMUX1.bit.GPIO15 = 0;  // 0=GPIO,  1=TZ4,  2=SCIRX-B,  3=SPISTE-B
194
  GpioCtrlRegs.GPADIR.bit.GPIO15 = 1;    // 1=OUTput,  0=INput 
195
//  GpioDataRegs.GPACLEAR.bit.GPIO15 = 1;  // uncomment if --> Set Low initially
196
  GpioDataRegs.GPASET.bit.GPIO15 = 1;    // uncomment if --> Set High initially
197
//--------------------------------------------------------------------------------------
198
//--------------------------------------------------------------------------------------
199
//  GPIO-16 - PIN FUNCTION = --Spare--
200
  GpioCtrlRegs.GPAMUX2.bit.GPIO16 = 0;  // 0=GPIO,  1=SPISIMO-A,  2=CANTX-B,  3=TZ5
201
  GpioCtrlRegs.GPADIR.bit.GPIO16 = 0;    // 1=OUTput,  0=INput 
202
//  GpioDataRegs.GPACLEAR.bit.GPIO16 = 1;  // uncomment if --> Set Low initially
203
//  GpioDataRegs.GPASET.bit.GPIO16 = 1;    // uncomment if --> Set High initially
204
//--------------------------------------------------------------------------------------
205
//  GPIO-17 - PIN FUNCTION = --Spare--
206
  GpioCtrlRegs.GPAMUX2.bit.GPIO17 = 0;  // 0=GPIO,  1=SPISOMI-A,  2=CANRX-B,  3=TZ6
207
  GpioCtrlRegs.GPADIR.bit.GPIO17 = 0;    // 1=OUTput,  0=INput 
208
//  GpioDataRegs.GPACLEAR.bit.GPIO17 = 1;  // uncomment if --> Set Low initially
209
//  GpioDataRegs.GPASET.bit.GPIO17 = 1;    // uncomment if --> Set High initially
210
//--------------------------------------------------------------------------------------
211
//  GPIO-18 - PIN FUNCTION = LED_C3
212
  GpioCtrlRegs.GPAMUX2.bit.GPIO18 = 0;  // 0=GPIO,  1=SPICLK-A,  2=SCITX-B,  3=Resv
213
  GpioCtrlRegs.GPADIR.bit.GPIO18 = 1;    // 1=OUTput,  0=INput 
214
//  GpioDataRegs.GPACLEAR.bit.GPIO18 = 1;  // uncomment if --> Set Low initially
215
//  GpioDataRegs.GPASET.bit.GPIO18 = 1;    // uncomment if --> Set High initially
216
//--------------------------------------------------------------------------------------
217
//  GPIO-19 - PIN FUNCTION = LED_C1
218
  GpioCtrlRegs.GPAMUX2.bit.GPIO19 = 0;  // 0=GPIO,  1=SPISTE-A,  2=SCIRX-B,  3=Resv
219
  GpioCtrlRegs.GPADIR.bit.GPIO19 = 1;    // 1=OUTput,  0=INput 
220
//  GpioDataRegs.GPACLEAR.bit.GPIO19 = 1;  // uncomment if --> Set Low initially
221
//  GpioDataRegs.GPASET.bit.GPIO19 = 1;    // uncomment if --> Set High initially
222
//--------------------------------------------------------------------------------------
223
//  GPIO-20 - PIN FUNCTION = --Spare--
224
  GpioCtrlRegs.GPAMUX2.bit.GPIO20 = 0;  // 0=GPIO,  1=EQEPA-1,  2=SPISIMO-C,  3=CANTX-B
225
  GpioCtrlRegs.GPADIR.bit.GPIO20 = 1;    // 1=OUTput,  0=INput 
226
//  GpioDataRegs.GPACLEAR.bit.GPIO20 = 1;  // uncomment if --> Set Low initially
227
//  GpioDataRegs.GPASET.bit.GPIO20 = 1;    // uncomment if --> Set High initially
228
229
//--------------------------------------------------------------------------------------
230
//  GPIO-22 - PIN FUNCTION = --Spare--
231
  GpioCtrlRegs.GPAMUX2.bit.GPIO22 = 0;  // 0=GPIO,  1=EQEPS-1,  2=SPICLK-C,  3=SCITX-B
232
  GpioCtrlRegs.GPADIR.bit.GPIO22 = 1;    // 1=OUTput,  0=INput 
233
//  GpioDataRegs.GPACLEAR.bit.GPIO22 = 1;  // uncomment if --> Set Low initially
234
//  GpioDataRegs.GPASET.bit.GPIO22 = 1;    // uncomment if --> Set High initially
235
//--------------------------------------------------------------------------------------
236
//  GPIO-23 - PIN FUNCTION = --Spare--
237
  GpioCtrlRegs.GPAMUX2.bit.GPIO23 = 0;  // 0=GPIO,  1=EQEPI-1,  2=SPISTE-C,  3=SCIRX-B
238
  GpioCtrlRegs.GPADIR.bit.GPIO23 = 0;    // 1=OUTput,  0=INput 
239
//  GpioDataRegs.GPACLEAR.bit.GPIO23 = 1;  // uncomment if --> Set Low initially
240
//  GpioDataRegs.GPASET.bit.GPIO23 = 1;    // uncomment if --> Set High initially
241
//--------------------------------------------------------------------------------------
242
//  GPIO-24 - PIN FUNCTION = --Spare--
243
  GpioCtrlRegs.GPAMUX2.bit.GPIO24 = 0;  // 0=GPIO,  1=ECAP1,  2=EQEPA-2,  3=SPISIMO-B
244
  GpioCtrlRegs.GPADIR.bit.GPIO24 = 1;    // 1=OUTput,  0=INput 
245
//  GpioDataRegs.GPACLEAR.bit.GPIO24 = 1;  // uncomment if --> Set Low initially
246
//  GpioDataRegs.GPASET.bit.GPIO24 = 1;    // uncomment if --> Set High initially
247
//--------------------------------------------------------------------------------------
248
//  GPIO-25 - PIN FUNCTION = --Spare--
249
  GpioCtrlRegs.GPAMUX2.bit.GPIO25 = 0;  // 0=GPIO,  1=ECAP2,  2=EQEPB-2,  3=SPISOMI-B
250
  GpioCtrlRegs.GPADIR.bit.GPIO25 = 0;    // 1=OUTput,  0=INput 
251
//  GpioDataRegs.GPACLEAR.bit.GPIO25 = 1;  // uncomment if --> Set Low initially
252
//  GpioDataRegs.GPASET.bit.GPIO25 = 1;    // uncomment if --> Set High initially
253
//--------------------------------------------------------------------------------------
254
//  GPIO-26 - PIN FUNCTION = --Spare--
255
  GpioCtrlRegs.GPAMUX2.bit.GPIO26 = 0;  // 0=GPIO,  1=ECAP3,  2=EQEPI-2,  3=SPICLK-B
256
  GpioCtrlRegs.GPADIR.bit.GPIO26 = 1;    // 1=OUTput,  0=INput 
257
//  GpioDataRegs.GPACLEAR.bit.GPIO26 = 1;  // uncomment if --> Set Low initially
258
  GpioDataRegs.GPASET.bit.GPIO26 = 1;    // uncomment if --> Set High initially
259
//--------------------------------------------------------------------------------------
260
//  GPIO-27 - PIN FUNCTION = --Spare--
261
  GpioCtrlRegs.GPAMUX2.bit.GPIO27 = 0;  // 0=GPIO,  1=ECAP4,  2=EQEPS-2,  3=SPISTE-B
262
  GpioCtrlRegs.GPADIR.bit.GPIO27 = 1;    // 1=OUTput,  0=INput 
263
//  GpioDataRegs.GPACLEAR.bit.GPIO27 = 1;  // uncomment if --> Set Low initially
264
//  GpioDataRegs.GPASET.bit.GPIO27 = 1;    // uncomment if --> Set High initially
265
//--------------------------------------------------------------------------------------
266
//  GPIO-28 - PIN FUNCTION = SCI-RX
267
  GpioCtrlRegs.GPAMUX2.bit.GPIO28 = 0;  // 0=GPIO,  1=SCIRX-A,  2=Resv,  3=TZ5
268
//  GpioCtrlRegs.GPADIR.bit.GPIO28 = 1;    // 1=OUTput,  0=INput 
269
//  GpioDataRegs.GPACLEAR.bit.GPIO28 = 1;  // uncomment if --> Set Low initially
270
//  GpioDataRegs.GPASET.bit.GPIO28 = 1;    // uncomment if --> Set High initially
271
//--------------------------------------------------------------------------------------
272
//  GPIO-29 - PIN FUNCTION = SCI-TX
273
  GpioCtrlRegs.GPAMUX2.bit.GPIO29 = 0;  // 0=GPIO,  1=SCITXD-A,  2=Resv,  3=TZ6
274
//  GpioCtrlRegs.GPADIR.bit.GPIO29 = 0;    // 1=OUTput,  0=INput 
275
//  GpioDataRegs.GPACLEAR.bit.GPIO29 = 1;  // uncomment if --> Set Low initially
276
//  GpioDataRegs.GPASET.bit.GPIO29 = 1;    // uncomment if --> Set High initially
277
//--------------------------------------------------------------------------------------
278
//  GPIO-30 - PIN FUNCTION = --Spare--
279
  GpioCtrlRegs.GPAMUX2.bit.GPIO30 = 0;  // 0=GPIO,  1=CANRX-A,  2=Resv,  3=Resv
280
  GpioCtrlRegs.GPADIR.bit.GPIO30 = 1;    // 1=OUTput,  0=INput 
281
//  GpioDataRegs.GPACLEAR.bit.GPIO30 = 1;  // uncomment if --> Set Low initially
282
  GpioDataRegs.GPASET.bit.GPIO30 = 1;    // uncomment if --> Set High initially
283
//--------------------------------------------------------------------------------------
284
//  GPIO-31 - PIN FUNCTION = LED2 on controlCARD
285
  GpioCtrlRegs.GPAMUX2.bit.GPIO31 = 0;  // 0=GPIO,  1=CANTX-A,  2=Resv,  3=Resv
286
  GpioCtrlRegs.GPADIR.bit.GPIO31 = 1;    // 1=OUTput,  0=INput 
287
//  GpioDataRegs.GPACLEAR.bit.GPIO31 = 1;  // uncomment if --> Set Low initially
288
  GpioDataRegs.GPASET.bit.GPIO31 = 1;    // uncomment if --> Set High initially
289
//--------------------------------------------------------------------------------------
290
//--------------------------------------------------------------------------------------
291
//  GPIO-32 - PIN FUNCTION = --Spare--
292
  GpioCtrlRegs.GPBMUX1.bit.GPIO32 = 0;  // 0=GPIO,  1=I2C-SDA,  2=SYNCI,  3=ADCSOCA
293
  GpioCtrlRegs.GPBDIR.bit.GPIO32 = 1;    // 1=OUTput,  0=INput 
294
//  GpioDataRegs.GPBCLEAR.bit.GPIO32 = 1;  // uncomment if --> Set Low initially
295
//  GpioDataRegs.GPBSET.bit.GPIO32 = 1;    // uncomment if --> Set High initially
296
//--------------------------------------------------------------------------------------
297
//  GPIO-33 - PIN FUNCTION = --Spare--
298
  GpioCtrlRegs.GPBMUX1.bit.GPIO33 = 0;  // 0=GPIO,  1=I2C-SCL,  2=SYNCO,  3=ADCSOCB
299
  GpioCtrlRegs.GPBDIR.bit.GPIO33 = 1;    // 1=OUTput,  0=INput 
300
//  GpioDataRegs.GPBCLEAR.bit.GPIO33 = 1;  // uncomment if --> Set Low initially
301
//  GpioDataRegs.GPBSET.bit.GPIO33 = 1;    // uncomment if --> Set High initially
302
//--------------------------------------------------------------------------------------
303
//  GPIO-34 - PIN FUNCTION = LTA1
304
  GpioCtrlRegs.GPBMUX1.bit.GPIO34 = 0;  // 0=GPIO,  1=Resv,  2=Resv,  3=Resv
305
  GpioCtrlRegs.GPBDIR.bit.GPIO34 = 1;    // 1=OUTput,  0=INput 
306
//  GpioDataRegs.GPBCLEAR.bit.GPIO34 = 1;  // uncomment if --> Set Low initially
307
  GpioDataRegs.GPBSET.bit.GPIO34 = 1;    // uncomment if --> Set High initially
308
//--------------------------------------------------------------------------------------
309
  
310
  
311
  //mychanges
312
  // Interrupts that are used in this example are re-mapped to
313
// ISR functions found within this file.  
314
//   EALLOW;  // This is needed to write to EALLOW protected registers
315
//   PieVectTable.TINT0 = &cpu_timer0_isr;
316
//   EDIS;    // This is needed to disable write to EALLOW protected registers
317
  
318
  
319
  // Step 4. Initialize all the Device Peripherals:
320
// This function is found in DSP280x_InitPeripherals.c
321
// InitPeripherals(); // Not required for this example
322
//   InitCpuTimers();   // For this example, only initialize the Cpu Timers
323
  //mychanges
324
  
325
  // Configure CPU-Timer 0 to interrupt every second:
326
// 100MHz CPU Freq, 1 second Period (in uSeconds)
327
//   ConfigCpuTimer(&CpuTimer0, 100, 1000000);
328
//   StartCpuTimer0();
329
   // Enable CPU INT1 which is connected to CPU-Timer 0:
330
//   IER |= M_INT1;
331
332
// Enable TINT0 in the PIE: Group 1 interrupt 7
333
//   PieCtrlRegs.PIEIER1.bit.INTx7 = 1;
334
  
335
  EINT;//mychanges
336
  ERTM;   // Enable Global realtime interrupt DBGM, mychanges
337
       
338
  EDIS;  // Disable register access
339
}

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.