Hallo zusammen,
ich hoffe hier kennt sich noch jemand mit diesen nicht mehr ganz
frischen CPLDs aus...
habe es gestern tatsächlich geschafft mein Programm mit ATMISP auf den
CPLD zu flashen, laut Log alles gut:
1 | log: erasing device #1.
|
2 | log: programming device #1.
|
3 | log: verifying device #1: ... OK ...
|
4 | log: JTAG instructions finished successfully.
|
Leider verhält sich das Ganze nicht wie erwartet, die Ausgänge schalten
genau einmal und bleiben dann hängen...
Ich habe dann erstmal den Code reduziert auf eine einzige logische
Verknüpfung um Fehler auszuschließen aber das ändert leider nix.
So sieht der Code aus:
1 | Name 2Input_Interlock.dig ;
|
2 | PartNo 00 ;
|
3 | Date 30.08.2022 ;
|
4 | Revision 01 ;
|
5 | Designer x ;
|
6 | Company x ;
|
7 | Assembly None ;
|
8 | Location unknown ;
|
9 | Device f1504ispplcc44 ;
|
10 |
|
11 | PROPERTY ATMEL {TDI_pullup = ON};
|
12 | PROPERTY ATMEL {TMS_pullup = ON};
|
13 |
|
14 |
|
15 | /* inputs */
|
16 | PIN 4 = I1;
|
17 | PIN 6 = I2;
|
18 | PIN 9 = I3;
|
19 | PIN 12 = I4;
|
20 |
|
21 |
|
22 | /* outputs */
|
23 |
|
24 | PIN 20 = INTERLOCK;
|
25 |
|
26 | /* sequential logic */
|
27 |
|
28 | /* combinatorial logic */
|
29 |
|
30 | !INTERLOCK = I1 # I2 # I3 # I4;
|
Sieht einer der Inputs einmal einen High Pegel bleibt der Ausgang low.
Erst nach erneutem flashen ist er wieder High.
Ich wäre für jeden Tipp sehr dankbar!