LỜI NÓI ĐẦU Kỹ thuật truyền số liệu là mảng kiến thức không thể thiếu đối với các sinh viên chuyên ngành điện tử, viễn thông và công nghệ thông tin. Có thể nói đây là nền tảng ứng dụng và nguồn đối tượng cho nghiên cứu chuyên sâu trong các chuyên ngành này. Mặc dù mang đậm giải pháp cho dịch vụ số liệu nhưng kỹ thuật truyền số liệu ngày nay lại là xuất phát điểm cho đa dịch vụ, một xu thế tất yếu trong mạng viễn thông hiện tại. Tiếp cận và lĩnh hội kỹ thuật truyền số liệu bằng cách nào cho hiệu quả đã và đang là mối quan tâm của nhiều người, đặc biệt là các sinh viên chuyên ngành liên quan.
Để đáp ứng nhu cầu tìm hiểu các hệ thống viễn thông một cách thực tế, được sự chỉ dẫn của thầy Nguyễn Thành Long và cô Bùi Thị Kim Thoa, chúng em đã được giao đề tài “Thiết kế và chế tạo bộ thí nghiệm mã hóa và giải mã dữ liệu”.
Nội dung bản thuyết minh gồm 3 phần:
Phần I: Lý luận chung
Phần II: Thiết kế và thi công phần cứng
Phần III: Kết luận và hướng phát triển của đề tài
MỤC LỤC
LỜI CẢM ƠN NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN NHẬN XÉT CỦA GIÁO VIÊN PHẢN BIỆN LỜI NÓI ĐẦU DANH MỤC CÁC HÌNH VẼ BẲNG BIỂU DANH MỤC CÁC THUẬT NGỮ VIẾT TẮT MỤC LỤC . 7
PHẦN I: LÝ LUẬN CHUNG . 14
CHƯƠNG I: MỞ ĐẦU . 14
1.1 Yêu cầu của đề tài 14
1.2 Mục đích nghiên cứu . 14
1.3 Lý do chọn đề tài . 14
1.4 Chọn phương án thiết kế . 14
1.5 Ý nghĩa khoa học và ý nghĩa thực tiễn 14
CHƯƠNG II: LÝ THUYẾT LIÊN QUAN 16
2.1 Môi trường truyền dữ liệu . 16
2.1.1 Các khái niệm cơ bản . 16
2.1.2 Sự suy giảm và biến dạng tín hiệu . 16
2.1.3 Môi trường truyền dẫn hữu tuyến . 17
2.2 Các chế độ thông tin . 24
2.3 Chế độ truyền 24
2.3.1 Chế độ truyền bất đồng bộ . 25
2.3.2 Chế độ truyền đồng bộ . 26
2.4 Xử lý số liệu truyền . 27
2.4.1 Phương pháp kiểm tra bit chẵn lẻ . 28
2.4.2 Phương pháp kiểm tra tổng BSC 29
2.4.3 Phương pháp kiểm tra CRC 34
2.5 Điều khiển luồng . 31
2.6 Giao thức điều khiển liên kết dữ liệu thiên hướng bit32
CHƯƠNG III: LINH KIỆN ỨNG DỤNG . 37
3.1 Bộ vi điều khiển 8 bits PIC16F877A 37
3.1.1 Giới thiệu bộ vi điều khiển 8 bits . 37
3.1.2 Kiến trúc PIC 38
3.1.3 RISC và CISC 38
3.1.4 Các dòng PIC và cách lựa chọn vi điều khiển PIC . 38
3.1.5 Ngôn ngữ lập trình cho PIC . 39
3.1.6 Mạch nạp PIC 39
3.1.7 Sơ đồ chân vi điều khiển PIC . 40
3.1.8 Một vài thông số vi điều khiển PIC 16f877A 41
3.1.9 Sơ đồ khối vi điều khiển PIC . 42
3.1.10 Tổ chức bộ nhớ . 43
3.1.11 Bộ chuyển đổi tương tự sang số ADC 44
3.1.12 Giao tiếp nối tiếp I2C 46
3.2 IC chuyển đổi số sang tương tự DAC0808 . 47
3.2.1 Cấu tạo . 47
3.2.2 Sơ đồ khối và sơ đồ kết nối . 47
3.2.3 Đặc điểm . 49
3.2.4 Nguyên tắc chuyển đổi và các tham số . 49
3.3 Keypad 3x4 51
3.4 Màn hình tinh thể lỏng LCD 54
3.5. IC khuếch đại thuật toán LF351 . 57
PHẦN II: THIẾT KẾ VÀ CHẾ TẠO . 59
CHƯƠNG I: SƠ ĐỒ KHỐI TỔNG QUÁT 59
1.1 Sơ đồ khối tổng quát . 59
1.2 Hoạt động của các khối 60
CHƯƠNG II: THIẾT KẾ CHI TIẾT 61
2.1 Khối Pre_Amplifier 61
2.2 Khối xử lý bên phát58
2.3 Khối xử lý bên thu . 60
2.4 Khối DAC 61
2.5 Khối nguồn . 66
CHƯƠNG III: LƯU ĐỒ THUẬT TOÁN 67
3.1 Master 67
3.2 Slave . 68
3.3 Keypad 69
3.4 Send packet 70
CHƯƠNG IV: MÔ HÌNH SẢN PHẨM VÀ HƯỚNG DẪN SỬ DỤNG. 68
4.1.MODUL mã hóa dữ liệu và tạo CRC . 68
4.1.1Mô hình 68
4.1.2. Hướng dẫn sử dụng 68
4.2.MODUL giải mã dữ liệu và phát hiện lỗi 69
4.2.1.Mô hình . 69
4.2.2.Hướng dẫn sử dụng . 70
PHẦN III: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN CỦA ĐỀ TÀI . 74
3.1 Kết luận . 74
3.1.1 Ưu nhược điểm 74
3.1.2 Mở rộng . 75
3.2 Các đề xuất và kiến nghị 75
PHỤ LỤC CÁC BÀI THÍ NGHIỆM . 73
TÀI LIỆU THAM KHẢO: . 83
85 trang |
Chia sẻ: lvcdongnoi | Lượt xem: 3786 | Lượt tải: 1
Bạn đang xem trước 20 trang tài liệu Thiết kế và chế tạo bộ thí nghiệm mã hóa và giải mã dữ liệu, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
ờng NRM (nomal response Mode): chế độ này được dùng trong cấu hình không cân bằng. Trong chế độ này trạm thứ cấp chỉ có thể truyền khi nhận được chỉ thị đặc biệt của trạm sơ cấp. Liên kết này có thể là điểm - nối-điểm hay đa điểm trường hợp đa điểm chỉ cho phép một trạm sơ cấp.
2. Chế độ đáp ứng bất đồng bộ ARM ( Asynchronous response mode ) chế độ này được dùng trong cấu hình không cân bằng Nó cho phép một trạm thứ cấp xúc tiến một hoạt động truyền mà không cần sự cho phép từ trạm sơ cấp > Chế độ này thường được dùng trong các cấu hình điểm - nối - điểm và các liên kết song công và cho phép thứ cấp truyền các frame một cách bất đồng bộ với sơ cấp .
3. Chế độ cân bằng bất đồng bộ ABM ( Asynchronous Balanced mode ) ; chế độ này được dùng chủ yếu trên các liên kết song công điểm - nối - điểm cho các ứng dụng truyền số liệu máy tính - đến - máy tính và cho các kết nối giữa máy tính và mạng số liệu công cộng( PSD ). Trong chế độ này mỗi trạm có trạng thái như nhau và thực hiện cả hai chức năng sơ cấp và thứ cấp . Nó là chế độ được dùng trong giao thức nổi tiếng X.25.
- Khuôn dạng frame
Hình1.2.13: Dạng frame HDLC
Khuôn dạng frame trên được dùng nhiều cho các liên kết điểm - nối - điểm. Bắt đầu và kết thúc một frame bằng một cờ 8 bits 01111110. Dùng thuật ngữ “thiên hướng bit” vì luồng bit thu được dò theo từng bit. Do đó về nguyên lý nội dung của frame không nhất thiết phải là bội số của 8 bits.
Để cho phép máy thu tiếp cận và duy trì cơ cấu đồng bộ bit, máy phát phải gửi một chuỗi các byte idle 01111111 đứng trước cờ bắt đầu frame. Với NRZI mã hóa bit 0 trong byte idle cho phép DPLL tại máy thu tiếp cận và duy trì sự đồng bộ đồng hồ. Khi nhận được cờ khởi đầu frame, nội dung cảu frame được đọc và dịch thao các khoảng 8 bits cho đến khi gặp cờ kết thúc frame.
Để đạt được tính trong suốt dữ liệu, cần đảm bảo cờ không được nhận nhầm trong phần nội dung. Vì lý do này người ta dùng kỹ thuật chèn bit 0 hay còn gọi là kỹ thuật nhồi bit. Mạch này chỉ hoạt động trong quá trình truyền nội dung cảu frame. Khi có một tuần tự 5 bits 1 liên tiếp nó sẽ tự động chèn vào một bit 0. Bằng cách này sẽ không bao giờ có cờ trong phần nội dung truyền đi. Một mạch tương tự bên thu thực hiện chức năng gỡ bỏ bit 0 theo hướng ngược lại.
CHƯƠNG III: LINH KIỆN ỨNG DỤNG
3.1 Bộ vi điều khiển 8 bits PIC16F877A
3.1.1 Giới thiệu bộ vi điều khiển 8 bits
Ngày nay các bộ vi điều khiển đang có ứng dụng ngày càng rộng rãi trong các lĩnh vực kỹ thuật và đời sống xã hội, đặc biệt là trong kỹ thuật tự động hóa và điều khiển từ xa. Giờ đây với nhu cầu chuyên dụng hóa, tối ưu (thời gian, không gian giá thành), bảo mật, tính chủ động trong công việc…ngày càng đòi hỏi khắt khe. Việc đưa ra công nghệ mới trong lĩnh vực chế tạo mạch điện tử để đáp ứng những yêu cầu trên là hoàn toàn cấp thiết mang tính thực tế cao.
3.1.2 Kiến trúc PIC
Cấu trúc phần cứng của một vi điều khiển được thiết kế theo hai dạng kiến trúc: kiến trúc
Tổ chức phần cứng của PIC được thiết kế theo kiến trúc Havard. Điểm khác biệt giữa kiến trúc Havard và kiến trúc Von-Neuman là cấu trúc bộ nhớ dữ liệu và bộ nhớ chương trình. Đối với kiến trúc Von-Neuman, bộ nhớ dữ liệu và bộ nhớ chương trình nằm chung trong một bộ nhớ, do đó ta có thể tổ chức, cân đối một cách linh hoạt bộ nhớ chương trình và bộ nhớ dữ liệu. Tuy nhiên điều này chỉ có ý nghĩa khi tốc độ xử lí của CPU phải rất cao, vì với cấu trúc đó, trong cùng một thời điểm CPU chỉ có thể tương tác với bộ nhớ dữ liệu hoặc bộ nhớ chương trình. Như vậy có thể nói kiến trúc Von-Neuman không thích hợp với cấu trúc của một vi điều khiển.
Đối với kiến trúc Havard, bộ nhớ dữ liệu và bộ nhớ chương trình tách ra thành hai bộ nhớ riêng biệt. Do đó trong cùng một thời điểm CPU có thể tương tác với cả hai bộ nhớ, như vậy tốc độ xử lí của vi điều khiển được cải thiện đáng kể.
Một điểm cần chú ý nữa là tập lệnh trong kiến trúc Havard có thể được tối ưu tùy theo yêu cầu kiến trúc của vi điều khiển mà không phụ thuộc vào cấu trúc dữ liệu. Ví dụ, đối với vi điều khiển dòng 16F, độ dài lệnh luôn là 14 bit (trong khi dữ liệu được tổ chức thành từng byte), còn đối với kiến trúc Von-Neuman, độ dài lệnh luôn là bội số của 1 byte (do dữ liệu được tổ chức thành từng byte). Đặc điểm này được minh họa cụ thể trong hình dưới đây.
Hình 1.3.1: Kiến trúc PIC
3.1.3 RISC và CISC
Như đã trình bày ở trên, kiến trúc Havard là khái niệm mới hơn so với kiến trúc Von- Neuman. Khái niệm này được hình thành nhằm cải tiến tốc độ thực thi của một vi điều khiển. Qua việc tách rời bộ nhớ chương trình và bộ nhớ dữ liệu, bus chương trình và bus dữ liệu, CPU có thể cùng một lúc truy xuất cả bộ nhớ chương trình và bộ nhớ dữ liệu, giúp tăng tốc độ xử lí của 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 dữ liệu nữa mà có thể linh động điều chỉnh tùy theo khả năng và tốc độ của từng 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 của họ vi điều khiển PIC được thiết kế sao cho chiều dài mã lệnh luôn cố định (ví dụ đối với họ 16Fxxxx chiều dài mã lệnh luôn là 14 bit) và cho phép thực thi lệnh trong một chu kì của xung clock ( ngoại trừ một số trường hợp đặc biệt như lệnh nhảy, lệnh gọi chương trình con … cần hai chu kì xung đồng hồ). Điều này có nghĩa tập lệnh của vi điều khiển thuộc cấu trúc Havard sẽ ít lệnh hơn, ngắn hơn, đơn giản hơn để đáp ứng yêu cầu mã hóa lệnh bằng một số lượng bit nhất định.
Vi điều khiển được tổ chức theo kiến trúc Havard còn được gọi là vi điều khiển RISC (Reduced Instruction Set Computer) hay vi điều khiển có tập lệnh rút gọn. Vi điều khiển được thiết kế theo kiến trúc Von-Neuman còn được gọi là vi điều khiển CISC (Complex Instruction Set Computer) hay vi điều khiển có tập lệnh phức tạp vì mã lệnh của nó không phải là một số cố định mà luôn là bội số của 8 bit (1 byte).
3.1.4 Các dòng PIC và cách lựa chọn vi điều khiển PIC
Các kí hiệu của vi điều khiển PIC:
PIC12xxxx: độ dài lệnh 12 bit
PIC16xxxx: độ dài lệnh 14 bit
PIC18xxxx: độ dài lệnh 16 bit
C: PIC có bộ nhớ EPROM (chỉ có 16C84 là EEPROM)
F: PIC có bộ nhớ flash
LF: PIC có bộ nhớ flash hoạt động ở điện áp thấp
LV: tương tự như LF, đây là kí hiệu cũ
Bên cạnh đó một số vi điệu khiển có kí hiệu xxFxxx là EEPROM, nếu có thêm chữ A ở cuối là flash (ví dụ PIC16F877 là EEPROM, còn PIC16F877A là flash).
Ngoài ra còn có thêm một dòng vi điều khiển PIC mới là dsPIC. Ở Việt Nam phổ biến nhất là các họ vi điều khiển PIC do hãng Microchip sản xuất. Cách lựa chọn một vi điều khiển PIC phù hợp:
Trước hết cần chú ý đến số chân của vi điều khiển cần thiết cho ứng dụng. Có nhiều vi điều khiển PIC với số lượng chân khác nhau, thậm chí có vi điều khiển chỉ có 8 chân, ngoài ra còn có các vi điều khiển 28, 40, 44, … chân.
Cần chọn vi điều khiển PIC có bộ nhớ flash để có thể nạp xóa chương trình được nhiều lần hơn.
Tiếp theo cần chú ý đến các khối chức năng được tích hợp sẵn trong vi điều khiển, các chuẩn giao tiếp bên trong. Sau cùng cần chú ý đến bộ nhớ chương trình mà vi điều khiển cho phép.
Ngoài ra mọi thông tin về cách lựa chọn vi điều khiển PIC có thể được tìm thấy trong cuốn sách “Select PIC guide” do nhà sản xuất Microchip cung cấp.
3.1.5 Ngôn ngữ lập trình cho PIC
Ngôn ngữ lập trình cho PIC rất đa dạng. Ngôn ngữ lập trình cấp thấp có MPLAB (được cung cấp miễn phí bởi nhà sản xuất Microchip), các ngôn ngữ lập trình cấp cao hơn bao gồm C, Basic, Pascal, … Ngoài ra còn có một số ngôn ngữ lập trình được phát triển dành riêng cho PIC như PICBasic, MikroBasic,…
3.1.6 Mạch nạp PIC
Đây cũng là một dòng sản phẩm rất đa dạng dành cho vi điều khiển PIC. Có thể sử dụng các mạch nạp được cung cấp bởi nhà sản xuất là hãng Microchip như: PICSTART plus, MPLAB ICD 2, MPLAB PM 3, PRO MATE II. Có thể dùng các sản phẩm này để nạp cho vi điều khiển khác thông qua chương trình MPLAB. Dòng sản phẩm chính thống này có ưu thế là nạp được cho tất cả các vi điều khiển PIC, tuy nhiên giá thành rất cao và thường gặp rất nhiều khó khăn trong quá trình mua sản phẩm.
Ngoài ra do tính năng cho phép nhiều chế độ nạp khác nhau, còn có rất nhiều mạch nạp được thiết kế dành cho vi điều khiển PIC. Có thể sơ lược một số mạch nạp cho PIC như sau:
JDM programmer: mạch nạp này dùng chương trình nạp Icprog cho phép nạp các vi điều khiển PIC có hỗ trợ tính năng nạp chương trình điện áp thấp ICSP (In Circuit Serial Programming). Hầu hết các mạch nạp đều hỗ trợ tính năng nạp chương trình này.
Hình 1.3.2: Mạch nạp PIC (ICSP)
WARP-13A và MCP-USB: hai mạch nạp này giống với mạch nạp PICSTART PLUS do nhà sản xuất Microchip cung cấp, tương thích với trình biên dịch MPLAB, nghĩa là ta có thể trực tiếp dùng chương trình MPLAB để nạp cho vi điều khiển PIC mà không cần sử dụng một chương trình nạp khác, chẳng hạn như Icprog.
P16PRO40: mạch nạp này do Nigel thiết kế và cũng khá nổi tiếng. Ông còn thiết kế cả chương trình nạp, tuy nhiên ta cũng có thể sử dụng chương trình nạp Icprog.
Mạch nạp Universal của Williem: đây không phải là mạch nạp chuyên dụng dành cho PIC như P16PRO40.
Các mạch nạp kể trên có ưu điểm rất lớn là đơn giản, rẻ tiền, hoàn toàn có thể tự lắp ráp một cách dễ dàng, và mọi thông tin về sơ đồ mạch nạp, cách thiết kế, thi công, kiểm tra và chương trình nạp đều dễ dàng tìm được và download miễn phí thông qua mạng Internet. Tuy nhiên các mạch nạp trên có nhược điểm là hạn chế về số vi điều khiển được hỗ trợ, bên cạnh đó mỗi mạch nạp cần được sử dụng với một chương trình nạp thích hợp.
3.1.7 Sơ đồ chân vi điều khiển PIC (Hình 1.3.3)
3.1.8 Một vài thông số vi điều khiển PIC 16f877A
Đây là vi điều khiển thuộc họ PIC16Fxxx với tập lệnh gồm 35 lệnh có độ dài 14 bit. Mỗi lệnh đều được thực thi trong một chu kì xung clock. Tốc độ hoạt động tối đa cho phép là 20 MHz với một chu kì lệnh là 200ns. Bộ nhớ chương trình 8Kx14 bit, bộ nhớ dữ liệu 368x8 byte RAM và bộ nhớ dữ liệu EEPROM với dung lượng 256x8 byte. Số PORT I/O là 5 với 33 pin I/O.
Hình 1.3.3. Sơ đồ chân VDK PIC
Các đặc tính ngoại vi bao gồm các khối chức năng sau:
Timer0: bộ đếm 8 bit với bộ chia tần số 8 bit.
Timer1: bộ đếm 16 bit với bộ chia tần số, có thể thực hiện chức năng đếm dựa vào xung clock ngoại vi ngay khi vi điều khiển hoạt động ở chế độ sleep.
Timer2: bộ đếm 8 bit với bộ chia tần số, bộ postcaler.
Hai bộ Capture/so sánh/điều chế độ rông xung.
Các chuẩn giao tiếp nối tiếp SSP (Synchronous Serial Port), SPI và I2C. Chuẩn giao tiếp nối tiếp USART với 9 bit địa chỉ.
Cổng giao tiếp song song PSP (Parallel Slave Port) với các chân điều khiển RD, WR, CS ở bên ngoài.
Các đặc tính Analog:
8 kênh chuyển đổi ADC 10 bit.
Hai bộ so sánh.
Bên cạnh đó là một vài đặc tính khác của vi điều khiển như:
Bộ nhớ flash với khả năng ghi xóa được 100.000 lần.
Bộ nhớ EEPROM với khả năng ghi xóa được 1.000.000 lần.
Dữ liệu bộ nhớ EEPROM có thể lưu trữ trên 40 năm.
Khả năng tự nạp chương trình với sự điều khiển của phần mềm.
Nạp được chương trình ngay trên mạch điện ICSP (In Circuit Serial Programming) thông qua 2 chân.
Watchdog Timer với bộ dao động trong.
Chức năng bảo mật mã chương trình.
Chế độ Sleep.
Có thể hoạt động với nhiều dạng Oscillator khác nhau.
3.1.9 Sơ đồ khối vi điều khiển PIC
3.1.10 Tổ chức bộ nhớ
Cấu trúc bộ nhớ của vi điều khiển PIC16F877A bao gồm bộ nhớ chương trình (Program memory) và bộ nhớ dữ liệu (Data Memory).
3.1.10.1 Bộ nhớ chương trình
Bộ nhớ chương trình của vi điều khiển PIC16F877A là bộ nhớ flash, dung lượng bộ nhớ 8K word (1 word = 14 bit) và được phân thành nhiều trang (từ page0 đến page 3) . Như vậy bộ nhớ chương trình có khả năng chứa được 8*1024 = 8192 lệnh (vì một lệnh sau khi mã hóa sẽ có dung lượng 1 word (14 bit).
Để mã hóa được địa chỉ của 8K word bộ nhớ chương trình, bộ đếm chương trình có dung lượng 13 bit (PC).
Khi vi điều khiển được reset, bộ đếm chương trình sẽ chỉ đến địa chỉ 0000h (Reset vector). Khi có ngắt xảy ra, bộ đếm chương trình sẽ chỉ đến địa chỉ 0004h (Interrupt vector).
Bộ nhớ chương trình không bao gồm bộ nhớ stack và không được địa chỉ hóa bởi bộ đếm chương trình. Bộ nhớ stack sẽ được đề cập cụ thể trong phần sau.
Hình 1.3.4: Sơ đồ khối vi điều khiển PIC
Hình 1.3.5: Bộ nhớ chương trình
3.1.10.2 Bộ nhớ dữ liệu
Bộ nhớ dữ liệu của PIC là bộ nhớ EEPROM được chia ra làm nhiều bank. Đối với PIC16F877A bộ nhớ dữ liệu được chia ra làm 4 bank. Mỗi bank có dung lượng 128 byte, bao gồm các thanh ghi có chức năng đặc biệt SFG (Special Function Register) nằm ở các vùng địa chỉ thấp và các thanh ghi mục đích chung GPR (General Purpose Register) nằm ở vùng địa chỉ còn lại trong bank. Các thanh ghi SFR thường xuyên được sử dụng (ví dụ như thanh ghi STATUS) sẽ được đặt ở tất cà các bank của bộ nhớ dữ liệu giúp thuận tiện trong quá trình truy xuất và làm giảm bớt lệnh của chương trình. Sơ đồ cụ thể của bộ nhớ dữ liệu PIC16F877A như sau:
Hình 1.3.6 Sơ đồ bộ nhớ dữ liệu PIC16F877A
3.1.11 Bộ chuyển đổi tương tự sang số ADC
Sơ đồ khối bộ chuyển đổi ADC trong PIC (hình 1.3.8)
ADC (Analog to Digital Converter) là bộ chuyển đổi tín hiệu giữa hai dạng tương tự và số. PIC16F877A có 8 ngõ vào analog (RA4:RA0 và RE2:RE0). Hiệu điện thế chuẩn VREF có thể được lựa chọn là VDD, VSS hay hiệu điện thể chuẩn được xác lập trên hai chân RA2 và RA3. Kết quả chuyển đổi từ tín tiệu tương tự sang tín hiệu số là 10 bit số tương ứng và được lưu trong hai thanh ghi ADRESH:ADRESL. Khi không sử dụng bộ chuyển đổi ADC, các thanh ghi này có thể được sử dụng như các thanh ghi thông thường khác. Khi quá trình chuyển đổi hoàn tất, kết quả sẽ được lưu vào hai thanh ghi ADRESH:ADRESL,bit (ADCON0) được xóa về 0 và cờ ngắt ADIF được set.
Qui trình chuyển đổi từ tương tự sang số bao gồm các bước sau:
1. Thiết lập các thông số cho bộ chuyển đổi ADC:
- Chọn ngõ vào analog, chọn điện áp mẫu (dựa trên các thông số của thanh ghi
ADCON1).
Chọnh kênh chuyển đổi AD (thanh ghi ADCON0).
Chọn xung clock cho kênh chuyển đổi AD (thanh ghi ADCON0).
- Cho phép bộ chuyển đổi AD hoạt động (thanh ghi ADCON0).
2. Thiết lập các cờ ngắt cho bộ AD Clear bit ADIF.
- Set bit ADIE.
- Set bit PEIE.
- Set bit GIE.
3. Đợi cho tới khi quá trình lấy mẫu hoàn tất.
4. Bắt đầu quá trình chuyển đổi (set bit ).
5. Đợi cho tới khi quá trình chuyển đổi hoàn tất bằng cách:
- Kiểm tra bit GO/DONE . Nếu GO/DONE =0, quá trình chuyển đổi đã hoàn tất.
- Kiểm tra cờ ngắt.
6. Đọc kết quả chuyển đổi và xóa cờ ngắt, set bit (nếu cần tiếp tục chuyển đổi).
7. Tiếp tục thực hiện các bước 1 và 2 cho quá trình chuyển đổi tiếp theo.
Cần chú ý là có hai cách lưu kết quả chuyển đổi AD, việc lựa chọn cách lưu được điều khiển bởi bit ADFM và được minh họa cụ thể trong hình 3.7 sau:
Hình 1.3.7 Các cách lưu kết quả chuyển đổi AD.
Hình 1.3.8 Sơ đồ khối bộ chuyển đổi ADC.
Các thanh ghi liên quan đến bộ chuyển đổi ADC bao gồm:
INTCON (địa chỉ 0Bh, 8Bh, 10Bh, 18Bh): cho phép các ngắt (các bit GIE, PEIE).
PIR1 (địa chỉ 0Ch): chứa cờ ngắt AD (bit ADIF).
PIE1 (địa chỉ 8Ch): chứa bit điều khiển AD (ADIE).
ADRESH (địa chỉ 1Eh) và ADRESL (địa chỉ 9Eh): các thanh ghi chứa kết quả chuyển đổi AD.
ADCON0 (địa chỉ 1Fh) và ADCON1 (địa chỉ 9Fh): xác lập các thông số cho bộ chuyển đổi AD.
PORTA (địa chỉ 05h) và TRISA (địa chỉ 85h): liên quan đến các ngõ vào analog ở PORTA.
PORTE (địa chỉ 09h) và TRISE (địa chỉ 89h): liên quan đến các ngõ vào analog ở PORTE.
3.1.12 Giao tiếp nối tiếp I2C
Đây là một dạng khác của MSSP. Chuẩn giao tiếp I2C cũng có hai chế độ Master, Slave và cũng được kết nối với ngắt. I2C sẽ sử dụng 2 pin để truyền nhận dữ liệu:
RC3/SCK/SCL:chân truyền dẫn xung clock.
RC4/SDI/SDA: chân truyền dẫn dữ liệu.
Hình 1.3.9: Sơ đồ khối MSSP (I2C slave mode)
Các khối cơ bản trong sơ đồ khối của I2C không có nhiều khác biệt so với SPI. Tuy nhiên I2C còn có thêm khối phát hiện bit Start và bit Stop của dữ liệu (Start and Stop bit detect) và khối xác định địa chỉ (Match detect).
Các thanh ghi liên quan đến I2C bao gồm:
Thanh ghi SSPCON và SSPCON2: điều khiển MSSP.
Thanh ghi SSPSTAT: thanh ghi chứa các trạng thái hoạt động của MSSP.
Thanh ghi SSPBUF: buffer truyền nhận nối tiếp.
Thanh ghi SSPSR: thanh ghi dịch dùng để truyền nhận dữ liệu. Thanh ghi SSPADD: thanh ghi chứa địa chỉ của giao diện MSSP.
Các thanh ghi SSPCON, SSPCON2 cho phép đọc và ghi.
Thanh ghi SSPSTAT chỉ cho phép đọc và ghi ở 2 bit đầu, 6 bit còn lại chỉ cho phép đọc.
Thanh ghi SSPBUF chứa dữ liệu sẽ được truyền đi hoặc nhận được và đóng vai trò như một thanh ghi đệm cho thanh ghi dịch dữ liệu SSPSR.
Thanh ghi SSPADD chứa địa chỉ của thiết bị ngoại vi cần truy xuất dữ liệu của I2C khi hoạt động ở Slave mode. Khi hoạt động ở Master mode, thanh ghi SSPADD chứa giá trị tạo ra tốc độ baud cho xung clock dùng để truyền nhận dữ liệu.
Trong quá trình nhận dữ liệu, sau khi nhận được 1 byte dữ liệu hoàn chỉnh, thanh ghi SSPSR sẽ chuyển dữ liệu vào thanh ghi SSPBUF. Thanh ghi SSPSR không đọc và ghi được, quá trình truy xuất thanh ghi này phải thông qua thanh ghi SSPBUF.
Trong quá trình truyền dữ liệu, dữ liệu cần truyền khi được đưa vào thanh ghi SSPBUF cũng sẽ đồng thời đưa vào thanh ghi SSPSR.
I2C có nhiều chế độ hoạt động và được điều khiển bởi các bit SSPCON, bao gồm:
I2C Master mode, xung clock = fosc/4*(SSPADD+1).
I2C Slave mode, 7 bit địa chỉ.
I2C Slave mode, 10 bit địa chỉ.
I2C Slvae mode, 7 bit địa chỉ, cho phép ngắt khi phát hiện bit Start và bit Stop.
I2C Slave mode, 10 bit địa chỉ, cho phép ngắt khi phát hiện bit Start và bit Stop.
I2C Firmware Control Master mode.
Địa chỉ truyền đi sẽ bao gồm các bit địa chỉ và một bit để xác định thao tác (đọc hay ghi dữ liệu) với đối tượng cần truy xuất dữ liệu.
Khi lựa chọn giao diện I2C và khi set bit SSPEN, các pin SCL và SDA sẽ ở trạng thái cực thu hở. Do đó trong trường hợp cần thiết ta phải sử dụng điện trở kéo lên ở bên ngoài vi điều khiển, bên cạnh đó cần ấn định các giá trị phù hợp cho các bit TRISC (bit điều khiển xuất nhập các chân SCL và SDA).
3.2 IC chuyển đổi số sang tương tự DAC0808
3.2.1 Cấu tạo
DAC0808 là một bộ chuyển đổi 8bits nối tiếp số sang tương tự, có đặc tính thời gian đúng bằng kích thước của tín hiệu vào trong khoảng 150ns với công suất tiêu thụ là 33mW khi điện áp cung cấp là ±5V. Không cần phải điều chỉnh dòng điện IREF cho tất cả các ứng dụng, từ đó đầu ra hiện tại là ±1LSB của 255 (IREF/256). Nguồn cung cấp của DAC0808 độc lập với “bit code” và đưa ra đặc tính nổi bật của thiết bị phụ thuộc vào mức điện áp vào.
DAC0808 giao tiếp trực tiếp với TTL, DTL hay CMOS ở mức logic và dùng thay thế cho MC1580/MC1408.
3.2.2 Sơ đồ khối và sơ đồ kết nối
- Sơ đồ khối
Hình 1.3.10 : Sơ đồ khối DAC0808
- Sơ đồ chân
Hình 1.3.11 : Sơ đồ chân DAC0808
3.2.3 Đặc điểm
- Nguồn cung cấp:
Vcc=+18V ; VEE= -18V
Đầu vào số:
V5-V12: -10VDC đến +18VDC
Đầu ra khuếch đại:
V0: -11VDC đến +18VDC
Dòng hiệu chỉnh:
I14: 5mA
Đầu vào khuếch đại hiệu chỉnh:
V14 V15: VCC, VEE
Năng lượng tiêu thụ: 1000mW
Độ cảm ứng ESD: TBD
- Dải nhiệt độ chịu đựng:
-650C đến +1500C
- Dải hoạt động:
Dải nhiệt độ :
TMIN ≤ TA≤ TMAX
DAC0808 00C ≤ TA≤ +750C
- Đặc trưng điện:
VCC=5V, VEE=-15VDC, VREF/R14=2mA
3.2.4 Nguyên tắc chuyển đổi và các tham số
3.2.4.1. Hoạt động của bộ chuyển đổi DAC
Mục đích của bộ chuyển đổi số- tương tự là biến đổi tín hiệu nhị phân n bits thành dòng hay áp tương ứng. Về nguyên tắc bộ chuyển đổi DAC trực tiếp nhận một mã số n bit song song hoặc nối tiếp ở lối vào và biến đổi ra dòng điện hoặc điện áp tương ứng ở lối ra. Dòng điện hay điện áp ở lối ra là hàm biến thiên phù hợp theo mã số ở lối vào.
Một bộ DAC hoàn chỉnh bao gồm 3 phần tử cơ bản:
Điện áp quy chiếu ổn định bên ngoài (Vref)
DAC cơ sở
Khuếch đại thuật toán
Điện áp đầu ra bộ DAC V0 sẽ phụ thuộc vào mã nhị phân đầu vào theo công thức:
V0=Vref (B020 + B121 +…+Bn2n)
Trong đó B0 là bit có trọng số thấp nhất và Bn là bit có trọng số cao nhất của mã nhị phân đầu vào, Vref là điện áp quy chiếu.
DAC cơ sở cấu tạo bằng những chuyển mạch tương tự được điều khiển bởi mã số đầu vào và các điện trở chính xác. Các chuyển mạch tương tự điều chỉnh dòng điện hay điện áp trích ra từ điện áp quy chiếu và tạo nên dòng điện hay điện áp ở đầu ra tương ứng với mã số đầu vào.
Mạch khuếch đại thuật toán dùng để chuyển đổi dòng thành áp đồng thời có chức năng tầng đệm.
Bộ biến đổi DAC có đặc điểm là đại lượng ra tương tự không liên tục, độ rời rạc của đầu ra phụ thuộc vào số bit của bộ biến đổi, những DAC có số bit đầu vào lớn thì tổng số nấc điện áp ra càng lớn và khoảng cách giữa các nấc càng nhỏ.
3.2.4.2. Các tham số của bộ chuyển đổi DAC
- Ðộ phân giải (Solution): Liên quan đến số bít của một DAC. Nếu số bít là n thì số trạng thái của tín hiệu nhị phân là 2n nghĩa là sẽ có 2n mức điện thế (hoặc dòng điện) khác nhau, do đó có độ phân giải là 1/2n. Ðộ phân giải càng bé thì điện thế (hoặc dòng điện đầu ra) càng có dạng liên tục, càng gần với thực tế và ngược lại.
- Ðộ chính xác (Accuracy): Có thể đánh giá chất lượng của một DAC bằng sai số của nó. Ðại lượng biểu diễn sai số là độ lệch tối đa giữa đại lượng ra và một đường thẳng nối điểm 0 với điểm FS (Full Scale) trên đặc tuyến chuyển đổi DA.
- Ðộ tuyến tính (Linearity): Ðộ tuyến tính của DAC cho biết độ lệch điện áp so với một đường thẳng đi qua những điểm nút của đặc tuyến chuyển đổi. Ðó là đặc tính thường gặp nhất với DAC. Ðường cong đặc tuyến là đơn điệu nếu sự thay đổi độ lệch trên là không đổi dấu. Ðể có một DAC đơn điệu, độ lệch này phải lớn hơn 0 cho mỗi nấc thang. Ngoài ra mức độ tuyến tính của DAC phải nhỏ hơn hoặc bằng 1/2 LSB để nó trở nên đơn điệu. Như vậy 1/2 LSB là đặc trưng về giới hạn đơn điệu của một DAC.
- Phi tuyến vi sai: là đại lượng cho biết độ lệch giữa giá trị thực tế và lý tưởng cho một nấc điện áp ra ứng với mỗi thay đổi của mã số vào. Ðại lượng này cho biết về độ nhẵn của đường cong đặc tuyến đối với DAC.
- Thời gian thiết lập: đối với một DAC là thời gian cần thiết để điện áp ra đạt tới giá trị tới hạn sai số xung quanh giá trị ổn định. Giới hạn này thường là 1/2 LSB hoặc biểu diễn bằng giá trị % FS.
Thời gian thiết lập trước hết phụ thuộc vào kiểu chuyển mạch, kiểu điện trở và kiểu khuếch đại dùng để xây dựng bộ DAC. Thông thường nó được định nghĩa bằng thời gian từ khi điện áp bắt đầu thay đổi cho tới khi đạt tới vùng giới hạn sai số cho trước. Nó không bao gồm thời gian trễ tính từ khi có sự thay đổi mã số ở đầu vào cho tới khi điện áp ra bắt đầu đáp ứng.
3.3 Keypad 3x4
a. Cấu tạo của ma trận phím 3x4
Ma trận phím này được cấu tạo bởi : 3 hàng và 4 cột. các hàng và cột được nối với các chân cổng vào ra của vi điều khiển. Khi một phím được bấm, nó sẽ nối một hàng và một cột tương ứng. Khi nút 0 được nhấn thì nó nối giữa cột 1 hàng 1. Còn nút 1 được nhấn thì cột 2 và hàng 1 được nối hay nút 2 được nhấn thì nối giữa cột 3 và hàng 1… cứ như vậy đến nút thứ 12.
Hình 1.3.12: Cấu tạo bàn phím 3x4
Đối với kết cấu của ma trận này chưa được chống nhiễu phím. Nếu muỗn chống nhiễu có thể thêm con tụ khoảng 104 vào các nút nếu không muốn thì chống nhiễu bằng phần mền.
b. Nguyên lý quét
Thuật toán quét phím được sử dụng là lần lượt tìm hàng và tìm cột (hoặc ngược lại) Khi tìm hàng, các hàng sẽ được đặt làm đầu vào,các cột được đặt làm đầu ra mức thấp. Sau đó kiểm tra các hàng xem có hàng nào ở mức thấp hay không (có phím nào bấm gây ra nối với cột hay không)? Sau khi xác định được hàng sẽ đặt các cột làm đầu vào, hàng vừa tìm được làm đầu ra mức thấp. Việc kiểm tra được tiến hành với các cột. Sau khi xác định được hàng và cột sẽ suy ra phím được bấm.
3.4 Màn hình tinh thể lỏng LCD
Ngày nay, thiết bị hiển thị LCD( Liquid Crystal Display) được sử dụng trong rất nhiều ứng dụng của vi điều khiển. LCD có rất nhiều ưu điểm so với các dạng hiển thị khác: nó có khả năng hiển thị các kí tự đa dạng, trực quan (chữ, số, và kí tự đồ họa), dễ dàng đưa vào mạch ứng dụng theo nhiều giao thức giao tiếp khác nhau, tốn rất ít tài nguyên hệ thống và giá thành rẻ…
Có rất nhiều loại LCD với nhiều hình dáng và kích thước khác nhau, trên hình là loại LCD thông dụng.
Chức năng các chân của Modul LCD 16x2:
Chân số
Tên
Chức năng
1
VSS
Chân nối đất cho LCD, khi thiết kế mạch ta nối chân này với GND của mạch điều khiển.
2
VDD
Chân cấp nguồn cho LCD, khi thiết kế mạch ta nối chân này với VCC=5V của mạch điều khiển
3
Vee
Chân này dùng điều chỉnh độ tương phản của LCD
4
RS
Chân chọn thanh ghi. Nối chân RS với logic “0” (GND) hoặc logic “1” để chọn thanh ghi.
+ Logic “0”: Bus DB0-DB7 sẽ nối với thanh ghi lênh IR của LCD (chế độ ghi) hoặc nối với bộ đếm địa chỉ của LCD (chế độ đọc).
+ Logic “1”: Bus DB0- DB7 sẽ nối với thanh ghi dữ liệu DR bên trong LCD.
5
R/W
Chân chọn chế độ đọc/ghi ( Read/Write ). Nối chân R/W với logic “0” để LCD hoạt động ở chế độ ghi, hoặc nối với logic “1” để LCD ở chế độ đọc.
6
E
Chân cho phép (Enable). Sau khi các tín hiệu được đặt lên bus DB0-DB7 các lênh chỉ được chấp nhận khi có xung cho phép của chân E.
+ Ở chế độ ghi: Dữ liệu ở bus sẽ được LCD chuyển vào (chấp nhận) thanh ghi bên trong nó khi phát hiện một xung ( từ thấp lên cao ) của tín hiệu chân E.
+ Ở chế độ đọc: Dữ liệu sẽ được LCD xuất ra DB0-DB7 khi phát hiện cạnh lên (từ thấp lên cao) ở chân E và được LCD giữ ở bus đến khi nào chân E xuống mức thấp.
7
DB0-DB7
Tám đường của bus dữ liệu dùng để trao đổi thông tin với MCU. Có 2 chế độ sử dụng 8 đường bus này:
+ Chế độ 8 bit: Dữ liệu được truyền trên cả 8 đường, với bit MSB là DB7.
+ Chế độ 4 bit: Dữ liệu được truyền trên 4 đường từ DB4 đến DB7, bit MSB là DB7.
Bảng 1: Chức năng các chân của LCD 16x2
Hình 1.3.13: Hình dáng LCD
Cấu tạo
Hình 1.3.14: Số thứ tự chân LCD
Khi sản xuất LCD, nhà sản xuất đã tích hợp chip điều khiển (HD44780 bên trong lớp vỏ và chỉ đưa các chân giao tiếp cần thiết. Các chân này được đánh số thứ tự và đặt tên như hình 1. 3.14.
3.5. IC khuếch đại thuật toán LF351
Sơ đồ chân và kiểu vỏ:
Hình 1.3.15: Sơ đồ chân và kiểu vỏ LF351
IC LF351 dùng cho mạch khuếch đại tại đầu ra của bộ chuyển đổi DAC và đưa ra loa, LF351 có những đặc điểm sau:
Điện áp lệnh cho phép 10mV
Dòng điệncho qua thấp: 50pA
Độ rộng khuếch đại băng thông: 4MHz
Trở kháng đầu vào: 1012Ω
LF351 là một bộ khuếch đại thuật toán dạng JFET giá thành thấp, tốc độ cao với một bộ bù điện áp đầu vào và có độ khuếch đại băng thông lớn, tốc độ chuyển đổi nhanh. Thêm vào đó nó còn phù hợp với điện áp cao JFET đầu vào, cung cấp dòng điện đầu vào thấp. Chân LF351 tương thích với chuẩn của LM741.
LF351 có thể được sử dụng cho ứng dụng đòi hỏi tốc độ cao, chuyển đổi D/A nhanh, mạch giữ và lấy mẫu và nhiều mạch khác yêu cầu độ lệch điện áp, dòng điện đầu vào thấp, nội trở cao, tốc độ chuyển đổi và độ rộng băng thông lớn. Linh kiện có nhiễu và độ trôi điện áp thấp nhưng cho các ứng dụng yêu cầu nghiêm ngặt hơn thì LF356 lại được khuyến cáo. Nếu dòng điện cung cấp lớn thì LF351 được lựa chọn.
PHẦN II: THIẾT KẾ VÀ CHẾ TẠO
CHƯƠNG I: SƠ ĐỒ KHỐI TỔNG QUÁT
Sơ đồ khối tổng quát
Hình 2.1.1: Sơ đồ khối tổng quát
1.2 Hoạt động của các khối
Board mạch thiết kế được chia thành 8 khối như sau:
Khối đầu vào ADC: gồm có một đầu vào tín hiệu analog được lấy từ micro, tín hiệu này được đưa qua mạch khuếch đại để khuếch đại tín hiệu đầu vào lên đủ lớn rồi đưa qua đầu vào bộ ADC bên trong vi điều khiển PIC, và một đầu vào điện áp được điều chỉnh nhờ biến trở.
Khối giao tiếp bàn phím : dùng trong việc test thí nghiệm việc truyền, nhận, tạo CRC_CCITT 16 bit và tạo lỗi trong quá trình truyền nhận khung dữ liệu. Mỗi phím được bấm sẽ được gửi tới vi điều khiển để thực hiện lệnh đồng thời cũng được hiển thị lên LCD.
Khối xử lý bên phát: xử lý tín hiệu analog nhận được từ đầu vào, đưa qua bộ mã hóa ADC thực hiện định dạng khung dữ liệu gồm có cờ đầu, cờ cuối, dữ liệu truyền và mã kiểm soát lỗi CRC_CCITT 16 bit. Khi khung dữ liệu đã được định dạng sẽ được truyền tới khối xử lý bên thu.
Khối xử lý bên thu: nhận tín hiệu từ khối xử lý bên phát, phát hiện lỗi dựa vào kiểm tra mã CRC sau khi tính toán lại so với CRC bên phát truyền tới. Dữ liệu nhận được được đưa qua bộ giải mã DAC đồng thời được hiển thị lên LCD bên thu. Khi nhận hết một khối dữ liệu, bên thu có nhiệm vụ gửi một tín hiệu để báo hiệu cho bên phát biết để tiếp tục hoặc dừng truyền.
Khối DAC: giải mã tín hiệu nhận được từ dạng số sang tương tự. Tín hiệu tương tự nhận được rất bé và có nhiễu do vậy phải được đưa qua bộ khuếch đại để khuếch đại tín hiệu lên đủ lớn và lọc thông dải nhằm xác định phổ tín hiệu tránh hiện tượng chồng phổ rồi đưa tới đầu ra loa.
Khối hiển thị bên phát: hiển thị khung dữ liệu truyền đi.
Khối hiển thị bên nhận: hiển thị khung dữ liệu nhận được.
Khối nguồn: cung cấp nguồn + 5V, ± 15V cho mạch hoạt động.
CHƯƠNG II: THIẾT KẾ CHI TIẾT
2.1 Khối Pre_Amplifier
- Sơ đồ nguyên lý.
Hình 2.2.2: Sơ đồ nguyên lý mạch pre_amplifier
- Nguyên tắc hoạt động:
Khi nói vào micro trở kháng của mic sẽ tăng giảm tạo ra thay đổi, vì con tụ 10uF chắn giữa đường tín hiệu input nên nó chỉ cho các tín hiệu xoay chiều đi qua hay nói cách khác nó chỉ truyền xung điện chứa giọng nói qua thôi. Tín hiệu này rất nhỏ thế nên ta cần 1tầng khuếch đại. Mạch trên là mạch khuếch đại không đảo với hệ số khuếch đại là: G= 1 + R4/R5.
Tín hiệu từ electret microphone được đưa qua mạch tiền khuếch đại nhằm khuếch đại tín hiệu lên đủ lớn rồi đưa trực tiếp vào bộ ADC của vi điều khiển PIC. Bộ ADC của vi điều khiển PIC làm việc ở điện áp tham chiếu là 5V. Do đó mạch Op-amp có DC-offset là 2.5V (DC-offset=5V.((R3+VR)/(R1+R3+VR))). Cho nên, khi không có tín hiệu dữ liệu digital được biểu diễn theo lý thuyết là 128. Biến trở VR được điều chỉnh để đạt được dạng tín hiệu tại đầu ra giống với dạng tín hiệu tại đầu vào.
- Tính toán lựa chọn linh kiện.
Tụ C3=10uF , C1=10uF, R2=4K7, R1=R2= 47K, R4=22K, R5=10K, R6=1K
TL072: tín hiệu từ micro ra nhỏ do vậy ta cần mạch khuếch đại nhằm khuếch đại tín hiệu lên đủ lớn. Mạch khuếch đại lựa chọn có hệ số khuếch đại G= 1+ R4/R5. TL072 có sơ đồ chân:
2.2 Khối xử lý bên phát
- Sơ đồ nguyên lý (hình 2.2.3)
- Nguyên tắc họat động:
Tín hiệu từ mạch micro đưa vào bộ ADC của PIC để lấy mẫu. Tần số lấy mẫu được tính theo định lý lấy mẫu Nyquist với flấy mẫu ≥2ftín hiệu. Trong đó tần số tiếng nói trong khoảng 340- 4000Hz, do đó flấy mẫu= 8ks/s. Thời gian lấy mẫu được tính toán bằng tlấy mẫu=0.125ms. Tín hiệu sau khi lấy mẫu được đóng khung với định dạng khung HDLC gồm: 1 byte cờ mở, n byte data, 2 byte CRC và 1 byte cờ đóng. Bên phát tính toán, tạo mã kiểm soát lỗi CRC theo chuẩn CRC - CCITT 16bits.
Với trường hợp test tay, dữ liệu nhận được từ bàn phím được đóng khung với định dạng khung tương tự như trên. Phím được chia thành các phím chức năng: phím dữ liệu, phím điều khiển nhập (NEXT), phím điều khiển truyền khung dữ liệu (SENT), phím tạo lỗi khi truyền (0).
Hình 2.2.3: Sơ đồ nguyên lý bên phát
- Tính toán lựa chọn linh kiện:
Linh kiện được sử dụng gồm có: PIC16F877A với tiêu chuẩn được lựa chọn là công suất tiêu thụ thấp , hiệu quả, giá thành hợp lý.
+ Tốc độ hoạt động là: Xung đồng hồ vào là 20MHz, chu kỳ thực hiện trong 200ns.
+ Bộ nhớ chương trình Flash 8K x 14words
+ Bộ nhớ RAM 368x8bytes.
+ Bộ nhớ EFROM 256x8bytes
Khả năng của bộ vi xử lý được chọn là:
+ 40 chân
+ Khả năng ngắt ( có tới 14 nguồn ngắt trong và ngắt ngoài).
+ Bộ tạo xung thời gian và bộ tạo dao động.
+ Dải điện thế hoạt động rộng: 2.0V đến 5.5V.
+ Công suất tiêu thụ thấp: <0.6mA với 5V, 4MHz, 20uA với nguồn 3V, 32 KHz, 1uA nguồn dự phòng.
Các đặc tính nổi bật của thiết bị ngoại vi trên chip:
+ Bộ chuyển đổi số sang tương tự với 10bits hoặc 8bits.
+Cổng truyền thông nối tiếp SSP với SPI phương thức chủ và I2C (master/ slave)
2.3 Khối xử lý bên thu
- Sơ đồ nguyên lý (Hình 2.2.4)
- Nguyên tắc hoạt động
Khi xảy ra ngắt INT_SSP bên thu nhận đúng địa chỉ SLAVE do bên phát truyền đến sẽ cho phép tiếp tục nhận khung dữ liệu, và tính toán lại CRC. Nếu CRC nhận được khác với CRC bên phát thì có lỗi xảy ra, nếu giống với mã CRC bên phát thì không có lỗi xảy ra khi đó bên thu sẽ tách lấy phần dữ liệu sau khi loại bỏ cờ đầu, cờ cuối và 2 byte CRC và đưa dữ liệu đó ra cổng RB từng byte một tới bộ DAC0808 bên ngoài. Khi nhận hết khung dữ liệu, bên thu sẽ phát tín hiệu báo hiệu cho bên phát phát tiếp hoặc dừng lại.
Trong trường hợp test tay giao thức cũng được thực hiện như trên nhưng bên thu sẽ hiển thị dữ liệu lên LCD để người sử dụng có thể nhìn thấy trực quan dòng dữ liệu nhận được từ bên phát.
- Tính toán lựa chọn linh kiện
Linh kiện sử dụng là PIC16F877A với các đặc điểm như đã được nêu ở trên.
Thạch anh 20MHz.
Hình 2.2.4: Sơ đồ nguyên lý bên thu
2.4 Khối DAC
- Sơ đồ nguyên lý (hình 2.2.5).
- Nguyên tắc hoạt động:
Bộ chuyển đổi số- tương tự DAC0808 biến đổi tín hiệu nhị phân 8bits song song nhận được từ vi điều khiển chuyển thành thành tín hiệu tương tự dưới dạng dòng điện. Tín hiệu đầu ra được đưa qua mạch lọc thông dải và một mạch khuếch đại để chuyển dòng thành áp, ở lối ra là hàm biến thiên phù hợp theo mã số ở lối vào. Đầu ra của DAC0808 là dòng có giá trị nhỏ thông thường khoảng 2mA. Bộ Op-amp trong trường
Hình 2.2.5: Sơ đồ nguyên lý khối DAC
hợp này là một bộ khuếch đại dòng nhỏ và chuyển dòng thành mức điện áp. LF351 được chọn vì nó có tốc độ quay lại cao (tác động trở lại nhanh), yêu cầu một dòng đầu ra thấp và có một dải băng thông rộng. Dữ liệu 8bits từ vi điều khiển đưa song song tới 8 chân đầu vào của DAC0808 để chuyển nó thành tín hiệu tương tự với hàm biến thiên phù hợp với mã dữ liệu ở đầu vào. Tín hiệu tại đầu ra của DAC0808 được đưa qua mạch lọc thông dải để thu được dải thông của tín hiệu thoại.
Tính toán lựa chọn linh kiện
Linh kiện được lựa chọn là DAC0808, bộ chuyển đổi số sang tương tự 8 bits nhị phân.
Khâu LF351 thứ nhất:
Phổ tín hiệu tiếng nói nằm trong khoảng 340÷4000Hz do đó để hạn chế nhiễu khôi phục tiếng nói chúng em đã thiết kế 3 khâu cho đầu ra analog là: bộ lọc thông thấp, bộ khuếch đại, bộ lọc thông cao.
+ Bộ lọc thông cao với tần số fcc= 1/2πRC= 400Hz. Chọn R= 400Ω, C=1µF. Bộ lọc thông cao có fc=400Hz thấp hơn giới hạn phổ âm thanh có nhiệm vụ lọc những tần số nhỏ hơn 160Hz. Tụ C4 còn có nhiệm vụ loại bỏ thành phần một chiều lẫn trong tín hiệu.
+ Khâu khuếch đại: mạch khuếch đại sử dụng LF351 chuyển đổi dòng điện ra từ DAC0808 thành điện áp ở đầu ra có giá trị Vout=Ỉ.R4.
+ Bộ lọc thông thấp có tần số cắt fct=1/2πRC=3.4KHz. Chọn R=470Ω, C=0.1uF. Bộ lọc thông thấp có ft=3.4KHz gần tới ngưỡng giới hạn của phổ âm thanh con người phát ra, có nhiệm vụ lọc những tần số lớn hơn 3.4KHz.
Khâu LF351 thứ hai:
Làm nhiệm vụ chuyển đổi dòng thành áp đưa ra được mức điện áp mà bên phát truyền tới. Điện áp ra được tính theo công thức Vout=Ỉ.R20.
2.5 Khối nguồn
- Sơ đồ nguyên lý
Hình 2.2.6: Sơ đồ nguyên lý khối nguồn
- Nguyên tắc hoạt động
Cung cấp điện áp 5V cho khối tiền khuếch đại, thu, phát, hiển thị.
Cung cấp điện áp ±15V cho mạch khuếch đại dùng LF351, cung cấp điện áp +15V cho DAC0808.
- Tính toán lựa chọn linh kiện
Linh kiện chính sử dụng gồm 7805, 7815, 7915 là các IC ổn áp ổn định với các mức điện áp ra lần lượt là +5V, +15V, -15V.
Biến áp có điện áp xoay chiều đầu vào 220VACvà điện áp ra ở các mức 0, 24VAC.
Các tụ lọc giá trị: C14, C20, C18, C19, C10, C11, C6, C4 là các tụ có nhiệm vụ lọc nguồn, làm cho các điện áp một chiều bằng phẳng hơn. Tụ C18, C19, C4 có nhiệm vụ lọc các điện áp mấp mô. Tụ C6, C10, C11 có nhiệm vụ lọc các điện áp cao tần.
CHƯƠNG III: LƯU ĐỒ THUẬT TOÁN
3.1 Master
Hình 2.3.1: Lưu đồ thuật toán của master
Chú thích: 1: điều kiện đúng
0: điều kiện sai
3.2 Slave
Hình 2.3.2: Lưu đồ thuật toán của slave
Chú thích: 1: điều kiện đúng
0: điều kiện sai
3.3 Keypad
Hình 2.3.3: Lưu đồ thuật toán của keypad
Chú thích: 1: điều kiện đúng
0: điều kiện sai
3.4 Send packet
Hình 2.3.4: Lưu đồ thuật toán chương trình con gửi gói dữ liệu
Chú thích: 1: điều kiện đúng
0: điều kiện sai
CHƯƠNG IV: MÔ HÌNH SẢN PHẨM VÀ HƯỚNG DẪN SỬ DỤNG
4.1.MODUL mã hóa dữ liệu và tạo CRC
4.1.1Mô hình
Hình 2.4.1: Mô hình mặt hiển thị của mạch mã hóa và tạo mã CRC
4.1.2. Hướng dẫn sử dụng
Để bắt đầu thí nghiệm người thí nghiệm cần cấp nguồn ±15V để thực hiện test. Nếu muốn thực hiện test tay hay tự động thì người sử dụng chọn ở công tắc MODE đồng thời chọn mở LCD nếu test tay và tắt LCD nếu Auto. Trong chế độ test Auto công tắc gạt SIGNAL để chọn tín hiệu vào là từ micro hay Voltage.
Ở chế độ Auto, chúng ta thực hiện test với tín hiệu đầu vào là Audio. Với tín hiệu này người sử dụng có thể thực hiện thí nghiệm đo điện áp, tần số của tín hiệu phát tại các điểm đo TP, TP1, TP2 bằng máy Ossilocope. Với điểm đo TP là điểm đo tại đầu ra của mạch tiền khuếch đại chúng ta thí nghiệm đo để xác định các thành phần như: điện áp, tần số của tín hiệu. Với điểm đo TP1, TP2 là các điểm đo tại 2 chân SDA và SCL của vi điều khiển chúng ta xác định các yếu tố như: tần số xung Clock phát ra, biên độ của tín hiệu sau mã hóa.
Ở chế độ Keypad, người thực hành có thể quan sát phương pháp đóng khung dữ liệu và tạo mã kiểm soát lỗi CRC từ đó có thể so sánh với mã tạo được bằng tính toán theo lý thuyết đã học.
4.2.MODUL GIẢI MÃ DỮ LIỆU VÀ PHÁT HIỆN LỖI (DATA DECODING AND ERROR DETECT)
4.2.1.Mô hình
Hình 2.4.2:Mô hình mặt hiển thị của mạch giải mã và phát hiện lỗi
4.2.2.Hướng dẫn sử dụng
Cấp nguồn ±15V cho mạch hoạt động, kết nối 2 board mạch. Người sử dụng thực hiện thí nghiệm tại các điểm đo TP, TP1, TP2 khi bên mã hóa đã thực hiện mã hóa dữ liệu và bên thu thực hiện giải mã dữ liệu. Với điểm đo TP là điểm đo tại đầu ra của mạch khuếch đại đưa ra loa. Tại đây chúng ta có thể xác định các thành phần của tín hiệu như: biên độ điện áp, chu kỳ, tần số của tín hiệu sau mã hóa, quan sát, so sánh dạng tín hiệu trước và sau khi mã hóa, ảnh hưởng của môi trường và các loại nhiễu. TP1 và TP2 là các điểm đo tại 2 chân SDA và SCL của vi điều khiển. Tại đây chúng ta quan sát dạng sóng, xác định tần số, biên độ điện áp, tốc độ truyền và đánh giá sự đồng bộ của tín hiệu.
Công tắc gạt dùng để chọn tín hiệu đầu ra nếu bên phát lấy tín hiệu từ micro thì bên thu sẽ chuyển công tắc gạt về Audio out, còn nếu bên phát lấy tín hiệu từ biến trở thì bên thu cần gạt công tắc về Vout.
Người sử dụng khi thực hiện test ở chế độ keypad có thể kiểm tra phương pháp tạo mã kiểm soát lỗi CRC được hiển thị lên LCD để so sánh với thực tế tính toán.
PHẦN III
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN CỦA ĐỀ TÀI
3.1 Kết luận
Sau một thời gian nghiên cứu và chế tạo, chúng em đã chế tạo được bộ mã hóa và giải mã dữ liệu. Bộ thí nghiệm gồm có hai phần chính để thí nghiệm đó là thực hiện thí nghiệm bằng việc test tay hoặc tự động. Với việc test tay chúng ta có thể hiểu được quá trình đóng khung dữ liệu với định dạng HDLC, việc tạo mã kiểm soát lỗi trong truyền thông CRC-CCITT 16 bits. Với thí nghiệm dùng chế độ tự động chúng ta có thể biết được quá trình mã hóa và giải mã dữ liệu với tín hiệu đầu vào được lấy từ micro. Để xác định tín hiệu trước và sau mã hóa, giải mã ta có thể thực hiện đo dạng tín hiệu để xác định biên độ, tần số tại các điểm đo TP, TP1, TP2 trên cả 2 board mạch.
3.1.1 Ưu nhược điểm
- Ưu điểm: Do bộ thí nghiệm được thiết kế cho các sinh viên mới tìm hiểu về chuyên ngành viễn thông và các học sinh cấp dưới nên bộ thí nghiệm dễ sử dụng, thuận tiện và thiết thực, giá thành rẻ, dễ thiết kế và giao tiếp, đạt tính thẩm mỹ cao.
- Nhược điểm: do thời gian ngắn, kiến thức còn hạn chế nên quá trình xử lý tín hiệu tại đầu ra bộ khuếch đại để đưa ra loa vẫn còn ảnh hưởng của nhiễu nên quá trình khôi phục âm thanh chưa được chuẩn.
3.1.2 Mở rộng
Bộ thí nghiệm có thể kết nối với bộ mã hóa và giải mã đường dây để tín hiệu sau mã hóa có thể truyền với khoảng cách xa hơn và có thể ứng dụng trong thực tế nhiều hơn. Khi kết nối với bộ mã hóa và giải mã đường dây thì sơ đồ khối của hệ thống có thể được mô tả sơ bộ như sau:
3.2 Các đề xuất và kiến nghị
Trong quá trình thực hiện đề tài mặc dù đã được sự giúp đỡ rất nhiệt tình của các thầy cô giáo trong khoa Điện- Điện tử cùng các bạn trong tập thể lớp DDTK3 nhưng do điều kiện còn hạn chế, việc liên lạc để được trợ giúp về kiến thức chuyên ngành, thiết bị đo vẫn còn gặp nhiều khó khăn. Do vậy chúng em mong muốn khi đề tài này được các khóa sau tiếp tục phát triển thì các vấn đề trên sẽ được giải quyết để đạt hiệu quả cao hơn.
3.3 Hướng phát triển của đề tài
Từ bộ thí nghiệm này có thể phát triển lên để giao tiếp với máy tính, dùng nhiều chuẩn truyền thông hơn nữa để có thể so sánh tốc độ truyền giữa các chuẩn truyền và chuẩn giao tiếp để cho tốc độ cao hơn nữa, cũng có thể dùng chip vi điều khiển khác để cho tốc độ xử lý cao, chính xác.
PHỤ LỤC CÁC BÀI THÍ NGHIỆM
HƯỚNG DẪN
Các bạn cần làm quen với các thông tin trong hướng dẫn này để đạt được kết quả tốt nhất khi thực hiện các công việc và các bài thực hành trên bảng mạch. Hãy nghiên cứu kỹ các chỉ dẫn trước khi bắt đầu các thí nghiệm của bạn. Nếu gặp khó khăn trong việc thực hiện các bài thực hành, hãy xem lại các quy tắc sau đây:
MỤC ĐÍCH
Qua các bài thí nghiệm chúng ta có thể hiểu rõ về chức năng của các khối trong mạch, các dạng tín hiệu trong thực tế.
CÁC KIẾN THỨC CƠ BẢN
YÊU CẦU VỀ THIẾT BỊ:
Bo mạch thí nghiệm DATA ENCODING AND CREAT CRC
Bo mạch thí nghiệm DATA DECODING AND ERROR DETECT
Máy hiện sóng Osillocope 2 tia
Nguồn ±15V
Đồng hồ số
CÁC BÀI THỰC HÀNH:
BÀI THÍ NGHIỆM 1
MÃ HÓA VÀ GIẢI MÃ VỚI TÍN HIỆU
NHẬP VÀO TỪ BÀN PHÍM
Giúp cho người thực hành hiểu rõ về cách tạo khung dữ liệu theo chuẩn HDLC, cách tạo mã CRC , cách truyền nhận và giải mã CRC. Người thực hành được quan sát trực tiếp mọi quá trình nhập dữ liệu , truyền nhận dữ liệu trên màn hình hiển thị LCD1602.
GIỚI THIỆU:
Trên board mạch DATA ENCODING AND CREAT CRC có một bàn phím 3x4 . Bàn phím được dùng để nhập dữ liệu và điều khiển quá trình tạo khung dữ liệu , mã hóa CRC , tạo lỗi , truyền nhận dữ liệu ………
Trên mạch còn có 1 LCD1602 để hiển thị giá trị được nhập vào , hiển thị các giá trị trong quá trình truyền nhận dữ liệu . Dòng 1 của LCD hiển thị dữ liệu dưới dạng số nhị phân BIN , hàng thứ 2 hiển thị dữ liệu dưới dạng thâp phân DEC . Ngoài ra LCD còn hiển thị những thông báo chỉ dẫn cho người thực hành trong quá trình thao tác.
Trên board mạch DATA DECODING AND ERROR DETECT có một LCD1602 để thực hiện các chức năng hiển thị dữ liệu và thông tin hướng dẫn .
CÁC BƯỚC THỰC HÀNH
Kết nối hai board mạch DATA ENCODING AND CREAT CRC và DATA DECODING AND ERROR DETECT.
Cấp nguồn cho mạch và chọn chế độ Test tay dùng bàn phím nhập dữ liệu.
Nhập dữ liệu cần truyền thông qua bàn phím.
Khi nhập xong dữ liệu cần truyền rồi , nhấn phím SEND chương trình sẽ tự động tạo khung và mã hóa CRC. Khi đó trên LCD hiện lên bảng hướng dẫn: Press ENTER: gửi dữ liệu, Press 0: tạo lỗi trong quá trình truyền
Khi gửi dữ liệu, quan sát dữ liệu được truyền và hiển thị trên LCD.
BÀI TẬP
Hãy nêu cấu trúc của một khung dữ liệu dạng HDLC gồm có những thành phần nào ?
Vì sao trong khung dữ liệu HDLC cần có cờ mở và cờ đóng ?? (hai cơ này được mặc định là 8 bit 01111110 )
Nêu ưu điểm của phương pháp tạo khung dữ liệu HDLC và mã hóa kiểm soát lỗi CRC
Có mấy phương pháp tạo mã kiểm soát lỗi CRC? Nêu ra các phương pháp đó?
Hãy tính mã kiểm soát lỗi CRC cho chuỗi dữ liệu sau đây theo các phương pháp trên:
Chuỗi dữ liệu: D = 1010001101
Đa thức sinh: P = 110101
BÀI THỰC THÍ NGHIỆM 2
KHẢO SÁT DẠNG TÍN HIỆU TẠI ĐẦU VÀO BỘ ADC
MỤC ĐÍCH:
Sau khi hoàn thành thí nghiệm này, chúng ta sẽ hiểu rõ hơn về tín hiệu âm tần như : Phổ của tín hiệu âm tần, giải tần số tín hiệu âm tần, dạng sóng …
Để thực hành bài thí nghiệm này chúng ta dùng khối mạch trên board DATA ENCODING AND CREAT CRC có mã hiệu HY - ENCOD – 01.
GIỚI THIỆU:
Tín hiệu mà chúng ta cần khảo sát là tín hiệu âm thanh được phát ra từ Elecchet Microphone . Chúng ta tạo tín hiệu âm thanh bằng cách nói vào Microphone , khi đó đầu ra của Microphone là tín hiệu âm tần nhưng có cường độ và điện áp nhỏ . Vì vậy để đưa tín hiệu này vào bộ chuyển đổi ADC ta cần cho tín hiệu qua bộ tiền khuếch đại . Chúng ta sẽ khảo sát tín hiệu này ở điểm đo TP trên khối board.
Để thực hiện bài thực thí nghiệm này , chúng ta dùng một máy hiện sóng (Oscilloscope) để quan sát các đặc điểm của tín hiệu thoại
Tín hiệu thoại có dải tần số từ 400Hz đến 3400Hz.
CÁC BƯỚC THỰC HÀNH :
Xác định vị trí các điểm đo của mạch DATA ENCODING AND CREAT CRC có mã hiệu HY - ENCOD – 01.
Nối dây đo CH1 của máy đo tới điểm đo TP trên board . Nối dây Mass của máy hiện sóng tới điểm GND .
Điều chỉnh thang đo của máy hiện sóng : 2V/DIV và 0.5ms/DIV
Điều chỉnh các thông số khác của máy hiện sóng sao cho có thể quan sát được dạng tín hiệu một cách tốt nhất
QUAN SÁT V À TÍNH TOÁN:
Dạng tín hiệu tương tự thu được như thế nào ?
Chu kỳ của tín hiệu thu được là bao nhiêu TSignal = ?
Tần số của tín hiệu thu được là bao nhiêu fSignal = ?
So sánh tần số thu được có nằm trong dải từ 400Hz đến 3400Hz ? Giải thích ?
Tính biên độ của tín hiệu thu được ASing = ?
NHẬN XÉT:
Nhận xét dạng tín hiệu thu được và ảnh hưởng của nhiễu?
BÀI THÍ NGHIỆM 3
KHẢO SÁT GIẢN ĐỒ XUNG CỦA CHUẨN TRUYỀN I2C
MỤC ĐÍCH:
Qua bài thí nghiệm, chúng ta hiểu về chuẩn truyền nối tiếp I2C đang được sử dụng rộng rãi . Hiểu được nguyên lý hoạt động và khảo sát được giản đồ của I2C.
GIỚI THIỆU :
Ngày nay I2C được sử dụng rộng rãi trong việc kết nối các thiết bị ngoại vi tốc độ cao vào các mạch tích hợp. I2C sử dụng 2 đường truyền tín hiệu 2 chiều ( một đường Clock và một đường Data), sử dụng hiệu điện thế 5V và cùng được kéo lên cao bằng điện trở. I2C được hoạt động theo nhiều Mode: Mode chuẩn (Standard Mode) hoạt động ở tốc độ 100kb/s, Mode tốc độ thấp (low-speed Mode) hoạt động ở tốc độ 10kb/s. Tần số clock có thể cho xuống 0. I2C có sử dụng 7 bit để định địa chỉ, do đó trên một Bus có thể có 112 nút (16 địa chỉ được sử dụng vào mục đích riêng). Điểm mạnh của I2C là chỗ, một vi điều khiển có thể dùng để điều khiển cả một mạng thiết bị mà chỉ tốn hai chân của vi điều khiển.
Chính vì nguyên nhân đó mà I2C là chuẩn giao tiếp được sử dụng nhiều nhất trong các IC đặc biệt là các vi điều khiển 8 bit.
Hình 1: Giản đồ xung I2C Master mode trong quá trình tạo điều kiện Start
Hình 2: Giản đồ xung I2C Master mode trong quá trình tạo điều kiện Stop
Hình 3: Giản đồ xung I2C Master mode trong quá trình truyền dữ liệu
CÁC BƯỚC THỰC HÀNH:
Xác định các điểm đo TP1 và TP2 trên bo mạch DATA ENCODING AND CREAT CRC và DATA DECODING AND ERROR DETECT.
Kết nối hai board trên với nhau, cắm dây kết nối 2 chân SDA và SCL giữa 2 board mạch.
Dùng hai kênh CH1 và CH2 của máy hiện sóng (Oscilloscope) để đo hai điểm đo là TP1 ( chân SDA ) và TP2 (chân SCL).
Điều chỉnh thang đo của máy hiện sóng: 2V/DIV và 0.1us/DIV.
Điều chỉnh các thông số khác của máy hiện sóng , để quan sát được dạng tín hiệu rõ nét nhất .
QUAN SÁT VÀ TÍNH TOÁN:
Mô tả dạng xung của tín hiệu SDA và SCL ??
Tính chu kỳ của tín hiệu SDA và SCL: TSDA = ?? , TSCL = ??
Tính tần số của tín hiệu SDA và SCL: fSDA = ?? , fSCL = ??
Tính biên độ của tín hiệu SDA và SCL: ASDA =?? , ASCL = ??
Tính tốc độ truyền nhận của tín hiệu SDA và tốc độ xung clock SCL ??
Rb = 1/Tb (bit/s)
Rb: Tốc độ bit/s
Tb: Thời gian tồn tại của một bit
NHẬN XÉT:
Nhận xét về tốc độ và dạng tín hiệu của SDA và SCL:
BÀI THÍ NGHIỆM 4
KHẢO SÁT TÍN HIỆU ÂM THANH
ĐƯỢC PHỤC HỒI SAU MẠCH GIẢI MÃ
MỤC ĐÍCH:
Khảo sát tín hiệu âm thanh được khôi phục sau mạch giải mã, quan sát và đánh giá dạng tín hiệu sau khi khôi phục, đánh giá và phân tích những thành phần nhiễu và méo tín hiệu nếu có, đưa ra cách khắc phục.
GIỚI THIỆU:
Tín hiệu âm thanh gốc được phát ra từ Elecchet Microphone. Qua mạch tiền khuếch đại và đưa vào chân chuyển đổi ADC SAN0 của Pic16f877A. Bộ chuyển đổi ADC sẽ chuyển đổi tín hiệu tương tự (âm thanh) sang dạng tín hiệu số , rồi đóng khung theo chuẩn HDLC và mã hóa CRC. Sau khi đóng khung và mã hóa dữ liệu, tín hiệu được truyền sang board mạch giải mã và phát hiện lỗi DATA DECODING AND ERROR DETECT có mã hiệu HY- DECOD – E01. Sau khi nhận dữ liệu và kiểm soát lỗi, dữ liệu được lấy ra và gửi từng bye tới cổng RB của Pic16f877A được kết nối với bộ chuyển đổi số sang tương tự DAC0808. IC DAC0808 có nhiệm vụ chuyển đổi tín hiện số nhận được sang dạng tương tự để khôi phục lại tín hiệu gốc ban đầu, tín hiệu khôi phục được đưa qua một bộ khuếch đại để tăng cường độ tín hiệu trước khi đưa ra loa.
Chúng ta sẽ khảo sát tín hiệu khôi phục trước khi đưa ra loa.
CÁC BƯỚC THỰC HÀNH
Xác định vị trí các điểm đo của mạch DATA DECODING AND ERROR DETECT có mã hiệu HY - DECOD – E01.
Nối dây đo CH1 của máy đo tới điểm đo TP (AUDIO-OUT) trên board. Nối dây Mass của máy hiện sóng tới điểm GND.
Điều chỉnh thang đo của máy hiện sóng : 2V/DIV và 0.5ms/DIV.
Điều chỉnh các thông số khác của máy hiện sóng sao cho có thể quan sát được dạng tín hiệu một cách tốt nhất.
QUAN SÁT V À TÍNH TOÁN:
Dạng tín hiệu tương tự thu được như thế nào?
Chu kỳ của tín hiệu thu được là bao nhiêu TSignal =?
Tần số của tín hiệu thu được là bao nhiêu fSignal =?
So sánh tần số thu được có nằm trong dải từ 400Hz đến 3400Hz ? Giải thích ?
Tính biên độ của tín hiệu thu được ASignal = ??
So sánh tín hiệu sau phục hồi và tín hiệu gốc?
NHẬN XÉT:
Nhận xét dạng tín hiệu thu được và ảnh hưởng của nhiễu:
TÀI LIỆU THAM KHẢO:
Tiếng việt:
Nguyễn Hồng Sơn (chủ biên), Hoàng Đức Hải:
Kỹ thuật truyền số liệu – Nhà xuất bản Lao động – Xã hội, 2002
Học viện công nghệ bưu chính viễn thông:
Kỹ thuật truyền số liệu – Lưu hành nội bộ.
Học viện kỹ thuật quân sự - Khoa vô tuyến Điện tử:
Kỹ thuật truyền dẫn số (Lưu hành nội bộ) – Nhà xuất bản quân đội nhân dân, Hà nội 2001
Nguyễn Trung Lập
Bài giảng truyền dữ liệu – Đại học Cần Thơ
[5] TS Vũ Thanh Hải- Tham gia biên soạn: ThS Nguyễn Văn Giáo
Thông tin dữ liệu- Học viện kỹ thuật quân sự
Tiếng anh:
Gilbert Held: Data communications Networking Devices: Operation, Utilization, LAN and WAN Internet working
Paul Tobin: PSpice for Digital Communications Engineering
[3] Colin Cherry: On Human Communication
[4] W.Stallings: Data and Computer Communication- Prentice Hall, 1997
[5] J.G Proakis: Digital Commmunication- Fundament and Applications, Prentice Hall 1988