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

(LUẬN văn THẠC sĩ) xây dựng hệ thống thu phát băng hẹp dải tần UHF có khả năng thay đổi tham số thu phát và các dạng điều chế số khác nhau

86 4 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 86
Dung lượng 3,95 MB

Nội dung

ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ ĐỖ VĂN HÙNG XÂY DỰNG HỆ THỐNG THU PHÁT BĂNG HẸP DẢI TẦN UHF CÓ KHẢ NĂNG THAY ĐỔI THAM SỐ THU PHÁT VÀ CÁC DẠNG ĐIỀU CHẾ SỐ KHÁC NHAU Ngành: Công nghệ Điện tử - Viễn thông Chuyên ngành:Kỹ thuật điện tử Mã số:60520203 LUẬN VĂN THẠC SỸ NGƯỜI HƯỚNG DẪN KHOA HỌC: PGS.TS BẠCH GIA DƯƠNG Hà Nội - 2015 TIEU LUAN MOI download : skknchat@gmail.com i Lời cam đoan Tôi xin cam đoan hệ thống thu phát băng hẹp dải tần UHF có khả thay đổi tham số thu phát dạng điều chế số khác trình bày luận văn thực hướng dẫn PGS.TS Bạch Gia Dương Tất tài liệu tham khảo từ nghiên cứu liên quan có nguồn gốc rõ ràng danh mục tài liệu tham khảo luận văn Trong luận văn, khơng có việc chép tài liệu, cơng trình nghiên cứu người khác mà không rõ tài liệu tham khảo Hà Nội, ngày tháng năm 2015 Học viên Đỗ Văn Hùng TIEU LUAN MOI download : skknchat@gmail.com ii Lời cảm ơn Em xin chân thành cảm ơn PGS.TS Bạch Gia Dương, thầy tận tình giúp đỡ, bảo hướng dẫn em suốt thời gian thực luận văn tốt nghiệp Đồng thời, em xin gửi lời cảm ơn đến anh chị trung tâm nghiên cứu điện tử viễn thông – Khoa điện tử viễn thông Trường Đại học Công Nghệ giúp đỡ em trình thực luận văn Mặc dù có nhiều cố gắng, thời gian có hạn vốn kiến thức cịn hạn chế nên cơng trình cịn nhiều thiếu sót Vì vậy, em mong nhận đóng góp, bảo thầy bạn Em xin chân thành cảm ơn! TIEU LUAN MOI download : skknchat@gmail.com iii Mục lục Lời cam đoan i Lời cảm ơn ii Mục lục iii Danh sách hình vẽ v Bảng ký hiệu viết tắt vii MỞ ĐẦU Chương – Tổng quan hệ thống 1.1 Hệ thống thông tin biển 1.2 Xây dựng hệ thống thu phát băng hẹp dải tần UHF có khả thay đổi tham số thu phát dạng điều chế số khác Chương – Kỹ thuật phối hợp trở kháng 2.1 Lý thuyết đường truyền [1] 2.1.1 Cách biểu diễn hệ có phần tử phân bố theo sơ đồ hệ có phần tử tập trung 2.1.2 Phương trình vi phân đường dây 2.1.3 Nghiệm phương trình vi phân 10 2.1.4 Đường truyền không tổn hao có mắc tải đầu cuối .13 2.1.5 Tóm tắt số quan hệ định lượng đường dây có sóng đứng .21 2.2 Giản đồ smith [1] 22 2.2.1 Giới thiệu .22 2.2.2 Họ đường tròn đẳng điện trở r: .24 2.2.3 Họ đường tròn đẳng điện kháng x 27 2.2.4 Vòng tròn đẳng || .27 2.2.5 Vòng tròn đẳng S 28 2.3 Một số phương pháp phối hợp trở kháng 29 2.3.1 Phối hợp trở kháng dùng phần tử tập trung 30 2.3.2 Phối hợp trở kháng dùng dây nhánh 30 2.3.3 Phối hợp trở kháng dùng hai dây nhánh .31 2.3.4 Phối hợp trở kháng doạn dây lamda/4 32 2.3.5 Phối hợp trở kháng đoạn dây có chiều dài 33 2.3.6 Phối hợp trở kháng đoạn dây mắc nối tiếp 33 2.4 Lý thuyết điều chế giải điều chế số .34 TIEU LUAN MOI download : skknchat@gmail.com iv 2.4.1 Điều chế FSK 35 2.4.2 Giải điều chế FSK 40 2.4.3 Ưu điểm, nhược điểm điều chế, giải điều chế FSK 43 Chương – Thiết kế chế tạo thu phát sử dụng vi mạch ADF7021 tích hợp khuếch đại tạp âm thấp 43 3.1 Bộ khuếch đại tạp âm thấp 43 3.2 ADF7021 48 3.2.1 Giới thiệu chung ADF7021 .48 3.2.2 Thiết kế chế tạo module ADF7021 .49 3.2.3 Đo đạc kiểm tra hoạt động tuyến thu phát UHF 52 3.2.4 Lập trình phần mềm điều khiển ADF7021 57 Kết luận .63 TÀI LIỆU THAM KHẢO 64 PHỤ LỤC 65 TIEU LUAN MOI download : skknchat@gmail.com (LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau v Danh sách hình vẽ Hình Sơ đồ hệ thống thu phát băng hẹp dải tần UHF Hình Biểu diễn mạch tương đương đoạn đường truyền sóng siêu cao tần Hình Mạng đơn giản hình T hay  đối xứng đường truyền sóng siêu cao tần Hình Sơ đồ đường truyền khơng tổn hao có mắc tải đầu cuối 13 Hình Sóng đứng điện áp đường truyền khơng tổn hao có mắc tải đầu cuối .16 Hình Sóng đứng dịng điện sóng đứng điện áp đường truyền khơng tổn hao có mắc tải đầu cuối 17 Hình Họ vịng trịn đẳng điện trở 24 Hình Họ vịng trịn đẳng điện kháng 25 Hình Vịng trịn đẳng điện kháng phía trục hồnh 25 Hình 10 Vịng trịn đẳng điện kháng phía trục hồnh 26 Hình 11 Vịng trịn đẳng điện trở điện kháng biểu đồ 26 Hình 12 Họ vịng trịn đẳng || 27 Hình 13 Giản đồ Smith chuẩn 29 Hình 14 Sơ đồ phối hợp trở kháng 29 Hình 15 Sơ đồ phối hợp trở kháng dùng phần tử tập trung 30 Hình 16 Phối hợp trở kháng đoạn dây nhánh .31 Hình 17 Sơ đồ phối hợp trở kháng sử dụng dây nhánh song song 32 Hình 18 Sơ đồ sử dụng đoạn dây λ/4 33 Hình 19 Phối hợp trở kháng đoạn dây có chiều dài 33 Hình 20 Phối hợp trở kháng hai đoạn dây mắc nối tiếp 33 Hình 21 Sơ đồ mơ tả q trình điều chế giải điều chế số 35 Hình 22 Phổ tần tín hiệu FSK 38 Hình 23 Dạng sóng FSK 39 Hình 24 Phương pháp điều chế FSK 40 Hình 25 Phương pháp giải điều chế FSK 41 Hình 26 MSK 41 Hình 27 Sơ đồ chung điều chế giải điều chế FSK 42 Hình 28 Điều chế FSK .42 Hình 29 Mô phần mềm ADS 44 Hình 30 Kết mơ .44 Hình 31 Mạch ghép tầng thực tế (BGA2711 MAV-11+) 45 Hình 32 Sơ đồ kết nối chưa lắp khuếch đại 46 Hình 33 Kết chưa lắp khuếch đại 46 Hình 34 Sơ đồ kết nối lắp khuếch đại 47 Hình 35 Khi lắp khuếch đại 47 Hình 36 Ghép nối thực tế 48 Hình 37 Sơ đồ nguyên lý module thu/phát dùng ADF7021 .49 Hình 38 Mạch in module thu/phát 49 Hình 39 Hình ảnh thực tế sau hàn linh kiện 50 Hình 40 Mạch nguyên lý khối xử lý trung tâm (MCU) .50 TIEU LUAN MOI download : skknchat@gmail.com (LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau (LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau vi Hình 41 Sơ đồ nguyên lý khối điều khiển hiển thị 51 Hình 42 Sơ đồ mạch in khối xử lý, điều khiển hiển thị .51 Hình 43 Sơ đồ khối tuyến thu 52 Hình 44 Kết đo đạc đặc trưng tần số thu UHF 53 Hình 45 Kết đo đạc máy phân tích phổ tần số 450MHz 54 Hình 46 Kết đo đạc máy phân tích phổ tần số 470MHz 54 Hình 47 Kết đo đạc máy phân tích phổ tần số 490MHz 55 Hình 48 Kết đo đạc máy phân tích phổ tần số 520MHz 55 Hình 49 Kết đo đạc máy phân tích phổ tần số 550MHz 56 Hình 50 Kết đo đạc máy phân tích phổ tần số 590MHz 56 Hình 51 Kết đo đạc máy phân tích phổ tần số 600MHz 57 Hình 52 Kết nối vi điều khiển ADF7021 qua giao tiếp SPI 57 Hình 53 Giản đồ xung ghi liệu 58 Hình 54 Giải thuật đề xuất cho máy phát 59 Hình 55 Trình tự khởi động ADF7021 chế độ phát 59 Hình 56 Giải thuật đề xuất cho máy thu 61 Hình 57 Trình tự khởi động ADF7021 chế độ thu 61 TIEU LUAN MOI download : skknchat@gmail.com (LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau (LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau vii Bảng ký hiệu viết tắt STT 10 11 12 13 14 Ký hiệu GPS MF HF VHF UHF AM FM PM SSB ASK FSK PSK PLL VCO Giải thích Hệ thống định vị toàn cầu (Global Positioning System) Tần số trung bình (Medium Frequency) Tần số cao (High Frequency) Tần số cao (Very High Frequency) Tần số cực cao (Ultra High Frequency) Điều chế biên độ (Amplitude Modulation) Điều chế tần số (Frequency Modulation) Điều chế pha (Phase Modulation) Điều chế đơn biên (Single Side Bande) Khóa dịch biên độ (Amplitude Shift Key) Khóa dịch tần số (Frequency Shift Key) Khóa dịch pha (Phase Shift Key) Vịng khóa pha (Phase Locked Loop) Bộ dao động điều khiển điện áp (Voltage Controlled Oscillator) TIEU LUAN MOI download : skknchat@gmail.com (LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau (LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau MỞ ĐẦU Vấn đề chủ quyền tồn vẹn lãnh thổ ln quan tâm đặc biệt Đảng nhà nước Cụ thể tại, tình hình Biển đơng ngày phức tạp với tham gia nhiều nước lớn có cơng nghệ đại, vũ khí tối tân Việc quản lý tầu bè lại hải phận quốc gia đòi hỏi phải thống mã nhận dạng hỏi-đáp để phân biệt tàu thuyền lưu thông hợp pháp hay bất hợp pháp Việc nghiên cứu, thiết kế chế tạo toàn hệ thống thiết bị nhận dạng thống chung cho nước đặt với yêu cầu cấp bách, đòi hỏi phải triển khai nghiên cứu chế tạo triển khai sản xuất ứng dụng đồng sau Việc làm chủ chế tạo thiết bị cho phép mềm dẻo tạo mã nhận dạng cho phương tiện hàng hải phù hợp với mã nhận dạng chuẩn hóa quốc tế tạo mã bí mật cho phương tiện quân ta Với tên đề “Xây dựng hệ thống thu phát băng hẹp dải tần UHF có khả thay đổi tham số thu phát dạng điều chế số khác nhau” Trong khuôn khổ luận văn này, song song với việc nghiên cứu lý thuyết lĩnh vực siêu cao tần hoạt động hệ thống thông tin liên lạc biển luận văn xây dựng cấu trúc thiết kế hệ thống tin băng UHF, chọn lựa linh kiện phù hợp có khả thay đổi tham số thu phát dạng điều chế khác (ADF7201), thiết kế chế tạo thành cơng thu phát tích hợp vi mạch ADF7201, tích hợp với khuyếch đại tạp âm thấp băng tần UHF đáp ứng đầy đủ yêu cầu độ nhạy máy thu cho hệ thống thu phát kể Do thời gian thực ngắn cộng với vốn kiến thức hạn chế nên luận văn chắn cịn nhiều thiếu sót, em mong nhận góp ý, bảo thầy để hồn thiện viết TIEU LUAN MOI download : skknchat@gmail.com (LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau (LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau Chương –Tổng quan hệ thống 1.1 Hệ thống thông tin biển Hiện giới Việt nam ta ,tất phương tiện giao thông biển phải trang bị thiết bị thông tin thu phát tín hiệu nhận dạng, thu phát tín hiệu cứu nạn tín hiệu cấp cứu Để quản lý tầu thuyền giao thông biển hiệp hội hang hải quốc tế có qui định chặt chẽ tần số làm việc, cấu trúc mã tín hiệu sử dụng Khi giao tiếp với đài thông tin biển phải tuân thủ chặt chẽ theo qui định hiệp hội Hàng hải quốc tế Đối với tầu thuyền đánh bắt cá nằm vùng A1 (cách đất liền từ 20 tới 50 hải lý tương ứng với khoảng từ gần 40Km tới 100Km) Yêu cầu đề phải trang bị thiết bị thơng tin có u cầu chặt chẽ tần số làm việc dải tần HF VHF với công suất phát từ 8W tới 30W Đối với phương tiện hoạt động vùng A2 (cách đất liền từ 150 tới 200 hải lý tương ứng với cự ly hoạt động từ gần 300 Km tới 400 Km), yêu cầu tầu phải trang bị máy thông tin công suất lớn lên tới 400W băng tần MF(Medium Frequency) HF (High Frequency), tích hợp máy thu định vị vệ tinh GPS Đối với vùng A2 yêu cầu phải có phao cứu hộ EPIRB phát tín hiệu báo nạn qua vệ tinh Cospas-sarsat tần số UHF 406MHz Đối với vùng A3(nằm vùng phủ sóng vệ tinh địa tinh Inmarsat từ 70 vĩ độ Bắc tới 70 vĩ độ Nam), tầu thuyền thiết bị thu phát HF công suất lớn, thiết phải trang bị thiết vị thu phát vệ tinh, phải trang bị phao cứu hộ hoạt động dải tần số UHF Trang bị máy thu định vị vệ tinh GPS Ở vùng A3 khuyến khích trang bị máy thu phát qua vệ tinh Inmarsat Các thiết bị thu phát thông tin băng tần số MF, HF, VHF UHF trang bị tầu thuyền đại hóa sản xuất cơng nghiệp Tầu thuyền giao thông biển tránh thiệt hại gặp rủi ro, trợ giúp cứu nạn vùng A1,A2,A3 Các thiết bị thông tin biển tuân thủ nghiêm ngặt qui định hàng hải quốc tế, tạo điều kiện quản lý phương tiện giao thông biển cứu hộ cứu nạn cần thiết nhận dạng chủ quyền dẫn đường phương tiện toàn cầu Ở Việt nam, nhằm đảm bảo hiệu cao cho cơng tác tun truyền ứng phó với thiên tai, tìm kiếm cứu nạn biển, Vishipel nghiên cứu để nâng cao chất lượng thu phát sóng, đồng thời đề xuất tăng thêm kênh phát để thông tin từ hệ thống Đài Thông tin duyên hải Việt Nam không tiếp cận với ngư dân, người biển qua băng tần HF tần số 7906 kHz Với số lượng 10.000 tàu hàng, 100.000 tàu cá Việt Nam hoạt động biển, 7906 kHz tần số có lưu lượng sử dụng dày đặc, bị can nhiễu lúc Do vậy, cần có tần số bổ sung để thơng tin đến với người biển thông suốt, vùng biển tần số 7906 kHz phủ sóng yếu Tuy nhiên, việc tăng thêm kênh phát, triển khai phát khơng phải vấn đề lớn, mà khó khăn nằm việc đầu tư trang bị thiết bị thu sóng tàu cá Vì vậy, cần có nghiên cứu hỗ trợ Nhà nước TIEU LUAN MOI download : skknchat@gmail.com (LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau (LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau 64 TÀI LIỆU THAM KHẢO Tiếng Việt [1] GS.TSKH Phan Anh Giáo trình lý thuyết kỹ thuật siêu cao tần, Bộ môn Thông tin vô tuyến, Khoa Điện tử - Viễn thông, Trường Đại Học Công Nghệ [2] GS.TSKH Phan Anh Trường điện từ truyền sóng, NXB Đại Học Quốc Gia Hà Nội, Hà Nội [3] Ths Vũ Tuấn Anh Luận văn cao học, Trung tâm nghiên cứu Điện tử - Viễn thông, Trường Đại Học Công Nghệ [4] TS Đỗ Trung Kiên, luận án tiến sĩ, môn Vật lý vô tuyến – ĐHKHTN ĐHQGHN [5] Giáo trình cơng nghệ thơng tin vệ tinh, Tập đồn bưu viễn thơng [6] Phạm Minh Việt Kỹ thuật siêu cao tần, NXB Khoa học kỹ thuật, Hà Nội [7] PGS.TS Trần Quang Vinh – Ths Chử Văn An, Nguyên lý kỹ thuật điện tử, NXB giáo dục, Hà Nội Tiếng Anh [8] David M.Pozar, Microwave engineering, John Wiley & Sons, Inc [9] Guillermo Gonzalez, Microwave transistor amplifiers, Prentice Hall [10] W Alan Davis, Radio Frequency Circuit Design, John Wiley & Sons, Inc [11] Kai chang, Encyclopedia of RF and Microwave Enginneering, John Wiley & Sons, Inc TIEU LUAN MOI download : skknchat@gmail.com (LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau (LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau 65 PHỤ LỤC  Chương trình điều khiển ADF7021 viết ngôn ngữ C  adf7021.h #ifndef _ADF7021_H_ #define _ADF7021_H_ #if defined(BBSTANDARD) #define ADF_PORT_SWD #define ADF_PORT_IN_SWD #define ADF_PORT_DIR_SWD #define ADF_SWD PORTE PINE DDRE #define #define #define #define ADF_PORT_SCLK ADF_PORT_IN_SCLK ADF_PORT_DIR_SCLK ADF_SCLK PORTC PINC DDRC #define #define #define #define ADF_PORT_SREAD ADF_PORT_IN_SREAD ADF_PORT_DIR_SREAD ADF_SREAD PORTC PINC DDRC #define #define #define #define ADF_PORT_SDATA ADF_PORT_IN_SDATA ADF_PORT_DIR_SDATA ADF_SDATA PORTB PINB DDRB #define #define #define #define ADF_PORT_SLE ADF_PORT_IN_SLE ADF_PORT_DIR_SLE ADF_SLE PORTB PINB DDRB #define #define #define #define ADF_PORT_MUXOUT PORTD ADF_PORT_IN_MUXOUT PIND ADF_PORT_DIR_MUXOUT DDRD ADF_MUXOUT #define ADF_PORT_CE PORTD #define ADF_PORT_IN_CE PIND #define ADF_PORT_DIR_CE DDRD #define ADF_CE #elif defined(BBMICRO) #define ADF_PORT_SWD PORTB #define ADF_PORT_IN_SWD PINB #define ADF_PORT_DIR_SWD DDRB #define ADF_SWD #define ADF_PORT_SCLK #define ADF_PORT_IN_SCLK PORTC PINC TIEU LUAN MOI download : skknchat@gmail.com (LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau (LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau 66 #define ADF_PORT_DIR_SCLK #define ADF_SCLK DDRC #define #define #define #define ADF_PORT_SREAD ADF_PORT_IN_SREAD ADF_PORT_DIR_SREAD ADF_SREAD PORTC PINC DDRC #define #define #define #define ADF_PORT_SDATA ADF_PORT_IN_SDATA ADF_PORT_DIR_SDATA ADF_SDATA PORTC PINC DDRC #define #define #define #define ADF_PORT_SLE ADF_PORT_IN_SLE ADF_PORT_DIR_SLE ADF_SLE PORTC PINC DDRC #define #define #define #define ADF_PORT_MUXOUT PORTD ADF_PORT_IN_MUXOUT PIND ADF_PORT_DIR_MUXOUT DDRD ADF_MUXOUT #define #define #define #define #endif ADF_PORT_CE PORTD ADF_PORT_IN_CE PIND ADF_PORT_DIR_CE DDRD ADF_CE typedefunion { unsignedlong whole_reg; struct{ unsignedint lower; unsignedint upper; } word; unsignedchar byte[4]; } adf_reg_t; typedefstruct{ struct{ double data_rate; double mod_index; unsignedlong freq; } desired; struct{ double data_rate; double mod_index; unsignedlong freq; unsignedint freq_dev; } real; union{ adf_reg_t r0_reg; struct{ unsignedchar address_bits :4; unsignedint frac_n :15; unsignedint int_n :8; unsignedchar rx_on :1; unsignedchar uart_mode :1; unsignedchar muxout :3; } r0; }; TIEU LUAN MOI download : skknchat@gmail.com (LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau (LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau 67 union{ adf_reg_t r2_reg; struct{ unsignedchar address_bits :4; unsignedchar modulation_scheme :3; unsignedchar pa_enable :1; unsignedchar pa_ramp :3; unsignedchar pa_bias :2; unsignedchar power_amplifier :6; unsignedint tx_frequency_deviation :9; unsignedchar tx_data_invert :2; unsignedchar rcosine_alpha :1; } r2; }; union{ adf_reg_t r3_reg; struct{ unsignedchar address_bits :4; unsignedchar bbos_clk_divide:2; unsignedchar dem_clk_divide :4; unsignedchar cdr_clk_divide :8; unsignedchar seq_clk_divide :8; unsignedchar agc_clk_divide :6; } r3; }; union{ adf_reg_t r4_reg; struct{ unsignedchar address_bits :4; unsignedchar demod_scheme :3; unsignedchar dot_product :1; unsignedchar rx_invert :2; unsignedint disc_bw :10; unsignedint post_demod_bw :10; unsignedchar if_bw :2; } r4; }; union{ adf_reg_t r5_reg; struct{ unsignedchar address_bits :4; unsignedchar if_cal_coarse :1; unsignedint if_filter_divider :9; unsignedchar if_filter_adjust :6; unsignedchar ir_phase_adjust_mag :4; unsignedchar ir_phase_adjust_direction :1; unsignedchar ir_gain_adjust_mac :5; unsignedchar ir_gain_adjust_iq :1; unsignedchar ir_gain_adjust_updn :1; } r5; }; union{ adf_reg_t r6_reg; struct{ unsignedchar address_bits :4; unsignedchar if_fine_cal :1; unsignedchar if_cal_lower_tone :8; unsignedchar if_cal_upper_tone :8; unsignedchar if_cal_dwell_time :7; unsignedchar ir_cal_source_drive :2; unsignedchar ir_cal_source_div_2 :1; } r6; TIEU LUAN MOI download : skknchat@gmail.com (LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau (LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau 68 }; } adf_conf_t; typedefstruct{ unsignedlong adf_xtal; union{ adf_reg_t r1_reg; struct{ unsignedchar address_bits :4; unsignedchar r_counter :3; unsignedchar clockout_divide :4; unsignedchar xtal_doubler :1; unsignedchar xosc_enable :1; unsignedchar xtal_bias :2; unsignedchar cp_current :2; unsignedchar vco_enable :1; unsignedchar rf_divide_by_2 :1; unsignedchar vco_bias :4; unsignedchar vco_adjust :2; unsignedchar vco_inductor :1; } r1; }; union{ adf_reg_t r10_reg; struct{ unsignedchar address_bits :4; unsignedchar afc_en :1; unsignedint afc_scaling_factor :12; unsignedchar ki :4; unsignedchar kp :3; unsignedchar afc_range :8; } r10; }; union{ adf_reg_t r12_reg; struct{ unsignedchar address_bits :4; unsignedchar lock_thres_mode :2; unsignedchar swd_mode :2; unsignedchar packet_length :8; } r12; }; union{ adf_reg_t r14_reg; struct{ unsignedchar address_bits :4; unsignedchar test_tdac_en :1; unsignedint test_dac_offset :16; unsignedchar test_dac_gain :4; unsignedchar pulse_ext :2; unsignedchar leak_factor :3; unsignedchar ed_peak_resp :2; } r14; }; union{ adf_reg_t r15_reg; struct{ unsignedchar address_bits :4; unsignedchar rx_test_mode :4; unsignedchar tx_test_mode :3; unsignedchar sd_test_mode :3; unsignedchar cp_test_mode :3; TIEU LUAN MOI download : skknchat@gmail.com (LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau (LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau 69 unsignedchar clk_mux :3; unsignedchar pll_test_mode :4; unsignedchar analog_test_mode :4; unsignedchar force_ld_high :1; unsignedchar reg1_pd :1; unsignedchar cal_override :2; } r15; }; } adf_sysconf_t; void adf_write_reg(adf_reg_t *reg); adf_reg_t adf_read_reg(unsignedint readback_config); void adf_set_power_on(unsignedlong adf_xtal); void adf_set_power_off(void); void adf_init_rx_mode(unsignedint data_rate, uint8_t mod_index,unsignedlong freq, uint8_t if_bw); void adf_init_tx_mode(unsignedint data_rate, uint8_t mod_index,unsignedlong freq); void adf_set_rx_mode(void); void adf_set_tx_mode(void); void adf_afc_on(unsignedchar range,unsignedchar ki,unsignedchar kp); void adf_afc_off(void); void adf_set_tx_power(char pasetting); #define #define #define #define ADF_SYNC_WORD_LEN_12 ADF_SYNC_WORD_LEN_16 ADF_SYNC_WORD_LEN_20 ADF_SYNC_WORD_LEN_24 #define #define #define #define ADF_SYNC_WORD_ERROR_TOLERANCE_0 ADF_SYNC_WORD_ERROR_TOLERANCE_1 ADF_SYNC_WORD_ERROR_TOLERANCE_2 ADF_SYNC_WORD_ERROR_TOLERANCE_3 void adf_set_rx_sync_word(unsignedlong word,unsignedchar len,unsignedchar error_tolerance); void adf_set_threshold_free(void); #define #define #define #define #define #define ADF_TEST_TX_MODE_CARRIER_ONLY ADF_TEST_TX_MODE_TONE_HIGH ADF_TEST_TX_MODE_TONE_LOW ADF_TEST_TX_MODE_PATTERN_1010 ADF_TEST_TX_MODE_PATTERN_PN9 ADF_TEST_TX_MODE_SYNC_BYTE void adf_test_tx(int mode); void adf_test_off(void); unsignedint adf_readback_version(void); signedint adf_readback_rssi(void); signedint adf_readback_afc(void); signedint adf_readback_temp(void); float adf_readback_voltage(void); void adf_configure(void); void adf_reset(void); #endif /* _ADF7021_H_ */ TIEU LUAN MOI download : skknchat@gmail.com (LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau (LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau 70  adf7021.c #include #include #include #include #include #include #include #include "adf7021.h" "main.h" "ptt.h" "led.h" static adf_conf_t rx_conf, tx_conf; static adf_sysconf_t sys_conf; static uint32_t adf_current_syncword; externstruct bluebox_config conf; enum{ ADF_OFF, ADF_ON, ADF_TX, ADF_RX } adf_state; enum{ ADF_PA_OFF, ADF_PA_ON } adf_pa_state; void adf_write_reg(adf_reg_t *reg) { signedchar i, j; unsignedchar byte; ADF_PORT_SLE &=~_BV(ADF_SLE); ADF_PORT_SCLK &=~_BV(ADF_SCLK); /* Clock data out MSbit first */ for(i =3; i >=0; i ){ byte= reg->byte[i]; for(j =8; j >0; j ){ ADF_PORT_SCLK &=~_BV(ADF_SCLK); if(byte &0x80) ADF_PORT_SDATA |= _BV(ADF_SDATA); else ADF_PORT_SDATA &=~_BV(ADF_SDATA); ADF_PORT_SCLK |= _BV(ADF_SCLK); byte+= byte; } ADF_PORT_SCLK &=~_BV(ADF_SCLK); } /* Strobe the latch */ ADF_PORT_SLE |= _BV(ADF_SLE); ADF_PORT_SLE |= _BV(ADF_SLE); ADF_PORT_SDATA &=~_BV(ADF_SDATA); ADF_PORT_SDATA &=~_BV(ADF_SLE); } TIEU LUAN MOI download : skknchat@gmail.com (LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau (LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau 71 adf_reg_t adf_read_reg(unsignedint readback_config) { adf_reg_t register_value; signedchar i, j; /* Write readback and ADC control value */ register_value.whole_reg =((readback_config &0x1F)0; j ){ ADF_PORT_SCLK |= _BV(ADF_SCLK); byte+= byte; if(ADF_PORT_IN_SREAD & _BV(ADF_SREAD)) byte|=1; ADF_PORT_SCLK &=~_BV(ADF_SCLK); } register_value.byte[i]= byte; } ADF_PORT_SCLK |= _BV(ADF_SCLK); ADF_PORT_SLE &=~_BV(ADF_SLE); ADF_PORT_SCLK &=~_BV(ADF_SCLK); return register_value; } void adf_set_power_on(unsignedlong adf_xtal) { /* Store locally the oscillator frequency */ sys_conf.adf_xtal = adf_xtal; /* Ensure the ADF GPIO port is correctly initialised */ ADF_PORT_DIR_SWD &=~_BV(ADF_SWD); ADF_PORT_DIR_SCLK |= _BV(ADF_SCLK); ADF_PORT_DIR_SREAD &=~_BV(ADF_SREAD); ADF_PORT_DIR_SDATA |= _BV(ADF_SDATA); ADF_PORT_DIR_SLE |= _BV(ADF_SLE); ADF_PORT_DIR_MUXOUT &=~_BV(ADF_MUXOUT); ADF_PORT_DIR_CE |= _BV(ADF_CE); ADF_PORT_CE |= _BV(ADF_CE); /* write R1, Turn on Internal VCO */ sys_conf.r1.address_bits =1; sys_conf.r1.r_counter =1; sys_conf.r1.clockout_divide =0; TIEU LUAN MOI download : skknchat@gmail.com (LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau (LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau 72 sys_conf.r1.xtal_doubler =0; sys_conf.r1.xosc_enable =1; sys_conf.r1.xtal_bias =3; sys_conf.r1.cp_current =3; sys_conf.r1.vco_enable =1; sys_conf.r1.rf_divide_by_2 =1; sys_conf.r1.vco_bias =15; sys_conf.r1.vco_adjust =1; sys_conf.r1.vco_inductor =0; adf_write_reg(&sys_conf.r1_reg); /* write R15, set CLK_MUX to enable SPI */ sys_conf.r15.address_bits =15; sys_conf.r15.rx_test_mode =0; sys_conf.r15.tx_test_mode =0; sys_conf.r15.sd_test_mode =0; sys_conf.r15.cp_test_mode =0; sys_conf.r15.clk_mux =7; sys_conf.r15.pll_test_mode =0; sys_conf.r15.analog_test_mode =0; sys_conf.r15.force_ld_high =0; sys_conf.r15.reg1_pd =0; sys_conf.r15.cal_override =0; adf_write_reg(&sys_conf.r15_reg); /* write R14, enable test DAC */ sys_conf.r14.address_bits =14; sys_conf.r14.test_tdac_en =0; sys_conf.r14.test_dac_offset =0; sys_conf.r14.test_dac_gain =0; sys_conf.r14.pulse_ext =0; sys_conf.r14.leak_factor =0; sys_conf.r14.ed_peak_resp =0; adf_write_reg(&sys_conf.r14_reg); adf_state = ADF_ON; adf_pa_state = ADF_PA_OFF; } void adf_set_power_off() { /* Turn off chip enable */ ADF_PORT_CE &=~_BV(ADF_CE); adf_state = ADF_OFF; adf_pa_state = ADF_PA_OFF; } void adf_find_clocks(adf_conf_t *conf) { /* Find desired F.dev */ unsignedchar tx_freq_dev =(unsignedchar) round(((double)conf>desired.mod_index *0.5* conf->desired.data_rate *65536.0)/(0.5* sys_conf.adf_xtal)); double freq_dev =(tx_freq_dev * sys_conf.adf_xtal)/65536.0; /* Find K */ unsignedint k = round(100000/(freq_dev)); /* Run a variable optimisation for Demod clock divider */ int i_dem; int w_residual = INT16_MAX, residual; TIEU LUAN MOI download : skknchat@gmail.com (LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau (LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau 73 double demod_clk, data_rate_real; unsignedint cdr_clk_divide, disc_bw; for(i_dem =1; i_dem desired.data_rate *32)); if(disc_bw >660) continue; if(cdr_clk_divide >255) continue; data_rate_real =(sys_conf.adf_xtal /((double) i_dem *(double) cdr_clk_divide *32.0)); residual= abs((unsignedint) data_rate_real - conf->desired.data_rate); /* Search for a new winner */ if(w_residual > residual){ w_residual = residual; conf->r3.dem_clk_divide = i_dem; } } /* Demodulator clock */ demod_clk =(double) sys_conf.adf_xtal / conf->r3.dem_clk_divide; /* CDR clock */ conf->r3.cdr_clk_divide =(unsignedint) round(demod_clk /((double)conf>desired.data_rate *32)); /* Data rate and freq deviation */ conf->real.data_rate =(sys_conf.adf_xtal /((double) conf->r3.dem_clk_divide *(double) conf->r3.cdr_clk_divide *32.0)); conf->real.freq_dev =(unsignedchar) round(((double)conf->desired.mod_index *0.5* conf->real.data_rate *65536.0)/(0.5* sys_conf.adf_xtal)); /* Discriminator bandwidth */ conf->r4.disc_bw = round((k * demod_clk)/400000); /* Post demodulation bandwidth */ conf->r4.post_demod_bw = round(((conf->real.data_rate *0.75)*3.141592654*2048.0)/ demod_clk); /* K odd or even */ if(k &1){ if(((k +1)/2)&1){ conf->r4.rx_invert =2; conf->r4.dot_product =1; }else{ conf->r4.rx_invert =0; conf->r4.dot_product =1; } }else{ if((k /2)&1){ conf->r4.rx_invert =2; conf->r4.dot_product =0; }else{ conf->r4.rx_invert =0; TIEU LUAN MOI download : skknchat@gmail.com (LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau (LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau 74 conf->r4.dot_product =0; } } } void adf_init_rx_mode(unsignedint data_rate, uint8_t mod_index,unsignedlong freq, uint8_t if_bw) { /* Calculate the RX clocks */ rx_conf.desired.data_rate = data_rate; rx_conf.desired.mod_index = mod_index; rx_conf.desired.freq = freq; adf_find_clocks(&rx_conf); /* Setup RX Clocks */ rx_conf.r3.seq_clk_divide =round(sys_conf.adf_xtal /100000.0); rx_conf.r3.agc_clk_divide =round((rx_conf.r3.seq_clk_divide * sys_conf.adf_xtal)/10000.0); rx_conf.r3.bbos_clk_divide =2;// 16 rx_conf.r3.address_bits =3; /* IF filter calibration */ rx_conf.r5.if_filter_divider =(sys_conf.adf_xtal /50000); rx_conf.r5.if_cal_coarse =1; rx_conf.r5.address_bits =5; /* write R0, turn on PLL */ double n =((freq-100000)/(sys_conf.adf_xtal *0.5)); unsignedlong n_int = floor(n); unsignedlong n_frac = round((n - floor(n))*32768); rx_conf.r0.rx_on =1; rx_conf.r0.uart_mode =1; rx_conf.r0.muxout =2; rx_conf.r0.int_n = n_int; rx_conf.r0.frac_n = n_frac; rx_conf.r0.address_bits =0; /* write R4, turn on demodulation */ rx_conf.r4.demod_scheme =1; rx_conf.r4.if_bw = if_bw;// = 12.5, = 18.75, = 25 KHz rx_conf.r4.address_bits =4; } void adf_init_tx_mode(unsignedint data_rate, uint8_t mod_index,unsignedlong freq) { /* Calculate the RX clocks */ tx_conf.desired.data_rate = data_rate; tx_conf.desired.mod_index = mod_index; tx_conf.desired.freq = freq; adf_find_clocks(&tx_conf); /* Setup default R3 values */ tx_conf.r3.seq_clk_divide =round(sys_conf.adf_xtal /100000.0); tx_conf.r3.agc_clk_divide =round((tx_conf.r3.seq_clk_divide * sys_conf.adf_xtal)/10000.0); tx_conf.r3.bbos_clk_divide =2;// 16 tx_conf.r3.address_bits =3; /* write R0, turn on PLL */ double n =(freq /(sys_conf.adf_xtal *0.5)); TIEU LUAN MOI download : skknchat@gmail.com (LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau (LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau(LUAN.van.THAC.si).xay.dung.he.thong.thu.phat.bang.hep.dai.tan.UHF.co.kha.nang.thay.doi.tham.so.thu.phat.va.cac.dang.dieu.che.so.khac.nhau 75 unsignedlong n_int = floor(n); unsignedlong n_frac = round((n - floor(n))*32768); tx_conf.r0.rx_on =0; tx_conf.r0.uart_mode =1; tx_conf.r0.muxout =2; tx_conf.r0.int_n = n_int; tx_conf.r0.frac_n = n_frac; tx_conf.r0.address_bits =0; /* Set the calcualted frequency deviation */ tx_conf.r2.tx_frequency_deviation = tx_conf.real.freq_dev; /* Set PA and modulation type */ tx_conf.r2.power_amplifier = (WARNING NON LINEAR) tx_conf.r2.pa_bias =3;// = tx_conf.r2.pa_ramp =7;// = tx_conf.r2.pa_enable =1;// tx_conf.r2.modulation_scheme tx_conf.r2.address_bits =2; conf.pa_setting;// = OFF, 63 = MAX 5uA, = 7uA, = 9uA, = 11 uA OFF, = LOWEST, = HIGHEST = OFF, = ON =1;// = FSK, = GFSK, = RCFSK /* Ensure rewrite of PA register */ adf_pa_state = ADF_PA_OFF; } void adf_afc_on(unsignedchar range,unsignedchar ki,unsignedchar kp) { /* write R10, turn AFC on */ sys_conf.r10.afc_en =1; sys_conf.r10.afc_scaling_factor =524;/* (2^24 * 500 / XTAL_FREQ) */ sys_conf.r10.ki = ki; sys_conf.r10.kp =kp; sys_conf.r10.afc_range = range; sys_conf.r10.address_bits =10; adf_write_reg(&sys_conf.r10_reg); } void adf_afc_off(void) { sys_conf.r10.afc_en =0; adf_write_reg(&sys_conf.r10_reg); } void adf_set_tx_power(char pasetting) { tx_conf.r2.power_amplifier = pasetting; adf_write_reg(&tx_conf.r2_reg); } void adf_set_rx_sync_word(unsignedlong word,unsignedchar len,unsignedchar error_tolerance) { adf_reg_t register_value; /* write R11, configure sync word detect */ adf_current_syncword = word; register_value.whole_reg =11; register_value.whole_reg |= word

Ngày đăng: 17/12/2023, 02:16

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

TÀI LIỆU LIÊN QUAN

w