KC85/3 & M100

Alles was Du selbst gebaut hast, hier herein. Das Projekt muss allerdings mit einem oder mehreren Parallax Propeller µC realisiert worden sein.
Antworten
Benutzeravatar
PIC18F2550
Beiträge: 2831
Registriert: Fr 30. Sep 2011, 13:08

KC85/3 & M100

Beitrag von PIC18F2550 »

Da sich das interesse an getrennten VGA/SRAM Modulen auf dem Treffen in Grenzen hielt, habe ich mal ein neues Modul gezaubert.

- Ausgabe des Videosignals auf VGA
- 1MB gepufferter SRAM wie das M035 1 MBYTE SEGMENTED RAM 64x16k
- Lithiumionen Akku 1000mA mit Ladeelektronik (Pufferbetrieb)
- Umsetzer PS/2 Tastatur auf KC-Tastaturanschluss.


Das Videosignal besitzt nur ein Manko : der CTC interupt kann auf grund der fehlenden verbindung nicht ausgewertet werden. Das zeigt sich nur im Spiel "digger" wo die kristalle nicht mehr so schön blinken.
An sonsten 100% compartiebel.
Dateianhänge
M100.png
Gruß
PIC18F2550

drone265/278
Barbarus hic ergo sum, quia non intellegor ulli.
Ein Barbar bin ich hier, da ich von keinem verstanden werde.
ʎɐqǝ ıǝq ɹnʇɐʇsɐʇ ǝuıǝ ɹǝpǝıʍ ǝıu ǝɟnɐʞ ɥɔı ´uuɐɯ ɥo
Benutzeravatar
PIC18F2550
Beiträge: 2831
Registriert: Fr 30. Sep 2011, 13:08

Re: KC85/3 & M100

Beitrag von PIC18F2550 »

Hallo,

da ich lange nichts mit dem propeller gemacht habe bin ich wohl etwas eingerostet.

Ziel war das Impulsmuster der Tastatur zu erzeugen.

Ich find den Fehler einfach nicht. :(

Code: Alles auswählen

 siehe 003
Dateianhänge
kbd_signaling_kc85.png
kbd_signaling_kc85.png (7.59 KiB) 15794 mal betrachtet
Zuletzt geändert von PIC18F2550 am Fr 19. Mai 2017, 21:52, insgesamt 1-mal geändert.
Gruß
PIC18F2550

drone265/278
Barbarus hic ergo sum, quia non intellegor ulli.
Ein Barbar bin ich hier, da ich von keinem verstanden werde.
ʎɐqǝ ıǝq ɹnʇɐʇsɐʇ ǝuıǝ ɹǝpǝıʍ ǝıu ǝɟnɐʞ ɥɔı ´uuɐɯ ɥo
Benutzeravatar
PIC18F2550
Beiträge: 2831
Registriert: Fr 30. Sep 2011, 13:08

Re: KC85/3 & M100

Beitrag von PIC18F2550 »

Hab gerade was im ewig vermißten Inet gefunden.

Code: Alles auswählen

CON
  _CLKMODE = xtal1 + pll16x
  _XINFREQ = 6_000_000

  MY_LED_PIN = 0

PUB main
  cognew(@blink, 0) ' Start a Cog with our assembly routine, no stack
                    ' is required since PASM requires we explicitly
                    ' assign and use memory locations within the Cog/Hub
DAT
        org     0
blink   mov     dira,   Pin       ' Set our Pin to an output
        rdlong  Delay,  #0        ' Prime the Delay variable with memory location 0
                                  ' this is where the Propeller stores the CLKFREQ variable
                                  ' which is the number of clock ticks per second
        mov     Time,   cnt       ' Prime our timer with the current value of the system counter
        add     Time,   #9        ' Add a minimum delay ( more on this below )
:loop   waitcnt Time,   Delay     ' Start waiting
        xor     outa,   Pin       ' Toggle our output pin with "xor"
        jmp     #:loop            ' Jump back to the beginning of our loop

Pin     long    |< MY_LED_PIN     ' Encde MY_LED_PIN to a bit mask
Delay           res     1
Time            res     1
        fit
ich glaub das ich den waitcnt total falsch verstanden habe. :(
Gruß
PIC18F2550

drone265/278
Barbarus hic ergo sum, quia non intellegor ulli.
Ein Barbar bin ich hier, da ich von keinem verstanden werde.
ʎɐqǝ ıǝq ɹnʇɐʇsɐʇ ǝuıǝ ɹǝpǝıʍ ǝıu ǝɟnɐʞ ɥɔı ´uuɐɯ ɥo
Benutzeravatar
PIC18F2550
Beiträge: 2831
Registriert: Fr 30. Sep 2011, 13:08

Re: KC85/3 & M100

Beitrag von PIC18F2550 »

So sollte es glaub ich eher aussehen.:

Code: Alles auswählen

Error404
Zuletzt geändert von PIC18F2550 am Do 1. Jun 2017, 19:40, insgesamt 1-mal geändert.
Gruß
PIC18F2550

drone265/278
Barbarus hic ergo sum, quia non intellegor ulli.
Ein Barbar bin ich hier, da ich von keinem verstanden werde.
ʎɐqǝ ıǝq ɹnʇɐʇsɐʇ ǝuıǝ ɹǝpǝıʍ ǝıu ǝɟnɐʞ ɥɔı ´uuɐɯ ɥo
Benutzeravatar
PIC18F2550
Beiträge: 2831
Registriert: Fr 30. Sep 2011, 13:08

Re: KC85/3 & M100

Beitrag von PIC18F2550 »

:JUBELN

Das Bild zeigt nicht die Signale auf der Leitung sondern die der U807 ausgibt. :KOTZEN

In der Doku zur D005 wurde die Startbitbeschreibung vertauscht :evil:

Code: Alles auswählen

DAT
'-------------------------------------------------------------------------------------------------
' Test 1 Zeichen an D001 senden
'
'
'-------------------------------------------------------------------------------------------------
' Px(Prop) über R(10k) an B(SS216)
' C(SS216) über R(2,2K) an Signalin(D001)
' Masse(D001) an E(SS216) und GND(Prop)
'
' Die L-Impulse auf der Signalleitung werden mit H-Impulen an dem Propausgängen erzeugt.
'
'-------------------------------------------------------------------------------------------------

CON
  _clkmode = XTAL1|PLL16X
  _xinfreq = 5_000_000

PUB INI
  cognew(@AsmCode, 0)
  repeat

DAT
AsmCode
' ---------------------------------------------------------------------
        ORG 0
INI1
        mov     dira, Pin         ' Conf Ausgang
        andn    outa, Pin         ' Set Ausgang 0 = 9V
        mov     Time, cnt         ' Get system counter
        add     Time, #$1FF       ' erststart des Timers Experiment
        waitcnt Time, #0
' ---------------------------------------------------------------------
'Vorspann Initalisierung
' ---------------------------------------------------------------------
CnZ
' ---------------------------------------------------------------------
'Check neues Zeichen
        add     Time, Delay20_0ms
        waitcnt Time, #0
        mov     char, #13     ' IBUS Code für Zeichen
        shl     char, #1
        and     char, #$7E
        or      char, #$01    ' bit 1 setzen wenn keine chift taste
        call    #cc

        add     Time, Delay20_0ms
        waitcnt Time, #0
'        mov     char, #$02   'Code für Zeichen
'        call    #cc

        jmp     #CnZ
' ---------------------------------------------------------------------
' Der Code muß mindetens 2x übertragen werden damit er als gültig
' erkannt wird
CC
        mov     schar, char
        call    #SC
        add Time, Delay14_3ms
        waitcnt Time, #0
        mov     schar, char
        call    #SC
        add Time, Delay14_3ms
        waitcnt Time, #0
CC_ret
        ret
' ---------------------------------------------------------------------
' der Zeichencode wird ins seriele gewandelt
SC
        mov     Tmp1, #7 'zeichen besteht aus 7 Bit
Loop3
        call    #LB               ' Vordere ipulse
        shr     char, #1     wc
  if_c  add     Time, Delay07_1ms
  if_nc add     Time, Delay05_0ms
        waitcnt Time, #0
        djnz    Tmp1, #Loop3 wz
        call    #LB               ' hinterer letzter impuls
SC_ret
        ret
' ---------------------------------------------------------------------
' Trenn Burst zwischen den einzelnen Bits
LB
        mov     Tmp2, #5          '5 Impulse erzeugen
LB1
        or      outa, Pin         ' Set Ausgang 1 = 0V
        add     Time, Delay16ys
        waitcnt Time, #0
        andn    outa, Pin         ' Set Ausgang 0 = 9V
        add     Time, Delay16ys
        waitcnt Time, #0
        djnz    Tmp2, #LB1   wz
LB_ret
        ret
' ---------------------------------------------------------------------
Pin         long |<1
Delay20_0ms long 80 * 20_000   'Vorspann Initalisierung oder neues zeichen
Delay14_3ms long 80 * 14_336   'Pause Zeichen repeat
Delay07_1ms long 80 *  7_168   'eine 1 Übertragen
Delay05_0ms long 80 *  5_120   'eine 0 Übertragen
Delay16ys   long 80 *     16   'eine Halbwelle vom 31kHZ-Burst
Char        res   1
sChar       res   1
Tmp1        res   1
Tmp2        res   1
Time        res   1

            fit     $1F0
Jetzt muss ich nur noch sehen wie ich den Tastaturtreiber aus dem Pufferbereich des VGA-Treibers bekomme. :SCHRAUBEN
Dateianhänge
20170601_202208.jpg
Gruß
PIC18F2550

drone265/278
Barbarus hic ergo sum, quia non intellegor ulli.
Ein Barbar bin ich hier, da ich von keinem verstanden werde.
ʎɐqǝ ıǝq ɹnʇɐʇsɐʇ ǝuıǝ ɹǝpǝıʍ ǝıu ǝɟnɐʞ ɥɔı ´uuɐɯ ɥo
Benutzeravatar
PIC18F2550
Beiträge: 2831
Registriert: Fr 30. Sep 2011, 13:08

Re: KC85/3 & M100

Beitrag von PIC18F2550 »

D005 anschluss
Dateianhänge
20170706_211428.jpg
Gruß
PIC18F2550

drone265/278
Barbarus hic ergo sum, quia non intellegor ulli.
Ein Barbar bin ich hier, da ich von keinem verstanden werde.
ʎɐqǝ ıǝq ɹnʇɐʇsɐʇ ǝuıǝ ɹǝpǝıʍ ǝıu ǝɟnɐʞ ɥɔı ´uuɐɯ ɥo
Antworten