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

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

0
137
lượt xem
76
download

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

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

Yêu cầu của đề tài là thiết kế hệ thống kít vi điều khiển 8951 để áp dụng vào phương pháp giảng dạy và thực tập cho bộ môn vi xữ lý. Các lệnh đaều khiển và chương trình được nhập từ bàn phím do đó việc thiết kế các phần cứng phải đảm bảo các yêu cầu sau: Hoạt động của máy phải chính xác, dễ sử dụng. Kết cấu phần cứng không quá phức tạp, linh kiện thi công phải có trên thị trường Việt Nam và giá thành hợp lý. Sơ đồ khối của hệ thống: Bộ nhớ...

Chủ đề:
Lưu

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

  1. Chöông 9 THIEÁT KEÁ PHAÀN CÖÙNG VAØ TÍNH TOAÙN I.)Toùm taét thieát keá: Yeâu caàu cuûa ñeà taøi laø thieát keá heä thoáng kít vi ñieàu khieån 8951 ñeå aùp duïng vaøo phöông phaùp giaûng daïy vaø thöïc taäp cho boä moân vi xöõ lyù. Caùc leänh ñaeàu khieån vaø chöông trình ñuôïc nhaäp töø baøn phím do ñoù vieäc thieát keá caùc phaàn cöùng phaûi ñaûm baûo caùc yeâu caàu sau:  Hoaït ñoäng cuaû maùy phaûi chính xaùc, deã söû duïng.  Keát caáu phaàn cöùng khoâng quaù phöùc taïp, linh kieän thi coâng phaûi coù treân thò tröôøng Vieät Nam vaø giaù thaønh hôïp lyù. Sô ñoà khoái cuaû heä thoáng: Boä nhôù Giao tieáp CPU ngoaïi vi Baøn phím vaø hieån thò Hình 2.1 : Sô ñoà khoái heä thoáng Heä thoáng vi ñieàu khieån goàm boán phaàn chuû yeáu sau: + Ñôn vò xöõ lyù trung taâm CPU. + Boä nhôù. + Giao tieáp ngoaïi vi. + Khoái queùt phím – Hieån thò. II.)Chöùc naêng cuaû töøng khoái: 1/. Ñôn vò xöõ lyù trung taâm CPU(Center Processing Unit) Ñaây laø khoái quan troïng nhaát cuaû heä thoáng. CPU giöõ nhieäm vuï tieáp nhaän vaø xöû lyù trung taâm, khaû naêng tieáp nhaän vaø phaân tích caùc yeâu caàu taùc ñoäng, töø ñoù coù ñaùp öùng thích hôïp. Ñieàu naøy
  2. ñöôïc theå hieän qua khaùi nieäm taäp leänh cuaû vi ñieàu khieån, chaün haïn taäp leänh cuûa 8951. Taäp leänh naøy cho ta khaõ naêng hoaït ñoäng coù möùc ñoä cuaû ñôn vò xöû lyù trung taâm, khaéc phuïc vaø haïn cheá caùc ñieàu ñoù caùc nhaø saûn xuaát ñaõ coá gaéng thieát laäp taäp leänh sao cho khi keát hôïp chuùng laïi vôùi nhau ñôn vò xöõ lyù trung taâm xöû lyù theâm nhieàu tình huoáng khaùc maø töøng leänh rieâng bieät khoâng theå giaõi quyeát ñöôïc. Ñaây chính laø cô sôû cuaû chöông trình heä thoáng.
  3. 2) Khoái boä nhôù: (Memory) Ñaây laø nôi löu tröû chöông trình cuõng nhö caùc soá lieäu thu nhaän vaø caùc keát quaû sau quaù trình laøm vieäc naøo ñoù khoái naøy khoâng theå thieáu ñöôïc trong heä thoáng vi ñieàu khieån vaø ñoù laø nôi caát giöõ khaû naêng maø ngöôøi laäp trình taïo ra cho heä thoáng 3)Khoái giao tieáp ngoaïi vi: Ñaây laø phaàn keát noái giöõa CPU vaø beân ngoaøi. Do yeáu toá khaùch quan laø CPU chæ coù moät tuyeán döõ lieäu trong khi yeâu caàu giao tieáp beân ngoaøi nhieàu, vì vaäy phaàn giao tieáp laø ñôn vò chòu traùch nhieäm thieát laäp caùc moái quan heä töø beân ngoaøi vôùi heä thoáng taïi thôøi ñieåm coù yeâu caàu. Ñeå ñaûm nhieäm vieäc naøy thieát bò ngoaïi vi cuõng ñöôïc gaùn cho 1 ñòa chæ ñeå tieän cho vieäc truy xuaát vaø dó nhieân keøm theo nhöõng tính hieäu ñieàu khieån thích hôïp töø CPU vaø tuyeán döõ lieäu ñeå trao ñoåi thoâng tin 4) Khoái hieån thò vaø baøn phím: Ñaây laø khoái phuïc vuï ñaéc löïc cuaû heä thoáng vi ñieàu khieån, baøn phím laø nôi ngöôøi laäp trình nhaäp soá lieäu cuõng nhö chöông trình vaøo boä nhôù, boä hieån thò giuùp ngöôøi laäp trình kieåm soaùt ñöôïc vieäc nhaäp soá lieäu cuõng nhö 1 keát quaû trong quaù trình laøm vieäc. Trong moät soá tröôøng hôïp ñoâi khi chuùng ta phaûi coâng nhaän chuùng laø hai thieát bò ngoaïi vi luoân ñi keøm vôùi moät heä thoáng ñieàu khieån. Maët khaùc vì ñaây laø nhöõng thieât bò ngoaïi vi boä hieån thò vaø baøn phím khoâng laøm vieäc tröïc tieáp vôí CPU maø phaûi thoâng qua giao tieáp ngoaïi vi. Vieäc ñònh vò chuùng döïa treân boä phaän cuaû khoái giao tieáp maø moåi thieát bò tröïc tieáp laøm vieäc. III.)THIEÁT KEÁ VAØ PHAÂN TÍCH NGUYEÂN LYÙ HOAÏT ÑOÄNG THEO TÖØNG KHOÁI: 1.Khoái xöõ lyù trung taâm CPU:
  4. Ñaây laø khoái tieáp nhaän vaø xöû lyù moïi thoâng tin lieân quan ñeán hoaït ñoäng cuaû maùy. Khoái xöû lyù trung taâm hoaït ñoäng khoâng ngöøng trong suoát thôøi gian laøm vieäc do ñoù ñoä beàn bæ vaø khaû naêng xöû lyù nhanh choùfg linh hoaït vôùi moïi tình huoáng phuï thuoäc vaøo phaåm chaát linh kieän maø chuùng ta söû duïng cuõng nhö nguoàn cung caáp cho heä thoáng. Chính vì vaäy choïn boä xöû lyù trung taâm laø ñoái töôïng ñaàu tieân cho thieát keá heä thoáng khoâng ngoaøi lyù do treân, noù seõ quyeát ñònh khaû naêng hoaït ñoäng cho heä thoáng cuaû chuùng ta. a) Phaân tích yeâu caàu choïn linh kieän: Chuùng ta seõ caên cöù vaøo caùc yeâu caàu sau ñeå choïn linh kieän:  Coù neàn taûng cô baûn cuaû moät heä thoáng vi ñieàu khieån.  Khaû naêng öu vieät so vôùi heä thoáng soá.  Deå söõ duïng cuõng nhö thieát keá caùc öùng duïng.  Coù taøi lieäu lieân quan.  Khoâng yeâu caàu cao trong thieát keá phaàn cöùng.  Mua ñöôïc treân thò tröôøng Vieät Nam. Cho ñeán nay lónh vöïc vi xöû lyù ñaõ phaùt trieån raát xa so vôùi thôøi kyø ñaàu cuaû noù töø heä thoáng 8 bít ñaõ ñuôïc naâng leân 16 bit, 32 bit, 64 bit coù khaû naêng quaûn lyù tôùi 128 kbytes. Cuøng vôùi söï phaùt trieån cuaû coâng ngheä phaàn meàm ñaõ cho ngöôøi laäp trình caùch trieät ñeå nhaát caùc thoâng tin ñuôïc caäp nhaät hoaù ngaøy nay nhö vaäy seõ khoù khaên cho vieäc löïa choïn boä vi xöû lyù ñeå ñaùp öùng yeâu caàu treân. Tuy nhieân chuùng ta döïa vaøo nhöõng loaïi hieän ñaõ coù treân thò tröôøng Vieät Nam maø chuùng ta thuôøng gaëp nhö: INTEL8085, INTEL8080, INTEL 8951, ZILOG Z80, MOTOROLA 6802 ñaây laø nhöõng heä thoáng 8 bit caùch ñaây khaù laâu nhöng vaãn coøn choã ñöùng trong moät soá thieát bò maùy moùc. Caùc hoï treân ñieàu thoûa maõn hai ñieàu kieän ñaàu tieân vì chuùng laø caùc hoï xöû lyù ñaàu tieân ñaïi dieän cho heä thoáng maùy tính hieän nay
  5. vaø chöông trình phaàn meàm öùng duïng linh hoaït . Ñaây cuõng chính laø ñieåm yeáu nhaát cuaû heä thoáng soá. Veà taøi lieäu do vieäc caäp nhaät taøi lieäu haøng ngaøy neân taøi lieäu raát phong phuù veà hoï vi xöû lyù naøy vaø giaù thaønh cuaû noù cuõng khoâng cheânh leäch nhieàu neân cuõng raát khoù khaên cho vieäc löïa choïn vi xöû lyù thích hôïp, chæ coøn döïa treân ñoä phöùc taïp cuaû phaàn cöùng ñeå choïn ra boä vi xöû lyù thích hôïp nhaát. Tröôùc heát ta xem veà caáu truùc chaân ta thaáy 8085 coù 8 bit thaáp cuaû address bus ñöôïc ña hôïp ñeå taïo ra 8 bit data bus (kí hieäu AD0-AD7 ). Ñaëc ñieåm phaûi caàn 1 maïch choát ñeå gôûi tín hieäu ra tuyeán döõ lieäu cuaû vi xöû lqù. Maëc khaùc ôû 8085 hai tín hieäu ñieàu khieån bus vaø I/O ñöôïc caáu taïo chung treân moät chaân phaân bieät nhau bôûi traïng thaùi logic maø khoâng taùch rôøi hai chaân. Nhöõng yeáu toá treân ñuû laøm cho maïch ñieän theâm phöùc taïp, khoâng roõ raøng vaø khoù kieåm soùt. Vôùi 8080 maëc duø address bus vaø data bus ñöôïc taùch rôøi nhöng gaëp phaûi moät trôû ngoaïi khaùc ñoù laø khoâng coù chaân ñieàu khieån bus vaø I/O maø phaûi thoâng qua moät linh kieän khaùc ñoù laø 8255 vöøa laø boä ñeäm hai chieàu vöøa laø boä taïo tín hieäu ñieàu khieån heä thoáng. Hôn nöõa, CPU caàn coù moät boä nguoàn 3 caáp ñieän aùp +5v,-5V vaø 12v. Ñaây laø moät trôû ngaïi veà phaàn cöùng. Nhö vaäy ta chæ coøn hai hoï vi xöû lyù vaø moät hoï vi ñieàu khieån ñoù laø: MOTOROLA 6802, ZILOG Z80 vaø INTEL 8951. Tuy nhieân ñoái vôùi moät hoï vi xöû lyù khoâng chæ ñôn thuaàn döïa vaøo phaàn cöùng, tính linh hoaït chuû yeáu döïa vaøo phaàn meàm. Muoán thay ñoåi naêng löïc phaàn meàm cuûa töøng loaïi ta phaûi xem xeùt moãi hoï giaûi quyeát baøi toaùn nhö theá naøo caên cöù vaøo kích thöôùc chöông trình, vaøo thuaät giaûi töø ñoù chuùng ta môùi coù caâu traû lôøi thích hôïp. Ta laäp baûng so saùnh caùc linh kieän vôùi nhau:
  6. Caùc thanh ghi 6802 Z80 8951 Boä tích luõy 8 bit A,B A A,B Thanh ghi chæ soá 16 bit IY,IY IX,IY Boä ñeám chöông trình PC PC PC Con troû ngaên xeáp SP SP SP SP(16 bit) Thanh ghi côõ CY,AC Thanh ghi ña naêng B,C,D,H,L Thanh ghi döõ tröõ B’,C’,D’,H’, L’ Timer /counter(16bit) 2timer/count er Thanh ghi ngaét I,R IP,IE Thanh ghi ñaëc bieät 22 Ngaân haøng thanh ghi 4 Moät ñieåm khaùc bieät ôû caáu taïo cuûa vi maïch giöõa 6802, Z80 vaø 8951 laø dao ñoäng cuûa 6802 vaø 8951 ñöôïc caáu taïo ngay trong IC chæ caàn trang bò theâm beân ngoaøi moät thaïch anh laø ñuû. Ñaây chính laø ñieåm maø 6802 vaø 8951 hôn haún Z80. Trong caùc chöông trình vieát baèng ngoân ngöõ caáp thaáp caùc leänh chuyeån dôøi döõ lieäu chieám moät vò trí quan trong hôn nöõa caùc pheùp toaùn soá hoïc cuõng nhö logic chæ thöïc hieän treân caùc thanh ghi neân soá löôïng thanh ghi cuõng chieám moät vò trí quan troïng. Ñaây laø moät yeáu toá giuùp cho ngöôøi laäp trình löïa choïn heâ thoáng thích hôïp. Qua baûng so saùnh ta thaáy hoï vi maïch ñieàu khieån 8951 ñaùp öùng ñöôïc haàu heát caùc ñieàu kieän ñaët ra. Hôn nöõa moät trong nhöõng ñaëc tính noåi baäc cuûa vi ñieàu khieån laø giuùp cho ngöôøi laäp trình coù theå can thieäp vaøo töøng bit cuøa port xuaát nhaäp, maø chæ duøng moät leänh duy nhaát (ví duï: SETB
  7. P1.3:ñaëc bit 3 port 1 leân 1) ñieàu naøy seõ raát khoù khaên thöïc hieän vôùi caùc vi xöû lyù khaùc, ngoaøi ra coøn hai boä TIMER/COUNTERS ñöôïc duøng nhö moät ñoàng ñeå ño caùc chu kyø thôøi gian hoaëc coù theå hoaït ñoäng nhö moät boä ñeám. *Toùm laïi:chuùng ta seõ choïn vi ñieàu khieån 8951 cho thieát keá heä thoáng nhö muïc tieâu ñeà ra. b) Thieát keá maïch xöû lyù trung taâm: Caáu truùc maïch xöû lyù trung taâm quyeát ñònh toaøn boä heä thoáng cho neân ñaây laø khaâu ñaàu tieân ñöôïc thieát keá vaø cuõng laø khaâu ñôn giaûn nhaát bôûi vì noù khoâng phuï thuoäc vaøo caùc thaønh phaàn coøn laïi cuaû heä thoáng. Phaàn quan troïng nhaát chuùng ta ñaõ thöïc hieän trong vieäc löïa choïn vi ñieàu khieån 8951, coøn xöû lyù caùc coâng vieäc do phaàn meàm thöïc hieän. Coâng vieäc cuûa chuùng ta laø thieát keá caùc maïch xung quanh CPU nhö: maïch dao ñoäng, maïch choát, maïch Reset, maïch nguoàn… c) Thieát keá maïch taïo tín hieäu ñieàu khieån: (maïch dao ñoäng) Trong heä thoáng soá noùi chung vaø heä thoáng vi ñieàu khieån noùi rieâng xung clock ñoùng vai troø quan troïng trong toaøn boä heä thoáng, moät phaàn do tính chaát laøm vieäc cuûa caùc maïch logic nhö: counter, timers… nhöng chöùc naêng quan troïng nhaát cuûa xung clock laø ñoàng boä caùc hoaït ñoäng cuaû caùc linh kieän khaùc nhau trong maïch do ñoù maïch taïo xung thieát keá phaûi thoaû maûn ñieàu kieän sau:  Ñaûm baûo ñoä oån ñònh cuaû taàn soá laøm vieäc, giaûm toái thieåu sai soá ngaãu nhieân.  Thích öùng vôùi caùc linh kieän laøm vieäc lieân quan ñeán kyõ thuaät soá nhö ñaõ giôùi thieäu ôû phaàn tröôùc, maïch taïo xung ñöôïc cheá taïo trong IC 8951 do vaäy ñieàu kieän thöù hai coi nhö ñaõ thoûa. Ñoái
  8. vôùi maïch dao ñoäng duøng RL ñoä oån ñònh khoâng cao do khoù xaùc ñònh ñöôïc chính xaùc giaù trò RL do ñoù khoâng thoûa yeâu caàu ñaët ra. Söû duïng thaïch anh laø coù tính thuyeát phuïc nhaát bôûi thaïch anh coù tính oån ñònh cao vaø coù giaù trò xaùc ñònh sai soá raát nhoû trong heä thoáng bit, coù theå noùi haàu heàt caùc linh kieän ñeàu tröïc tieáp hoaëc giaùn tieáp lieân quan ñeán taàn soá clock. Chính vì vaäy vieäc löïa choïn taàn soá laøm vieäc thích hôïp laø moät trong nhöõng buôùc quan troïng nhaát. Nhö chuùng ta ñaõ bieát ôû ñieàu kieän lyù töôûng taàn soá laøm vieäc cuûa CPU phaûi hoaøn toaøn töông thích vôùi toác ñoä truy xuaát döõ lieäu cuaû boä nhôù. Ñieàu naøy khoù coù theå thöïc hieän ñöôïc vì khoù coù theå kieám treân thò tröôøng hieän nay do vaäy ta phaûi choïn giaûi phaùp khaùc linh hoaït hôn maø vaãn ñaùp öùng ñöôïc taàn soá laøm vieäc cho heä thoáng. Qua caùc taøi lieäu cho thaáy toác ñoä truy xuaát döõ lieäu trung bình khoaûng 120ms ñeán 450ms tuông öùng vôùi 2,2MHz ñeán 8,3 MHz vôùi 8951 taàn soá laøm vieäc thöôøng töø 0Hz ñeán 24MHz do ñoù ta choïn taàn soá trong khoaûng naøy laø ñöôïc, ôû ñaây taàn soá laøm vieäc ñöôïc choïn laø 12MHz do thaïch anh 12MHz raát phoå bieán hieän nay vaø giaù thaønh haï so vôùi caùc loaïi khaùc18maïch ñöôïc maéc nhö sau: C1 , XTAL1 C1, C2 oån ñònh cho thaïch anh. 8951 C2 19 XTAL2
  9. Hình 2-2:maïch dao ñoäng d) Thieát keá maïch Reset: Do chöông trình quaûn lyù vaø ñieàu khieån heä thoáng laø chöông trình ñaàu tieân khi tieán haønh khi môùi caáp ñieän. Cho neân taïi thôøi ñieåm ñoù thanh ghi pc phaûi löu taïi ñòa chæ ñaàu tieân cuûa chöông trình, muoán laøm ñöôïc vieäc naøy caàn phaûi coù moät maïch taùc ñoäng beân ngoaøi. Ñoù chính laø maïch Reset, chính luùc nhaän Reset, CPU seõ xoaù thanh ghi PC veà ñòa chæ ban ñaàu. Ñaây chính laø taàm quan troïng cuûa maïch reset. Thöïc ra maïch reset chæ laø moät maïch nhoû vôùi chöùc naêng taïo ra moät xung taùc ñoäng vaøo chaân reset cuûa CPU taïi thôøi ñieåm caáp nguoàn cho heä thoáng, cuõng coù theå söû duïng maïch reset naøy ñeå reset moät soá linh kieän khaùc neáu coù nhu caàu nhö 8255. Ñoái vôùi 8951 chaân reset ñöôïc kí hieäu RST(9) chòu taùc ñoäng töông öùng vôùi traïng thaùi [H], coù nghóa laø khi chuùng ta ñöa tín hieäu vaøo ôû möùc [1] thì seõ laøm CPU quay trôû laïi traïng thaùi ban ñaàu. Taùc ñoäng naøy goïi laø reset CPU. Löu yù laø chaân mang kí hieäu reset luoân thöôøng tröïc ñeå ôû traïng thaùi thaáp [L] chæ luùc naøo caàn reset CPU, ta môùi taïm thôøi ñöa leân traïng thaùi cao [H]. Maïch ñieän saâu ñaây ñaùp öùng ñöôïc taát caû caùc yeâu caàu ñaët ra: Vcc R2 C RST Reset R1
  10. Hình 2-3:Maïch reset. Giaûi thích: Ñoái vôùi maïch naøy khi chuùng ta cho ñieän aùp vaøo maïch thì maïch reset seõ töï ñoäng taùc ñoäng neân ñöôïc goïi laø maïch töï ñoäng reset hay maïch reset khi ñoùng nguoàn cung caáp (power on reset). Ngoaøi ra baát kì luùc naøo caàn thieát chuùng ta vaãn coù theå nhaán coâng taét reset xuoáng ñeå khôûi ñoäng laïi heä thoáng. Thôøi gian reset cuaû 8951 taùc ñoäng ôû möùc cao trong khoaûng hai chu kì maùy töùc laø khoaûng 2s (tröôøng hôïp maïch dao ñoäng söû duïng thaïch anh 12MHz) sau ñoù xuoáng thaáp ñeå 8951 baét ñaàu laøm vieäc. Döïa vaøo thôøi haèng Rl ñeå tính toaùn ta choïn ñöôïc caùc giaù trò nhö sau: R1=8,2 k R2=100  C=10 F e) thieát keá maïch choát ñòa chæ: Vôùi 8951 8 bit thaáp cuaû ñiaï chæ ñöôïc ña hôïp ñeå taïo ra 8 bit cuaû data bus (kí hieäu töø Do ñeán D7) CPU seõ ñieàu khieån maïch choát cho xung ra ôû chaân ALE cho pheùp choát ñòa chæ vaøo thanh ghi beân ngoaøi trong suoát nöûa chu kì ñaàu boä nhôù. Sau khi thi haønh xong luùc naøy caùc ñöôøng cuaû port0 raûnh roãi seõ cho döõ lieäu vaøo hoaëc ra trong nöõa chu kì coøn laïi. Trong phaàn thieát keá naøy ta choïn maïch choát 74ALS573 laø vi maïch coù 8 ngoõ vaøo vaø 8 ngoõ ra phuø hôïp 8 bit thaáp cuaû address bus.
  11. 8951 30PF Port 0 XTAL 1 DO - D7 12 Mhz XTAL 2 74573 30PF ALE D Q A0-A7 C Port 2 5V 100  +5V Port 1 RST A8 - A15 10 F Port 3 I/O RESET 8,2 K Hình 2.4 Sô ñoà keát noái 8951 vôùi maïch reset, dao ñoäng vaø maïch choát Vi maïch 74ALS573 coù chöùa 8 Flip-Flop 0 vaø 8 coång ñeäm ñieàu khieån khi xung ñoàng hoà ôû möùc 1 ñaàu ra cheùp laïi ñaàu vaøo. Khi xung vaøo chuyeån traïng thaùi töø 1 xuoáng 0 soá lieäu ôû ñaàu ra seû bò choát laïi. Nhö vaäy caùc maïch choát laïi theo möùc ñaàu ra cheùp laïi giaù trò ñaàu vaøo. Tín hieäu ñieàu chieån choát ñiaï chæ ñöôïc CPU ñöa ra ôû chaân ALE (Adress Latch Enable: cho pheùp choát ñòa chæ) phaûi ñöôïc noái vaøo chaân C (chip). Khi chaân OE (Output Enable) ôû möùc thaáp thì 74ALS573 seõ choát ñòa chæ vaøo thanh ghi 74ALS573. IC naøy goàm 8 choát theo möùc döông loaïi D vôùi xung ñoàng hoà chung. Nhö vaäy ñaàu vaøo xung ñoàng hoà ñöôïc kích baèng xung choïn cöûa ra coù möùc tích hôïp cao. Ñoä doác cuaû ñöôøng xung phaûi thích hôïp khaûo saùt chu kì vaøo/ra treân giaûn ñoà soùng ta thaáy 8951 caáp döõ lieäu oån ñònh keå töø caïnh xuoáng cuaû xung WR 74ALS573 coù ñaàu ra 3 traïng thaùi, caùc boä ñeäm ñaàu ra ñieàu coù möùc ñieàu khieån vôùi möùc tích cöïc thaáp.
Đồng bộ tài khoản