ứng dụng linh kiện điện điện tử, chương 7

Chia sẻ: Nguyen Van Dau | Ngày: | Loại File: PDF | Số trang:11

0
76
lượt xem
23
download

ứng dụng linh kiện điện điện tử, chương 7

Mô tả tài liệu
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

8279 kết nối với vi điều khiển thông qua 3 bus gồm bus dữ liệu D7-D0, bus địa chỉ có một đường A0, bus điều khiển RD\, WR\, CS\, Resert, CLK. - Tín hiệu chọn CS\ được kết nối đến một ngõ ra của IC giải mã địa chỉ. Nếu xem bộ nhớ thì bộ nhớ này có 2 ô nhớ. IC 8279 có 1 đường địa chỉ Ao có chức năng lựa chọn như sau: Ao = O2 : 8279 xem dữ liệu từ vi điều khiển gởi đến là dữ liệu để hiển thị. Ao =12 : 8279...

Chủ đề:
Lưu

Nội dung Text: ứng dụng linh kiện điện điện tử, chương 7

  1. CHÖÔNG 7 KHAÛO SAÙT VI MAÏCH 8279 QUEÙT BAØN PHÍM VAØ HIEÅN THÒ I. CAÁU TRUÙC IC 8279 RL2 1 40 VCCs RL3 RL1 CPU interface CLK RL0  RL7-RL0  Key IRQ 5 CNTL/STB DATA data SHIFT RL4 35 SHIFT CNTR/STB RL5 SL3  8279 RD\ RL6 SL2 SLO-SL3 Scan WR\ RL7 SL1  10 CS\ RESET 30 SL0 OUT A3-A0 A0 RD/ OUT B0  display RESET data WR/ OUT B1 OUT B3-B0 CLK D0 OUT B2 15 BD\ D1 25 OUT B3 Sô Ñoà Logic D2 OUT A0 D3 OUT A1 D4 OUT A2 20 21 D5 OUT A3 D6 Sô Ñoà Chaân BD/ D7 CS/
  2. GND A0 Hình 1.12 : Sô Ñoà Chaân Vaø Sô Ñoà Logic
  3. Teân caùc chaân 8279: Teân I/O Chöùc naêng DB7 - DB0 I/O Data bus (Bi-Direction) CLK I Clock input RESET I Reset input CS\ I Chip select RD\ I Read input WR\ I Write input A0 I Address IRQ 0 Interrupt Request input SL0 - SL3 0 Scan Lines RL0 - RL7 I Return Lines SHIFT I Shift input CNTL/STB I Control/Strobe input OUT A3-0 0 Display (A) output OUT B3-0 0 Display (B) output BD\ 0 Blank Display Output - 8279 keát noái vôùi vi ñieàu khieån thoâng qua 3 bus goàm bus döõ lieäu D7-D0, bus ñòa chæ coù moät ñöôøng A0, bus ñieàu khieån RD\, WR\, CS\, Resert, CLK. - Tín hieäu choïn CS\ ñöôïc keát noái ñeán moät ngoõ ra cuûa IC giaûi maõ ñòa chæ. Neáu xem boä nhôù thì boä nhôù naøy coù 2 oâ nhôù. II. CAÁU TRUÙC PHAÀN MEÀM CUÛA 8279
  4.  IC 8279 coù 1 ñöôøng ñòa chæ Ao coù chöùc naêng löïa choïn nhö sau:  Ao = O2 : 8279 xem döõ lieäu töø vi ñieàu khieån gôûi ñeán laø döõ lieäu ñeå hieån thò.  Ao =12 : 8279 xem döõ lieäu töø vi ñieàu khieån gôûi ñeán laø döõ lieäu cuûa leänh ñieàu khieån 8279.  Caùc leänh ñieàu khieån cuûa 8279:
  5. 1. Keyboard/ Display Mode Set: + Maõ: O O O D D K K K + Trong ñoù 2 bit DD duøng ñeå thieát laäp mode hieån thò, 3 bit KKK duøng ñeå thieát laäp mode queùt baøn phím. + Hai bit DD: DD = 00 : hieån thò 8 kyù töï - loái vaøo traùi. DD = 01 : hieån thò 16 kyù töï - loái vaøo traùi. DD = 10 : hieån thò 8 kyù töï - loái vaøo phaûi. DD = 11 : hieån thò 16 kyù töï - loái vaøo phaûi. + Ba bit KKK: 000 encode scan keyboard - 2 key lockout. 001 decode scan keyboard - 2 key lockout. 010 encode scan keyboard - N key rollover. 011 decode scan keyboard - N key rollover. 100 encode scan sensor matrix. 101 decode scan sensor matrix. 110 strobe input, encode display scan. 111 strobe input, decode display scan & 2. Program Clock: + Maõ:
  6. O O 1 P P P P P + Leänh naøy coù chöùc naêng chia taàn soá xung clock ôû ngoõ vaøo clk ôû chaân soá 3, caùc bit PPPPP duøng ñeå xaùc ñònh soá chia naèm trong khoaûng töø 2 ñeán 30, taàn soá hoaït ñoäng cuûa maïch queùt hieån thò vaø choùng doäi cuûa 8279 thöôøng laø 100 Khz, neáu taàn soá ôû ngoõ vaøo laø 2Mhz thì phaûi chia cho 20 ñeå ñöôïc 100 Khz, khi ñoù caùc bit PPPPP coù giaù trò laø 10100.
  7. 3. Read FIFO/ sensor RAM: +Maõ O 1 1 AI X A A A 8279 coù 8 byte RAM beân trong ñeå chöùa maõ cuûa phím aán hay maõ cuûa caùc sensor, ñeå truy xuaát ñeán töøng byte döõ lieäu maõ cuûa phím aán hay cuûa sensor ta coù theå ñieàu chænh caùc bit AAA töông öùng. Boä nhôù naøy thuoäc kieåu FIFO. + AI (automatically increment): ôû möùc moät coù chöùc naêng laøm con troû töï ñoäng taêng leân byte keá ñeå saün saøng cho vieäc ñoïc döõ lieäu. Neáu AI= 0 con troû seõ khoâng thay ñoåi. 4. Read Display RAM: + Maõ: O 1 1 Al A A A A + 8279 coù 16 byte RAM beân trong do con troû 4 bit AAAA quaûn lyù, 16 byte RAM naøy duøng ñeå chöùa döõ lieäu caàn hieån thò do vi ñieàu khieån gôûi ñeán, ñeå ñoïc döõ lieäu oâ nhôù naøo trong vuøng nhôù RAM naøy ta coù theå ñieàu chænh caùc bit AAA töông öùng. Boä nhôù hieån thò naøy thuoäc kieåu FIFO. + AI (automatically increment): ôû möùc moät chöùc naêng laøm con troû töï ñoäng taêng leân byte keá ñeå saün saøng cho vieäc ñoïc byte döõ lieäu. Neáu AI=0 con troû seõ khoâng thay ñoåi. 5. End Interrupt: + Maõ:
  8. 1 1 1 E 0 0 0 0 + Bit E baèng 1 seõ xoùa ngaét IRQ veà möùc logic 0. 6. Leänh Write Display Ram: + Maõ: 1 0 0 Al A A A A + 8279 coù 16 byte RAM beân trong con troû 4 bit AAAA quaûn lyù, 16 oâ nhôù RAM naøy duøng ñeå chöùa döõ lieäu caàn hieån thò do vi ñieàu khieån gôûi ñeán, ñeå gôûi döõ lieäu ñeán 8279 taïi byte Ram thöù maáy trong 16 byte RAM ta coù theå ñieàu chænh caùc bit AAAA töông öùng. + AI (automatically increment): ôû möùc moät chöùc naêng laøm con troû töï ñoäng taêng leân byte keá ñeå saün saøng nhaän döõ lieäu. Neáu AI=0 con troû seõ khoâng thay ñoåi do ñoù byte döõ lieäu sau seõ ghi ñeø leân byte döõ lieäu tröôùc ñoù. 7. Leänh Clear: + Maõ C 1 1 0 C C CF CA D D D + Nhöõng bit CD trong leänh naøy duøng ñeå xoùa taát caû caùc haøng cuûa Ram hieån thò ñeán moät maõ xoùa ñöôïc choïn doïc nhö sau: CD CD CD
  9. 0 X Taát caû laø 0 (X : khoâng quan taâm) 1 0 AB = Hex 20 (0010 0000) 1 1 Taát caû laø 1 Cho pheùp xoùa hieån thò khi =1 (hoaëc bôûi CA=1) + Trong suoát thôøi gian Ram hieån thò ñang xoùa ( 160 s) noù klhoâng ñöôïc vieát vaøo, bit lôùn nhaát cuûa töø traïng thaùi FIFO ñöôïc ñaët leân 1 trong suoát thôøi gian naøy. Khi Ram hieån thò ñöôïc söû duïng laïi thì bit naøy ñöôïc reset veà 0. + Neáu nhö bit CF tích cöïc (CF =1), töø traïng thaùi FIFO seõ bò xoùa vaø ngoõ ra Interrup bò reset. + Bit CA coù chöùc naêng xoùa taát caû caùc bit, noù coøn aûnh höôûng bôûi bit CD vaø CF. Noù duøng bit CD ñeå xoùa maõ treân Ram hieån thò vaø noù cuõng xoùa luoân traïng thaùi FIFO. 8279 laø IC chuyeân veà giaûi maõ hieån thò LED ñoaïn vaø queùt theo nhieàu phöông phaùp khaùc nhau . Döõ lieäu hieån thò töø vi xöû lyù gôûi ñeán seõ chöùa trong 16 Byte RAM beân trong ñöôïc goïi laø boä nhôù hieån thò. Caùc döõ lieäu naøy laàn löôïc ñöôïc gôûi ra 8279 ñöôøng tín hieäu töø A3-0 ,B3-0. Caùc ñöôøng tín hieäu SL3-0 duøng ñeå queùt, ñeå döõ lieäu treân caùc ñöôøng naøy coù theå ñöôïc thieát laäp theo hai kieåu Encode vaø Decode tuøy thuoäc vaøo kieåu thieát keá phaàn cöùng. Caùc ñöôøng naøy coù hai chöùc naêng vöøa quet hieån thò vöøa quet giaûi maõ baøn phím. Caùc ñöôøng tín hieäu RL7-0 laø caùc ñöôøng tín hieäu Input keát hôï p vôùi caùc ñöôøng tín hieäu queùt SL3-0 taïo thaønh ma traän phím ,
  10. phím ñöôïc aán seõ laøm cho moät hoaëc nhieàu ngoõ vaøo RL xuoáng 0, keát hôïp vôùi caùc ñöôøng tín hieäu queùt seõ cho maõ cuûa phím ñöôïc aán. Chuù yù caùc ñöôøng SL3-0 ôû cheá ñoä Decode. Caùc ngoõ vaøo Shift vaø CNTL ñöôïc duøng ñeå môû roäng caùc phím toå hôïp. Soá löôïng phím coù theå leân ñeán 64 phím rôøi. 8279 gôûi döõ lieäu treân vuøng nhôù RAM hieån thò ra Led 7 ñoaïn vaø töï ñoäng queùt baøn phím ñeå tìm phím bò taùc ñoäng vaø töï ñoäng choáng doäi sau khoaûng 10.3 ms vaø kieåm tra laïi moät laàn nöõa ñeå xem phím ñoù coøn bò aán nöõa hay khoâng, neáu coøn thì 8259 seõ thieát laäp maõ cho phím aán naøy vaø löu tröõ maõ cuûa phím vaøo boä nhôù RAM beân trong. Sau ñoù seõ baùo cho CPU bieát ñaõ coù moät phím taùc ñoäng vaø yeâu caàu CPU haõy nhaän maõ cuûa phím naøy baèng caùch taùc ñoäng ñeán tín hieäu ngaét IRQ .Tån hieäu IRQ ñöôïc keát noái ñeán moät ngoõ vaøo ngaét cuûa vi ñieàu khieån vaø chöông trình phuïc vuï cho ngaét naøy laø chöông trình xöû lyù phím. Nhieäm vuï cuûa vi ñieàu khieån laø ñoïc maõ cuûa phím bòaán vaøo ñeå xöû lyù vaø Reset ngaét cuûa 8279 trôó veà möùc logic 0 chuaån bò cho phím tieáp theo. Khung döõ lieäu cuûa phím bò aán nhö sau: CNTL CNTL SCAN RETUR N

CÓ THỂ BẠN MUỐN DOWNLOAD

Đồng bộ tài khoản