thiết bị báo cháy tự động, chương iii

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

0
85
lượt xem
33
download

thiết bị báo cháy tự động, chương iii

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

Bộ nhớ trong 8031 ba gồm ROM và RAM. RAM trong 8031 bao gồm nhiều thành phần: phần lưu trữ đa dụng, phần lưu trữ địa chỉ hoá từng bit, các bank thanh ghi và các thanh ghi chức năng đặc biệt. 8031 có cấu trúc bộ nhớ theo kiểu Havảd?: có những vùng nhớ riêng biệt cho chương trình và dữ liệu. Chương trình và dữ liệu có thể chứa bên trong 8051, nhưng 8051 vẫn có thể kết nối với 64c byte chương trình và 64k byte dữ liệu. Hai đặc tính cần chú ý khi dùng C80318051/...

Chủ đề:
Lưu

Nội dung Text: thiết bị báo cháy tự động, chương iii

  1. Chương III. KHAÛO SAÙT CAÙC KHOÁI BEÂN TRONG 8031  TOÅ CHÖÙC BOÄ NHÔÙ: Boä nhôù trong 8031 ba goàm ROM vaø RAM. RAM trong 8031 bao goàm nhieàu thaønh phaàn: phaàn löu tröõ ña duïng, phaàn löu tröõ ñòa chæ hoùa töøng bit, caùc bank thanh ghi vaø caùc thanh ghi chöùc naêng ñaëc bieät. 8031 coù caáu truùc boä nhôù theo kieåu Harvard: coù nhöõng vuøng nhôù rieâng bieät cho chöông trình vaø döõ lieäu. Chöông trình vaø döõ lieäu coù theå chöùa beân trong 8051, nhöng 8051 vaãn coù theå keát noái vôùi 64c byte chöông trình vaø 64k byte döõ lieäu. Hai ñaëc tính caàn chuù yù khi duøng C8031/8051 laø:  Caùc thanh ghi vaø caùc port xuaát nhaäp ñaõ ñöôïc ñònh vò (ñöôïc ñònh vò coù nghóa laø xaùc ñònh) trong boä nhôù vaø coù theå truy xuaát tröïc tieáp gioáng nhö caùc boä nhôù ñòa chæ khaùc.  Ngaên xeáp beân trong RAM noäi nhoû hôn so vôùi ROM ngoaïi nhö caùc boä vi xöû lyù khaùc. RAM beân trong 8031 ñöôïc phaân chia nhö sau:  Caùc Bank thanh ghi coù ñòa chæ 00H  1FH.  RAM ñòa chæ hoùa töøng bit coù ñòa chæ 20H  2FH.  RAM ña duïng coù ñòa chæ 30H  7FH.  Caùc thanh ghi coù chöùc naêng ñaëc bieät 80H  FFH. Byte address Bit address Byte address Bit address FF FF F0 F7 F6 F5 F4 F3 F2 F1 F0 B GENERAL PURPOSE 7F E0 E7 E6 E5 E4 E3 E2 E1 E0 ACC RAM D0 D7 D6 D5 D4 D3 D2 D1 D0 PSW 30 B8 - - - BC BB BA B9 B8 IP 2F 7F 7E 7D 7C 7B 7A 79 78 3E 77 76 75 74 73 72 71 70 B0 B7 B6 B5 B4 B3 B2 B1 B0 P3 2D 6F 6E 6D 6C 6B 6A 69 68 A8 AF - - AC AB AA A9 A8 IE 2C 67 66 65 64 63 62 61 60 2B 5F 5E 5D 5C 5B 5A 59 58 2A 57 56 55 54 53 52 51 50 A0 A7 A6 A5 A4 A3 A2 A1 A0 P2
  2. a.RAM ña duïng: Maëc duø treân hình veõ cho thaáy 80 byte ña duïng chieám caùc ñòa chæ töø 30H7FH, 32 ñòa chæ döôùi töø 00H1FH cuõng coù theå ñöôïc duøng vôùi muïc ñích töông töï (maëc duø caùc ñòa chæ naøy cuõng ñaõ ñònh vôùi muïc ñích khaùc). Moïi ñòa chæ trong vuøng RAM ña duïng ñeàu coù theå truy xuaát töï do duøng kieåu ñòa chæ giaùn tieáp hoaëc tröïc tieáp. Ví duï: ñeå ñoïc noäi dung ôû ñòc chæ 5FH cuûa RAM noäi vaøo thanh ghi tích luõy A, coù theå duøng moät trong hai caùch sau: - Caùch 1: MOV A, #5FH
  3. - Caùch 2: Ngoaøi caùch treân RAM beân trong cuõng coù theå ñöôïc truy xuaát baèng caùch duøng ñòa chæ giaùn tieáp hoaëc tröïc tieáp qua R0 hay R1: MOV R0, #5FH MOV A, @R0 Leänh ñaàu tieân duøng ñeå naïp ñòa chæ töùc thôøi #5FH vaøo thanh ghi R0, leänh thöù 2 duøng ñeå chuyeån noäi dung cuûa oâ nhôù coù ñòa chæ maø R0 ñang chæ tôùi vaøo thanh ghi tích luõy A. b. RAM ñòa chæ hoùa töøng bit: 8031 chöùa 210 bit ñöôïc ñòa chæ hoùa, trong ñoù coù 128bit chöùa caùc byte coù ñòa chæ töø 20H2FH vaø caùc bit coøn laïi chöùc trong nhoùm thanh ghi coù chöùa naêng ñaëc bieät. YÙ töôûng truy xuaát töøng bit baèng phaàn meàm laø moät ñaëc tính maïnh cuûa vi ñieàu khieån noùi chung. Caùc bit coù theå ñöôïc ñaët, xoùa, And, OR…, vôùi moät leänh ñôn. Maø ñieàu naøy ñoái vôùi vi xöû lyù ñoøi hoûi phaûi coù moät chuoãi leänh ñoïc – söûa - ghi ñeå ñaït ñöôïc muïc ñích töông töï nhö vi ñieàu khieån. Ngoaøi ra caùc port cuõng coù theå truy xuaát ñöôïc töøng bit laøm ñôn giaûn ñi phaàn meàm xuaát nhaäp töøng bit. 128 bit truy xuaát töøng bit naøy cuõng coù theå truy xuaát nhö caùc byte hoaëc caùc bit phuï thuoäc vaøo leänh ñöôïc duøng. Ví duï: ñeå ñaët bit thöù 57 ta duøng leänh sau: SETB 67H c.Caùc Bank thanh ghi: 32 byte thaáp cuûa boä nhôù RAM noäi ñöôïc duøng cho caùc bank thanh ghi. Boä leänh 8031 hoã trôï 8 thanh ghi noùi treân coù teân laø R0  R7 vaaø theo maëc ñònh khi reset heä thoáng, caùc thanh ghi naøy coù ñòa chæ töø 00H  07H.
  4. Ví duï: leänh sau ñaây seõ ñoïc noäi dung cuûa oâ nhôù coù ñòa chæ 05H vaøo thanh ghi A. MOV A, R5 Ñaây laø leänh 1 byte duøng ñòa chæ thanh ghi. Tuy nhieân yeâu caàu treân coù theå thi haønh baèng leänh 2 byte duøng ñòa chæ tröïc tieáp naèm trong byte thöù hai: MOV A,05H Caùc leänh duøng caùc thanh ghi R0  R7 seõ ngaén hôn vaø nhanh hôn so vôùi caùc leänh coù chöùc naêng töông töï duøng kieåu ñòa chæ tröïc tieáp. Caùc döõ lieäu ñöôïc duøng thöôøng xuyeân neân duøng moät trong caùc thanh ghi naøy. Do coù 4 bank thanh ghi neân taïi moät thôøi ñieåm chæ coù moät bank thanh ghi ñöôïc truy xuaát bôûi caùc thanh ghi R0  R7. Ñeå chuyeån ñoåi vieäc truy xuaát caùc bank thanh ghi ta phaûi thay ñoåi caùc bit choïn bank trong thanh ghi trong thanh ghi traïng thaùi. Giaû söû bank thanh ghi thöù 3 ñang ñöôïc truy xuaát leänh sau ñaây seõ chuyeån noäi dung cuûa thanh ghi A vaøo oâ nhôù RAM coù ñòa chæ 18H: MOV R0, A Toùm laïi yù töôûng duøng caùc bank thanh ghi cho pheùp ta chuyeån höôùng chöông trình nhanh vaø hieäu quaû hôn. B. HOAÏT ÑOÄNG CUÛA BOÄ ÑÒNH THÌ TIMER: I. GIÔÙI THIEÄU: Moät ñònh nghóa ñôn giaûn cuûa timer laø moät chuoãi caùc flip- flop chia ñoâi taàn soà noái tieáp vôùi nhau, chuùng nhaän tín hieäu vaøo laøm nguoàn xung nhòp. Ngoõ ra cuûa taàng cuoái laøm xung nhòp cho flip - flop baùo traøn cuûa timer (flip - flop côø). Giaù trò nhò phaân trong caùc flip - flop cuûa timer coù teå xem nhö ñeám soá xung nhòp (hoaëc caùc söï kieän) töø khôûi ñoäng timer. Ví duï timer 16 bit seõ ñeám
  5. töø 0000H ñeán FFFFH. Côø baùo traøn seõ leân 1 khi soá ñeám traøn töø FFFFH ñeán 0000H. C8031/8051 coù hai timer 16 bit, moãi timer coù 4 caùch laøm vieäc. Ngöôøi ta söû duïng caùc timer ñeå: a. Ñònh khoaûng thôøi gian. b. Ñeám söï kieän. c. Taïo toác ñoä baud cho port noái tieáp trong C8051/8031. Trong caùc öùng duïng ñònh nghóa khoaûng thôøi gian, ngöôøi ta söû duïng laäp trình timer ôû moät khoaûng ñeàu ñaën vaø ñaët côø traøn timer. Côø ñöôïc söû duïng ñeå ñoàng boä hoùa chöông trình ñeå thöïc `ieän moät taùc ñoäng nhö kieåm tra traïng thaùi cuûa caùc ngoõ vaøo hoaëc gôûi söï kieän ra caùc ngoõ ra. Caùc öùng duïng khaùc coù theå söû duïng vieäc taïo xung nhòp ñeàu ñaën cuûa timer ñeå ño thôøi gian troâi qua giöõa hai söï kieän (Ví duï: ño ñoä rgäng xung). Ñeám söï kieän duøng ñeå xaùc ñònh soá laàn xaûy ra cuûa moät soá söï kieän. Moät “söï kieän” laø baát cöù taùc ñoäng ngoaøi naøo coù theå cung caáp moät chuyeån traïng thaùi treân moät chaân cuûa 8051/8031. II. THANH GHI CHEÁ ÑOÄ TIMER (TMOD): Thanh ghi TMOD chöùa hai nhoùm 4 bit duøng ñeå ñaët cheá ñoä laøm vieäc cho timer0 vaø timer1. Bi Teân Time Moâ taû t r 7 GAT 1 Bit (môû coång), khi leân, timer chæ E chaïy khi INT1 ôû möùc cao
  6. 6 C/ T 1 Bit choïn cheá ñoä counter/ timer 1 = Boä ñeám söï kieän 0 = Boä ñònh khoaûng thôøi gian 5 M1 1 Bit1 cuûa cheá ñoä ( mode) 4 M0 1 Bit 0 cuûa cheá ñoä 00: Cheá ñoä 0: timer 13 bit 01: Cheá ñoä 1: timer 16 bit 10: Cheá ñoä 2: töï ñoäng naïp laïi 8 bit 11: Cheá ñoä 3: taùch timer 3 GAT 0 Bit (môû) coång E 2 C/ T 0 Bit choïn counter/ timer 1 M1 0 Bit 1 cuûa cheá ñoä 0 M0 0 Bit 0 cuûa cheá ñoä Toùm taét thanh ghi TMOD. III. THANH GHI ÑIEÀU KHIEÅN TIMER (TCON) Thanh ghi TCON chöùa caùc bit traïng thaùi vaø caùc bit ñieàu khieån cho timer0 vaø timer1. Bit Kyù hieäu Ñòa Moâ taû chæ TCON TF1 8FH Côø baùo traøn timer. Ñaët bôûi phaàn .7 cöùng khi traøn, ñöôïc xoùa bôûi phaàn meàm hoaëc phaàn cöùng khi boä xöû lí chæ ñeán chöông trình phuïc vuï ngaét. TCON TR1 8EH Bit ñieàu khieån timer1 chaïy. Ñaët/ .6 xoùa baèng timer ñeå cho phaàn meàm chaïy/ ngöng TCON TF0 8DH Côø baùo traøn timer 0. .5
  7. TCON TR0 8CH Bit ñieàu khieån timer chaïy. .4 TCON IE1 8BH Côø caïnh ngaét caïnh beân ngoaøi. Ñaët .3 bôûi phaàn cöùng khi phaùt hieän moät caïnh xuoáng ôû INT1:xoùa baèng phaàn meàm hoaëc phaàn cöùng khi CPU chæ ñeán chöông trình phuïc vuï ngaét. TCON IT1 8AH Côø kieåu ngaét moät beân ngoaøi. .2 Ñaët/xoùa baèng phaàn meàm ñeå ngaét ngoaøi tích cöïc caïnh xuoáng/möùc thaáp. TCON IE0 89H Côø caïnh ngaét 0 beân ngoaøi .1 TCON ITO 88H Côø kieåu ngaét 0 beân ngoaøi .0 Toùm taét thanh ghi TCON.
Đồng bộ tài khoản