1. Trang chủ
  2. » Luận Văn - Báo Cáo

Thiết kế bộ dụng cụ thực hành PIC 16f877a đơn giản

83 510 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 83
Dung lượng 2,38 MB

Nội dung

TRƯỜNG ĐẠI HỌC MỞ THÀNH PHỐ HỒ CHÍ MINH KHOA XÂY DỰNG VÀ ĐIỆN ĐỒ ÁN TỐT NGHIỆP KỸ SƯ NGÀNH CÔNG NGHIỆP THIẾT KẾ BỘ DỤNG CỤ THỰC HÀNH PIC 16F877A ĐƠN GIẢN SVTH : HUỲNH VĂN QUANG MSSV : 20702025 GVHD : ThS PHAN VĂN TP Hồ Chí Minh, tháng năm 2012 ĐỒ ÁN TỐT NGHIỆP KỸ SƯ CÔNG NGHIỆP GVHD: ThS PHAN VĂN HIỆP LỜI MỞ ĐẦU Ngày kỹ thuật vi điều khiển trở nên quen thuộc ngành kỹ thuật dân dụng Các vi điều khiển có khả xử lý nhiều hoạt động phức tạp mà cần chip vi mạch nhỏ, thay tủ điều khiển lớn phức tạp mạch điện gọn nhẹ, dễ dàng thao tác sử dụng Vi điều khiển khơng góp phần vào kỹ thuật điều khiển mà cịn góp phần to lớn vào việc phát triển thơng tin Chính lý trên, việc tìm hiểu, khảo sát vi điều khiển điều mà sinh viên ngành điện mà đặc biệt chuyên ngành kỹ thuật điện-điện tử phải quan tâm Đó nhu cầu cần thiết cấp bách sinh viên, đề tài thực đáp ứng nhu cầu Các điều khiển sử dụng vi điều khiển đơn giản để vận hành sử dụng lại điều phức tạp Phần công việc xử lý phụ thuộc vào người, chương trình hay phần mềm Do nói đến vi điều khiển giống máy tính bao gồm phần phần cứng phần mềm Mặc dù vi điều khiển bước dài để tiếp cận với kỹ thuật khơng thể việc có sớm chiều Để tìm hiểu vi điều khiển cách khoa học mang lại hiệu cao làm tản cho việc xâm nhập vào hệ thống tối tân Việc trang bị kiến thức vi điều khiển cho sinh viên cần thiết Xuất phát từ thực tiển em đến định thiết kế Kit thực hành Vi Điều Khiển PIC 16F877A đơn giản nhằm đáp ứng nhu cầu ham muốn học hỏi thân giúp cho bạn sinh viên dễ tiếp cận hiểu sâu Vi Điều Khiển PIC 16F877A Trong trình thực đề tài cịn nhiều sai sót, mong nhận nhiều ý kiến đóng góp từ thầy cô bạn.Xin chân thành cảm ơn! Tp HCM, ngày 19 tháng năm 2012 Huỳnh Văn Quang HUỲNH VĂN QUANG - 20702025 ĐỒ ÁN TỐT NGHIỆP KỸ SƯ CÔNG NGHIỆP GVHD: ThS PHAN VĂN HIỆP LỜI CẢM ƠN Trước tiên em xin gửi lời cám ơn chân thành sâu sắc tới thầy cô giáo trường Đại học Mở Thành phố Hồ Chí Minh nói chung thầy cô giáo khoa Xây Dựng Điện nói riêng tận tình giảng dạy,truyền đạt cho em kiến thức, kinh nghiệm quý báu suốt thời gn qua Đặc biệt em xin gửi lời cảm ơn đến thầy Phan Văn Hiệp, thầy tận tìnhgiúp đỡ, trực tiếp bảo, hướng dẫn em suốt trình làm đồ án tốt nghiệp Trong thời gian làm việc với thầy, em không ngừng tiếp thu thêm nhiều kiến thức bổ ích mà cịn học tập tinh thần làm việc, thái độ nghiên cứu khoa học nghiêm túc, hiệu quả, điều cần thiết cho em q trình học tập cơng tác sau Sau xin gửi lời cảm ơn chân thành tới gia đình, bạn bè động viên,đóng góp ý kiến giúp đỡ trình học tâp, nghiên cứu hoàn thành đồ án HUỲNH VĂN QUANG - 20702025 ĐỒ ÁN TỐT NGHIỆP KỸ SƯ CÔNG NGHIỆP GVHD: ThS PHAN VĂN HIỆP MỤC LỤC CHƯƠNG 1: TỔNG QUAN VỀ VI ĐIỀU KHIỂN Error! Bookmark not defined 1.1 Giới thiệu chung Error! Bookmark not defined 1.1.2Phân loại Error! Bookmark not defined 1.1.3Cấu trúc tổng quan VDK Error! Bookmark not defined 1.2 Khái quát vi điều khiển pic Error! Bookmark not defined 1.2.1PIC ? Error! Bookmark not defined 1.2.2Kiến trúc PIC Error! Bookmark not defined 1.2.3RISC CISC Error! Bookmark not defined 1.2.4Ngơn ngữ lập trình cho PIC Error! Bookmark not defined 1.2.5Các dòng PIC cách lựa chọn vi điều khiển PICError! Bookmark not defined CHƯƠNG 2: VI ĐIỀU KHIỂN PIC16F877A 2.1 Các dạng sơ đồ chân Error! Bookmark not defined 2.2 Chức chân PIC16F877A Error! Bookmark not defined 2.3 Đặc điểm vi điều khiển PIC16F877A Error! Bookmark not defined 2.4.1 Bộ nhớ chương trình Error! Bookmark not defined 2.4.2 Bộ nhớ liệu Error! Bookmark not defined 2.5 Các cổng xuất nhập PIC16F877A Error! Bookmark not defined 2.5.1PORT A Error! Bookmark not defined 2.5.2PORT B Error! Bookmark not defined 2.5.3PORT C Error! Bookmark not defined 2.5.4PORT D Error! Bookmark not defined 2.5.5PORT E Error! Bookmark not defined 2.6 TIMER Error! Bookmark not defined 2.7 TIMER Error! Bookmark not defined 2.8 TIMER Error! Bookmark not defined 2.9 ADC Error! Bookmark not defined 2.10COMPARATOR – Bộ so sánh Error! Bookmark not defined 2.11CCP (CAPTURE/COMPARE/PWM) Error! Bookmark not defined 2.12Giao tiếp nối tiếp Error! Bookmark not defined 2.13Cổng giao tiếp song song PSP (PARALLEL SLAVE PORT)Error! Bookmark not defined HUỲNH VĂN QUANG - 20702025 ĐỒ ÁN TỐT NGHIỆP KỸ SƯ CÔNG NGHIỆP GVHD: ThS PHAN VĂN HIỆP 2.14Tổng quan số đặc tính CPU Error! Bookmark not defined 2.14.1 Bộ dao động (OSCILLATOR) Error! Bookmark not defined 2.14.2 RESET Error! Bookmark not defined 2.14.3 Ngắt (INTERRUPT) Error! Bookmark not defined 2.14.4 WATCHDOG TIMER (WDT) Error! Bookmark not defined 2.14.5 Chế độ SLEEP Error! Bookmark not defined CHƯƠNG 3: THIẾT KẾ VÀ THI CÔNG BỘ KIT THỰC HÀNH VI ĐIỀU KHIỂN PIC 16F8777A Error! Bookmark not defined 3.1 Giới thiệu chung Error! Bookmark not defined 3.2 Sơ đồ khối kit nguyên tắc vận hành Error! Bookmark not defined 3.2.1 Sơ đồ khối KIT Error! Bookmark not defined 3.2.2 Sơ đồ bố trí KIT Error! Bookmark not defined 3.2.3 Nguyên tắc vận hành KIT Error! Bookmark not defined 3.3 Hình ảnh thực tế KIT 33 3.4 Nguyên lý hoạt động khối Error! Bookmark not defined 3.4.1Khối xử lý trung tâm Error! Bookmark not defined 3.4.2Khối quét LED đoạn Error! Bookmark not defined 3.4.3Khối quét LED ma trận Error! Bookmark not defined 3.4.4Khối hiển thị LCD Error! Bookmark not defined 3.4.5Khối bàn phím KEYPAD Error! Bookmark not defined 3.4.6Khối điều khiển động DC Error! Bookmark not defined 3.4.7Hiển thị vào LED đơn Error! Bookmark not defined 3.4.8Khối nút nhấn( Button): Error! Bookmark not defined 3.4.9 Khối ADC 49 3.4.10Khối RTC: Error! Bookmark not defined 3.4.11Khối nguồn Error! Bookmark not defined CHƯƠNG 4: DEMO MỘT SỐ CHƯƠNG TRÌNH 52 4.1Xuất liệu lên 74HC595 điều khiển 32 LED đơn 52 4.2Đồng hồ thời gian thực hiển thị LED đoạn 53 4.3Quang báo với LED ma trận 54 4.4Hiển thị chuổi ký tự lên LCD 55 4.5Điều khiển LED đơn ADC đơn giản 55 4.6Giải mã bàn phím hiển thị LED đoạn 56 CHƯƠNG 5: HƯỚNG MỞ RÔNG ĐỀ TÀI 58 5.1Thay LED ma trận màu LED ma trận màu 58 5.2Thay dãy 32 LED dơn dãy LED đơn màu 59 HUỲNH VĂN QUANG - 20702025 ĐỒ ÁN TỐT NGHIỆP KỸ SƯ CÔNG NGHIỆP GVHD: ThS PHAN VĂN HIỆP PHỤ LỤCCÁC CHƯƠNG TRÌNH DEMO 60 Điều khiển 32 led đơn 60 Đồng hồ thời gian thực hiển thị led đoạn 61 Quang báo 68 Xuất ký tự lên lcd 71 ADC 73 Gải mã bàn phím 74 TÀI LIỆU THAM KHẢO 77 HUỲNH VĂN QUANG - 20702025 ĐỒ ÁN TỐT NGHIỆP KỸ SƯ CÔNG NGHIỆP GVHD: ThS PHAN VĂN HIỆP CHƢƠNG 1: TỔNG QUAN VỀ VI ĐIỀU KHIỂN 1.1 Giới thiệu chung Bộ Vi xử lý có khả vượt bậc so với hệ thống khác khả tính tốn, xử lý, thay đổi chương trình linh hoạt theo mục đích người dùng, đặc biệt hiệu toán hệ thống lớn Tuy nhiên ứng dụng nhỏ, tầm tính tốn khơng địi hỏi khả tính tốn lớn việc ứng dụng vi xử lý cần cân nhắc Bởi hệ thống dù lớn hay nhỏ, dùng vi xử lý địi hỏi khối mạch điện giao tiếp phức tạp Các khối bao gồm nhớ để chứa liệu chương trình thực hiện, mạch điện giao tiếp ngoại vi để xuất nhập điều khiển trở lại, khối liên kết với vi xử lý thực cơng việc Để kết nối khối đòi hỏi người thiết kế phải hiểu biết tinh tường thành phần vi xử lý, nhớ, thiết bị ngoại vi Hệ thống tạo phức tạp, chiếm nhiều không gian, mạch in phức tạp vấn đề trình độ người thiết kế Kết giá thành sản phẩm cuối cao, không phù hợp để áp dụng cho hệ thống nhỏ Vì số nhược điểm nên nhà chế tạo tích hợp nhớ số mạch giao tiếp ngoại vi với vi xử lý vào IC gọi MICrocontroller- Vi điều khiển Vi điều khiển ứng dụng dây chuyền tự động loại nhỏ, robot có chức đơn giản, máy giặt, ôtô v.v 1.1.2 Phân loại  Độ dài ghi Dựa vào độ dài ghi lệnh VĐK mà người ta chia loại VĐK 8bit, 16bit, hay 32bit  Kiến trúc CISC RISC VXL VĐK CISC VĐK có tập lệnh phức tạp Các VĐK có số lượng lớn lệnh nên giúp cho người lập trình linh hoạt dễ dàng viết chương trình VĐK RISC VĐK có tập lệnh đơn giản Chúng có số lương nhỏ lệnh đơn giản DO đó, chúng địi hỏi phần cứng hơn, HUỲNH VĂN QUANG - 20702025 ĐỒ ÁN TỐT NGHIỆP KỸ SƯ CÔNG NGHIỆP GVHD: ThS PHAN VĂN HIỆP giá thành thấp hơn, nhanh so với CISC Tuy nhiên địi hỏi người lập trình phải viết chương trình phức tạp hơn, nhiều lệnh  Kiến trúc Harvard kiến trúc Vonneumann Kiến trúc Harvard sử dụng nhớ riêng biệt cho chương trình liệu Bus địa bus liệu độc lập với nên trình truyền nhận liệu đơn giản Kiến trúc Vonneumann sử dụng chung nhớ cho chương trình liệu Điều làm cho VĐK gọn nhẹ hơn, giá thành nhẹ 1.1.3 Cấu trúc tổng quan VDK  CPU: Là trái tim hệ thống Là nơi quản lí tất hoạt động VĐK Bên CPU gồm: - ALU phận thao tác liệu - Bộ giải mã lệnh điều khiển, xác định thao tác mà CPU cần thực - Thanh ghi lệnh IR, lưu giữ opcode lệnh thực thi - Thanh ghi PC, lưu giữ địa lệnh cần thực thi - Một tập ghi dùng để lưu thông tin tạm thời  ROM: ROM nhớ dùng để lưu giữ chương trình ROM dùng để chứa số liệu bảng, tham số hệ thống, số liệu cố định hệ thống Trong trình hoạt động nội dung ROM cố định, thay đổi, nội dung ROM thay đổi ROM chế độ xóa nạp chương trình  RAM: RAM nhớ liệu Bộ nhớ RAM dùng làm môi trường xử lý thông tin, lưu trữ kết trung gian kết cuối phép tốn, xử lí thơng tin Nó dùng để tổ chức vùng đệm liệu, thao tác thu phát, chuyển đổi liệu  BUS: BUS đường dẫn dùng để di chuyển liệu Bao gồm: bus địa chỉ, HUỲNH VĂN QUANG - 20702025 ĐỒ ÁN TỐT NGHIỆP KỸ SƯ CÔNG NGHIỆP GVHD: ThS PHAN VĂN HIỆP bus liệu , bus điều khiển  BỘ ĐỊNH THỜI: Được sử dụng cho mục đích chung thời gian  WATCHDOG: Bộ phận dùng để reset lại hệ thống hệ thống gặp cố “bất thường”  ADC: Bộ phận chuyển tín hiệu analog sang tín hiệu digital Các tín hiệu bên ngồi vào VDK thường dạng analog ADC chuyển tín hiệu dạng tín hiệu digital mà VDK hiểu 1.2 1.2.1 Khái quát vi điều khiển pic PIC ? PIC viết tắt “Programable Intelligent Computer”, tạm dịch “máy tính thơng minh khả trình” hãng Genenral Instrument đặt tên cho vi điều khiển họ: PIC1650 thiết kế để dùng làm thiết bị ngoại vi cho vi điều khiển CP1600 Vi điều khiển sau nghiên cứu phát triển thêm từ hình thành nên dịng vi điều khiển PIC ngày 1.2.2 Kiến trúc PIC Cấu trúc phần cứng vi điều khiển thiết kế theo hai dạng kiến trúc: kiến trúc Von Neuman kiến trúc Havard Hình 1.1: Kiến trúc Havard kiến trúc Von-Neuman Tổ chức phần cứng PIC thiết kế theo kiến trúc Havard Điểm khác HUỲNH VĂN QUANG - 20702025 ĐỒ ÁN TỐT NGHIỆP KỸ SƯ CÔNG NGHIỆP GVHD: ThS PHAN VĂN HIỆP biệt kiến trúc Havard kiến trúc Von-Neuman cấu trúc nhớ liệu nhớ chương trình Đối với kiến trúc Von-Neuman, nhớ liệu nhớ chương trình nằm chung nhớ, ta tổ chức, cân đối cách linh hoạt nhớ chương trình nhớ liệu Tuy nhiên điều có ý nghĩa tốc độ xử lí CPU phải cao, với cấu trúc đó, thời điểm CPU tương tác với nhớ liệu nhớ chương trình Như nói kiến trúc Von-Neuman khơng thích hợp với cấu trúc vi điều khiển Đối với kiến trúc Havard, nhớ liệu nhớ chương trình tách thành hai nhớ riêng biệt Do thời điểm CPU tương tác với hai nhớ, tốc độ xử lí vi điều khiển cải thiện đáng kể Một điểm cần ý tập lệnh kiến trúc Havard tối ưu tùy theo yêu cầu kiến trúc vi điều khiển mà khơng phụ thuộc vào cấu trúc liệu Ví dụ, vi điều khiển dòng 16F, độ dài lệnh 14 bit (trong liệu tổ chức thành byte), kiến trúc VonNeuman, độ dài lệnh bội số byte (do liệu tổ chức thành byte) 1.2.3 RISC CISC Qua việc tách rời nhớ chương trình nhớ liệu, bus chương trình bus liệu, CPU lúc truy xuất nhớ chương trình nhớ liệu, giúp tăng tốc độ xử lí vi điều khiển lên gấp đôi Đồng thời cấu trúc lệnh khơng cịn phụ thuộc vào cấu trúc liệu mà linh động điều chỉnh tùy theo khả tốc độ vi điều khiển Và để tiếp tục cải tiến tốc độ thực thi lệnh, tập lệnh họ vi điều khiển PIC thiết kế cho chiều dài mã lệnh cố định (ví dụ họ 16Fxxxx chiều dài mã lệnh 14 bit) cho phép thực thi lệnh chu kì xung clock ( ngoại trừ số trường hợp đặc biệt lệnh nhảy, lệnh gọi chương HUỲNH VĂN QUANG - 20702025 ĐỒ ÁN TỐT NGHIỆP KỸ SƯ CÔNG NGHIỆP GVHD: ThS PHAN VĂN HIỆP keyscan(); }} void set_blink() { switch (mode) { case 1: blink_sec=1; break; case 2: {blink_min=1;blink_sec=0;} break; case 3: {blink_hour=1;blink_min=0;} break; case 4: { blink=0;mode = 0;blink_sec=0; blink_min=0;blink_hour=0; } break; }} void change_time() { if(mode == 1) {blink_sec=1;set_sec();} if(mode == 2) {blink_min=1;set_min();} if(mode == 3) {blink_hour=1;set_hour();} if(mode == 4) { blink=0;mode = 0; blink_sec=0; blink_min=0; blink_hour=0; }} void update_1307() { write_DS1307(0,sec); write_DS1307(1,min); } HUỲNH VĂN QUANG - 20702025 63 ĐỒ ÁN TỐT NGHIỆP KỸ SƯ CÔNG NGHIỆP GVHD: ThS PHAN VĂN HIỆP void keyscan() { RD0=1;RD1=1;RD2=1;RD3=1; if(SW1 != 1) { key=0;SW1=1;delay_ms(150);} if(SW2 != 1) { key=1;SW2=1;delay_ms(150);} if(SW3 != 1) { key=2;SW3=1;delay_ms(150);} if(SW4 != 1) { key=3;SW4=1;delay_ms(150);} if(key != 5) { switch (key) { case 0: {mode++;key = 5;blink=1;set_blink();} break; case 1: {change_time();key = 5;update_1307();} break; case 2: {clear_status();key = 5;} break; } } } void set_sec() { sec=read_ds1307(0); if (sec>=0x30) {sec=0; min++; write_ds1307(1,min);} else sec=0; write_ds1307(0,sec); } void set_min() { byte j; min=read_ds1307(1); min++; j=min & 0x0F; HUỲNH VĂN QUANG - 20702025 64 ĐỒ ÁN TỐT NGHIỆP KỸ SƯ CÔNG NGHIỆP GVHD: ThS PHAN VĂN HIỆP if (j>=0x0A) min=min+0x06; if (min>=0x60) min=0; write_ds1307(1,min); } void set_hour() { hour= hour & 0x1F; hour++; if(hour== 0x0a) hour = hour+0x06; if(hour == 0x13) { hour = 0x00; if (ampm == 0) ampm = 1; else ampm = 0; } } void clear_status() { mode=4; set_blink(); } void read_time() { sec = read_DS1307(0); = read_DS1307(1); hour = read_DS1307(2); update_time(); } void update_time() { ampm = bit_test(hour,5); //test AM PM if(ampm == 0) {RD2 = 0;RD3=1;} //AM HUỲNH VĂN QUANG - 20702025 65 ĐỒ ÁN TỐT NGHIỆP KỸ SƯ CÔNG NGHIỆP GVHD: ThS PHAN VĂN HIỆP if(ampm == 1) {RD2 = 1;RD3=0;} // PM TG1= sec & 0x0F; TG2=(sec & 0xF0)>>4; //convert to BCD SEC TG3= & 0x0F; TG4=(min & 0xF0)>>4; //convert to BCD MIN TG5= hour & 0x0F; TG6=(hour & 0x10)>>4; //convert to BCD HOUR } void display() { TRISB=0x00; TRISA=0x00; if(blink==0) goto hienthi; if(on_off==0) goto LED_blink; hienthi: PortB=MAP[TG6]; RA5=0; delay_ms(1); RA5=1; PortB=MAP[TG5]; RA4=0; delay_ms(1); RA4=1; PortB=MAP[TG4]; RA3=0; delay_ms(1); RA3=1; PortB=MAP[TG3]; RA2=0; HUỲNH VĂN QUANG - 20702025 66 ĐỒ ÁN TỐT NGHIỆP KỸ SƯ CÔNG NGHIỆP GVHD: ThS PHAN VĂN HIỆP delay_ms(1); RA2=1; PortB=MAP[TG2]; RA1=0; delay_ms(1); RA1=1; PortB=MAP[TG1]; RA0=0; delay_ms(1); RA0=1; if(count!=0) goto exit; else { count=15; on_off=0; } goto exit; LED_blink: PortB=MAP[TG1]; if (blink_sec==1) RA5=1; else RA5=0; delay_ms(3); RA0=1; PortB=MAP[TG2]; if (blink_sec==1) RA4=1; else RA4=0; delay_ms(3); RA4=1; PortB=MAP[TG3]; HUỲNH VĂN QUANG - 20702025 67 ĐỒ ÁN TỐT NGHIỆP KỸ SƯ CÔNG NGHIỆP GVHD: ThS PHAN VĂN HIỆP output_low(PIN_B7); if(blink_min==1) delay_ms(3); RA3=1; else RA3=0; RA3=1; PortB=MAP[TG4]; if(blink_min==1) delay_ms(3); RA2=1; else RA2=0; RA2=1; PortB=MAP[TG5]; output_low(PIN_B7); if(blink_hour==1) RA1=1; delay_ms(3); else RA1=0; RA1=1; PortB=MAP[TG6]; if(blink_hour==1) RA0=1; delay_ms(3); else RA0=0; RA0=1; if(count==0) { count=15;on_off=1; } exit: count ; } Quang báo #include #include #use delay(clock=20m) #byte Port_B = 0x06 // Dinh nghia ghi Port B #byte Port_C = 0x07 // Dinh nghia ghi Port C #byte TRIS_B = 0x86 // Dinh nghia ghi Tris B #byte TRIS_C = 0x87 // Dinh nghia ghi Tris B #byte LED_data = Port_B #bit data = Port_C.4 // Dinh nghia chan data la pin C.4 HUỲNH VĂN QUANG - 20702025 68 ĐỒ ÁN TỐT NGHIỆP KỸ SƯ CÔNG NGHIỆP GVHD: ThS PHAN VĂN HIỆP #bit clock = Port_C.6 // Dinh nghia chan data la pin C.5 #bit latch = Port_C.5 // Dinh nghia chan data la pin C.6 char LED[32];//4LED matran char font_buffer[6]={0xFF,0xFF,0xFF,0xFF,0xFF,0xFF};// unsigned char string1[]="DO AN TOT NGHIEP NAM 2012 LED matrix 8x32 HUYNH VAN QUANG 20702025"; char dem_ngat, addr, leng, ky_tu, vi_tri; void HC595(char cot) { char i; for(i=0;i5) { HUỲNH VĂN QUANG - 20702025 70 ĐỒ ÁN TỐT NGHIỆP KỸ SƯ CÔNG NGHIỆP GVHD: ThS PHAN VĂN HIỆP vi_tri=0; copy_font(); ky_tu++; } else{ LED[0]=font_buffer[vi_tri]; vi_tri++; }} void main() { int i; TRIS_B=0x00; TRIS_C=0x00; Port_B=0x00; Port_C=0x00; setup_timer_0(RTCC_INTERNAL|RTCC_DIV_16); //tan so timer0 set_timer0(20); enable_interrupts(global);//cho phep ngat toan cuc enable_interrupts(int_rtcc); leng_string(); // Lay dai ky_tu=0; while(true) { for (i=0;i

Ngày đăng: 18/05/2015, 19:16

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w