of 4

Programmable Keyboard-Display Interface - 8279 | Digital & Social Media | Digital Technology

23 views
All materials on our website are shared by users. If you have any questions about copyright issues, please report us to resolve them. We are always happy to assist you.
Share
Description
programmable keyboard/display interface - 8279 a programmable keyboard and scans and encodes up to a controls up to a 16-digit interface - 8279programmable keyboard/display display interfacing chip. 64-key keyboard. numerical display. keyboard has a built-in fifo 8 character buffer. the display is controlled from an internal 16x8 ram that stores the coded display information. pinout definition 8279 a0: selects data (0) or control/status (1) for reads and writes between micro and 8279. bd: outp
Tags
Transcript
  programmable keyboard/display interface - 8279programmable keyboard/displayinterface - 8279a programmable keyboard and display interfacing chip.scans and encodes up to a 64-key keyboard.controls up to a 16-digit numerical display.keyboard has a built-in fifo 8 character buffer.the display is controlled from an internal 16x8 ram that stores the codeddisplay information.pinout definition 8279a0: selects data (0) or control/status (1) for reads and writes between microand 8279.bd: output that blanks the displays.clk: used internally for timing. max is 3 mhz.cn/st: control/strobe, connected to the control key on the keyboard.cs: chip select that enables programming, reading the keyboard, etc.db7-db0: consists of bidirectional pins that connect to data bus on micro.irq: interrupt request, becomes 1 when a key is pressed, data is available.out a3-a0/b3-b0: outputs that sends data to the most significant/leastsignificant nibble of display.rd(wr): connects to micro's iorc or rd signal, reads data/status registers.reset: connects to system reset.rl7-rl0: return lines are inputs used to sense key depression in the keyboardmatrix.shift: shift connects to shift key on keyboard.sl3-sl0: scan line outputs scan both the keyboard and displays.8279 interfaced to the 8088 keyboard interface of 8279 keyboard interface of 8279the keyboard matrix can be any size from 2x2 to 8x8.pins sl2-sl0 sequentially scan each column through a counting operation.the 74ls138 drives 0's on one line at a time.the 8279 scans rl pins synchronously with the scan.rl pins incorporate internal pull-ups, no need for external resistorpull-ups.unlike the 82c55, the 8279 must be programmed first.d7d6d5functionpurpose000mode setselects the number of display positions, type of key scan...001clockprograms internal clk, sets scan and debounce times.010read fifoselects type of fifo read and address of the read.011read displayselects type of display read and address of the read.100write displayselects type of write and the address of the write.101display write inhibitallows half-bytes to be blanked.110clearclears the display or fifo111end interruptclears the irq signal to the microprocessor.the first 3 bits of # sent to control port selects one of 8 control words.keyboard interface of 8279first three bits given below select one of 8 control registers (opcode).000ddmmmmode set: opcode 000.dd sets displays mode.mmm sets keyboard mode.   dd field selects either:8- or 16-digit displaywhether new data are entered to the rightmost or leftmost display position.ddfunction008-digit display with left entry0116-digit display with left entry108-digit display with right entry1116-digit display with right entrykeyboard interface of 8279mmm field: ddfunction000encoded keyboard with 2-key lockout001decoded keyboard with 2-key lockout010encoded keyboard with n-key rollover011decoded keyboard with n-key rollover100encoded sensor matrix101decoded sensor matrix110strobed keyboard, encoded display scan111strobed keyboard, decoded display scanencoded: sl outputs are active-high, follow binary bit pattern 0-7 or 0-15.decoded: sl outputs are active-low (only one low at any time).pattern output: 1110, 1101, 1011, 0111.strobed: an active high pulse on the cn/st input pin strobes data from therl pins into an internal fifo for reading by micro later.2-key lockout/n-key rollover: prevents 2 keys from being recognized ifpressed simultaneously/accepts all keys pressed from 1st to last.interface of 8279001pppppthe clock command word programs the internal clock driver.the code ppppp divides the clock input pin (clk) to achieve the desiredoperating frequency, e.g. 100khz requires 01010 for a 1 mhz clk input.010z0aaathe read fifo control word selects the address (aaa) of a keystroke from the fifo buffer (000 to 111).z selects auto-increment for the address.011zaaaathe display read control word selects the read address of one of the display ram positions for reading through the data port.100zaaaaselects write address -- z selects auto-increment so subsequent writes go to subsequent display positions.interface of 82791010wwbbthe display write inhibit control word inhibits writing to either theleftmost 4 bits of the display (left w) or rightmost 4 bits.bb works similarly except that they blank (turn off) half of the outputpins.1100ccfathe clear control word clears the display, fifo or bothbit f clears fifo and the display ram status, and sets address pointer to000.  if cc are 00 or 01, all display ram locations become 00000000.if cc is 10, --> 00100000, if cc is 11, --> 11111111.1110e000end of interrupt control word is issued to clear irq pin in sensor matrixmode.1) clock must be programmed first. if 3.0 mhz drives clk input, ppppp isprogrammed to 30 or 11110.interface of 82792) keyboard type is programmed next.the previous example illustrates an encoded keyboard, external decoder usedto drive matrix.3) program the fifo.once done, a procedure is needed to read data from the keyboard.to determine if a character has been typed, the fifo status register ischecked.when this control port is addressed by the in instruction, the contents ofthe fifo status word is copied into register al:interface of 8279code given in text for reading keyboard.data returned from 8279 contains raw data that need to be translated to ascii: row and column number are given the rightmost 6 bits (scan/return).this can be converted to ascii using the xlat instruction with an ascii code lookup table.the ct and sh indicate whether the control or shift keys were pressed.the strobed keyboard code is just the state of the rlx bits at the time a 1was `strobed' on the strobe input pin.six digit display interface of 8279 programmable interval timer: 8254three independent 16-bit programmable counters (timers).each capable in of counting in binary or bcd with a maximum frequency of10mhz.used for controlling real-time events such as real-time clock, events counter, and motor speed and direction control.usually decoded at port address 40h-43h and has following functions:generates a basic timer interrupt that occurs at approximately 18.2hz.interrupts the micro at interrupt vector 8 for a clock tick.causes dram memory system to be refreshed.programmed with 15us on the pc/xt.provides a timing source to the internal speaker and other devices.8254 functional description 8254 pin definitionsa1, a0:the address inputs select one of the four internal registers with the8254 as follows:   clk: the clock input is the timing source for each of the internal counters.it is often connected to the pclk signal from the bus controller.cs: chip select enables the 8254 for programming, and reading and writing.g: the gate input controls the operation of the counter in some modes.out: a counter output is where the wave-form generated by the timer isavailable.rd/wr: read/write causes data to be read/written from the 8254 and oftenconnects to the iorc/iowc.8254 programmingeach counter is individually programmed by writing a control word, followed by the initial count.the control word allows the programmer to select the counter, model ofoperation, binary or bcd count and type of operation (read/write).8254 programmingeach counter may be programmed with a count of 1 to ffffh.minimum count is 1 all modes except 2 and 3 with minimum count of 2.each counter has a program control word used to select the way the counteroperates.if two bytes are programmed, then the first byte (lsb) stops the count, andthe second byte (msb) starts the counter with the new count.there are 6 modes of operation for each counter:mode 0: an events counter enabled with g.the output becomes a logic 0 when the control word is written and remainsthere until n plus the number of programmed counts.8254 modesmode 1: one-shot mode.the g input triggers the counter to output a 0 pulse for `count' clocks.counter reloaded if g is pulsed again.mode 2: counter generates a series of pulses 1 clock pulse wide.the seperation between pulses is determined by the count.the cycle is repeated until reprogrammed or g pin set to 0.8254 modesmode 3: generates a continuous square-wave with g set to 1.if count is even, 50% duty cycle otherwise out is high 1 cycle longer.mode 4: software triggered one-shot (g must be 1).mode 5: hardware triggered one-shot. g controls similar to mode 1.
Related Search
We Need Your Support
Thank you for visiting our website and your interest in our free products and services. We are nonprofit website to share and download documents. To the running of this website, we need your help to support us.

Thanks to everyone for your continued support.

No, Thanks