Đăng ký Đăng nhập
Trang chủ Giáo dục - Đào tạo Cao đẳng - Đại học Đại cương Cấu trúc lập trình ghép nối và ứng dụng vi điều khiển. tập 1...

Tài liệu Cấu trúc lập trình ghép nối và ứng dụng vi điều khiển. tập 1

.PDF
21
111
86

Mô tả:

r r i T S . N G U Y Ễ N M ẠN H G IA N G CẤU TRÚC--LẬP TRÌNH-GHÉP NỐI VÀ ÚNG DUNG VI DIẾU KHIỂN T Ằ參 P M Ộ參 T C Ấ U T R ÍÍC V À L Â P T R ÌI^ I l V » R 8 0 5 1 /8 (B 2 ( l á i hàn lân thu nhntị 厂N N H Ả X U Ấ T B Ả N G I A O D U C Công ty cổ phẩn sách Oại học . Dạy nghế - Nhà xuất bản Giáo dục Việt Nam giiữ quiyển công bố tác phẩm. Mọi tổ chức, cá nhản muốn sử dụng tác phẩm đưới mọi hinh thức phả đưực sư ơống ỷ của chủ sở hữu quyểin tácigiả. 04 - 2009/CXB/223 - 21 I7/GD Mã só : 7B677y9 - D A I LỜI NÓI ĐẦU Vi xử lý (Microprocessor), bộ phận xử lý trung lâm để xử lý lệnh, đã ra đời lẩn đầu tiên (1971) vơi 4 bit dữ liệu, đã lần lượt dược cải tiến thành 8 bít (8080, 8083, 8088 nãm 1974), 16 bìt (8086’ 80286 năm 1978), 32 bit (80386, 80486’ năm 1983) và 64 bit (80586, nầm 1991). Trên cơ sở các vi xử lý ’ ihêm các khối nhớ chương trình chỉ đọc (PROM), khối nhớ đọc/ghi r a m , các cổng vào ra song song và nối tiếp, người ta dã chế tạo được các máy vi tính cá nhân PC (Personal Computer) như rc /X T (1 9 8 5 với 8080, 8085), PC/AT (1987 với 80286), PC/AT cải tiến (1989 với 80386, 80486) và Pentium (199ỉ với 80586). Riêng Pentium, có Pentium I, Pentium II, 4GHz, 1995) và hiện nay Pentium ỉ lỉ ’ Pentium MT% da phương tiện, Pentium Pro hay IV (lốc độ l , là Pentium V (lốc độ tới trên 3,4 GHz), Vi diểu khiển (Microcontroller) là một vi mạch lích hợp lớn, kích thước nhỏ (rộng cỡ 2 cm, dài lừ 3-8 cm, vói số chân ỉừ 18’ 28’ 40’ 48, 64), bao gồm các bô phận của một máy vi tính (bộ xử lý trung tâm CPU’ nhớ chương trình PROM, nhớ đọc/ghi RAM, các cổng song song, cổng nối tiếp, bộ dịnh thời/đếm (Timer/Counter) và điều khiển ngắt chương trình. Ví diểu khiển có khả nãng như một máy vi tính, nhưng có ưu diêm đặc biệt vể kích ihước rất nhỏ, nên dã xâm nhập sâu hơn nữa vào các thiết bị đo lường, điểu khiển tự dộng hóa và đặc biẽl vào các thiết bị của đời sống hàng ngày như đổng hổ thời gian, đổng hổ báo giờ, đầu máy ghi và phát âm hay phái hình (video, VCD, DVD v'v… Đinh cao của việc dùng VĐK ỉà dùng trong người máy (ROBOT) và thiết bị PLC dể điểu khiển logic chương trinh hóa dây chuyén sản xuất lự dộng. Vi diéu khiển có bốn dòng họ lớn là V i điểu khiển 681 ỈCxx của hãng MOTOROLA’ MCS-51 của hãng INTEL, AVR của hãng ATM EL và PIC cùa hãng MICROCHIP. • Ngoài các bô phận giống nhau vé cấu irúc, các vi điéu khiển irên déu có : - Cúc ỉìhóm lệnh: rẽ nhánh chương trình {đỉéu khiển chương trình ihay đổi thứ lự lênh), dịch chuycn dữ liệu (giữa các thanh ghi irong bộ nhớ RAM), xử lý số học (cộng trừ, nhân, chia), xừ lý lo g ic (v à , h o à c , lo ạ i Ir ừ V A '...) v à x ử l ý t h e o b i l ( x á c lậ p , x ó a , đ ả o V - V ..Ạ - Cíh luìtìli í!ộỉỉg cư bản: irao dổi tin song song, trao dổi tin nối tiếp, định ihời gian, đếm xung íigoầi’ điéu khiển ngát chương irình (do xung ngoài, do đếm tràn vé 0, do irao dổi tin nỏi liếp). Hiộn nay. có nhiéu hãng điện tử tham gia chế lạo các VĐK khác nhau nhưng theo cấu trúc và lính nâng í ương ĩự trên. Có các loại sau: Vf)K clùỉìỊỊ Ỉroỉìg cỏỉìg nghiệp: cấu tạo dơn giản, ít cổng vào/ra song song, có 18 chân như : 0 5 1 cùa hăng INTEL, PIC của MICROCHIP - VDK Ihrhig dụng: 8051’ 8052 Ihuộc họ MCS,31 của hãng INTEL, AT89CM, AT89C52, \Tf)0C52, A ['89C535 cua hãng ATMEL* - \ f)K tiên tiến: có các lính nảng mở rộng như có nhiểu mức ngát, có nhiểu bộ định thời và cả Vateli dog (chó canh cửa), đếm kiểu ma trận, ghép nối với thiết bị ngoài nối liếp SPỈ v.v... VDK cỏ DAC, ADC bân irong vi mạch : ADU812 {DAC, ADC có 12 bit), ADU 816 (D A C \D C cỏ 16 bii), ADU824 (DAC, ADC có 24 bit) của hăng Analog hay các hãng khác. - VDK (lùíig ĩronị;intỵén ihõỉìịỊ trên mạng : 87C51GB và xử lý sô DSP 51000. Tài liêu này dươc bièn soan với các tiêu chí sau: - Kếí hợp phán cimg I*ừ phán mém: mô lả vé cấu lạo kết hơp hoạt động và ìẳp trình bảng hợp ìigiữ.. - Kết hợp lỷ thuyết với ílỉực hành: mỗi chương déu có Ihực hành vé ghép nối thiết bị V(ới I lập trình irên chương trình mô phòng irẻn máy tính PC và cho chạy ircn k i t 《giá》ihợc nghiệm. - cấu ĩriic tàt liệu từ cơ hàỉì tới lỉiện dụi, iừ dễ ĩớĩ khó: để phù hợp VỚI chưưng Irình clàio I lạo lỉẽn thỏng lừ học nghề lẽn cao đẳng, dại học và trẽn đại học. - Tạo diểit kiện cho người (ự học: Với chương trình mô phòng Pinnacle có trong máy lĩtính, người tự học có thể quan sát dược các bộ phận và hoạt dộng của chúng, của VĐK. Cấc ví (iu wẻ * các chương irình của tài liệu là các chương trình mẫu, các ứng dụng cơ bản, người tự học chỉ cầm :sao chép lại vào chương trình mô phòng Pinnacle trên máy lính là có thể hợp dịch và chạy được ((tỉĩừng bước và cả chirơng trình). Nếu có kit thực tập, người dùng có thể nạp chương trình vào bó) I nhớ PROM bèn trong hay bộ nhớ ROM bên ngoài VĐ K hoặc tải sang bộ nhớ R AM bên ngoài vỉà * cho chạy chương uình sau khi nhấn nút RESET, Với các bài thực hành, người dùng có thể lự học' lỉíheo chỉ dẫn chi liết. - Tạo diéii kiện chơ người nglìiétì ctíU, ĩìùẽĩ kế và chê ỉạo: các ví dụ hay các chương trình 1 nmẫu chính là các vấn để người nghiên cứu có thể dựa vào đó để thiết kế, chế lạo hệ dùng V Đ K riẻnịg P 1 .0 -P 1 -7 D 0 -D 7 Chốt Ị địa PO.O-PO 7 30 AO- A7 chỉ ALE P 2 .0 -P 2 7 /P S E N 21^28 P 3 .0 10 P 3 .3 P 3.1 11 TO- P 3 .3 P 3 .6 16 T1 P 3 5 P 3 .7 17 /ỈN T C r /IN T 1 ■ P 3 .2 A 8 -A 1 5 29 'R X D TXD b) H ìn h 1-1, Sơ đổ c h â n t h e o 50 c h ả n (a ) v à t h e o c h ứ c n ă n g (b) /WR /RD VĐK 8051 được hãng Intel chồ tao lìàni ỉ 981, Hiện nay đươc dùng nhiéu nhất vì giá rẻ và tiện đỉụng. L i . ỉ . Sơ đổ chàn VĐK 8051/8052 là những vị mạch tích tìơp mậí dộ lởn, có 40 chân. Sa đổ chan của chúnịg như hinh 1*1. Sỏ 40 chân trẽn chia Lhành các nhóm: nguồn nuôi, điều khiển, các tín hiệu dịa chí, dữ liêu . L Nhóm chán nguổn nuôi + Nguón nuôi 5 V {chán sổ 40); đc nuòi vi mạch + Nối đất (chân số 20): để nối đất. 2, Nhóm chân diều khiển Nhóm này còn phân biệt các tín hiêu điều khiển vào và ra. a) Nhóm tín hiệu vào điéu khiển + X T A L l (chản số 18) và XTAL2 (chàn số 19);ẩiối linh thể thạch anh cho máy phát xiing nhịp chu trình hay mắc với máy phát xung ngoài, + /?5T (RESEỈ) (chàn số 9): nổi chuyển mạch , .Ví) h ọ c va lo ịỊỊc A L V : dc ỉ lì ực hiện Cik' phcỊi toán só học (cộnu, trìr, Iihân chia, táng, giảm) (Và, 1loậc, Loại trừ " - CíiC fhonỉì iịhi ĩhôììịĩ dụn^: A, B, PC, l,sw ' SP. các cổng vào/ra song song R), PI, P2, P3. CTìúng ía sẽ xét chi ỉiếl các ihanh ghi và khói Irên trong cítc chương sau. 1.2. H O A T t)Ô N ( ;C Ủ A V Đ K 8051/8052 h ỉ g ic 1.2.1. NịỊuồn nuôi VĐK 8051/8052 được nuỏi bằng nguồn nuôi +5V. Thanh íihi PCON có hai bit để điều khiển nguổn nuôi ờ chế ciộ đạc biệt: ỉỉỉỉ iũ L ịPCON.O) = l : khiến VĐK ở cho dò rỏng (không hoạt dòng), các tín hiệu nhịp trone klìòng lác động lên CPU’ nhưng vẫn lác tlóne lên các bộ phận tiiéii kỉiiển ngổĩ, T im e r、 'à cống noi uêp- C'hếdỏ này kêì thúc khi có RRSE r. ỉiiĩ /V) ịP C O N .!} = Ị : khiến VĐK 0 chẽ dộ nguồn lUiởi tháp, bộ íỉao động bên trong ngìriìg plui! xuiìg, các chức nâng không hoại dộng:, trừ RAM bônIrong \à cácihanhlỉhi SI'R còn duy trì dữ liệu. () chếtỉộ này, nguồn nuôi Vcc có the còn 2 V-Chế dônày kết thúc khi có RHSHT. Biỉ c r o (PCON.2) 二 I : bit cờ lổng quái. - lìiỉ ( jỉ I ịP C O N .Ĩ) - Ị : bil cừ tổng qiuíl. ( 'ác hi ỉ ịPCON 3-PCON .6); đế dành, chưa dùng. ' - ỈUĩ SMOD ịP C O N .7): tổc độ baucỉ nhàn 2 cho trao dối tin nối liếp. ‘ 1.2.2. RKSE I 'IVạng ihái khới động lai hay xoá khi biìi niĩiión nuôi hay án núm RỉiSHT dế duy trì một xung âm ỉiởi đất vho chàn RESKT (chân số 9 >trong tlìơi gian 2 chu í rình mãv (cỡ ỈỊ.IS cho ưin số !2MHz) tio inach ờ hình 1-3 khi có bộ nhớ ngoài mờ rộng. +5V RESET K h o á n g ắ t, c ổ n g n ố i tiế p PD CPU /ID L Hình t - 3 . M a c h d iê n R e s e t Sau khi bật ngiiổn niiòi hay ấn núm RKSHT ihì ■giá ti Ị ciia thanh uhi SP 二 07h: CAimưC. VIĐỈỀU KHIẺNA H inh 1-4. M á y p h á t x u n g n h ịp . các giá trị của các cổng song song là OFFH; - các giá trị của các thanh ghi hay các ò nhớ là OOFFH; - giá trị của thanh ghi PC= OOH nên địa chỉ của lệnh dâu liên của chương trình chítih là OOH. 1.2.3. M áy phát xung n h ịp và chu trìn h VĐK hay vi xử lý hoạt động được do chuỗi xung nhịp kích thích các mạch số. Do đố',mỗi VĐK phải có một máy phái xung nhịp với tần số ihích hợp. VĐK 8051 cần tán số 11,0592 MHz. Máy phát xung nhịp có sẵn trong vi mạch VĐK, chỉ cần nối linh thể thạch anh có lẩn số tư(Tn: g ứng vào các chân X T A L Ỉ, X TAL2 như hình 1,4. Có thể dùng máy phát xung nhịp bên ngoài, khi đỏ, chỉ cần đưa tín hiệu dao động ngoài vào chân X T A L l, còn chân X TAL2 để trống. Các chu trình xung nhịp cho lệnh một byte và hai byte như hình 1-5. Như vậy, chuỗi xung nhịp được chia thành: - Chu irình : gồm 6 nhịp,từ Si lới S6. - Pha :mỗi nhịp có hai pha P1, P2. Mỗi pha có độ kéo dài cỡ 1 microsec (lần số nhịp 12 MHz). Tại các nhịp SI và S4 được tiến hành đọc mã lệnh hoặc byte thứ hai khi có tín hiệu chdt địa chỉ A L E = 1. . . Hình l-5a ứng với lệnh INC A (tâng nội dung thanh ghi chứa A ),là lệnh một byte, được thực hiện trong một chu trình (cỡ 12 ịisec). Hình l-5b ứng với lệnh ADD A, #data (cộng thanh ghi chứa A với dữ liệu trực tiếp dai; a), là lệnh hai byte {byle mã lệnh và byte dữ ỉiệu data) thực hiện trong một chu trình (6 nhịp). Hinh l-5c ứng với lệnh INC DPTR (tăng thanh ghi địa chỉ nhớ ngoài) gồm l byte, thực hiện ĩrong hai chu trình (12 nhịp). S2 S4 S3 S5 S6 SI osc ALE 61 Đ ọ c m ă lênh khác Đ oc m ã lê nh khác ò ọ c m à-lệnh S2 S3 S4 S5 SI a ) L ệ n h m ộ t b y te , m ộ t c h u trìn h , n h ư IN C A Đ ọc m ă lênh ; ; S1 Đ ọ c byte th ứ 2 ^ ị S2 S3 S4 S5 S6 b ) L ê n h h a i b y le , m ô t c h u trìn h , n h ư A D D A . # d a ta n n r. m á iè.nh Đ ọ c m â lênh (chu trình 1) ị S1 Dọc m ã lệnh (chu trin h 2) ị i S2 S3 S4 S1 S5 S6 S1 ị' S2 S3 S4ị c ) L ệ n h m ộ t b y t e ’ h a i c h u trìn h , n h ư IN C D P T R Hinh 1-5. Các chu kỷ xu ng nhịp cho lệnh m ột b y te 《a) vả haỉ byte (b 》 m ộ t chu trin h và m ột byte trong hai chu trinh (c) Ngoài các lệnh trên còn có lệnh hai byte’ hai chu irình như M O VX, @DPTR, A (đưai mỏi dung thanh ghi A ra ố nhớ ngoài có dịa chỉ là giá trị của thanh ghi DPTR)* Cdây, VĐK chọn địa chỉ ô nhớ chương trình ngoài (PROM) hav RAM ngoài (EXRAM) bởi tín hiệi dịa chỉ ALE (đế chổi địa chỉ thấp A0-A7). 7ín hiệu dưa ra ờ cổng P2 là địa chỉ cao (A8-A13), do thanh ghi (lẻm lênh nửa cao PCH đưa ra (PCI OUTcho PROM) hay nửa cao của thanh ghi con trò địa chi DPÍỈ (cho EXRAM). (.ổng Pl đưa ra địa chỉ thấp A0-A7, do ihanh ghi đếm lệnh thấp đưa ra (PCL o ư r 》hay nửa thấf cia Ihanh ghi con trò địa chỉ DPL. Khi có tín hiệu /PSEN 二 0 bộ nhớ chương trình (PROM) đọc lênh vào (ISNT IN) trẽn đường dảy dĩ liệu PO. Khi có tín hiệu /RD = 0, ô nhớ RAM ngoài đọc dữ liệu vào (DATA IN) cũng trẽn đường dây dữhệi PO. ' ’ I 2 A Lệnh dạng ngôn ngữ mã (mã lệnh) Giữa người điéu hành (hay sử dụng》và VĐK "trao đổi" lin (dữ liêu, lệnh hành động) bằng loa! ĩiịôn ngữ chưng dưới dạng mã (tập hợp các bit nhị phân 0, 1) quy ước do người thiết kế, chế tạo dé ra. s/ới ngốn ngữ dạng mâ, VĐ K có thể hiểu mộĩ cách trực tiếp, khổng cán ihông dịch (intepreier - dịrhvà thực hiện theo từng lệnh) hay biên dịch (compiler - dịch cả vãn bàn) thành dạng mã. Mội lệnh cổy đìi đéu có bốn thành phán là nhãn, mã lênh, các loán hạng (Operand) nguồn s và toán hạng (ích D và chú thích (Comment), ĩạng một lệnh như sau: Labei: OPCODE D, s ; Commenl trong ló: Lahel: gọi là nhãn hay ký hiệu, là một hay mội sổ ký tợ, không được trùng với các từ khoá hay tếi lệnh, không bát đầu bầng một chữ số, dùng để đáiih dấu địa chỉ cùa lệnh khi chương trình cần rứảy íới khi dùng lệnh nhảy (JMP ABC) hay gọi chương trình con (CALL SUBR). OPCODE: là mã lệnh hay mã của hành dộng. Mà lệnh này (lổ hợp các bit 1 và 0) là do người thiết kế, chế tạo VĐK quy định dựa theo cấu trúc và hoạt dộng của VĐK. Mã lệnh này chứa trong nội byte (8 bit). Do đó, mội VĐK có thể có lới 256 lệnh với các sô' mã khác nhau. 、 'í dụ: + V Đ K 8051/8052 có lệnh NOP (NO operation-khỏng hành động gì): có mã lệnh 00000000B = OOH. Gặp lệnh nàv, llianh ghi đếm lệnh PC lăng lên 1 và tré thời gian một chu trình (1 Ị.IS). + Lệnh INC A (tăng nội dung ihanh ghi chứa A lẽn 1) có mã icnh 00000lOOB = 04H. + Lệnh MOV / \ ’ #dala (chuyển (lữ liệu lức thi dala vào thanh ghi A có mã 0111 OÌOOB dala hay 74H, dala. D ịDưMinaíion): là toán hạng đích (nơi gìn dữ liêu sau khi hành íiộiig). s (Stntire): là toán hang nguồn (nơi chứa dữ liệu cần cho hành dong). liíc hành dỏng, toán hạng nguồn hay đích đéu dược quy ước dưới (lạng nhị pliAn hay dạng mã. ĩoán hạng là nơi chứa dữ liệu cho lệnh, có thể là dữ ịiêu tức thì (immcdiaie - dữ liệu ghi ngay sau nà lệnh), trong thanh ghi R (phương pháp (lia chỉ ihanh ghi) hay trong ô nhớ (phương pháp địa chỉ iríc liếp hay gián tiêp thanh ghi hoặc chi số). Chúng ta sẽ dề cập lứi các phương pháp địa chi ở chươig ba. Commenỉ (clìíi ĩlỉich): sau dấu châm phấy (;), dùng để ghi chú,giải thích ihêm về lệnh và chươig trình. Khi dịch chương trình, phần chú ihích nàv dược bỏ qua, không dịch và khi chay chươig trình, không [hực hiện. Nếu quèn (iẩu chấm phẩy, chirơng irình dịch sẽ báo lỗi VI sai cú pháp'ủa cảu lệnh. ĩroiig VĐK có các lệnh không có mà hành động, không có toán hang hay chỉ có một toán hạng. Ví dụ: - Lênh NOP có mã 00000000B hay OOH, khỏng thực hiện ĩTiôt lìàiih dộng IIÍÌO, chi ỉốn tliỡi gian (lọc lệnh là 1 chu irình máy (I rnicrosec). - Lệnh INC A có inã là 00000100B hay 041 ĩ : lộnlì không có loán lìang s hay ĩ), I.IITI láiig ihanh ghi chứa A lẽn 1 đơn vị (A + 1), không có loáii hạng nguồn s và (ỉích f). - Lậih MOV #data có toán hạng nguổn tà data kèm sau mã lệnh, toán hạng dích ỉả A. - Lệnh ADD A. #data có ma là 0010 0100 (#íiaia) hay 24H (#tlaĩa), gổm hai hyt c inã lệnh và loán hang nguồn i là data. Thanh ghi chứa A vừa là toán hạng nguồn 2 (cộng data với A> rồi lại gừi két quả lổng vùo Ihanh ghi A. Tư ỳ hành dộng, số toán hạng và phương pháp dịa chỉ hay phương pháp lim dữ liổu cho lệnh, ta có lệnh dài 1. 2 hay 3 bylc và thời gian thực hiện cần ỉ , 2 chư trình máy. 1.2.5. Quá trìn h thực hiện một lệnh Lệnh của chương liình được chứả irong bộ nhớ ROM (irong hay ngoài), còn dữ liệu hav cấc thanh ghi dược chứa trong bộ nhớ RAM. VĐK nói chung hay CPU nói rieng, khi thirc liiên niội lênh chứa irong bộ nhớ theo các bước sau: - CPU đưa ra nội dung ihanh ghi đếm lệnh PC, tức địa chỉ ô nhớ ROM (trong hay ngoà.ì) dế đọc mã lệnh vào ihanh ghi đệm lệnh IR. - CPU đưa ra nội dung thanh ghi đếm lệnh PC+I dể đọc byíc thứ hai của lệnh tức íoán (hạ ng nguón s nêu lẽrih cán toán hạng s, CPU đưa ra nội dung thanh ghi dếm lệnh PC+2 đế dọc byle thứ ba của lệ n h 【 ức toán ỉhạ ĩig nguồn D nếu iệnh cần ĩoán hạng D. - CPU gỉảỉ mã lệnh để biết cần đưa các tín hiệu nào tới bộ phận Iirưng ứng. Ví dụ lệnh INiC A có mã 041 ỉ sẽ làm táng nội dung thanh ghi chứa A lẻn 1 tức đưa mội tín hiệu vào Ihaiih ghi đẽ:m A đế nội dung A tăng lẻn 1. Nếu lệnh có toán hạng nguồn s, dữ liệu sẽ dược dọc vào ihanh ghi đệm lam Ih ờ i《 xem ihìiĩili l-2b) cúa sơ đồ khối chi liếl của VĐK 8051/8052) và sau đó lệnh sẽ thao tác vứi toán h ạ n g U iổ n rổi gửi vào toán hạiig dích D. Ví dụ, tệnh ADD A ’ #dala, thì thanh ghi chứa A sẽ dược khối xử lý sỏ học logic A lẢ ì c-ộmg ihanb ghi chứa A YỞi ciừ liệu dala ơ thanh ghi clệm, kết quủ gừi lại vào A và íỉưa clỉi ihi kết quiá vé irang ihái irèn Ihanlì ghi trạng thái cờ psvv. 1-2.6. Cliư52 Tr c á c klìố! c ủ a s ơ d ồ k h ố i (h ìn h 1- 2 ), la thây V D K 8 0 ÍS1 /80 52 c ó c á c h àn h d ộ n g c ơ bàn sau: - Oiềii klỉien Ị hực lìịệĩì cài lêiỉli (ủa chỉííỉỉỉỊ^ n iìilỉ :íio bộ pliạn (ỉiềii khiển của CPU và nhóm lệnh rẽ ihánh i\wiì khiến. - Kii' lý sa lìọ r và lo g ic : do khới sỏ học logic A L lỉ \ a nhỏm lệnh sỏ học, logic điều khiến. * Oịiìlì ỉliừi íỊÌíỉn vủ dếm sốMỉnịỊ vùanio hộ phận ^1'imcr/Counier diéii khiển. - n " o c lò ỉ í i i ì s o i ì i Ị S O ỈĨỈỊ :d o C ổ n g v à o / r a v à n h ỏ m lệ n h d ị c h c h LI v e n \ à x ứ l ý b i t t l i ể u k h iể n . - ĩ i íỉo dõi íin noi tiếp: do cổng trao đổi lin nối íiẽp diếu khicn. - Diều khiển ỉìgắí do khối điểu khiển ngát (licii khien. Các chương sau sẽ lán lượt nghiên cứu cúc hành dộng cơ bán iren của VĐK 8051/32 cả vé cấu irúc (pịần cứng) vầ cách lập irinlì phục vụ (phần mém). 1.3. H ỉ LỆN H VÀ CÁC P H Ư Ơ N ÍỈ PHÁP ĐỊA CHỈ CỦA VĐK S05I 8052 13.1. Hc lệnh Trơiig ur vi xử lý họ 8086’VĐK 8051/8052 có mội hẹ lệnh với các nhóm lệnh sau: . Nhổm lệĩilt (líềỉí klỉiẽn thực liiệĩỉ chưưỉỉg ĩrinli lỉíỉY rè ììlìáỉìlì:Iiháy không điều kiện, nhảy có âéu kện, gọi chương trình con. ' - Nhổm lệnlì .\ử lý sổ học \ cộng, trừ, nhủn, dua, tâng, giảm, lấy bù 1, bù 2 v.v... - Shótìì lậìli .17?lỷ logic: Và’ Hoậc, Loại írừ logic, Quay phải ihanh ghi A ’ Quầy trái ỉhanh ghi A. - v/íó/// Ìệỉìh M( lý b iĩ :ihao lác trên các bu. - Nhổm lệnh dịch clìỉiỵển: dịch chuyển dữ liệu giữa các ihanh ghi \i\ ố nhớ. c'húng la sẽ lẩn lượt nghiên cứu các nhỏm lònii này ở các chưưnp sau. 13.2. Các p h in n iịĩ pháp địa chỉ lu ỳ ihco [oản hạng hay dữ liệu của lệnh mà ta có các phương phấp địa chỉ, độ dài lệnh cAiig ĩint ihti gian ihực hiện lộnlì khác nhau. VĐK 8051/8052 cỏ các phương pháp dịa chi sau: Dịu cltí tức ỉlỉì: ký hiệu #data, dữ liệu ỉức lh'i la data là mỏt con sỏ (dạng thập phán lừ 0, 1,2, ' -9 ),dạng 16 hay H H X A D iriM A L (HHX) (lir 0. 1.2,... 9, A ’ H, r ’ 1), F với chữ số 0 dứng I*ước ắc chữ A, B,...), được viết lién (tức ihì) ngay ỉronu lênh. 、í tlụ, MOV A ’ #5MỈ là gửi dữ tiệii lức Ihì 3^11 ùu) thanh glìi A. D ịa í ỉ t i ílìíỉtìli \ịh i : ký hiệu Ri, dữ liệu trong thanh ghi Ri. Ví du MOV A, RO là gửi dữ liệu rong hanh ghi RO đưa vào thanh ghi chứa A Dịu chi ĩ rực ĩiếp: ký hiệu data, data là (lịa chi ổ nhở có chứa dữ liệu. Ví dụ, MOV A ’ daỉa là gửi dữ liệu của ỏ nhớ có dịa chi là (Ỉaỉa (con số trực liếp sau lệnh là íata》’ào [hanh ghi A. D ịa i ltỊ ^iátì Ịịếp ĩlĩo iììì g h i: ký hiệu ◎ 'R i, dỉa chi ò nhớ là nỏĩ ciung thanh ghi Ri, \ớ i i = 0, I lức ■'í dụ, MOV A ’ @RO là HỮi dữ liệu là ỈIÒI duniĩ ỏ nhớ có địa chi la nội dung ihanh ghi Rt,. - Đ ịii chi d ìi so: phương pháp địa chỉ này dùng để dọc bàng dữ liệu có trong 0 nhớ cõ d|a chỉ ỉà tổng số cùa thanh ghi A với thanh ghi đêm lệnh PC (8 bil) hoặc thanh ghi con trỏ dịa chỉ I)PI'R (16 bit). " V í dụ: MOV A, @A+PC; đọc nội dung ô nhớ có địa chỉ A+PC vào A. hay MOVC A, @ A+ DPTR; đọc nội dung ỏ nhớ chương trình có dịa chỉ A+DPTR vào A. Các lệnh này dùng để đọc bảng dữ liệu chứa trong bộ nhớ chương trình (MOVC). Chúng la sẽ xél chi tiết hơn về các phương pháp địa chi này à chương 3. 1.4. CHƯƠNG T R ÌN H M ồ PHỎNG (S IM U LA TO R ) CỦA V Đ K 8051/8052 1.4.1. Các chưưng trìn h mó phỏng Người ta đã viết chương trình mỏ phòng cấu trúc và hoạt động của V Đ K irên máy vi lính p^c IBM đế học tập và lập trình cho VĐK. Điểu đó có nghĩa là: - Mô lả cấu trúc và hoạt động của các khối của VĐK 8051/8052 bầng chương trình của Iináy tính cá nhân PC - Mô tã hoạt dộng của hệ lệnh (dạng hợp ngữ, dạng mã lênh - ngòn ngữ máy) của VĐK siung hệ lệnh của PC. Nói khác đi, các lệnh của VĐK 8051/8052 được dịch chéo (Cross-Assembler) saing hệ lệnh cứa PC và ihực hiện chúng trẽn PC. Do đó, chương trình viếl cho VĐK 8051/52 dưưc dỊí.ch. liên kết và chạy ỉhử Irẻn PC (theo từng bước và cả chương trình). Như vậy’ không cần VĐ K 8051/8052, với chương trình mỏ phòng VĐ K 8051/8032, chúng;la có thể tìm hiểu về cấu irúc, hoạt động và lập trình cho VĐK 8051/8052 chỉ trén máy tính PC Wới chương trình cho V Đ K đã hợp dịch và liên kết (đuôi .HEX) trên PC bầng chương trình mò phòi ng, người la có thế nạp vào V Đ K (bằng bộ nạp chương trình-programmer) đổ chạy hay có ihế iruyvền sang bộ nhớ RAM ngoài để chạy trên hệ VĐK. Có hai loại chương trình mổ phòng cho VĐK 8051/8052, loại trên môi trường củii hệ điíếu hành MS-DOS và trên môi trường của hệ điéu hành Windows. Loại Irong mói trường MSDOS’ ihông dụng có hai chương irình S1M51 và A V S IM Loại trong mỏi irirờng WINDOWS có các chương trình 8051 IDE, 8052 SIM IILA I())R , PINNACLE và Proleus. Chdiig !a sẽ nghiên cứu chi tiếl hai chương trình điển hình của hai loại irên là AVSIM5 1 và PINNAC'1,1; , coiì chương irìuh lVi)teus ờ làp II Dạc dicìn của chưưng trinh mô phỏng trong mồi irườiig MSDOS là; - Thực hiện trong môi Irường DOS bàng lệnh MSDOS Prompt (vào c : \ lên chương Iiìnb nmỏ phòng (cỏ irong dĩa C) ). - Trong quá irình hợp (lịch, liôn kết, biến đổi dữ liêu phải gõ lừ bàn phím lừng lên ctuiơưng trình và lôn các tệp tương ứng. Trẽn màn hinh có thông báo lỗi khi biên dịch chương Hình ngiuiổn dạng hợp ngữ (duôi .ASM). - Chương trình mô phỏng hiện lèn màn hình loàn bộ hay từng bộ phận (các thanh ghi, các víumg nhở’ các Timer/Counter, các cổng song song, cổng nối liếp v*v.,.) để người sử dụng ihco ciõi sự iliav cldổi nội dung cùa chung trong quá irình thực hiện lệnh của chương irình đà biên dịch và kêì nối. Đậc điếm của chương irình mổ phỏng trong môi trường WlNDOWS là: - Thực hiện trong môi irưòìig WINDOWS nên khỏng phải chuyển sang môi Irường DOS bănng lệnh MSDOS Prompi. - Trong quá trình hợp dịch, ỉiên kết, biến cl6í ỏũ liệu không phai gõ íìr bàn phím lừng tên chương trình và lên các lệp tương ứng mà chi cẩn nhấy dúp chuột vào tên hay biểu lượng của chương irình cán thục hiện. Trên màn hình có ihống báo lỗi khi bién dịch chương trình nguồn dạng hợp ngĩr (đuỏi .ASM). - Phải gọi hiển thị ỉ ừng bộ phận của VĐK của chương trình mô phỏng lên màn hlnh. Ta không có một bức tranh loàn cảnh về cấu irúc cùa VĐK. Điểu này hạn chế và có khó khăn trong việc theo dõi kết quả thực hiện lệnh cửa chương trình. Tuy nhiẽn. chúng la có thể theo dõi một cách tường minh được sự thay đổi của các thanh ghi viì các bộ phận của VĐK như định Ihời/đếm, irao đổi ùn nối liếp, ngắi chương trình. Tuy có hạn chế này, chương trình mò phỏng irong WINDOWS vẳn dược ưa chuông hơn vì việc sử dụng dơn giản, thuận liện và nhanh chóng, chi nháy chuội ihay cho gõ từng ký lự của lệnh và lên lệp từ bàn phím như chương trình trong mỏi trường MSDOS. Trong các ví dụ của lài liệu này, chúng la díing chương trình trong WINDOWS là PINNACLE. 1,4.2. Chương trìn h mò phỏng AVS1M51 Chương Irình mô phòng này xuất hiện sau chương trình mô phỏng SIM và trước chương trinh mô phòng Pinnacle, nhưng hoại động trên cơ sở của hệ điểu hành MSDOS nên mỗi khi đưa lệnh điều khiển phải gõ phím từ bàn phím, nên hiện nay không thồng dụng- Giao diện của chương trình mỏ phòng AVSIM như hình 1-6 có nội dung các thanh ghi, bộ nhớ cùa VĐK, iương tự chương irình mỏ phong PINNACLE. LABEL RESEl 80 5 1 /8 7 5 1 A V S I M 8051 S im u la to r/D e b u g g e r O P E R A T IO N no C P U R E G IS T E R S m e m o ry Accumuỉator V I .30 S C L SPD DSP S K P C U R S O R AC F0 o v p OFF ỉ i ỉ ON O ỈT MESV 0 0 0 IH no m c m o ry c 000211 no m e m o ry 0 0 0 w 0 0 0 0 :0 0 :_ 0003 M no m e m o ry addr FLAG S 0 0 0 0 Cycles: (ỉata 00(34 H no m e m o ry FC:0000 » FF FF FF PF T im e rs T H / T L T F / T R G / T / M l/ M O 000511 no m c m o ry S P : 07 » 00 0 0 00 0 0 0006H no m c m o ry 0 0 0 0 0 0 00 0 0 07 l i no m em or> DP: o o o o » FF F F FP r r 0 0 08 H no m em or> R0: 00; »0 0 : 000911 no m e m o ry (H ÌO A Ỉi m m e m o rỵ R 2 :0 0 R 4 :0 0 R 6 :0 0 Pr OOOBH no m e m o ry R 3 :0 () R 5:()0 R 7 :0 ( ) S lU J r;In OOOCH no m e m o ry D a ta S pace 0 ()()[)iỉ TO; 00 00 T l ; 00 00 m m ỉn is A R r o o : 一 》0 0 :一 B :0 0 ỉ-: n 0 0 00 0 0 0 0 00 0 0 s Tì 000 0 xo E dg xo :0 0 X I TO 0 0 00 0 0 0 (H iỊ r r IÍ-: X I: 0 0 T O N :O x \^ x \x \ 0 0 :一()0;_ SC()N :0000(K)()0 no m c m o ry (KKK) 0 0 00 0 0 00 00 00 00 ()() o o m 1 no m c m o ry 0 0 0 8 0 0 00 00 0 0 00 u(ì 00 (K) PO I 111 i 1 11 ()0()FỈ ỉ no m c m o ry 0 0 1 0 00 00 0 0 00 (K) 00 00 00 PI iiiiiiin O OIQIi no m e m o ry 0 0 1 8 0 0 0() 0 0 00 00 00 00 00 Pl llliill) 001 H I no m c m o ry D a ta Space 0 0 I2 Í1 no tiie m ơ ry 0 0 2 0 0 0 0 0 0 0 o õ 00 00 ()(J 00 P2 1l l l l 1i 1 001311 no m c m o ry (X)28 0 0 IH) 00 00 (){) 00 00 00 ĩr ; ^; Ịii!iMi ()Í)I4 M no in c m o ry 0 0 3 0 00 0 0 00 00 (K) 00 00 0(1 P3 (Ì0 I5 H no ư ic m o ry ix m 00 00 0 0 00 00 00 00 00 FF: KI ____ Porls 1 i 1111 ỉ ỉ ỉlỉiĩỉtt lltlllll > S e k x t € t) m m a n d . o r use a r r o w k c y s D u n ip E x p rc s s ỉo n c o m ĩn u n d P ỉle H e lp l o Load , -space-- E S C lo screcn H ình t - 6 . G ia o d i ệ n c ủ a c h ư ơ n g t r ìn h m ò p h ỏ n g A V S IM 1.4.3, Chương trìn h mỏ phỏng P IN N A C I.E 52 Chưcmg trình F1NNACLFỈ 52 là mỏt H)H ( Inĩegrated Equipmem- (hiếí bị tích hợp》gổm: - Chương trình soạn tháo (Ecliĩ) chucTng ĩrlnh. - ('luronu liinlì hicn dR.h (compiloĩL kcf n ó i、 ’ả \cp dại la! (RdocaiahícK chưưnp h iih hơp 111:11 (co tliitìi .ASM > - c'hưưnji (lìn h hión doi danu I ì i i X sang lỉiN viỉ ngược la i‘ - ( 'huoniì ii Mìh m u phune (S im tilaĩor) dô clKiy ihư ucn irôn \\ú \ VI tinlì l,(* i ì ì u y liìu ìi hưởe, Ù111Ị2 duiu.nt! li inh con và ca chitone irìnỉi). (iiao dicn cua chương ninh mở phonu Pninaclc cỉươc giới ihiệu livn liiith 1-S VƠI các iliiíc ihm lìgane va tloc' ị Sí> xuõny). (/hi càn nháy dìuỏi’ chúng ta có ihc lụ" tluov cac einniị:(rình CII.I Ilìưc (1(111 Iiiĩani! \à doc lcỉì man hình. 1)0 tlo, Sctii kỉìi chuvmg ưìnlì mở phỏng P1NNAC'[.IỈ (írona WINỈỈ)OWS l Iicn mau líiiilu ta cn ihuv tlơn imaim \ a kco Mioiìg với các (ié miiL sau; - I lì I. (ỉưỊ)i S ỉ \ \ í (lê soạn ihao chươim ỉ ĩ ình inới tlạne .ASM), ( )V\iN uk. mo. cluiơni:ninh (la cổ). CLOSIv (donu clurơuị:irmh dà mơ), HXIT (ỉlioáí khoi P1NN A(*1J ;vỏ w 1N I)()\\ Si. - l u i I I ( M u n i ỉ l ỉ u o Ị : c!ê so a rì th a o c h ư ơ n g trìn h , l ll: W ( ( Ị i i i ỉ N kl.XÍISTHR (các ihanti ghì A. H. ROR7. sp. 11: . ll\ rs w i: DlM K (,011 muUa chn. m k T S u 'a c CỎ!1^J l U P l, P2, P3k riMHR r r r O N , T M ()[)/1 2 ('()N . 12\1()13):Sl ịi Dnvci VIOU:m ! licỉd: CODl ;M1*: M()RY(Ỉ)1SSASS1': MHI .Y- nhớ ma lcĩih). UART. 12C DOMCO. SPI. - LXtX . n i , ịfhưc lìiVỉiỉ :kU N (i*5- chay cá chương innh); STOl) ((lưng clia\ chuíìỉiu iniih), K l: s l ART (klìơi clỏny lai). S1N(»1.1:STHP (ehay líriiií bước): PROCliDURK STỈ,:r u'h‘iy diuunsi ưmh con); SKIP s riíp (bo\|ua bước). I INISỈỈ S11BR()UTIN1: (kct ihuc durung irmh LOIU. I IMlSỉl lM l* ; KkUlM (kcĩ lỉuìc n^ai). SIMl l A I O R UÌÌO i?lỉ0Ní>ì :C 'U :A k (xoii nhở chirơng trình, nho Tronic, nhỡ naoun, M ì A I) MI.:M()RY (nap hộ nhỏ Iigoài. nhỏ troim, nhớ dmong irìiih). S AV l. M I:M í)KV ílmi ỉ lữ); 1; \1-; ('HTI()N7SI A ('K llis n o m ;a ) D Ỉ :lM<()l-lLl: R. !iRI:AK]X)IN rs:IMPOKT I ISI/NIAÌM II .1 m U Ỉ.C Ỉịd o ủ m : N fi\v, ()Ị>HN. HDIT’ PRO.IH(T O KriO N. (T O S i: . (X)MIMI i :I II I , (1-2hioii (Itch); COMPlí.h;+ 1 INK (t;rR !.+l'2- biẻn dich và kêì nối); RHBUn 1 AI 1,; ST()P HUII !)). Ị()()L{ion: ^ a i ì :I II .lí(X )N V IỈR S K )N { I!1:X-BỈN. HIN-11Ỉ; X): c x ) l) l: \ V I / A K I ) (baiul Raỉc u i/a i (ÌK - o r r i o N ịiỉiv chọNi 11)1:O IT ỈO N ' - u //\7)ơ u .v RHCỈISTỈÍR P k O ílK A M - I i r i rn K ^ KiHpì IMNNAC L I' IIHl r; KOSi ro N T R O I丄 i-:R' ABOUT IMNNACI 1 I roniĩ ihư IIUK' 1ị\ \A \ LÌiiiny ta có ilìc tloc c;íc iiii t!òl vìì hưo.njz dan MI' cliiii*! 1*!NNA( '\Ả cau Iruc c ua Vf)K S051, va ( ) cliuvíiit: nay, dumg ía lưu V lới inò phong cáu ínk' ciìa Pinnadc qiui thỉỉV ílòii ViL.、 、\oi các (Ic m ục、au: ■l\c: ^f \íci các thaiih ghỉ A. !ỉ. R0-R7. Sỉ*k ( ìì\ IH, \\\ PCON,p s w ' S( ( >N), DPI R con iro (lia clìi cua bó nhổ' ngoài. 16 hiu lir MOI ỉ lới r i'N 'i I- Ỉ^ÌỊỈ.S. các cổnị! sonu soiìị:R). P l, P2. P3. Tunci các ho đinh ihỜ! gian Timc,.í). Timerl \à I Iinet2 VỚI các Ihaníi ghi U .UN. 1\U )1), T2 n)N .T 2\1 01X T I M i m 1,2 xà RCAP2ỈÌ, RCAP2L. - lỉiĩciiìn l rum: nhớ RAM ĩiong cỏ dịa chi ùr 0011 lới r i i 1 - Eucnud ' í'川. nhớ RAM ngoài, có dia chi từ 0011tới í'i'1'M i - SI'R (líiei ỉ VICW : lìhin irực tiêp các ỉhanlì ghi tlạc biệt ở vùng cUa ch' ILI soi I Uí'1 i I 1i - l ỉ i ĩ vìiní:dia chi hiK có địa chi ĨÙ20IỈ lới 21 n dé chi bit (rang thái ciia cluuíiiL:li inh í rmh 1'7 giới thiệu các thục đơn con CLUI thự: đơn V1H\V la SI-K íl)it Fiỉ L l )), X K A M CODE MEMORY. n'inh 1-8 giới thiệu thực đơn V1EW và các íhưc 'iơn con cùa nó: cấc thanh ghi Register, n iT R 、Timcr/Coiinier và IRAN1. M » a » t t a a» a a a a ỡ ơ ơ L Ị aữ g 8g8ggg Time s8888g ‘ g8g888 Scope ^ Ê m Ê m *ễ ^ 的 ggg88s8E g ^ c# Q # í2 ► m PC 0000 Op 00 i Piniiiacĩữ 52 Proíe&siondl Developmenỉ System S*rn,iJà.or Fvoje<{»lftyMode ^ ASCM .* Hex ComiTieríỈỊ ? ^ ^ > ỉ V £ ;S íĩ ^ ầ .g8 s8 8 SJS,.i:g:s.il I 印 a ss Ẹ P888888S ỉ^ u 888 888 Ì 88ss8^8 8 4 5 8ữ s V 一 8ss’ r p ! gs 8ế i ‘ 8 s o . " as s>8.^ sS S V 8 , , 8 I 8ị iÌÌÌÌ w . s T g á i í gsVs sVs ị 3.s8 8 . 8'8 8 sss8 s ị 8ỉ s ---- .88g8sggM8w3sị M 8S8 s、 ẹ js8s 就 力 g s s s s s s s s ê ^ 3 s s s ễ g í 5 < Ị ặ ' s T i ' !s i ^ ẽ sgssi ' è , sỉ : _8 _8 _8 _8 _8 _ 8ss8. ^88 6ỉ VyV I mmmmấ Ị x ! E E 3 B - . Í..X H K ế ầ M k …L 2 * DđtaPt«níei Timci roriliol ĩ〔 ON 00 ĨMOO 至 Tìttííi 0 T2C0H ~00' Í2M0D DPĨR Q eT O V ] ựm õ] ĨÍT«?^: fõ3^'~ T m *1 Ị ~ ^ s« l PC M ị ị\ *»0p M ĩhtũăịg ggSy«boU \ '^ R06P: [互 t/ n n n ị Help lÌM nP ■ma Fí_ . ..4.. V CoM Htnh 1-8' T h ự c đ d n V I E W / R E G IS T E R . D P T R , P O R T S , v ả IR A M c ủ a P in n a c le Chúng ta sẽ cỊuan sál các bỏ phận tròn ờ phâii tỉìưc hành \'h sẽ sử dung \'à lỊuan sál chúng irong cíc hoạt dộng của V t)K tron 2 các chưíTns sau. 1.5. CÁC K IT TH Ự C H À N H V Đ K Để thực hành V Đ K ’ người ta đã chế lạo các k il (giá thực nghiệm), đó chính là một hộ VĐK, gổm vi mạch V Đ K và các vi mạch và íhiết bị phụ trợ. Tu ỳ thành phần cấu tạo và mục đích sử dụng, người ta phân loại kit VĐK thành ha loại; • Kit loại / là loại kit đơn giàn nhấi, gồm một vi mạch VĐ K, một tinh thể thạch anh uo dao dộng, một mạch RESET, các đèn chỉ thị bằng dioi phát quang (LED), công trao dổi tin nòi tiếp với vi mạch MAX232 và các ổ cắm trao đổi tin song song J0-J3 cho các cổng song song P0-P3. Sử dụng kit này, chúng ta có ihể ihực hành được các hành động cơ bản của VĐK (chương 1 tới chương lOì’ không có ghép nối với thiết bị ngoài nào khác, ngoài thiết bị trao đổi tin nổi liếp với máy vi tính PC hay các đèn chỉ thị LED đơn (diot phát sáng). Nhược điểm cùa việc sử dụng kit loại này ỉà chương trình (sau khi soạn thảo và dịch) phải được nạp vào bộ nhớ PROM bẽn trong của VĐK bằng bộ nạp (Programmer) thì chương trình mới chạy được. Nếu dùng VĐK loại tiên liến AVR với nhớ chương trình bên trong (PROM) là loại PLASH’ la cóthể nạp trực tiếpchương liình từ máy tính PC sang bộ nhớ Flash-chương trình cùa V Đ K. Nếu dùng V Đ K loại íiẽn tiến có nhớ Fìash (ví dụ AVR), có thể nạp chương trình từ PC sang PROM trong của VĐK. • Kií loại //. ngoài thành phần của kit loại I’ còn bổ sung ihêm bàn phím, các khối chi ih| khác (LED 7 đoạn, ma trận diol, tinh thể lòng LCD), các vi mạch nhớ ngoài (R A M ’ ROM) và cổng song song 8255 để có thể nối kit với nhiểu thiết bị ngoài khác, trong đó có máy in. K it loại II này có các thành phần như của mội hệ V i xử lý hay rĩìột máy vi tính nên còn gọi là một máy vi lính đcm lấm Single boarđ Computer). K it loại II này có ưu điểm là có thể giao tiếp trực liếp giữa máy vi lính pc với bộ nhớ RAM ngoài hay các thiết bị ngoài mắc với các cổng (song song hay nối tiếp). Sử dụng kit này, chúng ta có thể thực hành được các hành động ghép nối cùa VĐK với các thiết bị ngoài (các chương 11-18, lạp II), có thể phát triển phần mém và sử đụng để diểu khiển tự động số. - Kit loại U I :ngoài thành phần của kít loại II còn bổ sung thêm: + Vi mạch ADC và DAC: để V Đ K trao dổi tin tương tự với thiết bị ngoài lương tự. + Thiết bị nạp bộ nhớ ROM : cho nhớ ROM trong của VĐ K và ROM ngoài. Kit loại này được dùng dể đo lường với cảm biến (sensor) và điểu khiển ĩự động tương tự theo quy luật PID với các cơ cấu chấp hành (acluator). Việc phân chia giữa K it loại II và III chỉ là tương đôi. Trường Đại học Sư phạm kỹ thuật Nam Định đã nghiên cứu và chế lạo kii VĐK loại III MG HI với các bộ phận sau: - Vi mạch VĐK 89C5I với nguồn nuôi, linh thể thạch anh, núm nhấn RESET, các LED rời nối với cổng song song để hiển thị. Với các bộ phận này, chúng la có thể lập trình, hợp dịch, liên kết, biến đổi và chạy thử (từng bước và chương trình trên máy PC, ghi vào nhớ ROM và chạy ihảt irên kit). - Các Ihiếi bị ghép nối ngoài như bàn phím, LED 7 đoạn, LCD, cổng song song, nhớ ng^oài (ROM, RAM), ADC, DAC dùng để ghép nối’ mờ rộng thành hệ VĐK. V ới các thiết bị ghép nối imở rộng này, chúng ta có thể ghép nối và lập trình cho V Đ K trong các hệ đo lường, điều khiển ( sô\ tương íự) và iruyển thông trong đó có trao đổi tin với máy tính p c 1.6. CÁC V Đ K T H U Ộ C H Ọ MCS-51 Ngoài các vi mạch V Đ K 8051,8052 thông dụng, ngừời ta đã chế lạo các vi mạch có tính níung lương tự 8051 (bảng 1-1). Có nhiéu phiẽn bản thuộc họ V Đ K MCS-5 i như sau: ( - \Đ K H0C3I: có 126 Byte nhớ RAM, không có nhử ROM bên trong, phải dùng ROM ngoài. - 、Ỉ)K S0C5Ỉ:có 126 Ĩ3yte nhớ RAM/4RB nhớ ROM chỉ lập irình một lần, không lặp trinh lại dươt. có 2 bộ íimerO’ 1. S0C52: có 8kB nhớ ROM, 256 Byie nhớ RAM và 3 bộ limerO,! ,2 (thêm một timer2). - 1DK 87C5Ỉ'. có 256 Byie nhớ RAM, 8kB nhớ KPROM có thể xoá bằng tía cực tím và ghi lại nhiều Im. Loại có đuôi XX52 có bộ nhớ ROM trong là 8k và RAM trong là 256 Byle và có 2 TimeK)l. . - DK 89C5I: của hãng ATM EL có 256 Byte nhớ RAM, 4kB nhớ FLASH ROM có thể xoá và nạp Úng diện nhiéu lần. Bảng 1-1. Các VĐK thuốc ho MCS-51 ROM/ T h iế t b ị Tốc độ Chán Tímery MHz 1/0 c o u n te r RAM EEPROM UART Ngắt Loại D ò n q Ỉ0 5 1 8 )3 1AH LES S 128 12 32 2 1 5 HMOS 4K 128 12 32 2 1 5 HMOS 4K 128 12 32 2 1 5 HMOS LES S 256 12 32 3 1 6 HMOS 8K ROM 256 12 32 3 1 6 HMOS 4K ROM 128 1 2 ,1 6 32 2 1 5 CMOS 4K 128 1 2 .2 4 32 2 1 5 CMOS 8K ROM 256 1 2 .1 6 02 4 1 7 CMOS 8K 256 1 2 ,2 4 32 4 1 11 CMOS Í7 5 1 H /B H EPROM D ò n g í0 5 2 «32 J052A H D ò n g I0 C 5 1 Í0 C 5 1 B H Í7 C 5 1 EPROM D ò n a Ỉ3 C 5 1 I3 C 5 1 F A I3 C 1 5 2 EPROM (ẠVd báng 1-1 la thấy: • - Loại VDK không có ROM ĩrong: không ghi được chinmg trinh vào vi mạch VĐK mà phải dùng nhớ ROM ngoài như 8031, 803 lA H , 8032AU. 80C31BIỈ. 8CC51Ỉ-A và 80C152. ■io ạ ị có (Ịiiỏị XX5I: có bộ nhớ ROM trong là 4k và RAM trong là 128 Byte và có 2 Timer. .Loựị có diiôi XX52: có hộ nhớ ROM trong là 8k và RAM trong !à 256 Bvle và có 3 TimerO,K nống í3C51FA có 4 Tìiner. -Loại H3C5ỈFA: có các tính năng dặc biệt sau có bộ đếm chương trình hoá kiếu ma trận, có bộ so úính/bái giữ, bổ diéu chế xung ra và Tiiner giám sái (Watchdog), kènh nối tiếp chương trình hoá (x;m ỏ phán VĐK tiên tiến). Loại 83c ỉ 52 :là loại cải tiến cửa 80C51BH có íhcm các tính nãng sau; - Có kênh noi tiếp ĩ oán bộ (GSC - Global Serial Clĩannel): trao dổi ùn nối liếp với tốc độ lới 2Mbp theo hai ihủ tục HDLC hav CSMA/CD (xem phán các VĐK liên tiến).
- Xem thêm -

Tài liệu liên quan