16f628A muis

C

cyb0rg777

Guest
Hallo aan iedereen.

Ik probeer het gebruik van een 16f628a voor de simulatie van een muis.

Ik weet dat ik een synchrone seriële signaal voor een ps / 2 muis.

Kan ik gebruik maken van de ingebouwde usart op de 16f628A?
Zo ja, hoe maak ik het op.

Ik ben op zoek naar code voorbeelden, advies of samenwerking.
Elk advies is welkom, dank je.

 
hoi

Ik weet dat mikrobasic en mikroc compiler
hebben ps2 bibliotheek

Ik denk dat u kunt gebruiken

hoop dat u geholpen

door de manier waarop deze 2 compiler genereert asm code te

 
Mikroc ziet er goed uit maar het
is een demo versie en ik heb geen $ $.
Ik denk dat hij zich zal inzetten voor de 16f628a omdat het geheugen is niet veel meer dan 2k.
Ik heb een hoop werk voor mijn kleine PIC.

Weet u een gratis compiler met een ps / 2 bibliotheken of op een andere manier om dit te doen?

Linux programma's zijn ok.I wilt gaan gebruiken Ktechlab.

Ik weet alles van de montage-instructies, maar niet het speciaal register bits en stuff.
Wanneer krijg ik mijn programma schreef ik zal er zeker van te plaatsen.

 
Ik vertelde u vóór die
deze compiler omgezet c-code die u heeft geschreven in asm
code
dus u kunt de asm code en gebruiken op enige comipler
U kunt ook gebruik maken van mplab met C-code

dag

 
Ik ben vergeten u te bedanken, Hoe onbeleefd van me.
Ik heb al mijn programma schreef in mikroc maar ik moet verifiëren.
Ik kan geen gebruik maken van ps2send dus ik gebruik usuart bibliotheek.
mikroc integreert niet goed met mpasm de asm ontbreekt gedeelte, en het heeft nummers. Hier is de code heb ik tot nu toe ...

Code:unsigned korte byte0, byte1, byte2;

/ / 11 bit byte

/ / laag beginnen bits

/ / oneven pariteit bit

/ / hi stopbit

/ / 2400 bpsvoid main () (CMCON = 0x07; / / Disable analoge comparatoren (commentaar dit voor PIC18)

TRISA = 0x3f;

TRISB = 0x03;

INTCON = 0; / / Schakel alle interrupts

Usart_Init (56000); / / Init UART

/ / Delay_ms (100) / / Wachten op het toetsenbord tot finish

/ / D7 D6 D5 D4 D3 D2 D1 D0

/ / 1e YV XV YS XS 1 0 RL

/ / 2e X7 X6 X5 X4 X3 X2 X1 X0

/ / 3e Y7 Y6 Y5 Y4 Y3 Y2 Y1 y0/ / L links Button staat (1 = ingedrukt)

/ / R knop Rechts staat (1 = ingedrukt)

/ / X0-X7 Beweging in de X-richting

/ / Y0-Y7 beweging in de Y-richting

/ / XS Richting van de beweging in de X-as (1 = UP)

/ / YS Richting van de beweging in de Y-as (1 = LINKS)

/ / XV, YV Overloop van de beweging bits (1 = overflow is opgetreden)do (

byte0.f0 = PORTA.f0; / / L

byte0.f1 = PORTA.f1; / / R

byte0.f2 = 0; / / D2

byte0.f3 = 1; / / D3

/ / omhoog / omlaag

/ / niet bewegen als beide of geen schakelaar op

if ((PORTA.f3 & & PORTA.F2 )||(! PORTA.f3 & &! PORTA.F2)) byte1 = 0;

anders

(

byte1 = 20;

if (PORTA.f2 & &! PORTA.f3) byte0.f4 = 1; / / XS = up

if (PORTA.f3 & &! PORTA.f2) byte0.f5 = 0; / / XS = omlaag

)

/ / links / rechts

/ / niet bewegen als beide of geen schakelaar op

if ((PORTA.f5 & & PORTA.F4 )||(! PORTA.f5 & &! PORTA.F4)) byte2 = 0;

anders

(

byte2 = 20;

if (PORTA.f4 & &! PORTA.f5) byte0.f4 = 1; / / YS = links

if (PORTA.f5 & &! PORTA.f4) byte0.f5 = 0; / / YS = rechts

)

byte0.f6 = 0; / / nee overflow

byte0.f7 = 0; / / nee overflow

/ / RB1 = clk rb0 = dt

Usart_Write (byte0);

Usart_Write (byte1);

Usart_Write (byte2);

) while (1);

}//~!

 
Ook eens een kijkje hier, niet precies wat je nodig hebt maar ik denk dat je moet kunnen krijgen wat je nodig hebt uit het ...

http://www.piclist.org/techref/microchip/emouse2.htm

Rod

 
Grote moeite het schrijven van deze code.
Mikroc zal niet de pariteit bit.
AC bibliotheek om dit te doen zou een zegen.
Doet dit in asm zal me cracy (ER).
De band heeft een aantal zeer nette code, maar het is niet precies wat ik in gedachten had.
Ik wil gebruik maken van de PS / 2 poort.
Het kan onmogelijk te simuleren met mijn huidige setup.<img src="http://www.edaboard.com/images/smiles/icon_cry.gif" alt="Huilen of zeer triest" border="0" />Ik zal blijven proberen.
Ik heb een heel goed idee circuit.
Het is een ooghoogte sensor.
Het maakt gebruik van infrarood.
Ik heb al bewezen het zal werken, maar ik heb niet geprobeerd met een gemoduleerd signaal te blokkeren uit omgevingslicht.
Ook, ik
ben niet zeker maar het kan branden uw oogbollen.
lol
Als iemand me kan helpen zal ik aandeel meer details.

 
OK Ik ging terug naar de data sheet.

Kan iemand helpen met mijn code?

Hier zijn mijn muis functies tot nu toe.
Code:void init9 ()

(

/ / havens

/ / Baudrate

txsta.sync = 1; / / synchrous modus

rcsta.spen = 1; / / set clk en dt lijnen Serial Port Enable

txsta.csrc = 1; / / master-modus

txsta.tx9 = 1; / / select 9 bit

)

void send9 (unsigned korte byte)

(

pariteit (byte);

txsta.txen = 1; / / zenden zodat

txreg = byte; / / verzenden byte

)

void pariteit (unsigned korte byte)

(

asm (

swapf FARG_parity, w

xorwf FARG_parity, f

rrf FARG_parity, w

xorwf FARG_parity, f

btfsc FARG_parity, 2

incf FARG_parity, f

)

txsta.tx9d =! byte.f0 / / gebracht bit in 9e bit register

)

 
Hier zijn 2 circuits die ik niet kan vinden online meer.
Misschien zullen ze iemand willen helpen om dit te doen.
Ik wil mijn eigen code, zodat ik kan toevoegen aan het.
Ik zal waarschijnlijk gebruik maken van de 16f628a.
Deze gebruiken de 16F84
Sorry, maar je moet inloggen om dit onderdeel te bekijken koppelingseisen

 

Welcome to EDABoard.com

Sponsor

Back
Top