Đồ án Tính toán thiết kế bộ biến tần nguồn áp điều khiển động cơ không đồng bộ ba pha rô to lồng sóc

Tài liệu Đồ án Tính toán thiết kế bộ biến tần nguồn áp điều khiển động cơ không đồng bộ ba pha rô to lồng sóc: Ĉ͛ án t͙t nghi͏p 6͵ dͭng vi ÿL͉u khi͋n trong ÿL͉u ch͑nh t͙c ÿ͡ h͏ bi͇n t̯n ĈK GVHD: PGS.TS Ĉoàn Quang Vinh Trang SVTH: Võ Minh Tây6 ĈҤI HӐC ĈÀ NҸNG TRѬӠNG ĈҤI HӐC BÁCH KHOA KHOA Ĉ,ӊN @&? Ĉӄ TÀI: TÍNH TOÁN THIӂT Kӂ BӜ BIӂN TҪN NGUӖN ÁP Ĉ,ӄU KHIӆN ĈӜNG CѪ KHÔNG ĈӖNG BӜ BA PHA RÔTO LӖNG SÓC. ( Dùng vi ÿL͉u khi͋n – Chíp AT89c51) Giáo Viên Hѭӟng Dүn : PGS.TS Ĉoàn Quang Vinh Hӑ Tên Sinh Viên :Võ Minh Tây Trѭѫng Hҥnh Ly Ông Hoàng Ngӑc Hѭng Lӟp : 04ĈLT Ngành : .Ӻ THUҰT Ĉ,ӊN Ĉ͛ án t͙t nghi͏p 6͵ dͭng vi ÿL͉u khi͋n trong ÿL͉u ch͑nh t͙c ÿ͡ h͏ bi͇n t̯n ĈK GVHD: PGS.TS Ĉoàn Quang Vinh Trang SVTH: Võ Minh Tây7 KHOA Ĉ,ӊN ĈӖ ÁN TӔT NGHIӊP Hӑ và Tên sinh viên :Võ Minh Tây Trѭѫng Hҥnh Ly Ông Hoàng Ngӑc Hѭng Lӟp : 04ĈLT Khoa : ĈLӋn Ngành : .ӻ Thuұt ĈLӋn ĈӅ Tài : TÍNH TOÁN THI͆T K͆ B͠ BI͆N T̮N NGU͚N ÁP Ĉ,͈U KHI͊N Ĉ͠NG Cˮ KHÔNG Ĉ͚NG B͠ BA PHA RÔTO /͚NG SÓC. Sӕ liӋu ban ÿҫu :Thông sӕÿӝng cѫ không ÿӗng bӑ Rôto lӗng sóc : Pÿm = 0,.75 Kw fÿm = 50 Hz nÿm = 1410 v/phú...

pdf101 trang | Chia sẻ: hunglv | Lượt xem: 1580 | Lượt tải: 0download
Bạn đang xem trước 20 trang mẫu tài liệu Đồ án Tính toán thiết kế bộ biến tần nguồn áp điều khiển động cơ không đồng bộ ba pha rô to lồng sóc, để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
Ĉ͛ án t͙t nghi͏p 6͵ dͭng vi ÿL͉u khi͋n trong ÿL͉u ch͑nh t͙c ÿ͡ h͏ bi͇n t̯n ĈK GVHD: PGS.TS Ĉoàn Quang Vinh Trang SVTH: Võ Minh Tây6 ĈҤI HӐC ĈÀ NҸNG TRѬӠNG ĈҤI HӐC BÁCH KHOA KHOA Ĉ,ӊN @&? Ĉӄ TÀI: TÍNH TOÁN THIӂT Kӂ BӜ BIӂN TҪN NGUӖN ÁP Ĉ,ӄU KHIӆN ĈӜNG CѪ KHÔNG ĈӖNG BӜ BA PHA RÔTO LӖNG SÓC. ( Dùng vi ÿL͉u khi͋n – Chíp AT89c51) Giáo Viên Hѭӟng Dүn : PGS.TS Ĉoàn Quang Vinh Hӑ Tên Sinh Viên :Võ Minh Tây Trѭѫng Hҥnh Ly Ông Hoàng Ngӑc Hѭng Lӟp : 04ĈLT Ngành : .Ӻ THUҰT Ĉ,ӊN Ĉ͛ án t͙t nghi͏p 6͵ dͭng vi ÿL͉u khi͋n trong ÿL͉u ch͑nh t͙c ÿ͡ h͏ bi͇n t̯n ĈK GVHD: PGS.TS Ĉoàn Quang Vinh Trang SVTH: Võ Minh Tây7 KHOA Ĉ,ӊN ĈӖ ÁN TӔT NGHIӊP Hӑ và Tên sinh viên :Võ Minh Tây Trѭѫng Hҥnh Ly Ông Hoàng Ngӑc Hѭng Lӟp : 04ĈLT Khoa : ĈLӋn Ngành : .ӻ Thuұt ĈLӋn ĈӅ Tài : TÍNH TOÁN THI͆T K͆ B͠ BI͆N T̮N NGU͚N ÁP Ĉ,͈U KHI͊N Ĉ͠NG Cˮ KHÔNG Ĉ͚NG B͠ BA PHA RÔTO /͚NG SÓC. Sӕ liӋu ban ÿҫu :Thông sӕÿӝng cѫ không ÿӗng bӑ Rôto lӗng sóc : Pÿm = 0,.75 Kw fÿm = 50 Hz nÿm = 1410 v/phút Uÿm = 380/220 (V) Iÿm = 2/3,5 (A) 1ӝi dung thiӃt kӃ : Chѭѫng I : Tәng quan vӅÿӝng cѫ không ÿӗng bӝ. Chѭѫng II : Giӟi thiӋu chung vӅ bӝ biӃn tҫn . Chѭѫng III : Tәng quan vӅ kӻ thuұt vi sӱ lý Chѭѫng IV : ThiӃt kӃ bӝ biӃn tҫn nguӗn áp ba pha ÿLӅu khiӇn ÿӝng cѫ không ÿӗng bӝ . Chѭѫng V : ThiӃt k Ӄ mҥch ÿLӅu khiӇn. Chѭѫng VI : Mҥch bҧo vӋ. Chѭѫng VII: Lҳp ráp mҥch Giáo viên hѭӟng dүn : PGS.TS ĈOÀN QUANG VINH Giáo viên duy Ӌt : Ngày giao bài thi : 12/02/2006 Ngày nӝp bài thi : 28/5/2006 ĈҤI HӐC ĈÀ NҸNG TRѬӠNG ĈҤI HӐC BÁCH KHOA KHOA Ĉ,ӊN &ӜNG HÒA XÃ HӜI CHӪ NGHƬA VIӊT NAM Ĉͱc Lͅp - TΉ Do - H̹nh Phúc -----0 O 0---- Ĉ͛ án t͙t nghi͏p 6͵ dͭng vi ÿL͉u khi͋n trong ÿL͉u ch͑nh t͙c ÿ͡ h͏ bi͇n t̯n ĈK GVHD: PGS.TS Ĉoàn Quang Vinh Trang SVTH: Võ Minh Tây8 .Ӄt quҧÿLӇm ÿánh giá Ngày tháng năm2006 Cán b͡ h˱ͣng d̳n (ký và ghi rõ hӑ tên) Trѭӣng bӝ môn (Ký và ghi rõ hӑ tên) Ngày tháng năm 2006 Cán bӝ duyӋt (ký và ghi rõ hӑ tên) Thông qua khoa Ngày tháng năm 2006 Chӫ nhiӋm khoa (ký và ghi rõ hӑ tên) Ngày tháng năm 2006 Chӫ tӏch hӝi ÿӗng (ký và ghi rõ hӑ tên) Ĉ͛ án t͙t nghi͏p 6͵ dͭng vi ÿL͉u khi͋n trong ÿL͉u ch͑nh t͙c ÿ͡ h͏ bi͇n t̯n ĈK GVHD: PGS.TS Ĉoàn Quang Vinh Trang SVTH: Võ Minh Tây9 /ӠI NÓI ĈҪU So vӟi tҩt cҧ các loҥi ÿӝng cѫ hiӋn dùng trong công nghiӋp thì ÿӝng cѫ không ÿӗng bӝ ba pha ÿѭӧc dùng rӝng rãi nhҩt tӯ công suҩt nhӓÿӃn công suҩt trung bình và chúng ÿang ÿѭӧc thay thӃ ngày mӝt nhiӅu cho các ÿӝng cѫÿLӋn mӝt chiӅu . Sӣ dƭ nhѭ vұy là do ÿӝng có không ÿӗng bӝ có kӃt cҩu ÿѫn giãn , dӉ chӃ tҥo vұn hành an toàn , sӱ dөng trӵc tiӃp tӯ lѭӟi ÿLӋn xoay chiӅu ba pha . Trong các loҥi ÿӝng cѫ không ÿӗng bӝ , thì ÿӝng có không ÿӗng bӝ ba pha Roto Oӗng sóc la chiӃm ѭu thӃ , chҷng hҥn nhѭ trong các nhà máy ximăng thì chúng ÿѭӧc dùng cho các máy nghiӅn , máy khuҩy , băng lăn vұn tҧi . Trong xѭӣng cán luyӋn thì dùng cho các băng lăn vұn tҧi có truyӅn ÿӝng ÿѫn và truyӅn ÿӝng nhóm . Bên cҥnh nhӳng ѭu ÿLӇm cӫa ÿӝng cѫ không ÿӗng bӝ ba pha nó còn có nhӳng nhѭӧc ÿLӇm nhѭ là : Momen tӟi hҥn Momen khӣi ÿӝng sӁ giҧm xuӕng rҩt nhiӅu khi ÿLӋn á lѭӟi tөt xuӕng , dӉ phát sinh tình trҥng nóng quá mӭc ÿӕi vӟi Stato nhҩt là khi ÿLӋn áp lѭӟi tăng và ÿӕi vӟi Roto khi ÿLӋn áp lѭӟi giҧm , khe hӣ không khí nhӓ cNJng phҫn nào làm giҧm bӟt ÿӝ tin cұy cӫa chúng . Trong thӡi gian gҫn ÿây do sӵ phát triӇn cӫa nӅn công nghiӋp chӃ tҥo bán dүn công suҩt và kƭ thuұt ÿLӋn tӱ , tin hӑc nên các ÿһt ÿLӇm cӫa ÿӝng cѫ không ÿӗng bӝÿã ÿѭӧc khai thác triӋt ÿӇ , nó ÿѭӧc ÿLӅu khiӇn bҵng các bӝ biӃn tҫn bán dүn và ÿang ngày ÿѭӧc hoàn thiӋn hѫn do ÿó có khҧ năng cҥnh tranh vӟi các hӋ truyӅn ÿӝng mӝt chiӅu nhҩt là ӣ vùng công suҩt truyӅn lӟn và tӕc ÿӝ làm viӋc cao. Trong công nghiӋp thѭӡng sӱ dөng bӕn bӝ truyӅn ÿӝng ÿLӅu chӍnh tӕc ÿӝÿӝng có không ÿӗng bӝÿó là : + ĈLӅu chӍnh ÿLӋn áp cҩp cho ÿӝng cѫ dùng bӝ biӃn ÿәi Thyristor . + ĈLӅu chӍnh ÿLӋn trѫ Roto bҵng bӝ biӃn ÿәi xung Thyristor. + ĈLӅu chӍnh công suҩt trѭӧt . + ĈLӅu chӍnh tҫn sӕ nguӗn cung cҩp cho ÿӝng cѫ băng bӝ biӃn ÿәi tҫn sӕ . Trong ÿӗ án tӕt nghiӋp này em sӁ khҧo xác và thiӃt kӃ bӝ biӃn tҫn nguӗn áp ÿӇÿLӅu khiӇn tӕc ÿӝÿӝng cѫ không ÿӗng bӝ Roto lӗng sóc công suҩt 0,75K W . Sau thӡi gian làm ÿӗ án dѭӟi sӵ hѭӟng dүn tұn tình cӫa thҫy Ĉoàn Quang Vinh và các thҫy cô khác em ÿã hoàn thành ÿӗ án . Tuy nhiên do kiӃn thӭc có hҥn nên càng nhiӅu thiӃu sót , em rҩt mong sӵ góp ý cӫa thҫy cô vӅ nhӳng thiӃu sót ÿó nhҵm góp phҫn ÿӇ cho ÿӗ án cӫa em ÿѭӧc hoàn thiӋn . Em xin chân thành cҧm ѫn … Ĉà nҹng ngày 25 tháng 5 năm 2006 Sinh viên thӵc hiӋn Võ Minh Tây Trѭѫng Hҥnh Ly Ông Hoàng Ngӑc Hѭng Ĉ͛ án t͙t nghi͏p 6͵ dͭng vi ÿL͉u khi͋n trong ÿL͉u ch͑nh t͙c ÿ͡ h͏ bi͇n t̯n ĈK GVHD: PGS.TS Ĉoàn Quang Vinh Trang SVTH: Võ Minh Tây10 0ӨC LӨC Trang Chѭѫng I : Tәng quan vӅÿӝng cѫ không ÿӗng bӝ I.1: Giӟi thiӋu vӅÿӝng cѫ không ÿӗng bӝ ………………………………. ….6 I.1.1: Ĉһc tính cѫ ………………………………………………… .… 6 I.1.2: ҧnh hѭӣng cӫa các thông sӕÿӃn ÿһc tính cѫ……………… ….….7 I.2 : Các phѭѫng pháp ÿLӅu chӍnh tӕc ÿӝÿӝng cѫ không ÿӗng bӝ…….……9 I.2.1: Phѭѫng pháp ÿLӅu chӍnh ÿLӋn áp lѭӟi……………………...….......9 I.2.2: Phѭѫng pháp ÿLӅu chӍnh ÿLӋn trӣ mҥch rôto………………....… 10 I.2.3: Phѭѫng pháp ÿLӅu chӍnh tҫn sӕ nguӗn cung cҩp cho ÿӝng cѫ không ÿӗng Eӝ ba pha ..........................................................................................11 Chѭѫng II : Giӟi thiӋu chung vӅ bӝ biӃn tҫn.. II.1 : Giӟi thiӋu chung .................................................................................16 II.2 : Phân loҥi biӃn tҫn ...............................................................................16 II.2.1 : BiӃn tҫn trӵc tiӃp ..........................................................................16 II.2.2 : BiӃn tҫn gián tiӃp .........................................................................16 II.3 : Các khӕi trong biӃn tҫn gián tiӃp ........................................................18 II.3.1 : Khӕi chӍnh lѭu .............................................................................18 II.3.2 : Khӕi lӑc ........................................................................................20 II.3.3 : Khӕi nghӏch lѭu ...........................................................................22 II.3.4 : ĈLӅu biӃn ÿӝ rӝng xung ( khӕi băm )............................................26 Chѭѫng III : Tәng quan vӅ kӻ thuұt vi sӱ lý III.1 : Lӏch sӱ phát triӇn cӫa vi sӱ lý ...........................................................30 III.2 : Cҩu tҥo vi sӱ lý hӑ MSC -51..............................................................30 III.2.1 : Giӟi thiӋu cҩu trúc phҫn cӭng MSC-51(89c51) ..........................30 III.2.2 : Khҧo sát sѫÿӗ chân 89c51 và chӭc năng cӫa tӯng chân............31 III.2.3 : Cҩu trúc bên trong vi ÿLӅu khiӇn ................................................33 III.3 : Tóm tҳc tұp lӋnh cӫa chíp 89c51 .....................................................43 III.3.1 : Các mode ÿӏnh vӏ .........................................................................43 III.3.2 : Các kiӇu lӋnh ( Instruction types).................................................47 III.4 : Chѭѫng trình ngôn ngӳ Assembly cӫa chíp 89c51.........................53 III.4.1 : Giӟi thiӋu .....................................................................................53 III.4.2 : Hoҥt ÿӝng cӫa trình biên dӏch ......................................................53 III.4.3 : Sӵ sҳp ÿһc cӫa chѭѫng trình ngôn ngӳ Assembly .......................54 III.4.4 : Sӵ tính toán biӇu thӭc cӫa Assembly timer..................................57 III.4.5 : Các chӍ thӏ biên dӏch ....................................................................58 Chѭѫng IV : ThiӃt kӃ biӃn tҫn nguӗn áp 3 pha ÿLӅu khiӇn ÿӝng cѫ không ÿӗng Eӝ ba pha roto lӗng sóc IV.1 : Chӑn các phѭѫng án cho mҥch ÿӝng lӵc..........................................62 IV.1.1: Mҥch chӍnh lѭu ...........................................................................62 IV.1.2: Chӭc năng cӫa máy biӃn áp lӵc ................................................63 Ĉ͛ án t͙t nghi͏p 6͵ dͭng vi ÿL͉u khi͋n trong ÿL͉u ch͑nh t͙c ÿ͡ h͏ bi͇n t̯n ĈK GVHD: PGS.TS Ĉoàn Quang Vinh Trang SVTH: Võ Minh Tây11 IV.1.3: Mҥch nghӏch lѭu .......................................................................63 IV.2 : Tính chӑn các linh kiӋn cho mҥch ÿӝng lӵc .....................................65 IV.2.1 : Tính chӑn máy biӃn áp ÿӝng lӵc ................................................65 IV.2.2 : Tính chӑn các linh kiӋn mҥch chӍnh lѭu ....................................67 IV.2.3 : Tính chӑn linh kiӋn băm ÿLӋn áp ...............................................67 IV.2.4 : Tính chӑn linh kiӋn mҥch nghӏch lѭu .......................................67 IV.2.5 : Tính chӑn mҥch lӑc ...................................................................68 Chѭѫng V : ThiӃt kӃ mҥch ÿLӅu khiӇn V.1 : HӋ thӕng ÿLӅu khiӇn tҫn sӕ ..............................................................69 V.1.1 : Chӭc năng cӫa hӋ thӕng ÿLӅu khiӇn .........................................69 V. 2 : Phân tích mҥch thiӃt kӃ ....................................................................69 V.2.1 : Khӕi tҥo xung và phân phӕi xung..............................................69 V.2.2 : Tính chӑn khâu khuӃch ÿҥi xung ..............................................71 V.3 : Giãn ÿӗ thӡi gian ...............................................................................73 V.3.1 : Ĉӝng cѫ chҥy thuұn...................................................................73 V.3.2 : Ĉӝng cѫ chҥy ngѭӧc..................................................................74 V.4 : Sѫÿӗ thuұt toán chѭѫng trình ÿLӅu khiӇn .......................................75 V.5 : Chѭѫng trình ÿLӅu khiӇn Assembly .................................................77 Chѭѫng VI : Bҧo vӋ VI.1 : Giӟi thiӋu sӵ cӕ ...............................................................................86 VI.1.1 : Bҧo vӋ chӕng quá áp và chӕng tăng nhanh ÿLӋn áp .................86 VI.1.2 : Bҧo vӋ quá dòng ÿLӋn ..............................................................87 VI.2 : Bҧo vӋ ngҳn mҥch dùng dây chҧy ....................................................88 VI.2.1 : Bҧo vӋ mҥch chӍnh lѭu ............................................................88 VI.2.2 : Dùng cҫu chì bҧo vӋ quá dòng trѭӟc ÿӝng cѫ ........................89 VI.3 : Bҧo vӋ chӕng quá ÿLӋn áp .................................................................90 VI.3.1 : Bҧo vӋ quá áp cho các Ĉiot chӍnh lѭu ...................................90 VI.3.2 : Bҧo vӋ quá áp cho máy biӃn áp ..............................................90 VI.3.3 : Bҧo vӋ quá áp cho Transistor ӣ mҥch nghӏch lѭu .................91 Chѭѫng VII : Thi công lҳp ráp VI.1) Lҳp ráp bӝ chӍnh lѭu và nghӏch lѭu, quҩn MBA lӵc ...........................94 VI.2 Lҳp ráp mҥch ÿLӅu khiӇn gӗm các linh kiӋn sau....................................95 VI.3 ) Sѫÿӗ nguyên lý toàn mҥch : ..............................................................96 VI.4 ) Mô hình lҳp ráp, thӵc tӃ ......................................................................97 KӃt luұn ..............................................................................98 Tài liӋu tham khҧo ..............................................................99 Ĉ͛ án t͙t nghi͏p 6͵ dͭng vi ÿL͉u khi͋n trong ÿL͉u ch͑nh t͙c ÿ͡ h͏ bi͇n t̯n ĈK GVHD: PGS.TS Ĉoàn Quang Vinh Trang SVTH: Võ Minh Tây12 CHѬѪNG I 7ӘNG QUAN VӄĈӜNG CѪ KHÔNG ĈӖNG BӜ (ĈK) Ĉӝng cѫ không ÿӗng bӝ ba pha ÿѭӧc sӱ dөng rӝng rãi trong công nghiӋp tӯ công suҩt nhӓÿӃn công suҩt lӟn hѫn và chiӃm tӹ lӋ lӟn so vӟi các ÿӝng cѫ khác. Do NӃt cҩu ÿѫn giҧn dӇ chӃ tҥo , vұn hành an toàn và sӱ dung nguӗn cung cҩp trӵc tiӃp tӯ Oѭӟi ÿLӋn xoay chiӅu ba pha .Trong công nghiӋp thѭӡng sӱ dөng ÿӝng cѫ không ÿӗng Eӝ làm nguӗn ÿӝng lӵc cho máy cán thép loҥi vӯa và nhӓ, ÿӝng lӵc cho các máy công Fөӣ các nhà máy công nghiӋp nhҽ .v .v . Trong nông nghiӋp ÿӝng cѫĈK ÿѭӧc dùng làm máy bѫm hay máy gia công nông sҧn.Trong ÿӡi sӕng hҵng ngày ÿӝng cѫĈK cNJng chiӃm mӝt vӏ trí hӃt sӭc quan trӑng,vì nó ÿѭӧc sӱ dөng trong các thiӃt bӏ sinh hoҥt Kҵng ngày nhѭ : máy bѫm , quҥt gió , ÿӝng cѫ trong tӫ lҥnh. Tuy nhiên trѭӟc ÿây các hӋÿӝng ÿӝng cѫĈK có ÿLӅu chӍnh tӕc ÿӝ lҥi vô cùng hiӃm hoi , chiӃm tӹ lӋ rҩt nhӓ là do ÿLӅu chӍnh tӕc ÿӝÿông cѫĈK có khó khăn hѫn các loҥi ÿӝng cѫ khác. Trong thӡi gian gҫn ÿây do sӵ phát triӇn cӫa ngành công nghiӋp chӃ Wҥo bán dҭn công suҩt kӻ thuұt ÿLӋn tӱ và tin hӑc, mà ÿӝng cѫĈK mӟi khai thác ÿѭӧc ѭu ÿLӇm cӫa mình. Nó ÿã trӣ thành hӋ truyӅn ÿӝng cҥnh tranh có hiӋu quҧ vӟi các hӋ truyӅn ÿӝng khác Khác vӟi ÿӝng cѫÿLӋn mӝt chiӅu , ÿӝng cѫĈK ÿѭӧc cҩu tҥo phҫn cҧm và phҫn ӭng không tách biӋt. Tӯ thông cӫa ÿӝng cѫ cNJng nhѭ mô men cӫa ÿӝng cѫ sinh ra phө thuӝc vào nhiӅu tham sӕ . Do vұy hӋÿLӅu chӍnh tӵÿӝng truyӅn ÿӝng ÿLӋn cho ÿӝng cѫ ĈK là hӋÿLӅu chӍnh nhiӅu tham sӕ có tính phi tuyӃn mҥnh Trong ÿӏnh hѭӟng xây dӵng hӋ truyӅn ÿӝng ÿLӋn ÿӝng cѫĈK ngѭӡi ta có xu Kѭӟng vӟi các ÿһt tính ÿLӅu chӍnh cӫa hӋ truyӅn ÿӝng ÿLӋn ÿӝng cѫ mӝt chiӅu HiӋn nay trong công nghiӋp thѭӡng sӱ dөng hӋ truyӅn ÿӝng ÿLӅu khiӇn tӕc ÿӝ ÿӝng cѫĈK 1. ĈLӅu chӍnh ÿLӋn áp cҩp cho ÿӝng cѫ bҵng bӝ biӃn ÿәi tiristor 2. ĈLӅu chӍnh ÿLӋn trӣ bҵng bӝ biӃn ÿәi xung tiristor 3. ĈLӅu chӍnh công suҩt trѭӧc 4. ĈLӅu chӍnh tҫn sӕ nguӗn cung cҩp cho ÿông cѫ bҵng các bӝ biӃn ÿәi tҫn Vӕ (Bӝ biӃn tҫn) dùng tiristor hay transistor I.1) Giӟi thiӋu vӅÿӝng cѫĈK  ĈK là mӝt loҥi máy ÿLӋn xoay chiӅu làm viӋc theo nguyên lý cҧm ӭng ÿLӋn tӯ. I.1.1)Phѭѫng trình ÿһt tính cѫ  ĈӇ thành lұp phѭѫng trình ÿһt tính cѫ ta dùng sѫÿӗ thay thӃ nhѭ hình vӁ (HI_1) Ĉ͛ án t͙t nghi͏p 6͵ dͭng vi ÿL͉u khi͋n trong ÿL͉u ch͑nh t͙c ÿ͡ h͏ bi͇n t̯n ĈK GVHD: PGS.TS Ĉoàn Quang Vinh Trang SVTH: Võ Minh Tây13 Ta có dòng ÿLӋn stato : I1= ú ú ú ú ú û ù ê ê ê ê ê ë é +÷ ø ö ç è æ + + + nm f X S RR XR U 2 2 2 1 221 ' 11 e mm (I-1) Trong ÿó : Xnm=X1d + X’2d ÿLӋn kháng ngҳn mҥch U1f : trӏ hiӋu dөng cӫa ÿLӋn áp pha stato Phѭѫng trình ÿһt tính cӫa ÿӝng cѫĈK : M= ú ú û ù ê ê ë é +÷ ø ö ç è æ + å n f X S RRS RU 2 2 2 10 21 2 ' . .'.3 e e w hay M= ( ) th th S2 S1.2 a S S S S aM th th th ++ + (I-2) Ĉѭӡng ÿһt tính cӫa ÿӝng cѫ nhѭ hình (H I-2) Yӟi : Sth= nmXR R 22 1 2' + å (I-3) Sth là hӋ sӕ trѭӧc tӟi hҥn cӫa ÿӝng cѫ ( )22111 2 .2 .3 nm f th XRR U M +± ±= w (I_4) I.1.2) Ҧnh hѭӣng các thәng sӕÿӃn ÿһt tính cѫ: 7ӯ phѭѫng trình ÿһt tính cѫ ĈK ta thҩy các thông sӕҧnh hѭӣng ÿӃn ÿһt tính cѫ bao Jӗm: a. ̪nh h˱ͧng cͯa s͹ suy gi̫m ÿL͏n áp l˱ͣi c̭p cho ÿông c˯ĈK Khi ÿiên áp lѭӟi suy giҧm thì theo (I-4) mômen Mth tӟi hҥn cӫa ÿӝng cѫ sӁ giҧm bình phѭѫng lҫn biên ÿӝ suy giҧm cӫa ÿLӋn áp,theo (I-3) thì Sth vҭn không ÿәi . MtMdm Ȧ0 Ȧth Ȧ 0 Hình I-2Hình I-1 Xµ X’2dX1 U1f I’2 RµIµ R’2/s Ĉ͛ án t͙t nghi͏p 6͵ dͭng vi ÿL͉u khi͋n trong ÿL͉u ch͑nh t͙c ÿ͡ h͏ bi͇n t̯n ĈK GVHD: PGS.TS Ĉoàn Quang Vinh Trang SVTH: Võ Minh Tây14 Hình I_3 b. ̪nh h˱ͧng cͯa ÿL͏n trͧÿL͏n kháng m̩ch stator Khi nӕi thêm diӋn trӣ hoһc ÿLӋn kháng vào mҥch stator thì theo (I-3) và (I-4) cҧ Sth và MthÿӅu giҧm H ình I_4 c.̪nh h˱ͧng cͯa ÿL͏n trͧ m̩ch roto  Ĉӕi vӟi ÿӝng cѫ không ÿӗng bӝ ngѭӡi ta mҳc thêm ÿLӋn trӣ phө vào mҥch roto ÿӇ hҥn chӃ dòng khӣi ÿӝng thì theo (I-3) , (I-4) thì Sth thay ÿәi còn Mth = const Sth= nmXR R 22 1 2' + å Mth2 MthMth1 w1 w0 w2 Ȧ Sth wdm S UL2 Udm UL1 UL1<Udm UL2<UL1 Ȧ1 0 Ȧ2 Sth1 Mth2 Mth1 MthMc M S Ȧdm Sth Sth2 Ȧ0 Ĉ͛ án t͙t nghi͏p 6͵ dͭng vi ÿL͉u khi͋n trong ÿL͉u ch͑nh t͙c ÿ͡ h͏ bi͇n t̯n ĈK GVHD: PGS.TS Ĉoàn Quang Vinh Trang SVTH: Võ Minh Tây15 Hình I_5 d.̪nh h˱ͧng cͯa t̯n s͙ Ȧ1= p f12p Xuҩt phát tӯ biӇu thӭc trên ta thҩy nӃu tҫn sӕ thay ÿәi sӁ làm thay ÿәi tӕc ÿӝ cӫa Wӯ trѭӡng quay và tӯÿó thay ÿәi tӕc ÿӝÿӝng cѫ 7ӯ (I-3) và (I-4) ta thҩy : NӃu Xnm =Ȧ1.L cho nên khi thay ÿәi tҫn sӕ thì Sth và Mth sӁ thay ÿәi Hình I_6 e.̪nh h˱ͧng cͯa s͙ÿôi c͹c p ĈӇ thay ÿәi sӕÿôi cӵc ӣ stato ngѭӡi ta thѭӡng thay ÿәi cách ÿҩu dây vì : Ȧ1= p f12p (I-5) Ȧ Ȧ1(1-s) (I-6) Vì vұy khi thay ÿәi sӕÿôi cӵc p thì tӕc ÿӝ tӯ trѭӡng quay Ȧ1 thay ÿәi dҭn ÿӃn tӕc ÿӝȦ thay ÿәi theo I.2)CÁC PHѬѪNG PHÁP Ĉ,ӄU CHӌNH TӔC ĈӜĈӜNG CѪĈK I.2.1)Phѭѫng pháp ÿLӅu chӍnh ÿLӋn áp lѭӟi Mth2 Mth1 Mth Ȧ2 Sth2 Sth1 Sth Ȧ0 Ȧdm Ȧ1 Ȧ1 Ȧdm Ȧ2 0 M MthMc Sth2 Sth1 w0 Sth Ĉ͛ án t͙t nghi͏p 6͵ dͭng vi ÿL͉u khi͋n trong ÿL͉u ch͑nh t͙c ÿ͡ h͏ bi͇n t̯n ĈK GVHD: PGS.TS Ĉoàn Quang Vinh Trang SVTH: Võ Minh Tây16 Mômen ÿӝng cѫĈK tӹ lӋ vӟi bình phѭѫng ÿLӋn áp stato nên có thӇÿLӅu chӍnh ÿѭӧc momen tӕc ÿӝÿӝng cѫ bҵng cách ÿLӅu chӍnh giá trӏÿLӋn áp stato trong khi giӳ nguyên tҫn sӕ. ĈӇ ÿLӅu khiӇn ÿӵѫc tӕc ÿӝ ÿӝng cѫĈK phҧi dùng bӝ biӃn ÿәi ÿLӋn áp xoay chiӅu ĈAXC) 1Ӄu coi (ĈAXC) là nguӗn áp lý tѭӣng (Z=0) thì căn cӭ vào biӇu thӭc moment tӟi hҥn ta có quan hӋ sau : 2 ÷÷ ø ö çç è æ = dm b th thU U U M M hay MthU* = Ub* (I-7) Hình I_8 Ĉһc tính diӅu chӍnh ÿLӋn áp Trong ÿó :Uÿm :ĈLӋn áp ÿӏnh mӭc cӫa ÿӝng cѫ Ub : ĈLӋn áp ÿҫu ra cӫa bӝÿLӅu áp xung Mth Mômen tӟi hҥn khi ÿLӋn áp là Uÿm MthU moment tӟi hҥn khi ÿLӋn áp là Ub Phѭѫng pháp này ÿѭӧc dùng ÿLӅu chӍnh ÿLӋn áp cho ÿӝng cѫĈK roto lӗng sóc.Khi thӵc hiӋn ÿLӅu chӍnh ÿLӋn áp cho ÿӝng cѫĈK roto dây quҩn cҫn phҧi nӕi thêm ÿLӋn trӣ phө vào mҥch roto , khi ta thay ÿәi ÿLӋn trӣ phө vào mҥch roto sӁ mӣ rӝng dãi ÿLӅu chӍnh Wӕc ÿӝ và M.Và nhѭ vұy thì tәn thҩt ÿLӅu chӍnh sӁ rҩt lӟn . Ѭu ÿLӇm : cӫa phѭѫng pháp này là chӍ thích hӧp vӟi truyӅn ÿӝng và momen tҧi là hàm Wăng theo tӕc ÿӝ *Nhѭӧc ÿLӇm : Do tính chҩt phӭc tҥp cӫa moment ,ÿLӋn áp ,tӕc ÿӝ nên trong tính toán ngѭӡi ta thѭӡng dùng các phѭѫng pháp ÿӗ thӏÿӇ dӵng các ÿăt tính ÿLӅu chӍnh ,công viӋc này khá phӭc tҥp . Ȧdm MMth2 MthMth1 Ȧ0 Sth Ȧ2 Ȧ1 S ĈK ĈAXC Ĉ͛ án t͙t nghi͏p 6͵ dͭng vi ÿL͉u khi͋n trong ÿL͉u ch͑nh t͙c ÿ͡ h͏ bi͇n t̯n ĈK GVHD: PGS.TS Ĉoàn Quang Vinh Trang SVTH: Võ Minh Tây17 I.2.2)Phѭѫng pháp ÿLӅu chӍnh ÿLӋn trӣ mҥch roto Sѫÿӗ nguyên lý và ÿһt tính cѫ nhѭ hình vӁ (Hình I-10) Hình I_10 Phѭѫng trình ÿһc tính ÿLӅu chӍnh :Sth = nm f XR RR 22 1 22 '' + + (I-8) ĈӇÿLӅu chӍnh tӕc ÿӝÿӝng cѫĈK ngѭӡi ta mҳc thêm ÿLӋn trӣ phө vào mҥch roto , khi thay ÿәi ÿLӋn trӣ phө Rf thì Sth thay ÿәi còn Mth = const dүn ÿӃn thay ÿәi ÿѭӧc tӕc ÿӝ ÿӝng cѫ khi thay ÿәi R2f ta có hӋÿһc tính cѫ có cùng Mth nhѭng khác Sth *.Ѭu ÿLӇm: Ĉѫn giҧn rҿ tiӅn ,có khã năng hiӋn ÿҥi hoá bҵng bán dүn. *.Nhѭӧc ÿLӇm : Tәn hao công suҩt khi ÿLӅu chӍnh , hiӋu suҩt thҩp , phҥm vi ÿLӅu chӍnh Kҽp , ÿLӅu chӍnh không triӋt ÿӇ I.2.3) ĈLӅu chӍnh tҫn sӕ nguӗn cung cҩp cho ÿӝng cѫĈK a.Ĉ̿c ÿL͋m làm vi͏c khi thay ÿ͝i t̯n s͙ Nhѭ ta ÿã biӃt, tҫn sӕ cӫa lѭӟi ÿLӋn quyӃt ÿӏnh giá trӏ tӕc ÿӝ góc cӫa tӯ trѭӡng quay trong máy ÿLӋn ,do ÿó bҵng cách thay ÿәi tҫn sӕ dòng ÿLӋn stato ta có thӇÿLӅu chӍnh ÿѭӧc tӕc ÿӝÿӝng cѫ ĈӇ thӵc hiӋn phѭѫng pháp ÿLӅu chӍnh này ta dùng bӝ biӃn tҫn cung cҩp cho ÿӝng Fѫ Hình I-11: Hình I_11 Vì máy ÿLӋn làm viӋc ӣ tҫn sӕÿӏnh mӭc cho nên khi thay ÿәi tҫn sӕ, chӃÿӝ làm viӋc Fӫa nó sӁ bӏ thay ÿәi . Sӣ dƭ nhѭ vұy là vì tҫn sӕҧnh hѭӣng trӵc tiӃp ÿӃn tӯ thông cӫa máy ÿLӋn Ȧ2 Ȧ1 Sth2 Sth1 Sth Ȧ0 Ȧdm M Mc Mth ĈK U1f1 U2f2 ĈKBIӂN 7ҪN Ĉ͛ án t͙t nghi͏p 6͵ dͭng vi ÿL͉u khi͋n trong ÿL͉u ch͑nh t͙c ÿ͡ h͏ bi͇n t̯n ĈK GVHD: PGS.TS Ĉoàn Quang Vinh Trang SVTH: Võ Minh Tây18 Quan hӋ này có thӇÿѭӧc phân tích nhӡ phѭѫng trình cân bҵng ÿLӋn áp ÿӕi vӟi mҥch stato cӫa máy ÿLӋn E1 = K.ĭ.f1 (I_9) E1 : sӭc ÿLӋn ÿӝng cҧm ӭng trong cuӝn dây stato ĭ: Tӯ thông móc vòng qua cuӝn dây stato K : Hҵng sӕ tӹ lӋ U1 = Ub :ĈLӋn áp ÿһt vào stato cӫa ÿӝng cѫ F1 = fb : Tҫn sӕ dòng ÿLӋn stato 1Ӄu bӓ qua sөt áp trên tәng trӣ cӫa cuӝn dây stato thì tӯ (I-10) ta có : 1 1 Kf U =f (Z1 = 0) ; (I-10) NӃu ÿLӋn áp ÿһt vào stato không ÿәi (U1 = const) thì (I-10) cho thҩy khi tҫn sӕ Wăng hѫn giá trӏÿӏnh mӭc f1 > fÿm thì tӯ thông máy sӁ giҧm do ÿó moment trong máy VӁ giҧm theo : M = K.f.I NӃu moment tҧi không ÿәi hoһc là hàm theo tӕc ÿӝ thì lúc này dòng ÿLӋn cӫa ÿӝng Fѫ thì lúc này dòng ÿLӋn cӫa ÿӝng cѫ phҧi tăng lên ÿӇ cân bҵng vӟi moment phө tҧi cMM » (Mc là moment phө tҧi hay moment cҧn) KӃt quҧ là cuӝn dây stato bӏ quá tҧi vӅ dòng gây phát nóng cuӝn dây , giҧm tuәi thӑ ÿӝng cѫ NӃu ÿLӋn áp ÿһt vào stato không ÿәi (U1 = const) thì theo (hình I-11) Khi tҫn sӕ giҧm nhӓ hѫn so vӟi ÿӏnh mӭc f1 < fÿm thì tӯ thông cӫa máy sӁ tăng dүn ÿӃn mҥch tӯ bӏ Eҧo hoà hay quá tҧi mҥch tӯ .HiӋn tѭӧng này làm tăng dòng tӯ hoá nghƭa là tăng tәn thҩt thép và ÿӕt nóng máy ÿLӋn Nhѭ vұy khi ÿLӅu chӍnh tӕc ÿӝ bҵng cách thay ÿәi tҫn sӕ nӃu giӳ nguyên ÿLӋn áp stato không ÿәi thì khҧ năng mang tҧi cӫa máy sӁ giҧm và các chӍ tiêu chҩt lѭӧng ÿӅu thҩp .Do ÿó khi thay ÿәi tҫn sӕ phҧi kӃt hӧp thay ÿәi ÿLӋn áp trên dây quҩn stato b.Quy lu̵t ÿL͉u ch͑nh ÿL͏n áp Ngѭӡi ta chӭng minh ÿѭӧc rҵng khi thay ÿәi tҫn sӕ. NӃu ÿӗng thӡi ÿLӅu chӍnh ÿLӋn áp sao cho hӋ sӕ quá tҧi c th M M =l không ÿәi thì chӃÿӝ làm viӋc cӫa máy luôn luôn ÿѭӧc duy trì ӣ mӭc tӕi ѭu khi làm viӋc ӣ các thông sӕÿӏnh mӭc ,khi ÿó hiӋu suҩt cosij cӫa máy ÿLӋn trong toàn dãi hҫu nhѭ không ÿәi Tӯ nhұn xét trên ta có thӇ tìm ra quy luұt thay ÿәi ÿLӋn áp theo tҫn sӕ , ÿӇ cho ÿѫn giҧn ta sӱ dөng các giҧ thiӃt ÿһt ra khi tìm phѭѫng trình ÿһt tính cѫ cӫa máy ÿLӋn không ÿӗng bӝ ( Hình I-12). Trong ÿó Uf: trӏ sӕ hiӋu dөng ÿLӋn áp pha ӣ stato (V) Iȝ,I'1,I'2 các dòng ÿLӋn tӯ hoá ,stato,roto quy ÿәi vӅ stato (A) I1 Lµ Rȝ L1 L’2 Iȝ I2 S r 2' S r f2' U Ĉ͛ án t͙t nghi͏p 6͵ dͭng vi ÿL͉u khi͋n trong ÿL͉u ch͑nh t͙c ÿ͡ h͏ bi͇n t̯n ĈK GVHD: PGS.TS Ĉoàn Quang Vinh Trang SVTH: Võ Minh Tây19 Hình I_12 rȝ,r1,r2 các ÿLӋn trӣ tác dөng cӫa mҥch tӯ hoá , cuӝn dây stato, roto ÿã quy ÿәi vӅ stato (ȍ). R'f : ÿLӋn trӣ phө (nӃu có) mҳc thêm vào mӛi pha roto S : hӋ sӕ trѭӧc cӫa ÿӝng cѫ S = 06,002.0 ¸  ĈӇÿѫn giҧn ta sӱ dөng các giҧ thiӃt ÿã ÿһt ra khi tìm phѭѫng trình ÿһc tính cѫ cӫa máy ÿLӋn không ÿӗng bӝ ,nghƭa là sӁ khҧo sát vҩn ÿӅ này dӵa vào vào sѫÿӗ thay thӃ hình Ƚ . khi bӓ qua ÿLӋn trӣ cuӝn dây stato ,biӇu thӭc moment sӁ là : 2 21 2 1 12110 2 1 )'(4 3 ''(2 3 fXX P U fXfX U M th + = + = pw (Hình I-11) Thay Ȧ0 = p f12p +Ӌ sӕ quá tҧi cӫa ÿӝng cѫÿXӧc xác ÿӏnh dӵa vào (I-11) và quan hӋ MC = f(Ȧ) )(.)(.).'(4 3 )( 21 2 1 2 121 2 1 ww pw l c c c th Mf U A MfXX P U M M = + =» (I-12) TiӃp theo ta thay MC Ȧ) = M&ÿm. Ȧ2 = xxx cdm Bff P M 11 2)2( = p Khi ÿó (I-12) ÿѭӧc viӃt lҥi : BiӇu thӭc này thӇ hiӋn trong trѭӡng hѫp làm viӋc ӣ các thông sӕÿӏnh mӭc Uÿm,fÿm và trѭӡng hӧp ӣ U1,f1 bҩt kǤ giӳ nguyên ÿLӅu kiӋn Ȝ =const ta ÿѭӧc : 7ӯÿó rút ra quy luұt ÿLӋn áp : x dm x dm f f U U + + = 2 1 2 1 1 1 Hoһc U1*= )2*(1 xf + vӟi và dmU UU 1 1* 1 = và dmf ff 1 1* 1 = Nhѭ vұy ÿLӋn áp stato phҧi thay ÿәi phө thuӝc vào tҫn sӕ và ÿһc tính phө tҧi . cho nhӳng giá trӏkhác nhau ,ta sӁ tìm ra nhӳng quy luұt biӃn ÿәi ÿLӋn áp vӟi tӯng trѭӡng hӧp phө Wҧi vӟ bҧng sau: Bҧng I_1 Loҥi tҧi x Quy luұt ÿLӅu chinh ÿLӋn áp KiӇu máy tiӋn -1 * 1f KiӇu máy nâng 0 f1* Ĉ͛ án t͙t nghi͏p 6͵ dͭng vi ÿL͉u khi͋n trong ÿL͉u ch͑nh t͙c ÿ͡ h͏ bi͇n t̯n ĈK GVHD: PGS.TS Ĉoàn Quang Vinh Trang SVTH: Võ Minh Tây20 Ma sát nhӟt 1 3* 1f Máy bѫm, quҥt gió 2 2* 1f Trong thӵc tӃ có nhiӅu loҥi máy sҧn xuҩt khác nhau , ÿһt tính cѫ cNJng có nhiӅu Gҥng khác nhau.Tuy vұy ÿһc tính cѫ cӫa máy sҧn xuҩt thѭӡng gһp : MC = MC0 + (M&ÿm+ MC0)( cdm c w w )x (I_13) Trong ÿó : MC :Moment cҧn là moment là moment trên trөc máy ӭng vӟi tӕc ÿӝ ?c nào ÿҩy MC0 : Moment cҧn cӫa máy sҧn suҩt khi không quay M&ÿm :Moment cҧn ÿӏnh mӭc, là moment trên trөc cӫa máy sҧn xuҩt ӭng vӟi tӕc ÿӝ góc ÿӏnh ÿӏnh mӭc Ȧcdm x : Nhӳng sӕ tӵ nhiên ÿһc trѭng cho tӯng dҥng ÿһc tính cѫ cӫa máy sҧn xuҩt 1) Ӭng vӟi x = 0, Mc = const : KiӇu máy nâng,cҫu trөc , thang máy U1/f1 = const Hình I_13 2) Ӭng vӟi x =1, Mc tӹ lӋ bұc nhҩt vӟi tӕc ÿӝ,(kiӇu máy bào ) const f U =2/3 1 1 Hình I-14 3) Ӭng vӟi x = -1,Mc tӹ lӋ nghӏch vӟi tӕc ÿӝ KiӇu máy (MC = 1/Ȧ) Máy tiӋn,máy doa máy mài Ȧ0 Ȧ1 Ȧ2 Ȧ Ȧ2c Ȧâm f11 f1dm f12 Ȧ1c MFÿm M Ȧ1 Ȧ0 Ȧ2 f11 f1dm f12 M&ÿm MCth Ĉ͛ án t͙t nghi͏p 6͵ dͭng vi ÿL͉u khi͋n trong ÿL͉u ch͑nh t͙c ÿ͡ h͏ bi͇n t̯n ĈK GVHD: PGS.TS Ĉoàn Quang Vinh Trang SVTH: Võ Minh Tây21 const f U =2/1 1 1 Hình I_15 4) Ӭng vӟi x = 2, MC tӹ lӋ nghӏch vӟi tӕc ÿӝ : const f U =2 1 1 KiӇu máy bѫm ,băng tҧi quҥt gió; Hình I_16 Vì quy luұt )2*(1 * 1 xfU += ÿѭӧc rút ra vӟi ÿLӅu kiӋn công nhұn nhӳng giá trӏ giҧ thiӃt ÿã nhҳc trên nên nó chӍ là gҫn ÿúng .Nó ÿѭӧc gӑi là quy luұt cѫ bҧn hoһc là quy luұt Jҫn ÿúng có thӇ sӱ dөng khi ÿLӅu chӍnh trong dãi không rӝng.NӃu dҧi diӅu chӍnh lӟn Gҭn ÿӃn sai sô ÿáng kӇӣ vùng tҫn sӕ thҩp. Ȧ1 Ȧ0 Ȧ2 MC Mth f11 f1dm f12 M f1dm Mth Ȧ1 Ȧ0 Ȧ2 Ȧ f12 f11 M Ĉ͛ án t͙t nghi͏p 6͵ dͭng vi ÿL͉u khi͋n trong ÿL͉u ch͑nh t͙c ÿ͡ h͏ bi͇n t̯n ĈK GVHD: PGS.TS Ĉoàn Quang Vinh Trang SVTH: Võ Minh Tây22 CHѬѪNG II GIӞI THIӊU CHUNG Vӄ BӜ BIӂN TҪN II.1) Giӟi thiӋu chung Bӝ biӃn tҫn là mӝt thiӃt bӏ biӃn ÿәi năng lѭӧng ÿLӋn xoay chiӅu tӯ tҫn sӕ f1 sang nguӗn ÿLӋn có tҫn sӕ khác f2 Tҫn sӕ cӫa lѭӟi ÿLӋn quyӃt ÿӏnh tӕc ÿӝ góc cӫa tӯ trѭӡng quay trѭӡng máy ÿLӋn do ÿó bҵng cách thay ÿәi tҫn sӕ dòng ÿLӋn stato ta có thӇÿLӅu chӍnh ÿѭӧc tӕc ÿӝÿӝng cѫ. ĈӇ thӭc hiӋn ÿѭӧc vҩn ÿӅ này ta dùng bӝ biӃn tҫn cung cҩp tҫn sӕ phù hӧp vӟi ÿӝng cѫ ÿLӅu chӍnh tӕc ÿӝ.  Ӣ bӝ biӃn tҫn làm nguӗn cung cҩp cho ÿӝng cѫĈK ,yêu cҫu bӝ này có khҧ năng biӃn ÿәi tҫn sӕ và ÿLӋn áp sao cho tӍ sӕ : const f U = II.2) Phân loҥi các bӝ biӃn tҫn Ĉѭӧc phân chia thành hai loҥi : _ BiӃn tҫn trӵc tiӃp _ BiӃn tҫn gián tiӃp Các loҥi biӃn tҫn dùng van ÿѭӧc ӭng dөng rӝng rãi nhӡ các ѭu ÿLӇm sau : _ Kích thѭӟc nhӓ nên diӋn tích lҳp ÿһt không lӟn _ Trӑng lѭӧng nhҽ _ HӋ sӕ khuӃch ÿҥi công suҩt lӟn _ Có quán tính nhӓ II.2.1) Bi͇n t̯n tr͹c ti͇p (Hình II-1) Hình II_1 Là bӝ biӃn ÿәi mà tҫn sӕ mà tҫn sӕÿѭӧc tҥo ra bҵng cách ÿóng cҳt thích hӧp tӯng ÿRҥn thích hӧp mӝt dòng ÿLӋn xoay chiӅu có tҫn sӕ cao hѫn .TӯÿLӋn áp xoay chiӅu U1 có tҫn sӕ f1 ,chӍ cҫn qua mӝt mҥch van là chuyӇn ngay ra tҧi vӟi tҫn sӕ khác f2 . Trong bӝ biӃn tҫn trӵc tiӃp chӭc năng chӍnh lѭu và nghӏch lѭu nҵm trên cùng mӝt Eӝ biӃn ÿәi , không sӱ dөng tө chuyӇn mҥch và chӍ chuyӇn ÿәi mӝt lҫn nên hiӋu suҩt cao .Nhѭng thӵc tӃ mҥch van khá phӭc tҥp sӕ lѭӧng van lӟn , nhҩt là ÿӕi vӟi mҥch ba pha .ViӋc thay ÿәi tҫn sӕ f2 khó khăn và phө thuӝc vào f1 .BiӃn tҫn ÿѭӧc sӱ dөng vӟi phҥm vi ÿLӅu chӍnh f2 < f1 . II.2.1)Bi͇n t̯n gián ti͇p (Hình II_2) 0ҤCH VANU1~ f1 U2~ f2 Ĉ͛ án t͙t nghi͏p 6͵ dͭng vi ÿL͉u khi͋n trong ÿL͉u ch͑nh t͙c ÿ͡ h͏ bi͇n t̯n ĈK GVHD: PGS.TS Ĉoàn Quang Vinh Trang SVTH: Võ Minh Tây23 U1,f1 Hình II_2 : Sѫÿӗ khӕi biӃn tҫn gián tiӃp Trong loҥi biӃn tҫn này ÿLӋn áp xoay chiӅu ÿҫu tiên biӃn thành mӝt chiӅu nhӡ bӝ chӍnh lѭu ,sau ÿó qua bӝ lӑc rӗi mӟi trӣ lҥi áp xoay chiӅu vӟi tҫn sӕ f2 nhӡ nghӏch lѭu áp ÿӝc lұp . ViӋc biӃn ÿәi năng lѭӧng hai lҫn làm giҧm hiӋu suҩt cӫa bӝ bӝ biӃn tҫn song viӋc thay ÿәi f2 lҥi không phө thuӝc vào f1 trong mӝt dãy rӝng cҧ trên và dѭӟi f1 .Hѫn nӳa Gѭӟi sӵӭng dөng cӫa hӋÿLӅu khiӇn sӕ nhӡ kӻ thuұt vi xӱ lý và van lӭc nên phát huy Wӕi ÿa ѭu ÿLӇm cӫa biӃn tҫn loҥi này ,nên ÿѭӧc sӱ dөng rӝng rãi. Do tính chҩt cӫa bӝ lӑc nên biӃn tҫn loҥi này còn ÿѭӧc phân chia làm hai loҥi: BiӃn tҫn dùng nghӏch lѭu áp BiӃn tҫn dùng bӝ nghӏch lѭu dòng II.2.2.1) Bi͇n t̯n s͵ dͭng ngh͓ch l˱u áp (Hình II_3) Hình II_3 Ta xét biӃn tҫn sӱ dөng nghӏch lѭu áp %ӝ lӑc sӱ dөng tө C lӟn ӣÿҫu vào cӫa bӝ nghӏch lѭu nên ÿLӋn áp ÿһt vào bӝ nghӏch lѭu xem nhѭ nguӗn áp ,cùng vӟi ÿLӋn cҧm L tө C làm phҷng ÿLӋn áp chӍnh lѭu -Ngoài ra tө C còn tҥo ÿLӅu kiӋn trao ÿәi công suҩt phҧn kháng Q gӳa tҧi vӟi bӝ nghӏch Oѭu và mҥch mӝt chiӅu ,bҵng cách cho phép sӵ thay ÿәi nhѭng trong thӡi gian ngҳn dòng vào bӝ nghӏch lѭu mà không phө thuӝc vào bӝ chӍnh lѭu. -Khi sӱ dөng bӝ băm ÿLӋn áp hay phѭѫng pháp ÿLӅu biên ÿӝ rӝng xung thì có thӇ sӱ Gөng bӝ chӍnh lѭu không ÿLӅu khiӇn (chӍnh lѭu diod). -Do tác dөng cӫa diod ngѭӧc nên ÿҫu vào cӫa bӝ nghӏch lѭu luôn luôn dѭѫng . Ĉӕi vӟi loҥi này yêu cҫu cӫa bӝ biӃn tҫn là năng lѭӧng ÿѭӧc truyӅn hai chiӅu tӭc là ÿӝng cѫ thӵc hiӋn hãm tái sinh thì bӝ chӍnh lѭu làm viӋc ÿѭѫc ӣ cҧ bӕn góc phҫn tѭ UBC ChӍnh Lѭu /ӑc c Nghӏch Lѭu%ăm UAB UCUBUA T2T6T4 Ĉ2 Ĉ6Ĉ4 T5T3T1 Ĉ5Ĉ3Ĉ1 C0 L +E 0 Ĉ͛ án t͙t nghi͏p 6͵ dͭng vi ÿL͉u khi͋n trong ÿL͉u ch͑nh t͙c ÿ͡ h͏ bi͇n t̯n ĈK GVHD: PGS.TS Ĉoàn Quang Vinh Trang SVTH: Võ Minh Tây24 -Vӟi yêu cҫu cӫa ÿӅ tài chӑn ÿӝng cѫ công suҩt nhӓ (P=750w) nên viӋc hãm tái sinh ÿӝng cѫ trҧ năng lѭӧng vӅ nguӗn là không cҫn thiӃt nên ta sӱ dөng biӃn tҫn ngӏch lѭu áp vӟi bӝ chӍnh lѭu không ÿLӅu khiӇn dùng diod và sӱ dөng phѭѫng pháp ÿLӅu biӃn ÿӝ Uӝng xung ÿӇÿLӅu khiӇn áp ÿһt vào ÿӝng cѫ. II.2.2.2) Bi͇n t̯n dùng ngh͓ch l˱u dòng (Hình II_4) Bӝ lӑc có cuӝn san bҵng có cҧm kháng lӟn có tác dөng nhѭ nguӗn dòng cҩp cho Eӝ nghӏch lѭu.Dòng ÿLӋn trong mҥch mӝt chiӅu ÿѭӧc san bҵng bӣi L dòng ÿLӋn này không thӇÿҧo chiӅu Ngoài ra cuӝn san bҵng L còn có tác dөng ÿҧo chiӅu công suҩt phҧn kháng cӫa tҧi trong mҥch mӝt chiӅu, cuӝn kháng này cho phép ÿҧo chiӅu ÿLӋn áp ÿһt vào bӝ nghӏch Oѭu mà không phө thuӝc vào bӝ chӍnh lѭu, do vұy rҩt phù hӧp vӟi viӋc hãm tái sinh ÿӝng cѫ. Tuy nhiên chӍÿLӅu chӍnh ÿѭѫc dòng và áp cӫa tҧi theo phѭѫng pháp biên ÿӝ nên chӍnh lѭu phҧi sӱ dөng linh kiӋn bán dүn có ÿLӅu khiӇn. II.3 Các khӕi trong biӃn tҫn gián tiӃp II.3.1)Khӕi chӍnh lѭu: Ĉӕi vӟi ÿLӋn áp ba pha có 2 cách mҳc chӍnh lѭu: 6ѫÿӗ hình tia ba pha Sѫÿӗ hình tia mӝt pha (chӍnh lѭu ½ sóng) 6ѫÿӗ hình cҫu ba pha Sѫÿӗ hình cҫu mӝt pha 6ѫÿӗ nhѭ hình (Hình II_5), (Hình II_6), (Hình II_7), (Hình II_8) Ud Hình II_5 UdUf ~ Uf ~ Ud Hình II_6 Ud Hình II_7 Hình II_4 T2T6T4 Ĉ2Ĉ6Ĉ4 Ĉ5Ĉ3Ĉ1 T5T3T1 T2T6T4 T5T3T1 L Ĉ͛ án t͙t nghi͏p 6͵ dͭng vi ÿL͉u khi͋n trong ÿL͉u ch͑nh t͙c ÿ͡ h͏ bi͇n t̯n ĈK GVHD: PGS.TS Ĉoàn Quang Vinh Trang SVTH: Võ Minh Tây25 TuǤ thuӝc vào mӭc ÿӝ yêu cҫu vӅ chҩt lѭӧng ÿLӋn áp DC mà ta chӑn sѫÿӗ nào cho phù hӧp. Dҥng sóng ÿLӋn áp ra nhѭ hai sѫ ÿӗ hình (Hình II_9), (Hình II_10), (Hình II_11) và (Hình II_12) *ӑi ÿLӋn áp xoay chiӅu ÿһt lên bӝ chӍnh lѭu là U1 còn ÿLӋn áp DC là Ud ta có sӵ so sánh giӳa các sѫÿӗ : II.3.1.1 ) Ĉ͙i vͣi ch͑nh l˱u m͡t pha a) ChӍnh lѭu mӝt pha 1/2 chu kǤ Ud = fUp 2 , Id = fURp 2 Hình II_8 Ud = fUp 22Ud = fUp 2 t t t Ud =1,17U UA UB UC 0 Ud UA UB UC Ud =2,34U 0 t Ud Hình II_9 Hình II_10 Hình II_11 Hình II_12 Ĉ͛ án t͙t nghi͏p 6͵ dͭng vi ÿL͉u khi͋n trong ÿL͉u ch͑nh t͙c ÿ͡ h͏ bi͇n t̯n ĈK GVHD: PGS.TS Ĉoàn Quang Vinh Trang SVTH: Võ Minh Tây26 I2 = R U 2 2 , U2 = dU2 p I1 = 1,21m.Id ; U1 = U2/m Cuӕi cùng tính ra ta ÿѭӧc công suҩt máy biӃn áp S =3,09Ud Id = 3,09Pd Nhұn xét :máy biӃn áp sӱ dөng tӗi Sѫÿӗ chӍnh lѭu mӝt pha bán sóng ÿѫn giҧn.Muӕn có dòng tҧi ít nhҩp nhô cҫn có bӝ lӑc tӕt b ) ChӍnh lѭu cҫu mӝt pha : Ud = fUp 22 ; I1 = 22 .. dImp , U1 = U2/m ; S2 = U2 I2 =1,74Ud Id ; S1 = U1 I1 = 1,23Ud Id 2 21 SSS += = 1,48Pd Ta thҩy ÿӕi vӟi chӍnh lѭu mӝt pha thì chӍnh lѭu cҫu sӱ dung công suҩt cӫa máy biӃn áp triӋt ÿӇ hѫn, kinh tӃ hѫn , so vӟi chӍnh lѭu bán sóng II.3.1.2 )Ĉ͙i vͣi ch͑nh l˱u ba pha a ) Sѫÿӗ hình tia ÿѫn giҧn hѫn ,sӕ pha ít hѫn nên sөt áp bé hѫn và tәn thҩt bé Kѫn,phù hӧp vӟi sѫÿӗ không ÿòi hӓi ÿLӋn áp ra Ud bҵng phҷng .Giá trӏ trung bình ÿLӋn áp ra cӫa sѫÿӗ hình tia bé hѫn Ud = fUÌf UdUdU 2 3 3 2 2 63)cos(2 2 3 .2 3 2 1 p qq p q p q q p p ==ò ò - S = 1,345Pd b) Sѫÿӗ chӍnh lѭu ba pha hình cҫu cho ÿLӋn áp và dòng chӍnh lѭu tӕt hѫn so Yӟi ba pha hình tia ,máy biӃn áp ÿѭӧc sӱ dөng triӋt ÿӇ hѫn,máy biӃn áp không bӏ tӯ hoá Fѭӥng bӭc bӣi dòng mӝt chiӅu .Vӟi cùng mӝt giá trӏ Pd thì công suát cӫa máy biӃn áp ӣ Vѫÿӗ cҫu nhӓ hѫn so vӟi sѫÿӗ hình tia ÿáng kӇ . Giá tri trung bình cӫa ÿLӋn áp ra ÿӕi vӟi sѫÿӗ hình cҫu nhѭ sau: Ud = ff UdU 2 6 6 2 63)cos(6 2 6 p qq p p p =ò - S =1,047Pd II.3.2 ) Khӕi lӑc Chӭc năng cӫa bӝ lӑc là làm cho dòng ÿLӋn nào ÿó có tҫn sӕ nào ÿó ÿi qua mà biên ÿӝ không bӏ suy giҧm ÿӗng thӡi làm suy giҧm mҥnh dòng ÿLӋn ӣ tҫn sӕ khác +Khӕi lӑc tө C thѭӡng sӱ dөng vӟi tҧi công suҩt bé +Khӕi lӑc có tө C và cuӝn kháng thѭӡng sӱ dөng vӟi tҧi công suҩt lӟn -Trong mҥch chӍnh lѭu (CL) ÿLӋn áp hay dòng ÿLӋn ta tҧi có cӵc tính không ÿәi nhѭng giá trӏ cӫa chúng thay ÿәi theo thӡi gian mӝt cách có chu kǤ (HiӋn tѭӧng ÿұp mҥch) tҥo ra các thành phҫn sóng hài gây nên sӵ tiêu phí năng lѭѫng mӝt cách vô ích và gây ra sӵ Ĉ͛ án t͙t nghi͏p 6͵ dͭng vi ÿL͉u khi͋n trong ÿL͉u ch͑nh t͙c ÿ͡ h͏ bi͇n t̯n ĈK GVHD: PGS.TS Ĉoàn Quang Vinh Trang SVTH: Võ Minh Tây27 nhiӇu loҥn cho sӵ làm viӋc cӫa tҧi .Vҩn ÿӅÿѭӧc ÿһt ra là ta phҧi lӑc bӟt các thành phҫn sóng hàiÿӇ có ÿѭӧc thành phҫn mӝt chiêu chiӅu có hӋ sӕÿұp mҥch cho phép. Ngѭӡi ta ÿӏnh nghƭa hӋ sӕÿұp mҥch nhѭ sau: Kp có giá trӏ càng nhӓ thì chҩt lѭӧng bӝ lӑc càng cao Các phѭѫng pháp lӑc :có ba phѭѫng pháp II.3.2.1)./͕c b̹ng tͭ C: Thѭӡng dùng vӟi công suҩt bé Sѫÿӗ hình (Hình II_13) Hình II_13 Do sӵ phóng ÿLӋn cӫa tө C theo quy luұt hàm mNJ và do các sóng hài bұc cao ÿѭӧc rӁ qua tө C,còn lҥi thành phҫn mӝt chiӅu vӟi sӕ ít sóng hài bұt thҩp ÿi qua tҧi. HӋ sӕÿұp mҥch 1.. 2' Rc K p w = II.3.2.2 ) .B͡ l͕c dùng cu͡n dây L:  Ĉѭӧc dùng vӟi tҧi có công suҩt lӟn hѫn Hình II_14 Hình II_14 Vì cuӝn dây L mҳc nӕi tiӃp vӟi tҧi nên khi dòng ÿLӋn ra tҧi biӃn thiên ÿұp mҥch ,trong cuӝn dây L xuҩt hiӋn dòng ÿLӋn tӵ cҧm làm giҧm các sóng hài bұc cao. HӋ sӕÿұp mҥch : L RK Lp ..3 w = Khi tính chӑn L nên chӑn giá trӏ L không quá lӟn vì nhѭ vұy sӁ gây ra hiӋn tѭӧng sөt áp DC trên nó lӟn làm cho hiӋu suҩt chӍnh lѭu giҧm. II.3.2.3 ) L͕c dùng c̫ tͭ C và cu͡n kháng L : Sѫ dӗ này sӱ dөng ѭu ÿLӇm cӫa cҧ hai sѫÿӗ trên Hình II_15 - + ± RC t U kP = Giá trӏ trung bình cӫa Ud(Id) Biên ÿӝ sóng hài lӟn L + - t U RC Hình II_15 Ĉ͛ án t͙t nghi͏p 6͵ dͭng vi ÿL͉u khi͋n trong ÿL͉u ch͑nh t͙c ÿ͡ h͏ bi͇n t̯n ĈK GVHD: PGS.TS Ĉoàn Quang Vinh Trang SVTH: Võ Minh Tây28 Do sӱ dөng tәng hӧp cҧ hai loҥi trên nên biên ÿӝ sóng hài càng bӏ giҧm nhӓ và ÿLӋn áp ra tҧi ít bӏÿұp mҥch hѫn.Vì vұy bӝ lӑc LC thѭӡng thѭӡng ÿѭӧc sӱ dөng nhièu nhҩt . Vì nhӳng ѭu ÿLӇm trên trong ÿӅ tài này ta dùng bӝ lӑc LC II.3.3 ) Khӕi nghӏch lѭu II.3.3.1) %͡ ngh͓ch l˱u ÿL͏n áp (NLĈA) m͡t pha Bӝ nghӏch lѭu ÿLӋn áp ba pha thѭӡng dùng sѫÿӗ cҫu,sѫÿӗ cҫu ba pha ÿѭѫc tҥo ra bҵng cách mҳc thêm mӝt nhánh vào sѫÿӗ cҫu mӝt pha,do ÿó trѭӟc khi khҧo sát sѫÿӗ cҫu ba pha ta xem xét sѫÿӗ cҫu mӝt pha a) S˯ÿ͛ m̩ch ngh͓ch l˱u áp m͡t pha (Hình II_16) Hình II_16 Nguӗn ÿLӋn cҩp cho nghӏch lѭu ÿLӋn áp (NLĈA) phҧi là nguӗn sӭc ÿLӋn ÿӝng nӝi trӣ nhӓ.NӃu sӱ dөng chӍnh lѭu làm nguӗn cҩp cho NLĈA thì ta mҳc thêm tөÿLӋn C0ӣ ÿҫu nghӏch lѭu ÿӇ mӝt phҫn ÿҧm bҧo ÿLӋn áp nguӗn ít bӏ thay ÿәi mһt khác ÿӇ trao ÿәi Qăng lѭӧng cҧm kháng vӟi ÿLӋn cҧm tҧi (vӟi tҧi là R_L hay ÿӝng cѫÿLӋn ). b) Nguyên lý ho̩t ÿ͡ng Các van tӯ T1ÿӃn T4ÿѭӧc ÿLӅu khiӇn theo tӯng cһp T1, T3 và T2, T4 lӋch pha nhau 1800. Ӣ nӱa chu kǤ ÿҫu tiên ÿLӅu khiӇn mӣ T1, T3 vӟi cӵc tính ÿѭӧc xác ÿӏnh dҩu không có trong ngoһc ) ta có Ut = En .Dòng ÿLӋn chҧy tӯ dѭѫng nguӗn qua T1 ,Zt , T3 YӅ âm nguӗn . ĈӃn thӡi ÿLӇm T/2 (hoһc p ) ta ÿҧo trҥng thái ÿLӅu khiӇn cho T2, T4 dүn .Nhѭng do tҧi có tính cҧm kháng nên dòng ÿLӋn không ÿҧo chiӅu ngay ,năng lѭӧng tích lNJy ӣÿLӋn Fҧm sӁ duy trì dòng ÿLӋn theo chiӅu cNJ, lúc này dòng ÿLӋn buӝc phҧi thoát qua các diod D2,D4ÿӇ vӅ nguӗn theo ÿѭӡng D2 cӵc dѭѫng En qua nguӗn En xuӕng cӵc âm vӅ D4 (mӝt phҫn chҧy qua T2, T4 theo chiӅu ngѭӧc ).Nhѭ vұy do D2 D4 và T2 T4 dүn ÿLӋn áp ra tҧi ÿҧo cӵc tính ngay (dҩu trong ngoһc ) ta có Ut = -En nhѭng dòng ÿLӋn tҧi vҭn duy trì theo chiӅu cӫ cho ÿӃn thӡi ÿӇm t2 mӟi ÿҧo chiӅu .ĈӃn ÿLӇm lҥi ÿәi trҥng thái ,quá T3 T2 -utT4 En Ĉ1 Ĉ4 Ĉ2 Ĉ3 T1 Zt C0 + - + Ĉ͛ án t͙t nghi͏p 6͵ dͭng vi ÿL͉u khi͋n trong ÿL͉u ch͑nh t͙c ÿ͡ h͏ bi͇n t̯n ĈK GVHD: PGS.TS Ĉoàn Quang Vinh Trang SVTH: Võ Minh Tây29 trình diӇn ra tѭѫng tӵ : dòng ÿLӋn sӁ duy trì theo chiӅu cNJ mӝt ÿRҥn bҵng t1 nhӡ các van D1 , D3 , T1, T3 rӗi mӟi ÿҧo chiӅu . -Qua mӝt chu kǤ tҧi nhұn ÿѭӧc ÿLӋn áp và dòng ÿLӋn là xoay chiӅu ,ÿây chính là nguyên lý nghӏch lѭu. II.3.3.2.%͡ ngh͓ch l˱u áp ba pha : a).S˯ÿ͛ m̩ch hình (Hình II_17) Bҵng cách mҳc thêm mӝt nhánh vào cҫu nghӏch Oѭu mӝt pha ta ÿѭӧc cҫu nghӏch lѭu ba pha tҧi R,L ÿҩu sao . Hình II_ 17 b)Nguyên lý làm vi͏c : Các transistor làm viӋc vӟi góc dүn q = 1800 theo biӇu ÿӗÿLӅu khiӇn hình (Hình II_21), các transistor mӣ lҫn lѭӧc tӯ T1 ¸T6 vӟi góc lӋch pha giӳa hai transistor là 600 .Nhѭ vұy ӣ bҩt kǤ thӡi ÿLӇm nào cNJng có ba transistor dүn (hai cӫa nhóm này và mӝt Fӫa nhóm kia ) cho dòng chҧy qua .  Ӣ mӛi thӡi ÿLӇm sѫÿӗÿӅu có mӝt pha mҳc nӕi tiӃp vӟi hai pha ÿҩu song song do vұy ÿLӋn áp trên tҧi chӍ có hai giá trӏ hoһc Ed/3 ( khi pha ÿó ÿҩu song song vӟi mӝt pha khác ) hoһc 2Ed/3 ( khi nó ÿҩu nӕi tiӃp vӟi hai pha khác ÿҩu song song ).Giҧ thiӃt Wҧi ÿӕi xӭng ZA = ZB = ZC theo dҥng ÿLӋn áp ra ta có trӏ hiӋu dөng cӫa nó : 3 2 3 2 3 21 2 1 3 0 3 2 3 22 2 0 2 n n n phapha E dEd E dUU = ú ú û ù ê ê ë é ÷ ø ö ç è æ+÷ ø ö ç è æ == ò òò p p p p qq p q p  ĈӇ có biӇu ÿӗÿLӋn áp ra tҧi theo thӡi gian ,ta xét mӝt chu kǤ làm viӋc cӫa mҥch, trong ÿó chӍ xét nguyên lý hoҥt ÿӝng cӫa transistor 1 ) Giá trӏ tҥi thӡi ÿLӇm ban ÿҫu có T1,T5,T6 làm viӋc tӯ 00ÿӃn 600 Ta có :UA = UC = 1/3 Ud UB = -2/3 Ud UAB = UA – UB = Ud iC ZA U Ĉ4 Ĉ1 T2 Ĉ3 Ĉ6 Ĉ5 Ĉ2 T5T3 T6 T1 T4 En C0 ZB ZC iA iB A B C ZA ZB ZC Ud00 ¸ 600 - + Ĉ͛ án t͙t nghi͏p 6͵ dͭng vi ÿL͉u khi͋n trong ÿL͉u ch͑nh t͙c ÿ͡ h͏ bi͇n t̯n ĈK GVHD: PGS.TS Ĉoàn Quang Vinh Trang SVTH: Võ Minh Tây30 Hình II_18 2) Tҥi thӡi ÿLӇm 600 ¸ 1200 T1 T2 T6 dүn ta có : UA = 2/3 Ud UB = UC = -1/3 Ud UAB = UA – UB = Ud Hình II_19 3) Tҥi thӡi ÿLӇm 1200 ¸1800 T1 T2 T3 dүn ta có UA = UB = 1/3 Ud UC = -2/3 Ud UAB = 0 Hình II_20 Bҵng cách xác ÿӏnh ÿLӋn áp trên tҧi tӯ tӯng khoҧng 1/6 chu kǤ thì lҥi có sӵ chuyӇn mҥch . ĈLӋn áp dây cӫa tҧi có dҥng xung chӳ nhұt Có ÿӝ rӝng 1200 và ÿLӅu hoà . ĈLӋn áp pha cӫa tҧi có dҥng bұc thang . Dòng ÿLӋn cӫa tҧi có dҥng xoay chiӅu. Không ÿLӅu hoà ,tăng và suy giҧm theo hàm mNJ 600 ¸ 1200 ZB ZC ZA Ud - + 1200 ¸ 1800 ZB ZA ZC Ud + Ĉ͛ án t͙t nghi͏p 6͵ dͭng vi ÿL͉u khi͋n trong ÿL͉u ch͑nh t͙c ÿ͡ h͏ bi͇n t̯n ĈK GVHD: PGS.TS Ĉoàn Quang Vinh Trang SVTH: Võ Minh Tây31 T5 T6 T1 T3 T4 T5 T4 T5 T6 T1 T2 T3 T6 T1 T2 T5 T6 T1 T2 T3 T4 UCA T3 T4 T5 T2 T3 T4 T4 T5 T6 T6 T1 T2 T1 T2 T3 tt UBC UAB UC t t t t T5 UB UA T6 T3 T4 T2 T1 t t t t t t t Hình V_5 . Giҧn ÿӗ dҥng sóng nghӏch lѭu khi ÿӝng cѫ chҥy thuұn Ĉ͛ án t͙t nghi͏p 6͵ dͭng vi ÿL͉u khi͋n trong ÿL͉u ch͑nh t͙c ÿ͡ h͏ bi͇n t̯n ĈK GVHD: PGS.TS Ĉoàn Quang Vinh Trang SVTH: Võ Minh Tây32 Hình II_21 II.3.4) ĈLӅu biӃn ÿӝ rӝng xung (Khӕi băm ): Phѭѫng pháp ÿLӅu biӃn ÿӝ rӝng xung cho phép vӯa ÿLӅu chӍnh ÿѭӧc ÿLӋn áp ra Yӯa giҧm nhӓ ÿѭӧc ҧnh hѭӣng cӫa các sóng hài bұc cao. ĈӇ xác ÿӏnh khoҧng phát xung chùm ÿLӅu khiӇn các van, ta tҥo ra mӝt sóng dҥng Sin Ur có tҫn sӕ bҵng tҫn sӕ mong muӕn gӑi là sóng ÿLӅu biӃn.Dùng mӝt khâu so sánh Ur và Up , các giao ÿLӇm cӫa hai sóng này xác ÿӏnh khoҧng phát xung. TӍ sӕ giӳa biên ÿӝ sóng ÿLӅu biӃn và biên ÿӝ sóng mang gӑi là tӍ sӕÿLӅu biên. M = Ar/Ap  ĈӇÿLӅu chӍnh ÿӝ rӝng xung tӭc là ta ÿLӅu chӍnh ÿLӋn áp ra trên tҧi ta ÿLӅu chӍnh Ar. ĈLӅu biӃn ÿӝ rӝng xung ÿѭӧc chia thành hai loҥi: - ĈLӅu biӃn ÿӝ rӝng xung ÿѫn cӵc. - ĈLӅu biӃn ÿӝ rӝng xung lѭӥng cӵc. II.3.4.1) ĈL͉u bi͇n ÿ͡ r͡ng xung ÿ˯n c͹c: Hình II_22 ĈLӋn áp ra trên tҧi là mӝt chuӛi xung, ÿӝ rӝng khác nhau, có trӏ sӕ 0 và E. Hình II_22. ĈLӅu biӃn ÿӝ rӝng xung ÿѫn cӵc II.3.4.2. ĈL͉u bi͇n ÿ͡ r͡ng xung l˱ͩng c͹c:Hình II_23 ĈLӋn áp ra trên tҧi là mӝt chuӛi xung, ÿӝ rӝng khác nhau, có trӏ sӕ ±E Ut Ur UP p 2p q a p 2p q a E+ u E- Ĉ͛ án t͙t nghi͏p 6͵ dͭng vi ÿL͉u khi͋n trong ÿL͉u ch͑nh t͙c ÿ͡ h͏ bi͇n t̯n ĈK GVHD: PGS.TS Ĉoàn Quang Vinh Trang SVTH: Võ Minh Tây33 Hình II_23 Dҥng ÿLӋn áp ra cӫa ÿLӅu chӃÿӝ rӝng xung II.3.4.3. Các m̩ch băm : a)B͡ băm n͙i ti͇p : 6ѫ ÿӗ gӗm 2 Tiristor : Tp-Tiristor chính, Ta-Tiristor phө, Lc, Dc, C là các phҫn tӱ chuyӇn mҥch. Trҥng thái ÿҫu Tp, Ta bӏ khoá, tө C nҥp ÿLӋn vӟi cӵc tính nhѭ hình vӁ. Cho xung mӣ Tp thì có dòng chҧy vào tҧi. Ĉӗng thӡi tө C phóng ÿLӋn qua ÿѭӡng Tp- Lc- Dc- C và ÿѭӧc nҥp theo chiӅu ngѭӧc lҥi, ÿLӋn áp trên tҧi Uc= V. Ut Ur UP p 2p q a p 2p q a Hçnh II_24. Bäü bàm näúi tiãúp + V Tp - DC UC t UI - + Ta LC + - T1 T0 T2 Cd Ĉ͛ án t͙t nghi͏p 6͵ dͭng vi ÿL͉u khi͋n trong ÿL͉u ch͑nh t͙c ÿ͡ h͏ bi͇n t̯n ĈK GVHD: PGS.TS Ĉoàn Quang Vinh Trang SVTH: Võ Minh Tây34 Cho xung mӣ Ta ÿһt ÿLӋn áp giӳa hai bҧn cӵc cӫa tө C lên Tp làm cho Tp bӏ khoá, Uc= 0. Gӑi T là chu kǤ băm, T= T1+ T2 T1 = a .T : thӡi gian ÿóng mҥch cӫa Tp. T2 = T-T1 : thӡi gian hӣ mҥch. a = T1/T2 : tӹ sӕ chu kǤ. ò a a== T 0 C .V.dt.VT 1U b) B͡ băm song song : 6ѫÿӗ băm song song cho phép hãm tái sinh trong khoҧng 0< t < a .T. H mӣ, D khoá ÿӇ tránh làm ngҳn mҥch nguӗn. Trong khoҧng .T < t < T thì Uc = 0. H khoá, D mӣ, Uc = V . Giá trӏ trung bình cӫa ÿLӋn áp mӝt chiӅu trên tҧi: ò a a-== T 0 C .V)1(dt.VT 1U (5-17) c)B͡ băm ÿ̫o dòng: Gӗm mӝt bӝ băm nӕi tiӃp và mӝt bӝ băm song song ghép vӟi nhau. Cho phép truyӅn năng lѭӧng theo hai chiӅu. d)S˯ÿ͛ băm dùng trong Transistor: t Ud V + - + - UdH D V 0 aT T Hçnh II_25. Bäü bàm song song + Ud UBE t t Ud to T U EC UBE - + U B - Hçnh II_26. Så âäö nguyãn lyï bàm âiãûn aïp 1 chiãöu duìng Transistor Ĉ͛ án t͙t nghi͏p 6͵ dͭng vi ÿL͉u khi͋n trong ÿL͉u ch͑nh t͙c ÿ͡ h͏ bi͇n t̯n ĈK GVHD: PGS.TS Ĉoàn Quang Vinh Trang SVTH: Võ Minh Tây35 Trong khoҧng tӯ 0¸t0 ta cho van T mӣ, toàn bӝ ÿLӋn áp nguӗn Ed ÿһt lên tҧi. Trong khoҧng thӡi gian còn lҥi cӫa chu kǤ băm, van T bӏ khoá cҳt nguӗn trên tҧi. Giá trӏ trung bình ÿLӋn áp trên tҧi: U.U. T dt.U T 1dt.u T 1U 0 0 T 0 dd 0 a= t === òò t Theo biӇu thӭc này ta có 3 phѭѫng pháp ÿLӅu chӍnh Ud. -T = Ct , vӟi 0 = Var : phѭѫng pháp ÿӝ rӝng xung. -T = Var, 0 = Ct : phѭѫng pháp xung tҫn. -T = Var, 0 = Var : phѭѫng pháp xung thӡi gian. Do công suҩt cӫa ÿӝng cѫ nhӓ (750W) nên ta chӑn mҥch băm kiӇu này dùng trong mҥch ÿӝng lӵc và phѭѫng pháp ÿLӅu chӍnh Uc là phѭѫng pháp ÿӝ rӝng xung, tӭc là giӳ T = Const. Ĉ͛ án t͙t nghi͏p 6͵ dͭng vi ÿL͉u khi͋n trong ÿL͉u ch͑nh t͙c ÿ͡ h͏ bi͇n t̯n ĈK GVHD: PGS.TS Ĉoàn Quang Vinh Trang SVTH: Võ Minh Tây36 CHѬѪNG III 7ӘNG QUAN KӺ THUҰT VI XӰ LÝ III.1) Lӏch sӱ phát triӇn vi xӱ lý. III.1.1).Giͣi thi͏u chung v͉ h͏ th͙ng vi x͵ lý. Vi xӱ lý là sӵ kӃt hӧp cӫa hai kӻ thuұt công nghӋ quan trӑng:Ĉó là máy tính dùng Nӻ thuұt sӕ và các vi mҥch ÿLӋn tӱ. Hai công nghӋ này kӃt hӧp lҥi vӟi nhau và các nhà nghiên cӭu ÿã chӃ tҥo ra vi xӱ lý. Chӭc năng chính cӫa vi xӱ lý là xӱ lý dӳ liӋu chӭa trong bӝ nhӟ. ĈӇ làm ÿѭӧc ÿLӅu này vi xӱ lý phҧi có các mҥch logic cho viӋc xӱ lý dӳ liӋu và cҫn phҧi có chѭѫng trình. Chѭѫng trình là tұp hӧp các lӋnh. Vi xӱ lý thӵc hiӋn mӝt lӋnh vӟi trình tӵ nhѭ sau: Ĉón lӋnh tӯ bӝ nhӟ. Giҧi mã lӋnh Thӵc hiӋn lӋnh. III.1.2.Năng l͹c cͯa vi x͵ lý. Khi nói ÿӃn năng lӵc cӫa Microprocessor có nghƭa là nói ÿӃn khҧ năng xӱ lý dӳ liӋu, có 3 thông sӕÿӇÿánh giá năng lӵc cӫa Microprocessor. ChiӅu dài cӫa tӯ dӳ liӋu cӫa Microprocessor. 6ӕ lѭӧng các ô nhӟ mà Microprocessor có thӇ truy xuҩt ÿѭӧc. 7ӕc ÿӝ mà Microprocessor có thӇ thӵc hiӋn mӝt lӋnh. III.2) Cҩu tҥo vi ÿLӅu khiӇn hӑ MSC-51: III.2.1. Giͣi thi͏u c̭u trúc ph̯n cͱng h͕ MSC-51 (8951):  Ĉһc ÿLӇm và chӭc năng hoҥt ÿӝng cӫa các IC hӑ MSC-51 hoàn toàn tѭѫng tӵ nhѭ nhau. Ӣÿây giӟi thiӋu IC 8951 là mӝt hӑ IC vi ÿLӅu khiӇn do hãng Intel cӫa Mӻ Vҧn xuҩt. Chúng có các ÿһc ÿLӇm chung nhѭ sau: Các ÿһc ÿLӇm cӫa 8951 ÿѭӧc tóm tҳt nhѭ sau: 4 KB EPROM bên trong. 128 Byte RAM nӝi. 4 Port xuҩt /nhұp I/O 8 bit. Giao tiӃp nӕi tiӃp. 64 KB vùng nhӟ mã ngoài Ĉ͛ án t͙t nghi͏p 6͵ dͭng vi ÿL͉u khi͋n trong ÿL͉u ch͑nh t͙c ÿ͡ h͏ bi͇n t̯n ĈK GVHD: PGS.TS Ĉoàn Quang Vinh Trang SVTH: Võ Minh Tây37 64 KB vùng nhӟ dӳ liӋu ngoҥi. ;ӱ lý Boolean (hoҥt ÿӝng trên bit ÿѫn). 210 vӏ trí nhӟ có thӇÿӏnh vӏ bit. 4ms cho hoҥt ÿӝng nhân hoһc chia. III.2.2 Kh̫o sát s˯ÿ͛ chân 8951 và chͱc năng tͳng chân: III.2.2.1) Sѫÿӗ chân 8951: Hình III_1 ;Sѫÿӗ chân IC 8951 III.2.2.2) Chӭc năng các chân cӫa 8951 : 8951 có tҩt cҧ 40 chân có chӭc năng nhѭ các ÿѭӡng xuҩt nhұp. Trong ÿó có 24 chân có tác dөng kép (có nghƭa là 1 chân có 2 chӭc năng), mӛi ÿѭӡng có thӇ hoҥt ÿӝng nhѭÿѭӡng xuҩt nhұp hoһc nhѭÿѭӡng ÿLӅu khiӇn hoһc là thành phҫn cӫa các bus dӳ liӋu và bus ÿӏa chӍ. a.Các Port: Port 0: Port 0 là port có 2 chӭc năng ӣ các chân 32 - 39 cӫa 8951. Trong các thiӃt kӃ cӥ nhӓ không dùng bӝ nhӟ mӣ rӝng nó có chӭc năng nhѭ các ÿѭӡng I/O. Ĉӕi vӟi các thiӃt kӃ Fӥ lӟn có bӝ nhӟ mӣ rӝng, nó ÿѭӧc kӃt hӧp giӳa bus ÿӏa chӍ và bus dӳ liӋu. Port 1: Port 1 là port I/O trên các chân 1-8. Các chân ÿѭӧc ký hiӋu P1.0, P1.1, p1.2, ... p1.7 có thӇ dùng cho giao tiӃp vӟi các thiӃt bӏ ngoài nӃu cҫn. Port 1 không có chӭc năng khác, vì vұy chúng chӍÿѭӧc dùng cho giao tiӃp vӟi các thiӃt bӏ bên ngoài. Port 2: Port 2 là 1 port có tác dөng kép trên các chân 21- 28 ÿѭӧc dùng nhѭ các ÿѭӡng xuҩt nhұp hoһc là byte cao cӫa bus ÿӏa chӍÿӕi vӟi các thiӃt bӏ dùng bӝ nhӟ mӣ rӝng. U2 AT89C51 9 18 19 29 30 31 1 2 3 4 5 6 7 8 21 22 23 24 25 26 27 28 10 11 12 13 14 15 16 17 39 38 37 36 35 34 33 32 RST XTAL2 XTAL1 PSEN ALE/PROG EA/VPP P1.0 P1.1 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7 P2.0/A8 P2.1/A9 P2.2/A10 P2.3/A11 P2.4/A12 P2.5/A13 P2.6/A14 P2.7/A15 P3.0/RXD P3.1/TXD P3.2/INTO P3.3/INT1 P3.4/TO P3.5/T1 P3.6/WR P3.7/RD P0.0/AD0 P0.1/AD1 P0.2/AD2 P0.3/AD3 P0.4/AD4 P0.5/AD5 P0.6/AD6 P0.7/AD7 Ĉ͛ án t͙t nghi͏p 6͵ dͭng vi ÿL͉u khi͋n trong ÿL͉u ch͑nh t͙c ÿ͡ h͏ bi͇n t̯n ĈK GVHD: PGS.TS Ĉoàn Quang Vinh Trang SVTH: Võ Minh Tây38 Port 3: Port 3 là port có tác dөng kép trên các chân 10-17. Các chân cӫa port này có nhiӅu chӭc năng, các công dөng chuyӇn ÿәi có liên hӋ vӟi các ÿһc tính ÿһc biӋt cӫa 8951 nhѭӣ bҧng sau: %ҧng III_1 Bit Tên Chͱc năng chuy͋n ÿ͝i P3.0 RXT Ngõ vào dӳ liӋu nӕi tiӃp. P3.1 TXD Ngõ xuҩt dӳ liӋu nӕi tiӃp. P3.2 INT0\ Ngõ vào ngҳt cӭng thӭ 0 P3.3 INT1\ Ngõ vào ngҳt cӭng thӭ 1 P3.4 T0 Ngõ vào cӫaTIMER/COUNTER thӭ 0. P3.5 T1 Ngõ vào cӫaTIMER/COUNTER thӭ 1. P3.6 WR\ Tín hiӋu ghi dӳ liӋu lên bӝ nhӟ ngoài P3.7 RD\ Tín hiӋu ÿӑc bӝ nhӟ dӳ liӋu ngoài. b.Các ngõ tín hiӋu ÿLӅu khiӇn: Ngõ tín hi͏u PSEN (Program store enable): PSEN là tín hiӋu ngõ ra ӣ chân 29 có tác dөng cho phép ÿӑc bӝ nhӟ chѭѫng trình mӣ Uӝng thѭӡng ÿѭӧc nӕi ÿӃn chân OE\ (output enable) cӫa Eprom cho phép ÿӑc các byte mã lӋnh. PSEN ӣ mӭc thҩp trong thӡi gian Microcontroller 8951 lҩy lӋnh. Các mã lӋnh cӫa chѭѫng trình ÿѭӧc ÿӑc tӯ Eprom qua bus dӳ liӋu và ÿѭӧc chӕt vào thanh ghi lӋnh bên trong 8951 ÿӇ giҧi mã lӋnh. Khi 8951 thi hành chѭѫng trình trong EPROM nӝi PSEN VӁӣ mӭc logic 1. Ngõ tín hi͏u ÿL͉u khi͋n ALE (Address Latch Enable) Khi 8951 truy xuҩt bӝ nhӟ bên ngoài, port 0 có chӭc năng là bus ÿӏa chӍ và bus dӳ liӋu do ÿó phҧi tách các ÿѭӡng dӳ liӋu và ÿӏa chӍ. Tín hiӋu ra ALE ӣ chân thӭ 30 dùng làm tín hiӋu ÿLӅu khiӇn ÿӇ giҧi ÿa hӧp các ÿѭӡng ÿӏa chӍ và dӳ liӋu khi kӃt nӕi chúng vӟi IC chӕt. Tín hiӋu ra ӣ chân ALE là mӝt xung trong khoҧng thӡi gian port 0 ÿóng vai trò là ÿӏa chӍ thҩp nên chӕt ÿӏa chӍ hoàn toàn tӵÿӝng. Các xung tín hiӋu ALE có tӕc ÿӝ bҵng 1/6 lҫn tҫn sӕ dao ÿӝng trên chip và có thӇÿѭӧc dùng làm tín hiӋu clock cho các phҫn khác cӫa hӋ thӕng. Chân ALE ÿѭӧc dùng làm ngõ vào xung lұp trình cho EPROM trong 8951. Ngõ tín hi͏u EA\(External Access): Tín hiӋu vào EA\ ӣ chân 31 thѭӡng ÿѭӧc mҳc lên mӭc 1 hoһc mӭc 0. NӃu ӣ mӭc 1, 8951 thi hành chѭѫng trình tӯ EPROM nӝi trong khoҧng ÿӏa chӍ thҩp 4 Kbyte. NӃu ӣ Ĉ͛ án t͙t nghi͏p 6͵ dͭng vi ÿL͉u khi͋n trong ÿL͉u ch͑nh t͙c ÿ͡ h͏ bi͇n t̯n ĈK GVHD: PGS.TS Ĉoàn Quang Vinh Trang SVTH: Võ Minh Tây39 Pӭc 0, 8951 sӁ thi hành chѭѫng trình tӯ bӝ nhӟ mӣ rӝng. Chân EA\ ÿѭӧc lҩy làm chân Fҩp nguӗn 12V khi lұp trình cho Eprom trong 8951. Ngõ tín hi͏u RST (Reset) : Ngõ vào RST ӣ chân 9 là ngõ vào Reset cӫa 8951. Khi ngõ vào tín hiӋu này ÿѭa lên cao ít nhҩt là 2 chu kǤ máy, các thanh ghi bên trong ÿѭӧc nҥp nhӳng giá trӏ thích hӧp ÿӇ khӣi ÿӝng hӋ thӕng. Khi cҩp ÿLӋn mҥch tӵÿӝng Reset. Các ngõ vào b͡ dao ÿ͡ng X1,X2: %ӝ dao ÿӝng ÿѭӧc ÿѭӧc tích hӧp bên trong 8951, khi sӱ dөng 8951 ngѭӡi thiӃt kӃ chӍ Fҫn kӃt nӕi thêm thҥch anh và các tө nhѭ hình vӁ trong sѫÿӗ. Tҫn sӕ thҥch anh thѭӡng Vӱ dөng cho 8951 là 12Mhz. Chân 40 (Vcc) ÿѭӧc nӕi lên nguӗn 5V. III.2.3 ) C̭u trúc bên trong vi ÿL͉u khi͋n: III.2.3.1) Tә chӭc bӝ nhӟ: Hình III_2 :Bҧng tóm tҳt các vùng nhӟ 8951. %ӝ nhӟ trong 8951 bao gӗm EPROM và RAM. RAM trong 8951 bao gӗm nhiӅu thành phҫn: phҫn lѭu trӳÿa dөng, phҫn lѭu trӳ ÿӏa chӍ hóa tӯng bit, các bank thanh ghi và các thanh ghi chӭc năng ÿһc biӋt. 8951 có bӝ nhӟ theo cҩu trúc Harvard: có nhӳng vùng bӝ 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 8951 nhѭng 8951 vүn có thӇ kӃt nӕi vӟi 64K byte bӝ nhӟ chѭѫng trình và 64K byte dӳ liӋu. FF 00 On -Chip Memory FFFF 0000 Code Memory Enable via PSEN FFFF 0000 Data Memory Enable via RD&WR External Memory Ĉ͛ án t͙t nghi͏p 6͵ dͭng vi ÿL͉u khi͋n trong ÿL͉u ch͑nh t͙c ÿ͡ h͏ bi͇n t̯n ĈK GVHD: PGS.TS Ĉoàn Quang Vinh Trang SVTH: Võ Minh Tây40 7F FF F0 F7 F6 F5 F4 F3 F2 F1 F0 B RAM ÿa dөng E0 E7 E6 E5 E4 E3 E2 E1 E0 ACC 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 2E 77 76 75 74 73 72 71 70 B0 B7 B6 B5 B4 B3 B2 B1 B0 P.3 2D 6F 6E 6D 6C 6B 6A 69 68 2C 67 66 65 64 63 62 61 60 A8 AF AC AB AA A9 A8 IE 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 29 4F 4E 4D 4C 4B 4A 49 48 28 47 46 45 44 43 42 41 40 99 không ÿѭӧc ÿӏa chӍ hoá bit SBUF 27 3F 3E 3D 3C 3B 3A 39 38 98 9F 9E 9D 9C 9B 9A 99 98 SCON 26 37 36 35 34 33 32 31 30 25 2F 2E 2D 2C 2B 2A 29 28 90 97 96 95 94 93 92 91 90 P1 24 27 26 25 24 23 22 21 20 23 1F 1E 1D 1C 1B 1A 19 18 8D không ÿѭӧc ÿӏa chӍ hoá bit TH1 22 17 16 15 14 13 12 11 10 8C không ÿѭӧc ÿӏa chӍ hoá bit TH0 21 0F 0E 0D 0C 0B 0A 09 08 8B không ÿѭӧc ÿӏa chӍ hoá bit TL1 20 07 06 05 04 03 02 01 00 8A không ÿѭӧc ÿӏa chӍ hoá bit TL0 1F Bank 3 89 không ÿѭӧc ÿӏa chӍ hoá bit TMOD 18 88 8F 8E 8D 8C 8B 8A 89 88 TCON 17 Bank 2 87 không ÿѭӧc ÿӏa chӍ hoá bit PCON 10 0F Bank 1 83 không ÿѭӧc ÿӏa chӍ hoá bit DPH 08 82 không ÿѭӧc ÿӏa chӍ hoá bit DPL 07 Bank thanh ghi 0 81 không ÿѭӧc ÿӏa chӍ hoá bit SP 00 (mһc ÿӏnh cho R0 -R7) 88 87 86 85 84 83 82 81 80 P0 Hình III_3 :Bҧn ÿӗ bӝ nhӟ Data trên Chip Hai ÿ̿c tính c̯n chú ý là: Các thanh ghi và các port xuҩt nhұp ÿã ÿѭӧc ÿӏnh vӏ (xác ÿӏnh) trong bӝ nhӟ và có thӇ truy xuҩt trӵc tiӃp giӕng nhѭ các ÿӏa chӍ bӝ nhӟ khác. Ngăn xӃp bên trong Ram nӝi nhӓ hѫn so vӟi Ram ngoҥi nhѭ trong các bӝ Microcontroller khác. Ĉ͛ án t͙t nghi͏p 6͵ dͭng vi ÿL͉u khi͋n trong ÿL͉u ch͑nh t͙c ÿ͡ h͏ bi͇n t̯n ĈK GVHD: PGS.TS Ĉoàn Quang Vinh Trang SVTH: Võ Minh Tây41 RAM bên trong 8951 ÿѭӧc phân chia nhѭ sau: · Các bank thanh ghi có ÿӏa chӍ tӯ 00H ÿӃn 1FH. · RAM ÿӏa chӍ hóa tӯng bit có ÿӏa chӍ tӯ 20H ÿӃn 2FH. · RAM ÿa dөng tӯ 30H ÿӃn 7FH. · Các thanh ghi chӭc năng ÿһc biӋt tӯ 80H ÿӃn FFH. RAM ÿa dͭng: 0һc dù trên hình vӁ cho thҩy 80 byte ÿa dөng chiӃm các ÿӏa chӍ tӯ 30H ÿӃn 7FH, 32 byte dѭӟi tӯ 00H ÿӃn 1FH cNJng có thӇ dùng vӟi mөc ÿích tѭѫng tӵ (mһc dù các ÿӏa chӍ này ÿã có mөc ÿích khác). 0ӑi ÿӏa chӍ trong vùng RAM ÿa dөng ÿӅu có thӇ truy xuҩt tӵ do dùng kiӇu ÿӏa chӍ trӵc tiӃp hoһc gián tiӃp. RAM có th͋ truy xṷt tͳng bit: 8951 chӭa 210 bit ÿѭӧc ÿӏa chӍ hóa, trong ÿó có 128 bit có chӭa các byte chӭa các ÿӏa chӍ tӯ 20H ÿӃn 2FH và các bit còn lҥi chӭa trong nhóm thanh ghi có chӭc năng ÿһc biӋt. Ý tѭӣng truy xuҩt tӯng bit bҵng phҫn mӅm là các ÿăc tính mҥnh cӫa microcontroller xӱ lý chung. Các bit có thӇÿѭӧc ÿһt, xóa, AND, OR, … , vӟi 1 lӋnh ÿѫn. Ĉa sӕ các microcontroller xӱ lý ÿòi hӓi mӝt chuӛi lӋnh ÿӑc-sӱa- ghi ÿӇÿҥt ÿѭӧc Pөc ÿích tѭѫng tӵ. Ngoài ra các port cNJng có thӇ truy xuҩt ÿѭӧc tӯng bit. 128 bit có chӭa các byte có ÿӏa chӍ tӯ 00H -1FH cNJng có thӇ truy xuҩt nhѭ các byte hoһc các bit phө thuӝc vào lӋnh ÿѭӧc dùng. Các bank thanh ghi : 32 byte thҩp cӫa bӝ nhӟ nӝi ÿѭӧc dành cho các bank thanh ghi. Bӝ lӋnh 8951 hә trӧ 8 thanh ghi có tên là R0 -R7 và theo mһc ÿӏnh sau khi reset hӋ thӕng, các thanh ghi này có các ÿӏa chӍ tӯ 00H - 07H. Các lӋnh dùng các thanh ghi RO - R7 sӁ ngҳn hѫn và nhanh hѫn so vӟi các lӋnh có chӭc năng tѭѫng ӭng dùng kiӇu ÿӏa chӍ trӵc tiӃp. Các dӳ liӋu ÿѭӧc dùng thѭӡng xuyên nên dùng mӝt trong các thanh ghi này. Do có 4 bank thanh ghi nên tҥi mӝt thӡi ÿLӇm chӍ có mӝt bank thanh ghi ÿѭӧc truy xuҩt Eӣi các thanh ghi RO - R7 ÿӇ chuyӇn ÿәi viӋc truy xuҩt các bank thanh ghi ta phҧi thay ÿәi các bit chӑn bank trong thanh ghi trҥng thái. III.2.3.2 )Các thanh ghi có chӭc năng ÿһc biӋt: Các thanh ghi nӝi cӫa 8951 ÿѭӧc truy xuҩt ngҫm ÿӏnh bӣi bӝ lӋnh. Các thanh ghi trong 8951 ÿѭӧc ÿӏnh dҥng nhѭ mӝt phҫn cӫa RAM trên chip vì vұy mӛi thanh ghi sӁ có mӝt ÿӏa chӍ (ngoҥi trӯ thanh ghi bӝÿӃm chѭѫng trình và thanh ghi lӋnh vì các thanh ghi này hiӃm khi bӏ tác ÿӝng trӵc tiӃp). CNJng nhѭ R0 ÿӃn R7, 8951 có 21 thanh ghi có chӭc năng ÿһc biӋt (SFR: Special Function Register) ӣ vùng trên cӫa RAM nӝi tӯÿӏa chӍ 80H - FFH. Ĉ͛ án t͙t nghi͏p 6͵ dͭng vi ÿL͉u khi͋n trong ÿL͉u ch͑nh t͙c ÿ͡ h͏ bi͇n t̯n ĈK GVHD: PGS.TS Ĉoàn Quang Vinh Trang SVTH: Võ Minh Tây42 Chú ý: tҩt cҧ 128 ÿӏa chӍ tӯ 80H ÿӃn FFH không ÿѭӧc ÿӏnh nghƭa, chӍ có 21 thanh ghi có chӭc năng ÿһc biӋt ÿѭӧc ÿӏnh nghƭa sҹn các ÿӏa chӍ. Ngoҥi trӯ thanh ghi A có thӇÿѭӧc truy xuҩt ngҫm nhѭÿã nói, ÿa sӕ các thanh ghi có chӭc năng ÿLӋt biӋt SFR có thӇÿӏa chӍ hóa tӯng bit hoһc byte. Thanh ghi tr̩ng thái ch˱˯ng trình (PSW: Program Status Word): 7ӯ trҥng thái chѭѫng trình ӣÿӏa chӍ D0H ÿѭӧc tóm tҳt nhѭ sau: %ҧng III_2 Bit Symbol Address Description PSW.7 CY D7H Cary Flag PSW.6 AC D6H Auxiliary Cary Flag PSW.5 F0 D5H Flag 0 PSW4 RS1 D4H Register Bank Select 1 PSW.3 RS0 D3H Register Bank Select 0 00=Bank 0; address 00H¸07H 01=Bank 1; address 08H¸0FH 10=Bank 2; address 10H¸17H 11=Bank 3; address 18H¸1FH PSW.2 OV D2H Overlow Flag PSW.1 - D1H Reserved PSW.0 P DOH Even Parity Flag Chͱc năng tͳng bit tr̩ng thái ch˱˯ng trình Cӡ Carry CY (Carry Flag): &ӡ nhӟ có tác dөng kép. Thông thѭӡng nó ÿѭӧc dùng cho các lӋnh toán hӑc: C=1 nӃu phép toán cӝng có sӵ tràn hoһc phép trӯ có mѭӧn và ngѭӧc lҥi C=0 nӃu phép toán cӝng không tràn và phép trӯ không có mѭӧn. Cӡ Carry phө AC (Auxiliary Carry Flag): Khi cӝng nhӳng giá trӏ BCD (Binary Code Decimal), cӡ nhӟ phө AC ÿѭӧc set QӃu kӃt quҧ 4 bit thҩp nҵm trong phҥm vi ÿLӅu khiӇn 0AH - 0FH. Ngѭӧc lҥi AC=0. Cӡ 0 (Flag 0): &ӡ 0 (F0) là 1 bit cӡÿa dөng dùng cho các ӭng dөng cӫa ngѭӡi dùng. Nhӳng bit chӑn bank thanh ghi truy xuҩt: Ĉ͛ án t͙t nghi͏p 6͵ dͭng vi ÿL͉u khi͋n trong ÿL͉u ch͑nh t͙c ÿ͡ h͏ bi͇n t̯n ĈK GVHD: PGS.TS Ĉoàn Quang Vinh Trang SVTH: Võ Minh Tây43 RS1 và RS0 quyӃt ÿӏnh dãy thanh ghi tích cӵc. Chúng ÿѭӧc xóa sau khi reset hӋ thӕng và ÿѭӧc thay ÿәi bӣi phҫn mӅm khi cҫn thiӃt. Tùy theo RS1, RS0 = 00, 01, 10, 11 sӁÿѭӧc chӑn Bank tích cӵc tѭѫng ӭng là Bank 0, Bank1, Bank2, Bank3. Bҧng III_3 RS1 RS0 BANK 0 0 0 0 1 1 1 0 2 1 1 3 Cӡ tràn OV (Over Flag): &ӡ tràn ÿѭӧc set sau mӝt hoҥt ÿӝng cӝng hoһc trӯ nӃu có sӵ tràn toán hӑc. Khi các sӕ có dҩu ÿѭӧc cӝng hoһc trӯ vӟi nhau, phҫn mӅm có thӇ kiӇm tra bit này ÿӇ xác ÿӏnh xem kӃt quҧ có nҵm trong tҫm xác ÿӏnh không. Khi các sӕ không có dҩu ÿѭӧc Fӝng bit OV ÿѭӧc bӓ qua. Các kӃt quҧ lӟn hѫn +127 hoһc nhӓ hѫn -128 thì bit OV=1. Bit Parity (P) : Bit tӵÿӝng ÿѭӧc set hay Clear ӣ mӛi chu kǤ máy ÿӇ lұp Parity chҹn vӟi thanh ghi A. SӵÿӃm các bit 1 trong thanh ghi A cӝng vӟi bit Parity luôn luôn chҹn. Ví dө A chӭa 10101101B thì bit P set lên 1 ÿӇ tәng sӕ bit 1 trong A và P tҥo thành sӕ chҹn. Bit Parity thѭӡng ÿѭӧc dùng trong sӵ kӃt hӧp vӟi nhӳng thӫ tөc cӫa Port nӕi tiӃp ÿӇ Wҥo ra bit Parity trѭӟc khi phát ÿi hoһc kiӇm tra bit Parity sau khi thu. Thanh ghi B : Thanh ghi B ӣÿӏa chӍ F0H ÿѭӧc dùng cùng vӟi thanh ghi A cho các phép toán nhân chia. LӋnh MUL AB sӁ nhұn nhӳng giá trӏ không dҩu 8 bit trong hai thanh ghi A và B, rӗi trҧ vӅ kӃt quҧ 16 bit trong A (byte cao) và B(byte thҩp). LӋnh DIV AB lҩy A chia B, kӃt quҧ nguyên ÿһt vào A, sӕ dѭÿһt vào B. Thanh ghi B có thӇÿѭӧc dùng nhѭ mӝt thanh ghi ÿӋm trung gian ÿa mөc ÿích. Nó là nhӳng bit ÿӏnh vӏ thông qua nhӳng ÿӏa chӍ tӯ F0H - F7H. Con tr͗ Ngăn x͇p SP (Stack Pointer) : Con trӓ ngăn xӃp là mӝt thanh ghi 8 bit ӣÿӏa chӍ 81H. Nó chӭa ÿӏa chӍ cӫa cӫa byte dӳ liӋu hiӋn hành trên ÿӍnh ngăn xӃp. Các lӋnh trên ngăn xӃp bao gӗm các lӋnh cҩt Gӳ liӋu vào ngăn xӃp (PUSH) và lҩy dӳ liӋu ra khӓi ngăn xӃp (POP). LӋnh cҩt dӳ liӋu vào ngăn xӃp sӁ làm tăng SP trѭӟc khi ghi dӳ liӋu và lӋnh lҩy ra khӓi ngăn xӃp sӁ làm giҧm SP. Ngăn xӃp cӫa 8031/8051 ÿѭӧc giӳ trong RAM nӝi và giӟi hҥn các ÿӏa chӍ có thӇ truy xuҩt bҵng ÿӏa chӍ gián tiӃp, chúng là 128 byte ÿҫu cӫa 8951. ĈӇ khӣi ÿӝng SP vӟi ngăn xӃp bҳt ÿҫu tҥi ÿӏa chӍ 60H, các lӋnh sau ÿây ÿѭӧc dùng: MOV SP , #5F Vӟi lӋnh trên thì ngăn xӃp cӫa 8951 chӍ có 32 byte vì ÿӏa chӍ cao nhҩt cӫa RAM trên chip là 7FH. Sӣ dƭ giá trӏ 5FH ÿѭӧc nҥp vào SP vì SP tăng lên 1 là 60H trѭӟc khi cҩt byte dӳ liӋu. Ĉ͛ án t͙t nghi͏p 6͵ dͭng vi ÿL͉u khi͋n trong ÿL͉u ch͑nh t͙c ÿ͡ h͏ bi͇n t̯n ĈK GVHD: PGS.TS Ĉoàn Quang Vinh Trang SVTH: Võ Minh Tây44 Khi Reset 8951, SP sӁ mang giá trӏ mһc ÿӏnh là 07H và dӳ liӋu ÿҫu tiên sӁÿѭӧc cҩt vào ô nhӟ ngăn xӃp có ÿӏa chӍ 08H. NӃu phҫn mӅm ӭng dөng không khӣi ÿӝng SP mӝt giá trӏ mӟi thì bank thanh ghi1 có thӇ cҧ 2 và 3 sӁ không dùng ÿѭӧc vì vùng RAM này ÿã ÿѭӧc dùng làm ngăn xӃp. Ngăn xӃp ÿѭӧc truy xuҩt trӵc tiӃp bҵng các lӋnh PUSH và POP ÿӇ lѭu trӳ tҥm thӡi và lҩy lҥi dӳ liӋu, hoһc truy xuҩt ngҫm bҵng lӋnh gӑi chѭѫng trình con (ACALL, LCALL) và các lӋnh trӣ vӅ (RET, RETI) ÿӇ lѭu trӳ giá trӏ Fӫa bӝÿӃm chѭѫng trình khi bҳt ÿҫu thӵc hiӋn chѭѫng trình con và lҩy lҥi khi kӃt thúc chѭѫng trình con ... Con tr͗ dͷ li͏u DPTR (Data Pointer): Con trӓ dӳ liӋu (DPTR) ÿѭӧc dùng ÿӇ truy xuҩt bӝ nhӟ ngoài là mӝt thanh ghi 16 bit ӣÿӏa chӍ 82H (DPL: byte thҩp) và 83H (DPH: byte cao). Ba lӋnh sau sӁ ghi 55H vào RAM ngoài ӣÿӏa chӍ 1000H: MOV A , #55H MOV DPTR, #1000H MOV @DPTR, A /Ӌnh ÿҫu tiên dùng ÿӇ nҥp 55H vào thanh ghi A. LӋnh thӭ hai dùng ÿӇ nҥp ÿӏa chӍ Fӫa ô nhӟ cҫn lѭu giá trӏ 55H vào con trӓ dӳ liӋu DPTR. LӋnh thӭ ba sӁ di chuyӇn nӝi dung thanh ghi A (là 55H) vào ô nhӟ RAM bên ngoài có ÿӏa chӍ chӭa trong DPTR (là 1000H) Các thanh ghi Port (Port Register): Các Port cӫa 8951 bao gӗm Port 0 ӣÿӏa chӍ 80H, Port1 ӣÿӏa chӍ 90H, Port2 ӣ ÿӏa chӍ A0H, và Port3 ӣÿӏa chӍ B0H. Tҩt cҧ các Port này ÿӅu có thӇ truy xuҩt tӯng bit nên rҩt thuұn tiӋn trong khҧ năng giao tiӃp. Các thanh ghi Timer (Timer Register): 8951 có chӭa hai bӝÿӏnh thӡi/bӝÿӃm 16 bit ÿѭӧc dùng cho viӋc ÿӏnh thӡi ÿѭӧc ÿӃm sӵ kiӋn. Timer0 ӣ ÿӏa chӍ 8AH (TLO: byte thҩp) và 8CH ( THO: byte cao). Timer1 ӣÿӏa chӍ 8BH (TL1: byte thҩp) và 8DH (TH1 : byte cao). ViӋc khӣi ÿӝng timer ÿѭӧc SET bӣi Timer Mode (TMOD) ӣ ÿӏa chӍ 89H và thanh ghi ÿLӅu khiӇn Timer (TCON) ӣÿӏa chӍ 88H. ChӍ có TCON ÿѭӧc ÿӏa chӍ hóa tӯng bit. Các thanh ghi Port n͙i ti͇p (Serial Port Register): 8951 chӭa mӝt Port nӕi tiӃp cho viӋc trao ÿәi thông tin vӟi các thiӃt bӏ nӕi tiӃp nhѭ máy tính, modem hoһc giao tiӃp nӕi tiӃp vӟi các IC khác. Mӝt thanh ghi ÿӋm dӳ liӋu nӕi tiӃp (SBUF) ӣÿӏa chӍ 99H sӁ giӳ cҧ hai dӳ liӋu truyӅn và dӳ liӋu nhұp. Khi truyӅn dӳ liӋu ghi lên SBUF, khi nhұn dӳ liӋu thì ÿӑc SBUF. Các mode vұn khác nhau ÿѭӧc lұp trình qua thanh ghi ÿLӅu khiӇn Port nӕi tiӃp (SCON) ÿѭӧc ÿӏa chӍ hóa tӯng bit ӣÿӏa chӍ 98H. Các thanh ghi ng̷t (Interrupt Register): Ĉ͛ án t͙t nghi͏p 6͵ dͭng vi ÿL͉u khi͋n trong ÿL͉u ch͑nh t͙c ÿ͡ h͏ bi͇n t̯n ĈK GVHD: PGS.TS Ĉoàn Quang Vinh Trang SVTH: Võ Minh Tây45 8951 có cҩu trúc 5 nguӗn ngҳt, 2 mӭc ѭu tiên. Các ngҳt bӏ cҩm sau khi bӏ reset KӋ thӕng và sӁÿѭӧc cho phép bҵng viӋc ghi thanh ghi cho phép ngҳt (IE) ӣÿӏa chӍ A8H. Cҧ hai ÿѭӧc ÿӏa chӍ hóa tӯng bit. Thanh ghi ÿi͉u khi͋n ngu͛n PCON (Power Control Register): Thanh ghi PCON không có bit ÿӏnh vӏ. Nó ӣÿӏa chӍ 87H chӭa nhiӅu bit ÿLӅu khiӇn. Thanh ghi PCON ÿѭӧc tóm tҳt nhѭ sau: · Bit 7 (SMOD) : Bit có tӕc ÿӝ Baud ӣ mode 1, 2, 3 ӣ Port nӕi tiӃp khi set. · Bit 6, 5, 4 : Không có ÿӏa chӍ. · Bit 3 (GF1) : Bit cӡÿa năng 1. · Bit 2 (GF0) : Bit cӡÿa năng 2. · Bit 1 * (PD) : Set ÿӇ khӣi ÿӝng mode Power Down và thoát ÿӇ reset. · Bit 0 * (IDL) : Set ÿӇ khӣi ÿӝng mode Idle và thoát khi ngҳt mҥch hoһc reset. Các bit ÿLӅu khiӇn Power Down và Idle có tác dөng chính trong tҩt cҧ các IC hӑ MSC-51 nhѭng chӍÿѭӧc thi hành trong sӵ biên dӏch cӫa CMOS. III.2.3.3) Bӝ nhӟ ngoài (External Memory): 8951 có khҧ năng mӣ rӝng bӝ nhӟ lên ÿӃn 64K byte bӝ nhӟ chѭѫng trình và 64k byte bӝ nhӟ dӳ liӋu ngoài. Do ÿó có thӇ dùng thêm RAM và EPROM nӃu cҫn. Khi dùng bӝ nhӟ ngoài, Port0 không còn chѭc năng I/O nӳa. Nó ÿѭӧc kӃt hӧp giӳa bus ÿӏa chӍ (A0-A7) và bus dӳ liӋu (D0-D7) vӟi tín hiӋu ALE ÿӇ chӕt byte cӫa bus ÿӏa chӍ chӍ khi bҳt ÿҫu mӛi chu kǤ bӝ nhӟ. Port2 ÿѭӧc cho là byte cao cӫa bus ÿӏa chӍ. Truy xṷt b͡ nhͣ mã ngoài (Acessing External Code Memory): %ӝ nhӟ chѭѫng trình bên ngoài là bӝ nhӟ EPROM ÿѭӧc cho phép cӫa tín hiӋu PSEN\. 8051 EPROMPort 0 Port 0 D0-D7 EA 74HC373 ALE Port 2 PSEN A8-A15 OE O G D Ĉ͛ án t͙t nghi͏p 6͵ dͭng vi ÿL͉u khi͋n trong ÿL͉u ch͑nh t͙c ÿ͡ h͏ bi͇n t̯n ĈK GVHD: PGS.TS Ĉoàn Quang Vinh Trang SVTH: Võ Minh Tây46 Hình III_3 6ӵ kӃt nӕi phҫn cӭng cӫa bӝ nhӟ EPROM nhѭ sau: Accessing External Code Memory (Truy xṷt b͡ nhͣ mã ngoài) Trong mӝt chu kǤ máy tiêu biӇu, tín hiӋu ALE tích cӵc 2 lҫn. Lҫn thӭ nhҩt cho phép 74HC373 mӣ cәng chӕt ÿӏa chӍ byte thҩp, khi ALE xuӕng 0 thì byte thҩp và byte cao cӫa bӝÿӃm chѭѫng trình ÿӅu có nhѭng EPROM chѭa xuҩt vì PSEN\ chѭa tích cӵc, khi tín hiӋu lên 1 trӣ lҥi thì Port 0 ÿã có dӳ liӋu là Opcode. ALE tích cӵc lҫn thӭ hai ÿѭӧc giҧi thích tѭѫng tӵ và byte 2 ÿѭӧc ÿӑc tӯ bӝ nhӟ chѭѫng trình. NӃu lӋnh ÿang hiӋn hành là lӋnh 1 byte thì CPU chӍÿӑc Opcode, còn byte thӭ hai bӓÿi. Truy xṷt b͡ nhͣ dͷ li͏u ngoài (Accessing External Data Memory) : %ӝ nhӟ dӳ liӋu ngoài là mӝt bӝ nhӟ RAM ÿѭӧc ÿӑc hoһc ghi khi ÿѭӧc cho phép cӫa tín hiӋu RD\ và WR. Hai tín hiӋu này nҵm ӣ chân P3.7 (RD) và P3.6 (WR). /Ӌnh MOVX ÿѭӧc dùng ÿӇ truy xuҩt bӝ nhӟ dӳ liӋu ngoài và dùng mӝt bӝÿӋm dӳ liӋu 16 bit (DPTR), R0 hoһc R1 nhѭ là mӝt thanh ghi ÿӏa chӍ. Các RAM có thӇ giao tiӃp vӟi 8951 tѭѫng tӵ cách thӭc nhѭ EPROM ngoҥi trӯ chân RD\ cӫa 8951 nӕi vӟi chân OE\ (Output Enable) cӫa RAM và chân WR\ cӫa 8951 nӕi Yӟi chân WE\ cӫa RAM. Sӵ nӕi các bus ÿӏa chӍ và dӳ liӋu tѭѫng tӵ nhѭ cách nӕi cӫa Hình III-4 Accessing External Data Memory (Truy xṷt b͡ nhͣ dͷ li͏u ngoài) S͹ gi̫i mã ÿ͓a ch͑ (Address Decoding): 6ӵ giҧi mã ÿӏa chӍ là mӝt yêu cҫu tҩt yӃu ÿӇ chӑn EPROM, RAM, 8279, … Sӵ giҧi mã ÿӏa chӍÿӕi vӟi 8951 ÿӇ chӑn các vùng nhӟ ngoài. NӃu các con EPROM hoһc RAM 8K ÿѭӧc dùng thì các bus ÿӏa chӍ phҧi ÿѭӧc giҧi mã ÿӇ chӑn các IC nhӟ nҵm trong phҥm vi giӟi hҥn 8K: 0000H - 1FFFH ; 2000H - 3FFFH, … 8051 RAMA0-A7 Port 0 D0-D7 EA 74HC373 ALE RD WR OE WE O G D Port 2 A8-A15 Ĉ͛ án t͙t nghi͏p 6͵ dͭng vi ÿL͉u khi͋n trong ÿL͉u ch͑nh t͙c ÿ͡ h͏ bi͇n t̯n ĈK GVHD: PGS.TS Ĉoàn Quang Vinh Trang SVTH: Võ Minh Tây47 0ӝt cách cө thӇ, IC giҧi mã 74HC138 ÿѭӧc dùng vӟi nhӳng ngõ ra cӫa nó ÿѭӧc nӕi Yӟi nhӳng ngõ vào chӑn Chip CS (Chip Select) trên nhӳng IC nhӟ EPROM, RAM, … Hình sau ÿây cho phép kӃt nӕi nhiӅu EPROM và RAM. Hình III_5 Address Decoding (Gi̫i mã ÿ͓a ch͑) S͹ ÿè lên nhau cͯa các vùng nhͣ dͷ li͏u ngoài: Vì bӝ nhӟ chѭѫng trình là EPROM, nên nҧy sinh mӝt vҩn ÿӅ bҩt tiӋn khi phát triӇn phҫn mӅm cho vi ÿLӅu khiӇn. Mӝt nhѭӧc ÿLӇm chung cӫa 8951 là các vùng nhӟ dӳ liӋu ngoài nҵm ÿè lên nhau, vì tín hiӋu PSEN\ ÿѭӧc dùng ÿӇÿӑc bӝ nhӟ mã ngoài và tín hiӋu RD\ ÿѭӧc dùng ÿӇÿӑc bӝ nhӟ dӳ liӋu, nên mӝt bӝ nhӟ RAM có thӇ chӭa cҧ RAM RAMtext Address Bus (A0- A15) Data Bus (D0-D7) 74HC138 C B A E E E 7 6 5 4 3 2 1 0 CS CS CS CS CS CS A0-A12 A0-A12 D0-D7D0-D7OE OE WE WR RD PSEN RAM 8KBytes EPROM 8KBytes 2764 6264 Select another EPROM/RAM Ĉ͛ án t͙t nghi͏p 6͵ dͭng vi ÿL͉u khi͋n trong ÿL͉u ch͑nh t͙c ÿ͡ h͏ bi͇n t̯n ĈK GVHD: PGS.TS Ĉoàn Quang Vinh Trang SVTH: Võ Minh Tây48 chѭѫng trình và dӳ liӋu bҵng cách nӕi ÿѭӡng OE\ cӫa RAM ÿӃn ngõ ra mӝt cәng AND có hai ngõ vào PSEN\ và RD\. Sѫÿӗ mҥch nhѭ hình sau cho phép bӝ nhӟ RAM có hai chӭc năng vӯa là bӝ nhӟ chѭѫng trình vӯa là bӝ nhӟ dӳ liӋu: Hình III_6: Overlapping the External code and data space 9ұy mӝt chѭѫng trình có thӇÿѭӧc load vào RAM bҵng cách xem nó nhѭ bӝ nhӟ dӳ liӋu và thi hành chѭѫng trình bҵng cách xem nó nhѭ bӝ nhӟ chѭѫng trình. Ho̩t ÿ͡ng Reset: AT89c51 có ngõ vào reset RST tác ÿӝng ӣ mӭc cao trong khoҧng thӡi gian 2 chu kǤ xung máy, sau ÿó xuӕng mӭc thҩp ÿӇ 8951 bҳt ÿҫu làm viӋc. RST có thӇ kích tay bҵng mӝt phím nhҩn thѭӡng hӣ, sѫÿӗ mҥch reset nhѭ sau: Manual Reset (Reset b̹ng tay) RAM W OE W RD PSEN Ĉ͛ án t͙t nghi͏p 6͵ dͭng vi ÿL͉u khi͋n trong ÿL͉u ch͑nh t͙c ÿ͡ h͏ bi͇n t̯n ĈK GVHD: PGS.TS Ĉoàn Quang Vinh Trang SVTH: Võ Minh Tây49 Hình III_7 Trҥng thái cӫa tҩt cҧ các thanh ghi trong 8951 sau khi reset hê thӕng ÿѭӧc tóm tҳt nhѭ sau: Bҧng III_4 Thanh ghi 1ӝi dung ĈӃm chѭѫng trình PC Thanh ghi tích lNJyA Thanh ghi B Thanh ghi thái PSW SP DPRT Port 0 ÿӃn port 3 IP IE Các thanh ghi ÿӏnh thӡi SCON SBUF PCON (HMOS) PCON (CMOS) 0000H 00H 00H 00H 07H 0000H FFH XXX0 0000 B 0X0X 0000 B 00H 00H 00H 0XXX XXXXH 0XXX 0000 B Thanh ghi quan trӑng nhҩt là thanh ghi bӝÿӃm chѭѫng trình PC ÿѭӧc reset tҥi ÿӏa chӍ 0000H. Khi ngõ vào RST xuӕng mӭc thҩp, chѭѫng trình luôn bҳt ÿҫu tҥi ÿӏa chӍ 0000H Fӫa bӝ nhӟ chѭѫng trình. Nӝi dung cӫa RAM trên chip không bӏ thay ÿәi bӣi tác ÿӝng Fӫa ngõ vào reset. 100 10uF +5V +5V 8.2KOhm RST RESET Ĉ͛ án t͙t nghi͏p 6͵ dͭng vi ÿL͉u khi͋n trong ÿL͉u ch͑nh t͙c ÿ͡ h͏ bi͇n t̯n ĈK GVHD: PGS.TS Ĉoàn Quang Vinh Trang SVTH: Võ Minh Tây50 III.3) Tóm tҳt tұp lӋnh cӫa 8951 : Các chѭѫng trình ÿѭӧc cҩu tҥo tӯ nhiӅu lӋnh, chúng ÿѭӧc xây dӵng logic, sӵ nӕi tiӃp cӫa các lӋnh ÿѭӧc nghƭ ra mӝt cách hiӋu quҧ và nhanh chóng, kӃt quҧ cӫa chѭѫng trình khҧ thi. 7ұp lӋnh hӑ MSC-51 ÿѭӧc sӵ kiӇm tra cӫa các mode ÿӏnh vӏ và các lӋnh cӫa chúng có các Opcode 8 bit. ĈLӅu này cung cҩp khҧ năng 28= 256 lӋnh ÿѭӧc thi hành và mӝt lӋnh không ÿѭӧc ÿӏnh nghƭa. Vài lӋnh có 1 hoһc 2 byte bӣi dӳ liӋu hoһc ÿӏa chӍ thêm vào Opcode. Trong toàn bӝ các lӋnh có 139 lӋnh 1 byte, 92 lӋnh 2 byte và 24 lӋnh 3 byte. III.3.1) Các mode ÿ͓nh v͓ (Addressing Mode) : Các mode ÿӏnh vӏ là mӝt bӝ phұn thӕng nhҩt cӫa tұp lӋnh. Chúng cho phép ÿӏnh rõ nguӗn hoһc nѫi gӣi tӟi cӫa dӳ liӋu ӣ các ÿѭӡng khác nhau tùy thuӝc vào trҥng thái Fӫa ngѭӡi lұp trình. 8951 có 8 mode ÿӏnh vӏÿѭӧc dùng nhѭ sau: · Thanh ghi. · Trӵc tiӃp. · Gián tiӃp. · 7ӭc thӡi. · 7ѭѫng ÿӕi. · TuyӋt ÿӕi. · Dài. · Ĉӏnh vӏ. III.3.1.1): 6͹ÿ͓nh v͓ thanh ghi (Register Addressing) Có 4 dãy thanh ghi 32 byte ÿҫu tiên cӫa RAM dӳ liӋu trên Chip ÿӏa chӍ 00H - 1FH, nhѭng tҥi mӝt thӡi ÿLӇm chӍ có mӝt dãy hoҥt ÿӝng các bit PSW3, PSW4 cӫa tӯ trҥng thái chѭѫng trình sӁ quyӃt ÿӏnh dãy nào hoҥt ÿӝng. Các lӋnh ÿӇÿӏnh vӏ thanh ghi ÿѭӧc ghi mұt mã bҵng cách dùng bit trӑng sӕ thҩp nhҩt Fӫa Opcode lӋnh ÿӇ chӍ mӝt thanh ghi trong vùng ÿӏa chӍ theo logic này. Nhѭ vұy 1 mã Hình III_8 chӭc năng và ÿӏa chӍ hoҥt ÿӝng có thӇÿѭӧc kӃt hӧp ÿӇ tҥo thành mӝt lӋnh ngҳn 1 byte nhѭ sau: Register Addressing. 0ӝt vài lӋnh dùng cө thӇ cho 1 thanh ghi nào ÿó nhѭ thanh ghi A, DPTR.... mã Opcode tӵ nó cho biӃt thanh ghi vì các bit ÿӏa chӍ không cҫn biӃt ÿӃn. Opcode n n n Ĉ͛ án t͙t nghi͏p 6͵ dͭng vi ÿL͉u khi͋n trong ÿL͉u ch͑nh t͙c ÿ͡ h͏ bi͇n t̯n ĈK GVHD: PGS.TS Ĉoàn Quang Vinh Trang SVTH: Võ Minh Tây51 III.3.1.2) 6͹ÿ͓nh ÿ͓a ch͑ tr͹c ti͇p (Direct Addressing): 6ӵÿӏnh ÿӏa chӍ trӵc tiӃp có thӇ truy xuҩt bҩt kǤ giá trӏ nào trên Chip hoһc thanh ghi phҫn cӭng trên Chip. Mӝt byte ÿӏa chӍ trӵc tiӃp ÿѭӧc ÿѭa vào Opcode ÿӇÿӏnh rõ vӏ trí ÿѭӧc dùng nhѭ sau: Direct Addressing Tùy thuӝc các bit bұc cao cӫa ÿӏa chӍ trӵc tiӃp mà mӝt trong 2 vùng nhӟÿѭӧc chӑn. Hình III_9 Khi bit 7 = 0, thì ÿӏa chӍ trӵc tiӃp ӣ trong khoҧng 0 - 127 (00H - 7FH) và 128 vӏ trí nhӟ thҩp cӫa RAM trên Chip ÿѭӧc chӑn. 7ҩt cҧ các Port I/O, các thanh ghi chӭc năng ÿһc biӋt, thanh ghi ÿLӅu khiӇn hoһc thanh ghi trҥng thái bao giӡ cNJng ÿѭӧc quy ÿӏnh các ÿӏa chӍ trong khoҧng 128 - 255 (80 - FFH). Khi byte ÿӏa chӍ trӵc tiӃp nҵm trong giӟi hҥn này (ӭng vӟi bit 7 = 1) thì thanh ghi chӭc năng ÿһc biӋt ÿѭӧc truy xuҩt. Ví dө Port 0 và Port 1 ÿѭӧc quy ÿӏnh ÿӏa chӍ trӵc tiӃp là 80H và 90H, P0, P1 là dҥng thӭc rút gӑn thuұt nhӟ cӫa Port, thì sӵ biӃn thiên cho phép thay thӃ và hiӇu dҥng thӭc rút gӑn thuұt nhӟ cӫa chúng. Chҷng hҥn OӋnh: MOV P1, A sӵ biên dӏch sӁ xác ÿӏnh ÿӏa chӍ trӵc tiӃp cӫa Port 1 là 90H ÿһt vào hai byte cӫa lӋnh (byte 1 cӫa port 0). III.3.1.3) 6͹ÿ͓nh v͓ÿ͓a ch͑ gián ti͇p (Indirect Addressing): 6ӵÿӏnh ÿӏa chӍ gián tiӃp ÿѭӧc tѭӧng trѭng bӣi ký hiӋu @ ÿѭӧc ÿһt trѭӟc R0, R1 hay DPTR. R0 và R1 có thӇ hoҥt ÿӝng nhѭ mӝt thanh ghi con trӓ mà nӝi dung cӫa nó cho biӃt mӝt ÿӏa chӍ trong RAM nӝi ӣ nѫi mà dӳ liӋu ÿѭӧc ghi hoһc ÿѭӧc ÿӑc. Bit có trӑng sӕ nhӓ nhҩt cӫa Opcode lӋnh sӁ xác ÿӏnh R0 hay R1 ÿѭӧc dùng con trӓ Pointer. Hình III_10 III.3.1.4) 6͹ÿ͓nh ÿ͓a ch͑ tͱc thͥi (Immediate Addressing): Opcode Direct Addressing Opcode i Ĉ͛ án t͙t nghi͏p 6͵ dͭng vi ÿL͉u khi͋n trong ÿL͉u ch͑nh t͙c ÿ͡ h͏ bi͇n t̯n ĈK GVHD: PGS.TS Ĉoàn Quang Vinh Trang SVTH: Võ Minh Tây52 6ӵÿӏnh ÿӏa chӍ tӭc thӡi ÿѭӧc tѭӧng trѭng bӣi ký hiӋu # ÿѭӧc ÿӭng trѭӟc mӝt Kҵng sӕ, 1 biӃn ký hiӋu hoһc mӝt biӇu thӭc sӕ hӑc ÿѭӧc sӱ dөng bӣi các hҵng, các ký hiӋu, các hoҥt ÿӝng do ngѭӡi ÿLӅu khiӇn. Trình biên dӏch tính toán giá trӏ và thay thӃ dӳ liӋu tӭc thӡi. Byte lӋnh thêm vô chӭa trӏ sӕ dӳ liӋu tӭc thӡi nhѭ sau: Hình III_11 III.3.1.5) Sӵÿӏnh ÿӏa chӍ tѭѫng ÿӕi: 6ӵÿӏnh ÿӏa chӍ tѭѫng ÿӕi chӍ sӱ dөng vӟi nhӳng lӋnh nhҧy nào ÿó. Mӝt ÿӏa chӍ Wѭѫng ÿӕi (hoһc Offset) là mӝt giá trӏ 8 bit mà nó ÿѭӧc cӝng vào bӝÿӃm chѭѫng trình PC ÿӇ tҥo thành ÿӏa chӍ mӝt lӋnh tiӃp theo ÿѭӧc thӵc thi. Phҥm vi cӫa sӵ nhҧy nҵm trong khoҧng -128 – 127. Offset tѭѫng ÿӕi ÿѭӧc gҳn vào lӋnh nhѭ mӝt byte thêm vào nhѭ sau : Nhӳng nѫi nhҧy ÿӃn thѭӡng ÿѭӧc chӍ rõ bӣi các nhãn và trình biên dӏch xác ÿӏnh Offset Relative cho phù hӧp. 6ӵÿӏnh vӏ tѭѫng ÿӕi ÿem lҥi thuұn lӧi cho viӋc cung cҩp mã vӏ trí ÿӝc lұp, nhѭng bҩt Oӧi là chӍ nhҧy ngҳn trong phҥm vi -128 – 127 byte. Hình III_12 III.3.1.6) 6͹ÿ͓nh ÿ͓a ch͑ tuy͏t ÿ͙i (Absolute Addressing): 6ӵÿӏnh ÿӏa chӍ tuyӋt ÿӕi ÿѭӧc dùng vӟi các lӋnh ACALL và AJMP. Các lӋnh 2 byte cho phép phân chia trong trang 2K ÿang lѭu hành cӫa bӝ nhӟ mã cӫa viӋc cung Fҩp 11 bit thҩp ÿӇ xác ÿӏnh ÿӏa chӍ trong trang 2K (A0…A10 gӗm A10…A8 trong Opcode và A7…A0 trong byte) và 5 bit cao ÿӇ chӑn trang 2K (5 bit cao ÿang lѭu hành trong bӝÿӃm chѭѫng trình là 5 bit Opcode). Opcode Immediate Data Addr10 - Addr8 Opcode Addr7 - Addr0 Opcode Relative Offset Ĉ͛ án t͙t nghi͏p 6͵ dͭng vi ÿL͉u khi͋n trong ÿL͉u ch͑nh t͙c ÿ͡ h͏ bi͇n t̯n ĈK GVHD: PGS.TS Ĉoàn Quang Vinh Trang SVTH: Võ Minh Tây53 Hình III_13 6ӵÿӏnh vӏ tuyӋt ÿӕi ÿem lҥi thuұn lӧi cho các lӋnh ngҳn (2 byte), nhѭng bҩt lӧi trong viӋc giӟi hҥn phҥm vi nѫi gӣi ÿӃn và cung cҩp mã có vӏ trí ÿӝc lұp. III.3.1.7) 6͹ÿ͓nh v͓ dài (Long Addressing): 6ӵÿӏnh vӏ dài ÿѭӧc dùng vӟi lӋnh LCALL và LJMP. Các lӋnh 3 byte này bao Jӗm mӝt ÿӏa chӍ nѫi gӣi tӟi 16 bit ÿҫy ÿӫ là 2 byte và 3 byte cӫa lӋnh. Ѭu ÿLӇm cӫa sӵÿӏnh vӏ dài là vùng nhӟ mã 64K có thӇÿѭӧc dùng hӃt, nhѭӧc ÿLӇm là Hình III_14 các lӋnh ÿó dài 3 byte và vӏ trí lӋ thuӝc. Sӵ phө thuӝc vào vӏ trí sӁ bҩt lӧi bӣi chѭѫng trình không thӇ thӵc thi tҥi ÿӏa chӍ khác. III.3.1.8) 6͹ÿ͓nh ÿ͓a ch͑ phͭ lͭc (Index Addressing): 6ӵÿӏnh ÿӏa chӍ phө lөc dùng mӝt thanh ghi cѫ bҧn (cNJng nhѭ bӝÿӃm chѭѫng trình hoһc bӝÿӃm dӳ liӋu) và Offset (thanh ghiA) trong sӵ hình thành 1 ÿӏa chӍ liên quan bӣi lӋnh JMP hoһc MOVC. Index Addressing. Các bҧng cӫa lӋnh nhҧy hoһc các bҧng tra ÿѭӧc tҥo nên mӝt cách dӉ dàng bҵng cách dùng ÿӏa chӍ phө lөc. III.3.2) Các ki͋u l͏nh (Instruction Types): 8951 chia ra 5 nhóm lӋnh chính: · Các lӋnh sӕ hӑc. · /Ӌnh logic. · 'ӏch chuyӇn dӳ liӋu. · Lý luұn. · 5Ӂ nhánh chѭѫng trình. Opcode Addr15 - Addr8 Addr7 - Addr0 PC (or PDTR) ACC Base Register Offset Effective Address Ĉ͛ án t͙t nghi͏p 6͵ dͭng vi ÿL͉u khi͋n trong ÿL͉u ch͑nh t͙c ÿ͡ h͏ bi͇n t̯n ĈK GVHD: PGS.TS Ĉoàn Quang Vinh Trang SVTH: Võ Minh Tây54 7ӯng kiӇu lӋnh ÿѭӧc mô tҧ nhѭ sau: III.3.2.1) Các l͏nh s͙ h͕c (Arithmetic Instrustion): ADD A, ADD A, Rn : (A) (A) + (Rn) ADD A, direct : (A) (A) + (direct) ADD A, @ Ri : (A) (A) + ((Ri)) ADD A, # data : (A) (A) + # data ADDC A, Rn : (A) (A) + (C) + (Rn) ADDC A, direct : (A) (A) + (C) + (direct) ADDC A, @ Ri : (A) (A) + (C) + ((Ri)) ADDC A, # data : (A) (A) + (C) + # data SUBB A, SUBB A, Rn : (A) (A) - (C) - (Rn) SUBB A, direct : (A) (A) - (C) - (direct) SUBB A, @ Ri : (A) (A) - (C) - ((Ri)) SUBB A, # data : (A) (A) - (C) - # data INC INC A : (A) (A) + 1 INC direct : (direct) (direct) + 1 INC Ri : ((Ri)) ((Ri)) + 1 INC Rn : (Rn) (Rn) + 1 INC DPTR : (DPTR) (DPTR) + 1 DEC DEC A : (A) (A) - 1 DEC direct : (direct) (direct) - 1 DEC @Ri : ((Ri)) ((Ri)) - 1 DEC Rn : (Rn) (Rn) - 1 MULL AB : (A) LOW [(A) x (B)];có ̫nh h˱ͧng cͥ OV : (B) HIGH [(A) x (B)];cͥ Cary ÿ˱ͫc xóa. DIV AB : (A) Integer Result of [(A)/(B)]; cͥ OV : (B) Remainder of [(A)/(B)]; cͥ Carry xóa DA A :ĈL͉u ch͑nh thanh ghi A thành s͙ BCD ÿúng trong phép F͡ng BCD (th˱ͥng DA A ÿi kèm vͣi ADD, ADDC) · 1Ӄu [(A3-A0)>9] và [(AC)=1] (A3A0) (A3A0) + 6. · 1Ӄu [(A7-A4)>9] và [(C)=1] (A7A4) (A7A4) + 6. III.3.2.2) Các ho̩t ÿ͡ng logic (Logic Operation): 7ҩt cҧ các lӋnh logic sӱ dөng thanh ghi A nhѭ là mӝt trong nhӳng toán hҥng thӵc thi mӝt chu kǤ máy, ngoài A ra mҩt 2 chu kǤ máy. Nhӳng hoҥt ÿӝng logic có thӇ ÿѭӧc thӵc hiӋn trên bҩt kǤ byte nào trong vӏ trí nhӟ dӳ liӋu nӝi mà không qua thanh ghi A. Ĉ͛ án t͙t nghi͏p 6͵ dͭng vi ÿL͉u khi͋n trong ÿL͉u ch͑nh t͙c ÿ͡ h͏ bi͇n t̯n ĈK GVHD: PGS.TS Ĉoàn Quang Vinh Trang SVTH: Võ Minh Tây55 Các hoҥt ÿӝng logic ÿѭӧc tóm tҳt nhѭ sau: ANL ANL A, Rn : (A) (A) AND (Rn). ANL A, direct : (A) (A) AND (direct). ANL A,@ Ri : (A) (A) AND ((Ri)). ANL A, # data : (A) (A) AND (# data). ANL direct, A : (direct) (direct) AND (A). ANL direct, # data : (direct) (direct) AND # data. ORL ORL A, Rn : (A) (A) OR (Rn). ORL A, direct : (A) (A) OR (direct). ORL A,@ Ri : (A) (A) OR ((Ri)). ORL A, # data : (A) (A) OR # data. ORL direct, A : (direct) (direct) OR (A). ORL direct, # data : (direct) (direct) OR # data. XRL XRL A, Rn : (A) (A) (Rn). XRL A, direct : (A) (A) (direct). XRL A,@ Ri : (A) (A) ((Ri)). XRL A, # data : (A) (A) # data. XRL direct, A : (direct) (direct) (A). XRL direct, # data : (direct) (direct) # data. CLR A : (A) 0 CLR C : (C) 0 CLR Bit : (Bit) 0 RL A : Quay vòng thanh ghi A qua trái 1 bit (An + 1) (An); n = 06 (A0) (A7) RLC A : Quay vòng thanh ghi A qua trái 1 bit có cͥ Carry (An + 1) (An); n = 06 (C) (A7) (A0) (C) RR A : Quay vòng thanh ghi A qua ph̫i 1 bit (An + 1) (An); n = 06 (A0) (A7) RRC A : Quay vòng thanh ghi A qua ph̫i 1 bit có cͥ Carry (An + 1) (An); n = 06 (C) (A7) (A0) (C) SWAP A : Ĉ͝i ch͝ 4 bit th̭p và 4 bit cao cͯa A cho nhau (A3A0)(A7A4). Ĉ͛ án t͙t nghi͏p 6͵ dͭng vi ÿL͉u khi͋n trong ÿL͉u ch͑nh t͙c ÿ͡ h͏ bi͇n t̯n ĈK GVHD: PGS.TS Ĉoàn Quang Vinh Trang SVTH: Võ Minh Tây56 III.3.2.3) Các l͏nh rͅ nhánh: Có nhiӅu lӋnh ÿӇÿLӅu khiӇn lên chѭѫng trình bao gӗm viӋc gӑi hoһc trҧ lҥi tӯ chѭѫng trình con hoһc chia nhánh có ÿLӅu kiӋn hay không có ÿLӅu kiӋn. 7ҩt cҧ các lӋnh rӁ nhánh ÿӅu không ҧnh hѭӣng ÿӃn cӡ. Ta có thӇÿӏnh nhҧn cҫn nhҧy Wӟi mà không cҫn rõ ÿӏa chӍ, trình biên dӏch sӁÿһt ÿӏa chӍ nѫi cҫn nhҧy tӟi vào ÿúng khҭu lӋnh ÿã ÿѭa ra. Sau ÿây là sӵ tóm tҳt tӯng hoҥt ÿӝng cӫa lӋnh nhҧy. JC rel : Nh̫y ÿ͇n “rel” n͇u cͥ Carry C = 1. JNC rel : Nh̫y ÿ͇n “rel” n͇u cͥ Carry C = 0. JB bit, rel : Nh̫y ÿ͇n “rel” n͇u (bit) = 1. JNB bit, rel : Nh̫y ÿ͇n “rel” n͇u (bit) = 0. JBC bit, rel : Nh̫y ÿ͇n “rel” n͇u bit = 1 và xóa bit. ACALL addr11: L͏nh g͕i tuy͏t ÿ͙i trong page 2K. (PC) (PC) + 2 (SP) (SP) + 1 ((SP)) (PC7PC0) (SP) (SP) + 1 ((SP)) (PC15PC8) (PC10PC0) page Address. LCALL addr16: L͏nh g͕i dài ch˱˯ng trình con trong 64K. (PC) (PC) + 3 (SP) (SP) + 1 ((SP)) (PC7PC0) (SP) (SP) + 1 ((SP)) (PC15PC8) (PC) Addr15Addr0. RET : K͇t thúc ch˱˯ng trình con trͧ v͉ ch˱˯ng trình chính. (PC15PC8) (SP) (SP) (SP) - 1 (PC7PC0) ((SP)) (SP) (SP) -1. RETI : K͇t thúc thͯ tͭc phͭc vͭ ng̷t quay v͉ ch˱˯ng trình chính ho̩t ÿ͡ng t˱˯ng t͹ nh˱ RET. AJMP Addr11 : Nh̫y tuy͏t ÿ͙i không ÿL͉u ki͏n trong 2K. (PC) (PC) + 2 (PC10PC0) page Address. LJMP Addr16 : Nh̫y dài không ÿL͉u ki͏n trong 64K Ho̩t ÿ͡ng t˱˯ng t͹ l͏nh LCALL. SJMP rel :Nh̫y ng̷n không ÿL͉u ki͏n trong (-128127) byte (PC) (PC) + 2 (PC) (PC) + byte 2 JMP @ A + DPTR:Nh̫y không ÿL͉u ki͏n ÿ͇n ÿ͓a ch͑ (A) + (DPTR) (PC) (A) + (DPTR) Ĉ͛ án t͙t nghi͏p 6͵ dͭng vi ÿL͉u khi͋n trong ÿL͉u ch͑nh t͙c ÿ͡ h͏ bi͇n t̯n ĈK GVHD: PGS.TS Ĉoàn Quang Vinh Trang SVTH: Võ Minh Tây57 JZ rel : Nh̫y ÿ͇n A = 0. Th͹c hành l͏nh k͇ n͇u A 0. (PC) (PC) + 2 (A) = 0 (PC) (PC) + byte 2 JNZ rel : Nh̫y ÿ͇n A 0. Th͹c hành l͏nh k͇ n͇u A = 0. (PC) (PC) + 2 (A) 0 (PC) (PC) + byte 2 CJNE A, direct, rel : So sánh và nh̫y ÿ͇n A direct (PC) (PC) + 3 (A) (direct) (PC) (PC) + Relative Address. (A) < (direct) C = 1 (A) > (direct) C = 0 (A) = (direct). Th͹c hành l͏nh k͇ ti͇p CJNE A, # data, rel : T˱˯ng t͹ l͏nh CJNE A, direct, rel. CJNE Rn, # data, rel : T˱˯ng t͹ l͏nh CJNE A, direct, rel. CJNE @ Ri, # data, rel : T˱˯ng t͹ l͏nh CJNE A, direct, rel. DJNE Rn, rel : Gi̫m Rn và nh̫y n͇u Rn 0. (PC) (PC) + 2 (Rn) (Rn) -1 (Rn) 0 (PC) (PC) + byte 2. DJNZ direct, rel : T˱˯ng t͹ l͏nh DJNZ Rn, rel. III.3.2.4) Các l͏nh d͓ch chuy͋n dͷ li͏u: Các lӋnh dӏch chuyӇn dӳ liӋu trong nhӳng vùng nhӟ nӝi thӵc thi 1 hoһc 2 chu kǤ máy. Mүu lӋnh MOV , cho phép di chuyӇn dӳ liӋu bҩt kǤ 2 vùng nhӟ nào cӫa RAM nӝi hoһc các vùng nhӟ cӫa các thanh ghi chӭc năng ÿһc biӋt mà không thông qua thanh ghi A. Vùng Ngăn xӃp cӫa 8951 chӍ chӭa 128 byte RAM nӝi, nӃu con trӓ Ngăn xӃp SP ÿѭӧc Wăng quá ÿӏa chӍ 7FH thì các byte ÿѭӧc PUSH vào sӁ mҩt ÿi và các byte POP ra thì không biӃt rõ. Các lӋnh dӏch chuyӇn bӝ nhӟ nӝi và bӝ nhӟ ngoҥi dùng sӵÿӏnh vӏ gián tiӃp. Ĉӏa chӍ gián tiӃp có thӇ dùng ÿӏa chӍ 1 byte (@ Ri) hoһc ÿӏa chӍ 2 byte (@ DPTR). Tҩt cҧ các OӋnh dӏch chuyӇn hoҥt ÿӝng trên toàn bӝ nhӟ ngoài thӵc thi trong 2 chu kǤ máy và dùng thanh ghi A làm toán hҥng DESTINATION. ViӋc ÿӑc và ghi RAM ngoài (RD và WR) chӍ tích cӵc trong suӕt quá trình thӵc thi cӫa OӋnh MOVX, còn bình thѭӡng RD và WR không tích cӵc (mӭc 1). 7ҩt cҧ các lӋnh dӏch chuyӇn ÿӅu không ҧnh hѭӣng ÿӃn cӡ. Hoҥt ÿӝng cӫa tӯng lӋnh ÿѭӧc tóm tҳt nhѭ sau: MOV A,Rn : (A) (Rn) MOV A, direct : (A) (direct) MOV A, @ Ri : (A) ((Ri)) MOV A, # data : (A) # data MOV Rn, A : (Rn) (A) MOV Rn, direct : (Rn) (direct) Ĉ͛ án t͙t nghi͏p 6͵ dͭng vi ÿL͉u khi͋n trong ÿL͉u ch͑nh t͙c ÿ͡ h͏ bi͇n t̯n ĈK GVHD: PGS.TS Ĉoàn Quang Vinh Trang SVTH: Võ Minh Tây58 MOV Rn, # data : (Rn) # data MOV direct, A : (direct) (A) MOV direct, Rn : (direct) (Rn) MOV direct, direct : (direct) (direct) MOV direct, @ Ri : (direct) ((Ri)) MOV direct, # data : (direct) data MOV @ Ri, A : ((Ri)) (A) MOV @ Ri, direct : ((Ri)) (direct) MOV @ Ri, # data : ((Ri)) # data MOV DPTR, # data16 : (DPTR) # data16 MOV A, @ A + DPTR : (A) (A) + (DPTR) MOV @ A + PC : (PC) (PC) + 1 (A) (A) + (PC) MOVX A, @ Ri : (A) ((Ri)) MOVX A, @ DPTR : (A) ((DPTR)) MOVX @ Ri, A : ((Ri)) (A) MOVX @ DPTR, A : ((DPTR)) (A) PUSH direct : C̭t dͷ li͏u vào Ngăn x͇p (SP) (SP) + 1 (SP) (Drirect) POP direct : Ḽy tͳ Ngăn x͇p ra direct (direct) ((SP)) (SP) (SP) - 1 XCH A, Rn : Ĉ͝i ch͝ n͡i dung cͯa A vͣi Rn (A) (Rn) XCH A, direct : (A) (direct) XCH A, @ Ri : (A) ((Ri)) XCHD A, @ Ri : Ĉ͝i ch͝ 4 bit th̭p cͯa (A) vͣi ((Ri)) (A3A0) ((Ri3Ri0)) III.3.2.5) Các l͏nh lu̵n lý (Boolean Instruction): AT89c51 chӭa mӝt bӝ xӱ lí luұn lý ÿҫy ÿӫ cho các hoҥt ÿӝng bit ÿѫn, ÿây là Pӝt ÿLӇm mҥnh cӫa hӑ vi ÿLӅu khiӇn MSC-51 mà các hӑ vi ÿLӅu khiӇn khác không có. RAM nӝi chӭa 128 bit ÿѫn vӏ và các vùng nhӟ các thanh ghi chӭc năng ÿһc biӋt cҩp lên ÿӃn 128 ÿѫn vӏ khác. Tҩt cҧ các ÿѭӡng Port là bit ÿӏnh vӏ, mӛi ÿѭӡng có thӇÿѭӧc [ӱ lí nhѭ Port ÿѫn vӏ riêng biӋt. Cách truy xuҩt các bit này không chӍ các lӋnh rӁ nhánh không, mà là mӝt danh mөc ÿҫy ÿӫ các lӋnh MOVE, SET, CLEAR, COMPLEMENT, OR, AND. Toàn bӝ sӵ truy xuҩt cӫa bit dùng sӵÿӏnh vӏ trӵc tiӃp vӟi nhӳng ÿӏa chӍ tӯ 00H - 7FH trong 128 vùng nhӟ thҩp và 80H - FFH ӣ các vùng thanh ghi chӭc năng ÿһc biӋt. Bit Carry C trong thanh ghi PSW\ cӫa tӯ trҥng thái chѭѫng trình và ÿѭӧc dùng nhѭ Pӝt sӵ tích lNJy ÿѫn cӫa bӝ xӱ lí luұn lý. Bit Carry cNJng là bit ÿӏnh vӏ và có ÿӏa chӍ trӵc Ĉ͛ án t͙t nghi͏p 6͵ dͭng vi ÿL͉u khi͋n trong ÿL͉u ch͑nh t͙c ÿ͡ h͏ bi͇n t̯n ĈK GVHD: PGS.TS Ĉoàn Quang Vinh Trang SVTH: Võ Minh Tây59 tiӃp vì nó nҵm trong PSW. Hai lӋnh CLR C và CLR CY ÿӅu có cùng tác dөng là xóa bit cӡ Carry nhѭng lӋnh này mҩt 1 byte còn lӋnh sau mҩt 2 byte. Hoҥt ÿӝng cӫa các lӋnh luұn lý ÿѭӧc tóm tҳt nhѭ sau: CLR C : Xóa cͥ Carry xu͙ng 0. Có ̫nh h˱ͧng cͥ Carry. CLR BIT : Xóa bit xu͙ng 0. Không ̫nh h˱ͧng cͥ Carry SET C : Set cͥ Carry lên 1. Có ̫nh h˱ͧng cͥ Carry. SET BIT : Set bit lên 1. Không ̫nh h˱ͧng cͥ Carry. CPL C : Ĉ̫o bit cͥ Carry. Có ̫nh h˱ͧng cͥ Carry. CPL BIT : Ĉ̫o bit. Không ̫nh h˱ͧng cͥ Carry. ANL C, BIT : (C) (C) AND (BIT) : Có ̫nh h˱ͧng cͥ Carry. ANL C, /BIT : (C) (C) AND NOT (BIT):Không ̫nh h˱ͧng cͥ Carry. ORL C, BIT : (C) (C) OR (BIT) : Tác ÿ͡ng cͥ Carry. ORL C, /BIT : (C) (C) OR NOT (BIT) : Tác ÿ͡ng cͥ Carry. MOV C, BIT : (C) (BIT) : Cͥ Carry b͓ tác ÿ͡ng. MOV BIT, C : (BIT) (C) : Không ̫nh h˱ͧng cͥ Carry. III.3.2.6) Các l͏nh xen vào (Miscellamous Intstruction): NOP : Không ho̩t ÿ͡ng gì c̫, ch͑ t͙n 1 byte và 1 chu kǤ máy. Ta dùng ÿ͋ delay nhͷng kho̫ng thͥi gian nh͗. III.4 ) Chѭѫng trình ngôn ngӳ Assembly cӫa 8951: III.4.1) Giͣi thi͏u : Ngôn ngӳ assembly giӳa ngôn ngӳ máy và ngôn ngӳ cҩp cao. Ngôn ngӳ cҩp cao ÿѭӧc ÿһc trѭng nhѭ: Pascal, C ... Còn chѭѫng trình ngôn ngӳ máy là mӝt chuӛi các byte nhӏ phân ÿѭӧc ÿһc trѭng bӣi các lӋnh mà máy tính có thӇ thӵc thi. Ngôn ngӳ assembly thay thӃ các mã nhӏ phân cӫa ngôn ngӳ máy ÿӇ sӱ dөng các “thuұt nhӟ“ dӉ dàng trong quá trình lұp trình. Ví dө lӋnh cӝng trong ngôn ngӳ máy ÿѭӧc ÿһc trѭng bӣi mã nhӏ phân “10110011” trong khi ngôn ngӳ assembly là “ADD“. 0ӝt chѭѫng trình ngôn ngӳ assembly không thӇ thӵc thi bӣi máy tính mà nó phҧi ÿѭӧc Gӏch sang mã nhӏ phân ngôn ngӳ máy. 0ӝt linker là mӝt chѭѫng trình mà nó kӃt hӧp các chѭѫng trình ÿһc trѭng Relocatable (modul) và thiӃt kӃ mӝt chѭѫng trình ÿһc trѭng tuyӋt ÿӕi thӵc thi bҵng máy tính. Segment là mӝt phҫn cӫa bӝ nhӟ mã hoһc dӳ liӋu, nó có thӇ tái ÿӏnh vӏ ÿѭӧc (Relocatable) hoһc tuyӋt ÿӕi (Absolute ). Segment Relocatable có tên, kiӇu và có thӇ ÿѭӧc kӃt nӕi vӟi Segment cөc bӝ khác. Segment Absolute không có tên và không thӇ ÿӵѫc kӃt nӕi Segment khác. Modul chӭa 1 hoһc nhiӅu segment hay các segment cөc bӝ . Mӝt modul có thӇ là Pӝt “file” ӣ nhiӅu trѭӡng hӧp cá biӋt . 0ӝt chѭѫng trình Modul Absolute ÿѫn ÿѭӧc hòa vào toàn bӝ các Segment Absolute và Segment Relocatable tӯ tҩt cҧ các mode nhұp. Ĉ͛ án t͙t nghi͏p 6͵ dͭng vi ÿL͉u khi͋n trong ÿL͉u ch͑nh t͙c ÿ͡ h͏ bi͇n t̯n ĈK GVHD: PGS.TS Ĉoàn Quang Vinh Trang SVTH: Võ Minh Tây60 Chѭѫng trình chӍ chӭa các mã nhӏ phân thay cho các lӋnh (vӟi các ÿӏa chӍ và các hҵng Gӳ liӋu) ÿѭӧc hiӇu bӣi máy tính. III.4.2) Ho̩t ÿ͡ng cͯa trình biên d͓ch (Assembler Operation) Có nhiӅu trình biên dӏch vӟi mөc ÿích khác nhau có tác dөng là dӉ hiӇu các ӭng Gөng vi ÿLӅu khiӇn. ASM51 là tiêu biӇu chuҭn biên dӏch cӫa hӑ MSC-51. ASM51 là trình biên dӏch mҥnh có tác dөng hӳu hiӋu trên hӋ thӕng phát triӇn INTEL và hӑ IBM PC cӫa máy vi tính. ASM51 ÿѭӧc gӑi hiӋn lên tӯ sӵ chӍ dүn cӫa hӋ thӕng bӣi: ASM51 Source file (Assembly Control). Trình biên dӏch nhұn mӝt file nguӗn vӟi tѭ cách là ngõ nhұp (PROGRAM.SCR) và hӑ phát ra mӝt file ÿӕi tѭӧng (PROGRAM.OBJ) và file listing (PROGRAM.LST). Hình III_15 Vì hҫu hӃt các biên dӏch xem xét chѭѫng trình nguӗn 2 lҫn trong lúc thi hành sӵ Gӏch ngôn ngӳ máy, nên chúng ÿѭӧc mô tҧ qua 2 Pass biên dӏch là Pass1 và Pass2. Trong pass1, file nguӗn ÿѭӧc xem xét tӯng dòng và bҧng ký hiӋu xây dӵng. %ӝÿӃm Location mһc nhiên chӑn 0 hoһc ÿѭӧc ÿһt bӣi chӍ thӏ ORG (ÿһt Origin). &NJng nhѭ file ÿѭӧc xem xét, bӝÿӃm Location ÿѭӧc tăng lên bҵng ÿӝ dài mӛi lӋnh. ChӍ thӏ data ÿӏnh nghƭa (ÿһc biӋt hoһc DW) tăng bӝÿӃm Location bҵng vӟi sӕ byte ÿӏnh rõ, các chӍ thӏ nhӟ lѭu trӳ (DSO tăng bӝÿӃm Location bӣi sӕ byte dӵ trӳ). Mӛi Oҫn mӝt nhãn ÿѭӧc tìm thҩy ӣ sӵ bҳt ÿҫu cӫa mӝt ÿѭӡng, thì nó ÿѭӧc ÿһc trong bҧng ký hiӋu theo giá trӏ hiӋn hành cӫa bӝÿӃm Location. Các ký hiӋu ÿѭӧc ÿӏnh nghƭa bӣi dùng các chӍ thӏ tѭѫng ÿѭѫng (EQU) ÿѭӧc ÿһc trong bҧng ký hiӋu, ÿѭӧc cҩt giӳ và sau ÿó dùng trong pass2. Trong Pass2, file Object và file Listing ÿѭӧc tҥo ra, các thuұt nhӟÿѭӧc biӃn ÿәi thành Opcode và ÿһt trong các file output. Các toán hҥng ÿѭӧc xác ÿӏnh giá trӏ và ÿһt phía sau Opcode lӋnh. Ӣ nѫi các ký hiӋu xuҩt hiӋn trong toán hҥng, các ký hiӋu cӫa chúng VӁÿѭӧc lҩy lҥi tӯ bҧng ký hiӋu (ÿѭӧc tҥo ra trong suӕt Pass1 và dùng trong sӵ sҳp xӃp Gӳ liӋu ÿúng hoһc ÿúng ÿӏa chӍ bӣi các lӋnh). %ӣi vì Pass2 ÿѭӧc thӵc thi nên chѭѫng trình nguӗn có thӇ dùng “sӵ tham khҧo trѭӟc “ là dùng ký hiӋu trѭӟc khi ÿӏnh nghƭa. File Object nӃu tuyӋt ÿӕi thì chӍ chӭa các byte nhӏ phân (00H - FFH) cӫa chѭѫng trình ngôn ngӳ máy. File Object Relocatable chӭa mӝt bҧng ký hiӋu và thông tin khác ÿѭӧc yêu cҫu bӣi sӵ kӃt hӧp và xác ÿӏnh ÿúng vӏ trí. File Listing chӭa mã nguyên bҧng ASM51PROGRAM.SCR PROGRAM.OBJ PROGRAM.LST Ĉ͛ án t͙t nghi͏p 6͵ dͭng vi ÿL͉u khi͋n trong ÿL͉u ch͑nh t͙c ÿ͡ h͏ bi͇n t̯n ĈK GVHD: PGS.TS Ĉoàn Quang Vinh Trang SVTH: Võ Minh Tây61 ASCII (20H – 7FH) cho cҧ hai chѭѫng trình nguӗn và các byte Hexadecimal trong chѭѫng trình ngôn ngӳ máy. III.4.3) 6Ή s͇p ÿ͏t ch́˿ng trình ngôn ng· Assmebly: Chѭѫng trình ngôn ngӳ Asembly bao gӗm: Các lӋnh máy, lӡi chӍ chӏ cӫa trình biên dӏch, sӵÿLӅu khiӇn biên dӏch và các chú thích. Các lӋnh máy là các kӻ xҧo cӫa lӋnh có thӇ thӵc thi (ví dө nhѭ ANL). Các chӍ thӏ cӫa trình biên dӏch là các lӋnh ÿӇ trình biên dӏch ÿӏnh cҩu trúc chѭѫng trình, các dӳ liӋu, ký hiӋu, hҵng, … (ví dө Org ). Các sӵÿLӅu khiӇn trình biên dӏch set các mode cӫa trình biên dӏch và ÿLӅu khiӇn sӵ chҥy chѭѫng trình Assembly (ví dө STILLE ). Các chú thích hoҥt ÿӝng cӫa lӋnh. Các lӋnh phҧi ghi theo nguyên tҳc rõ ràng ÿӇÿѭӧc trình biên dӏch hiӇu. 6ӵ sҳp xӃp cӫa chúng nhѭ sau: (Label:) mnemonic [operand][:operand][...][:comment] III.4.3.1) Vùng nhãn (label Field ): 0ӝt nhãn tѭӧng trѭng cho ÿӏa chӍ cӫa lӋnh (hoһc dӳ liӋu ) theo sau nhãn. Khi các rӁ nhánh ÿӃn lӋnh này, nhãn ÿѭӧc dùng trong vùng toán hҥng cӫa nhánh (hoһc lӋnh nhҧy). Các “nhãn“ là mӝt kiӇu ký hiӋu, sau nhãn phҧi có dҩu hai chҩm (:) còn sau ký hiӋu thì không. Các kiӇu ký hiӋu ÿѭӧc quy cho các giá trӏ hoһc quy cho viӋc dùng các chӍ thӏ nhѭ: EQU, SEGMENT, BIT, DATA, … Các ký hiӋu có thӇ là ÿӏa chӍ, hҵng, data, tên các segment hoһc sӵ xây dӵng khác ÿѭӧc hiӇu bӣi ngѭӡi lұp trình. Sau ÿây là mӝt ví dөÿӇ phân biӋt nhãn và ký hiӋu: PRA EQU 500 : PRA là ký hiӋu tѭӧng trѭng giá trӏ 500 START :MOV A , #0FFH :START là nhãn tѭѫng trѭng ÿӏa chӍ lӋnh MOV 0ӝt ký hiӋu hoһc mӝt nhãn phҧi bҳt ÿҫu mӝt chӳ cái dҩu “?”, hoһc dҩu “-“; phҧi ÿѭӧc theo sau bҵng mӝt chӳ cái, các sӕ, dҩu “?” hay “-“, và có thӇ chӭa tӟi 31 ký tӵ. III.4.3.2) Vùng thu̵t nhͣ (Mnemonic Field ): Các thuұt nhӟ hay các chӍ chӏ biên dӏch ÿi vào vùng thuұt nhӟ theo sau vùng nhãn. Ví dө các thuұt nhӟ lӋnh nhѭ: ADD, MOV, DIV, INC, … ; các chӍ thӏ biên dӏch nhѭ : ORG , EQU. III.4.3.3) Vùng toán h̩ng (Operand Field): Vùng toán hҥng theo sau vùng thuұt nhӟ. Vùng này chӭa ÿӏa chӍ hay dӳ liӋu ÿѭӧc dùng bӣi lӋnh. Mӝt nhãn có thӇ dùng ÿӇ tѭӧng trѭng cho hҵng dӳ liӋu. Các khҧ Qăng cho phép vùng toán hҥng phө thuӝc lӟn vào các hoҥt ÿӝng. Mӝt vài hoҥt ÿӝng không có toán hҥng nhѭ : RET, NOP trong khi các hoҥt ÿӝng khác cho phép nhiӅu toán Kҥng ÿѭӧc phân ra bҵng dҩu phҭy. Ĉ͛ án t͙t nghi͏p 6͵ dͭng vi ÿL͉u khi͋n trong ÿL͉u ch͑nh t͙c ÿ͡ h͏ bi͇n t̯n ĈK GVHD: PGS.TS Ĉoàn Quang Vinh Trang SVTH: Võ Minh Tây62 III.4.3.4) Vùng chú thích (Comment Field ): Các chú thích phҧi dӉ hiӇu ÿһt ÿӇ giҧi thích lӋnh, và có dҩu chҩm phҭy ӣÿҫu. Khӕi chú thích trong khung ÿӇ giҧi thích tính chҩt chung cӫa phҫn chѭѫng trình ÿѭӧc Fҳt ra bên dѭӟi. III.4.3.5) Các ký hi͏u biên d͓ch ÿ̿c bi͏t (Special Assembler Symbol ): Các ký hiӋu biên dӏch ÿһc biӋt ÿѭӧc dùng trong các mode ÿӏnh vӏ thanh ghi cө thӇ chúng bao gӗm các thanh ghi A, Ro – R7, DPTR, PC,C, AB, hay các ký hiӋu $ ÿѭӧc dùng ÿӇ quy vào giá trӏ hiӋn hành cӫa bӝÿӃm Location. Ví dө : lӋnh JNZ T1 , $ tѭѫng ÿѭѫng vӟi lӋnh sau : HERE : JNZ T1, HERE III.4.3.6) Ĉ͓a ch͑ gián ti͇p (Indirect Address): Ĉӕi vӟi mӝt sӕ lӋnh dùng toán hҥng có thӇ xác ÿӏnh thanh ghi mà nó chӭa ÿӏa chӍ gián tiӃp và nó chӍ có thӇ dùng vӟi R0, R1 , DPTR. Ví dө lӋnh MOV A, @R0 khôi phөc lҥi byte dӳ liӋu tӯ RAM nӝi tҥi ÿӏa chӍÿѭӧc ÿӏnh rõ trong R0. LӋnh MOVC, @A + PC khôi phөc lҥi byte dӳ liӋu tӯ bӝ nhӟ dӳ liӋu ngoài tҥi ÿӏa chӍ ÿѭӧc tҥo thành bӣi viӋc cӝng nӝi dung thanh ghi tích lNJy A và bӝÿӃm chѭѫng trình. III.4.3.7) 'ͷ li͏u tͱc thͥi (Immediate Data ): Các lӋnh dùng sӵÿӏnh vӏ tӭc thӡi cung cҩp dӳ liӋu vào vùng toán hҥng, ký hiӋu # ÿһt trѭӟc dӳ liӋu tӭc thӡi. Ví dө: CONSTANT EQU 100 MOV A, 0FFH ORL 40H, # CONSTANT III.4.3.8) Ĉ͓a ch͑ dͷ li͏u (Data Address): NhiӅu lӋnh truy xuҩt các vùng nhӟ dùng sӵÿӏnh vӏ trӵc tiӃp và ÿòi hӓi mӝt ÿӏa chӍ nhӟ dӳ liӋu trên chip (00 – FFH) hay mӝt ÿӏa chӍ SFR (80H – FFH) trên vùng toán Kҥng. Các ký hiӋu ÿã ÿѭӧc ÿӏnh nghƭa có thӇÿѭӧc dùng cho các ÿӏa chӍ SFR. Ví dө: MOV A, 45H hay MOV A, SBUF. III.4.3.9) Ĉ͓a ch͑ Bit (Bit Address): 0ӝt trong nhӳng ÿLӇm mҥnh cӫa 8951 là khҧ năng truy xuҩt các bit riêng lҿ, không cҫn các hoҥt ÿӝng trang bӏ trên byte. Các lӋnh truy xuҩt các bit ÿӏnh vӏ phҧi cung Fҩp mӝt ÿӏa chӍ trong bӝ nhӟ dӳ liӋu nӝi (00H – 7FH) hoһc ÿӏa chӍ bit trong các SFR (80H - FFH). Có 3 cách ÿӇ xác ÿӏnh ÿӏa chӍ bit trong ô nhӟ dӳ liӋu: Dùng ÿӏa chӍ bit trӵc tiӃp, dùng hoҥt ÿӝng ÿLӇm giӳa ÿӏa chӍ byte và ÿӏa chӍ bit, dùng ký hiӋu biên dӏch ÿã ÿѭӧc ÿӏnh nghƭa. Ví dө: SETB 0E7H : Dùng ÿ͓a ch͑ tr͹c ti͇p. SETB ACC, 7 :Dùng ho̩t ÿ͡ng ÿL͋m. Ĉ͛ án t͙t nghi͏p 6͵ dͭng vi ÿL͉u khi͋n trong ÿL͉u ch͑nh t͙c ÿ͡ h͏ bi͇n t̯n ĈK GVHD: PGS.TS Ĉoàn Quang Vinh Trang SVTH: Võ Minh Tây63 JNZ T1 ,$ : Dùng ký hi͏u ÿ˱ͫc ÿ͓nh nghƭa “TT”. III.4.3.10) Ĉ͓a ch͑ mã (Code Address): Ĉӏa chӍ mã ÿѭӧc dùng trong toán hҥng cho các lӋnh nhҧy, bao gӗm các sӵ nhҧy Wѭѫng ÿӕi (nhѭ SJMP và các lӋnh nhҧy có ÿLӅu kiӋn), các sӵ nhҧy và các sӵ gӑi tuyӋt ÿӕi (ACALL , AJMP). Ĉӏa chӍ mã thѭӡng ÿѭӧc cho ӣ dҥng nhãn sau: HERE: _ _ _ SJMP HERE ASM51 sӁ xác ÿӏnh ÿӏa chӍ mã ÿúng và lӗng vào Offset ÿúng ÿѭӧc ký hiӋu 8 bit OӋnh, ÿӏa chӍ trang 11 bit hoһc ÿӏa chӍ dài 16 bit cho thích hӧp. III.4.3.11) Các s͹ nh̫y và g͕i chung ( generic Jump and Calls): ASM51 cho phép ngѭӡi lұp trình dùng thuұt nhӟ JMP chung hay CALL chung. /Ӌnh “JMP “có thӇÿѭӧc dùng thay cho “SJMP, AJMP, LJMP“ và “CALL” có thӇ thay cho ACALL hay LCALL. Sӵ biên dӏch biӃn ÿәi thuұt nhӟ chung ÿӃm mӝt lӋnh “thӵc WӃ“ sau vài qui luұt ÿѫn giҧn, thuұt nhӟ chung biӃn ÿәi thành dҥng tuyӋt ÿӕi nӃu nhҧy hay gӑi trong trang 2k. NӃu các dҥng ngҳn và tuyӋt ÿӕi không dùng thì sӁÿѭӧc chuyӇn thành dҥng dài. III.4.4 ) S͹ tính toán bi͋u thͱc cͯa Assemble Time (Assemble Time Expression Evaluation): Khi mӝt biӇu thӭc ÿѭӧc dùng, sӵ biên dӏch tính toán giá trӏ lӗng vào lӋnh ÿó. III.4.4.1) Các c˯ sͧ s͙ (Number Basses): &ѫ sӣ các hҵng sӕ phҧi ÿѭӧc theo sau các sӕ nhӏ phân “B”, theo sau sӕ Octal “O”, hoһc “Q”, theo sau sӕ thұp phân “D” hay không có gì , theo sӕ Hexa “H”. Ví dө: MOV A, # 15 : Th̵p phân MOV A , 1111B : Nh͓ phân MOV A , 30H : Hex MOV A , 315D : Th̵p phân MOV A , 317Q : Octa III.4.4.2) Các chu͟i ký t͹ (Character String): Chuәi dùng mӝt hay 2 ký tӵ có thӇ dùng nhѭ các toán hҥng trong các biӇu thӭc. Các mã ASSCII ÿѭӧc biӃn ÿәi thành nhӏ phân tѭѫng ÿѭѫng bӣi sӵ biên dӏch. Các hҵng ÿѭӧc ÿi kèm theo sau 1 dҩu ngoһc kép (‘). Ví dө : CJNZ A , # ‘Q’, AGAIN III.4.4.3) Các ký hi͏u s͙ h͕c (Arithmetic Operations): + : Cӝng Ĉ͛ án t͙t nghi͏p 6͵ dͭng vi ÿL͉u khi͋n trong ÿL͉u ch͑nh t͙c ÿ͡ h͏ bi͇n t̯n ĈK GVHD: PGS.TS Ĉoàn Quang Vinh Trang SVTH: Võ Minh Tây64 _ : Trӯ . : Nhân / : Chia MOD :Phép lҩy dѭ Ví dө lӋnh MOV A, # 10 + 10H và lӋnh MOV A, # 1AH tѭѫng tӵ 2 lӋnh MOV A, # 25 MOD 7 và MOV A, # 4 cNJng giӕng nhau. III.4.4.4) Các ho̩t ÿ͡ng logic (Logic Operations): Các hoҥt ÿӝng logic là OR, AND, XOR, NOT. Hoҥt ÿӝng ÿѭӧc áp dөng trên các bit Wѭѫng ӭng trong mӛi toán hҥng. Sӵ hoҥt ÿӝng phҧi ÿѭӧc phân ra tӯ các toán hҥng bӣi Pӝt khoҧng cách ký tӵ hoһc nhiӅu khoҧng ký tӵ. Ví dө 3 lӋnh MOV sau ÿây giӕng nhau: THERE EQU MINUS – THERE EQU- 3 MOV A, #(NOT THERE) + 1 MOV A, MINUS – THERE MOV A, #11111101B III.4.4.5) Các ho̩t ÿ͡ng ÿ̿c bi͏t (special Operation): Các hoҥt ÿӝng ÿһc biӋt là: SHR (dӏch phҧi), SHL (dӏch trái), HIGH (byte cao), LOW (byte thҩp). Ví dө: lӋnh MOV A, # HIGH 1234H và lӋnh MOV A, 12H tѭѫng ÿѭѫng. III.4.4.6) Các ho̩t ÿ͡ng liên quan: Khi mӝt hoҥt ÿӝng có liên quan ÿѭӧc dùng giӳa hai toán hҥng thì kӃt qӫa hoһc sai (0000h) hoһc ÿúng (FFFFH). Các hoҥt ÿӝng là: EQ = : Equals (bҵng) NE : Not equals (không bҵng) LT < : Less than (nhӓ hѫn) LE <= : Less than or equal (nhӓ hѫn hoһc bҵng) GT > : Greater than (lӟn hѫn) GE >= : Greater than or equal (lӟn hѫn hoһc bҵng) Ví dө: MOV A, #5 MOV A, 100 GE 50 MOV A, 5 NE 4 &ҧ ba lӋnh trên ÿӅu ÿúng nên cҧ ba tѭѫng ÿѭѫng vӟi lӋnh sau: MOV A,# 0FFH III.4.5. Các ch͑ th͓ biên d͓ch: ASM51 cung cҩp các chӍ thӏ sau: 6ӵÿLӅu khiӇn trҥng thái biên dӏch (ORG, AND, USING) Ĉ͛ án t͙t nghi͏p 6͵ dͭng vi ÿL͉u khi͋n trong ÿL͉u ch͑nh t͙c ÿ͡ h͏ bi͇n t̯n ĈK GVHD: PGS.TS Ĉoàn Quang Vinh Trang SVTH: Võ Minh Tây65 6ӵ xác ÿӏnh ký hiӋu (SEGMENT, EQU, SET, DATA, NDATA, BIT, CODE) 6ӵ khӣi gán lѭu trӳ hay ÿӇ dành trѭӟc sӵ lѭu trӳ (DS, DBIT, DB, DW) 6ӵ kӃt nӕi chѭѫng trình (PUBLIC, EXTRN, NAME) 6ӵ chӑn segment (PSEG, CSEG, DSEG, ISEG, BSEG, XSEG) III.4.5.1) 6͹ÿL͉u khi͋n tr̩ng thái biên d͓ch: ChӍ thӏ ORG thay ÿәi bӝÿӃm vùng nhӟÿӇÿһt sӵ khӣi ÿҫu mӝt chѭѫng trình mӟi Eӣi trҥng thái theo sau ÿó, dҥng cӫa chӍ thӏ ORG là: ORG Expression ChӍ thӏ END ÿһt ӣ cuӕi cùng trong file nguӗn. Dҥng cӫa nó là END. ChӍ thӏ USING cung cҩp cho ASM51 dãy thanh ghi tích cӵc hiӋn hành. Dҥng chӍ thӏ Fӫa nó là USING Expression ViӋc dùng ÿӏa chӍ các thanh ghi ký hiӋu ÿѭӧc ÿӏnh nghƭa trѭӟc AR0-AR7 sӁ biӃn thành ÿӏa chӍ trӵc tiӃp phù hӧp cӫa dãy thanh ghi tích cӵc. Ví dө : USING 3 : Dùng Bank 3 trong dãy thanh ghi. PUSH AR7 : Push R7 (R7=1FH) PUSH AR7 : Push R7 (R7=0FH) III.4.5.2) Ĉ͓nh nghƭa ký hi͏u (Symbol Definition): 'ҥng chӍ thӏ cӫa segment nhѭ sau: symbol SEGMENT segmenttype Trong ÿó symbol là tên cӫa segment có thӇ ÿәi chӛ ÿѭӧc. Các kiӇu segment có thӇ CODE (segment mã), XDATA (vùng dӳ liӋu ngoài), DATA (vùng dӳ liӋu nӝi) có thӇ truy xuҩt bҵng sӵÿӏnh vӏ trӵc tiӃp tӯ (00H-7FH), IDATA (toàn bӝ vùng dӳ liӋu nӝi), BIT (vùng BIT tӯ 20H-2FH dӳ liӋu nӝi). Ví dө : EPROM SEGMENT CODE cho biӃt EPROM cӫa mӝt segment kiӇu code. 'ҥng chӍ thӏ EQU : symbol EQU Expression 'ҥng chӍ thӏ BIT : symbol BITExpression /ѭu ý rҵng nӃu ta dùng chӍ thӏ BIT nhѭ FLAGS BIT 05H thì ta có thӇ SETB FLAGS mà không ÿѭӧc dùng lӋnh MOV. III.4.5.3) 6͹ khͧi gán/dành l˱u trͷ tr˱ͣc (Storage Initilization/Reservation) Các chӍ thӏ cӫa Storage Initilization khӣi gán và Storage Reservation ÿӇ dành Pӝt vùng nhӟ trong tӯ, byte hoһc các ÿѫn vӏ bit. Vùng ÿѭӧc dành trѭӟc khi bҳt ÿҫu tҥi vùng nhӟÿѭӧc chӍ rõ bӣi giá trӏ hiӋn hành cӫa bӝÿӃm vùng nhӟ trong segment tích Fӵc ÿang hiӋn hành. Các chӍ thӏ này có thӇÿӭng trѭӟc mӝt nhãn. III.4.5.3.1) Khai báo l˱u trͷ DS (Define Storage) 'ҥng phát biӇu DS là : [label:]DS Expression Phát biӇu DS dành mӝt vùng nhӟ trong ÿѫn vӏ byte. Nó có thӇÿѭӧc dùng trong bҩt NǤ phát biӇu segment nào ngoҥi trӯ BIT. Khi phát biӇu DS ÿѭӧc bҳt gһp trong chѭѫng trình thì bӝÿӃm vӏ trí location cӫa segment hiӋn hành ÿѭӧc tăng lên mӝt khoҧng bҵng Ĉ͛ án t͙t nghi͏p 6͵ dͭng vi ÿL͉u khi͋n trong ÿL͉u ch͑nh t͙c ÿ͡ h͏ bi͇n t̯n ĈK GVHD: PGS.TS Ĉoàn Quang Vinh Trang SVTH: Võ Minh Tây66 giá trӏ cӫa biӇu thӭc. Tәng cӫa bӝÿӃm location và biӇu thӭc ÿã ÿѭӧc ÿӏnh rõ sӁ không Yѭӧc quá sӵ hҥn chӃ cӫa vùng hiӋn hành. Phát biӇu sau tҥo ra mӝt vùng ÿӋm 40 byte trong segment dӳ liӋu nӝi. DSEG AT 30 : Ĉ̿t vào segment data n͡i. LENGTH EQU 40 BEFFER : DS LENGTH : 40 byte ÿ˱ͫc dành tr˱ͣc Nhãn BUFFER tѭӧng trѭng cho ÿӏa chӍ cӫa location ÿҫu tiên cӫa vùng nhӟÿѭӧc Oѭu trӳ. Trong ví dө trên buffer ÿҳt ÿҫu ӣÿӏa chӍ 30H bӣi tӯ “AT 30” ÿѭӧc ÿӏnh rõ bӣi DSEG. Vùng ÿӋm này có thӇ xoá nhѭ sau: MOV R7,#LENGTH : R7 chͱa con s͙ LENGTH là 40 MOV R0,#BUFFER : R0 chͱa ÿ͓a ch͑ t̩i buffer là 30H LOOP : MOV @R0,#0 : L̯n l˱ͫt xoá DJNZ,R7,LOOP (continue) ĈӇ tҥo ra vùng ÿӋm 1000 byte trong RAM ngoҥi bҳt ÿҫu tҥi ÿӏa chӍ 4000H, các chӍ thӏ sau ÿây có thӇÿѭӧc dùng: XSTART EQU 4000H XLENGTH EQU 1000H XSEG AT XSTART : Phân ÿR̩n data ngoài b̷t ÿ̯u ͧ 4000H XBUFFER: DS XLENGTH : T̩o ra m͡t vùng ÿ͏m có ÿ͡ dài 1000byte Các lӋnh sau ÿây có thӇ dùng ÿӇ xoá vùng ÿӋm trên : MOV DPTR,#BUFFER: Ĉ˱a ÿ͓a ch͑ 4000H và DPTR LOOP : CLR A MOVX @DPTR : Xoá n͡i dͭng tͳÿ͓a ch͑ 4000H trͧÿi INC DPTR : Tăng thêm 1 ( tr˱ͥng hͫp ÿ̯u trͧ thành 4001H) MOV A,DPL CJNZ A,#LOW (XBUFFER=LENGTH+1),LOOP MOV A,DPH CJNZ A,HIGH (XBUFFER=XLENGTH+1),LOOP (Continue) 1Ӄu so sánh hai cách dùng trên dành cho byte thҩp và byte cao DPTR, Vì lӋnh CJNZ chӍ làm nhiӋm vөÿӕi vӟi thanh ghi A hoһc thanh ghi Rn, do ÿó byte thҩp hoһc byte cao cӫa bӝÿӃm dӳ liӋu phҧi ÿѭӧc MOV vào A trѭӟc khi ÿӃn lӋnh CJNZ. Vòng Oһp chӍ kӃt thúc khi bӝÿӃm dӳ liӋu ÿã ÿѭӧc ÿӑc ÿӏa chӍ XBUFFER+XLENGTH+1 III.4.5.3.2) Khai báo DBIT (Define Bit) 6ӵ thành lұp : [label:] DBIT expression ChӍ thӏ DBIT dành trѭӟc vùng nhӟ các ÿѫn vӏ bit, nó có thӇÿѭӧc dùng trong 1 segment bit. Khi phát biӇu này ÿѭӧc bҳt gһp trong chѭѫng trình thì bӝÿӃm vӏ trí cӫa segment hiӋn hành ÿѭӧc cӝng thêm giá trӏ cӫa biӇu thӭc. Ĉ͛ án t͙t nghi͏p 6͵ dͭng vi ÿL͉u khi͋n trong ÿL͉u ch͑nh t͙c ÿ͡ h͏ bi͇n t̯n ĈK

Các file đính kèm theo tài liệu này:

  • pdfBIEN_TAN.pdf