fange 11 bit data og "formatere" disse?
HejJeg søger egentligt lidt inspiration til at løse en udfordring...og tænkte der var masser af friske ideer herinde:)
Jeg er ved at lave en PS/2 tastatur driver til en microcontroller.
Det viser sig at keyboardet sender et clock signal og et data signal (ikke noget nyt der)..
Jeg har lavet et interrupt i min controller der læser data fra datalinien når clock'en går høj(lav...men for logikkens skyld skriver jeg høj)
De data gemmer jeg i et array, (bare et test program.)
Humlen er nu at keyboardet sender 11 bit.. 1 startbit, 8 data bit, et paritetsbit og et stopbit.
startbittet, paritetsbitten og stopbittet har jeg ikke så meget brug for.. det vigtigste er at få de 8 databit gemt i en variabel og det helst uden at bruge for mange udregninger og array manipulationer.. da dette foregår inde i et interrupt.
Så da jeg ved at interrupt-funktionen vil blive kaldt 11 gange i træk og bit nr. 2-9 er dataene hvordan får jeg dem samlet til en enkelt char.
Sproget er C..da controlleren ikke forstår andet.
Er der nogle kreative forslag vil jeg blive glad :)