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

Tìm hiểu công nghệ bluetooth và lập trình mobile, xây dựng ứng dụng minh họa

68 746 0
Tài liệu đã được kiểm tra trùng lặp

Đ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

Tiêu đề Tìm hiểu công nghệ bluetooth và lập trình mobile, xây dựng ứng dụng minh họa
Tác giả Đinh Hữu Quyết
Người hướng dẫn Thạc Sỹ Nguyễn Cụng Nhật
Trường học Đại Học Vinh
Chuyên ngành Công Nghệ Thông Tin
Thể loại Khóa luận tốt nghiệp
Năm xuất bản 2010
Thành phố Vinh
Định dạng
Số trang 68
Dung lượng 1,88 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Kỹ thuật không dây phục vụ rất nhiều nhu cầu khác nhau của conngười, từ nhu cầu làm việc, học tập đến các nhu cầu giải trí như chơi game,xem phim, nghe nhạc, v.v… Với các nhu cầu đa dạng

Trang 1

trờng đại học vinh

khoa công nghệ thông tin

- -ĐINH HỮU QUYẾT

Tìm hiểu về công cụ bluetooth và lập

trình mobile, xây dựng

ứng dụng minh hKhóa luận tốt nghiệp đại học

CỬ NHÂN CễNG NGHỆ THễNG TIN

Vinh -5/ 2010

LỜI CẢM ƠN

Em xin chõn thành cảm ơn ban chủ nhiệm khoa Cụng nghệ thụng tin, cỏcthầy cụ giỏo, gia đỡnh và bạn bố đó động viờn giỳp đỡ em rất nhiều trong quỏtrỡnh hoàn thành khúa luận này

Trang 2

Đặc biệt em xin bày tỏ lòng cảm ơn sâu sắc tới thầy giáo hướng dẫn

Thạc sỹ Nguyễn Công Nhật về sự chỉ dẫn tận tình và tận tâm hướng dẫn em

từ những ý tưởng ban đầu cho đến lúc hoàn thành khóa luận này

Cho em bày tỏ lòng biết ơn tới gia đình thân yêu, những người bạn thân

đã luôn quan tâm, tin tưởng, động viên, giúp đỡ em trong thời gian qua Mặc dù đã rất cố gắng nhưng chắc chắn luận văn không khỏi có nhữngthiếu sót Em rất mong đón nhận sự đánh giá, bổ sung và những lời chỉ bảocủa các thầy cô giúp em có thể tiếp tục nghiên cứu kĩ hơn về lĩnh vực này

Em xin chân thành cảm ơn!

Vinh, tháng 5/2010

Sinh viên

Đinh Hữu Quyết

Trang 3

LỜI MỞ ĐẦU

1 Lý do chọn đề tài

Ngày nay, xã hội phát triển mạnh mẽ, kỹ thuật ngày càng hiện đại nênnhu cầu về trao đổi thông tin, giải trí, nhu cầu về điều khiển thiết bị từ xa,…ngày càng cao Và những hệ thống dây cáp phức tạp lại không thể đáp ứng tốtnhu cầu này, nhất là ở những khu vực chật hẹp, những nơi xa xôi, trên cácphương tiện vận chuyển,… Vì thế công nghệ không dây đã ra đời và đangphát triển mạnh mẽ, tạo rất nhiều thuận lợi cho con người trong đời sống hằngngày Kỹ thuật không dây phục vụ rất nhiều nhu cầu khác nhau của conngười, từ nhu cầu làm việc, học tập đến các nhu cầu giải trí như chơi game,xem phim, nghe nhạc, v.v… Với các nhu cầu đa dạng và phức tạp đó, kỹthuật không dây đã đưa ra nhiều chuẩn với các đặc điểm kỹ thuật khác nhau

để có thể phù hợp với từng nhu cầu, mục đích và khả năng của người sử dụngnhư IrDA, WLAN với chuẩn 802.11, ZigBee, OpenAir, UWB, Bluetooth,…Mỗi chuẩn kỹ thuật đều có những ưu, khuyết điểm riêng của nó, vàBluetooth đang dần nổi lên là kỹ thuật không dây tầm ngắn có nhiều ưu điểm,rất thuận lợi cho những thiết bị di động Với một tổ chức nghiên cứu đôngđảo, hiện đại và số lượng nhà sản xuất hỗ trợ kỹ thuật Bluetooth vào sảnphẩm của họ ngày càng tăng, Bluetooth đang dần lan rộng ra khắp thế giới,xâm nhập vào mọi lĩnh vực của thiết bị điện tử và trong tương lai mọi thiết bịđiện tử đều có thể được hỗ trợ kỹ thuật này

Xuất phát từ các lý do trên, em chọn đề tài “Tìm hiểu công nghệ

Bluetooth và lập trình Mobile, xây dựng ứng dụng minh hoạ” Trong đề

tài này, em tìm hiểu về kỹ thuật không dây Bluetooth và xây dựng một chương trình truyền file qua Bluetooth giữa các điện thoại sử dụng hệ điều

hành Windows Mobile 6

Trang 4

2 Mục đích nghiên cứu

Mục tiêu của đề tài là tìm hiểu công nghệ Bluetooth và xây dựng mộtứng dụng thông qua Bluetooth của các điện thoại cài đặt hệ điều hànhWindows Mobile 6 và máy tính để minh họa hoạt động của kỹ thuật này …Các nội dung chính của đề tài bao gồm:

• Tìm hiểu về hoạt động của kỹ thuật Bluetooth

• Tìm hiểu về hệ điều hành Windows Mobile 6

• Xây dựng ứng dụng chạy trên điện thoại di động truyền file giữa haiđiện thoại di động với nhau, và giữa điện thoại di động và máy tính

3 Bố cục luận văn

Luận văn gồm 03 phần:

Chương 1: Tổng quan về Windows Mobile và lập trình với Pocket PC –Giới thiệu về hệ điều hành Windows Mobile và các công cụ sử dụng để lậptrình với Pocket PC

Chương 2: Giới thiệu về công nghệ Bluetooth

Chương 3: Cài đặt thiết bị ảo và xây dựng ứng dụng minh hoạ

4 Các kết quả đạt được

Đề tài “Tìm hiểu về công nghệ Bluetooth, lập trình Mobile và xây

dựng ứng dụng minh hoạ” xuất phát từ thực tế phát triển nhanh chóng của

công nghệ Bluetooth và ứng dụng ngày càng rộng rãi của công nghệ này Mặc dù cố gắng tìm hiểu thêm tài liệu sách vở và trên Internet nhưng dohạn chế về mặt thời gian nên khoá luận đã hoàn thành ở những mức độ sau:+ Tìm hiểu về Bluetooth

+ Tìm hiểu về C# và viết ứng dụng minh hoạ

Trang 5

CHƯƠNG I: TỔNG QUAN VỀ WINDOWS MOBILE VÀ

để bàn (desktop) của Windows, tính năng thông minh và thẩm mỹ Ban đầuxuất hiện như là hệ điều hành Pocket PC 2000, Windows Mobile đã được cậpnhật nhiều lần, với phiên bản hiện tại là Windows Mobile 6.5, phiên bảnWindows Mobile 7 đã được Microsoft giới thiệu đầu năm nay

Các Pocket PC dự kiến ban đầu là nền tảng cho hệ điều hành WindowsMobile Các thiết bị này bao gồm cả hai thiết bị Pocket PC độc lập mà không

có khả năng như điện thoại di động, và những thiết bị có tính năng như điệnthoại di động Cái tên mới nhất của Windows Mobile dự định để sử dụng trênPocket PC chính thức "Windows Mobile 6 Professional" cho các thiết bị vớicác khả năng như điện thoại di động và "Windows Mobile 6 Classic" cho cácthiết bị mà không có khả năng điện thoại di động, các thiết bị mà không cómột màn hình cảm ứng được gọi là các thiết bị tiêu chuẩn Windows Mobile

2 Lập trình với PPC

So với các nền tảng khác như Palm, Symbian, Linux - PPC được coi là

dễ lập trình nhất, do chạy Windows nên cách lập trình cũng tương tự so vớiWindows Desktop cho PC Nếu đã từng lập trình cho PC, nhất là nềntảng NET thì càng dễ, gần như không có khác biệt là mấy

Trang 6

Hiện nay tùy thuộc vào công nghệ sử dụng, các ứng dụng phát triển choPPC được chia thành hai dòng chính như sau:

- Native Application: Các ứng dụng được viết trên các ngôn ngữ lậptrình không phải NET, như C, C++ và sử dụng các API của Windows Ưuđiểm của các ứng dụng loại này là chương trình nhỏ gọn, khi cài đặt khôngcần thêm các thư viện đi kèm, có khi chỉ cần copy nguyên file EXE là chạy.Tuy vậy, các ứng dụng kiểu này khó viết hơn, do sử dụng các ngôn ngữ lậptrình bậc thấp hơn (C, C++) Chỉ các ứng dụng thực sự cần sự nhỏ gọn, nhưcác driver, các trình thường trú như keyboard, system… mới cần phát triểntheo kiểu này

- NET Application: Như một sự cạnh tranh với sự phát triển ồ ạt và rấtthành công của ngôn ngữ lập trình Java, từ năm 2000, Microsoft đã bắt đầuphát triển nền tảng NET cho các ứng dụng, với mục tiêu dùng một nền tảngngôn ngữ lập trình cho nhiều nền tảng phần cứng, phần mềm khác nhau Đếnnay NET vô cùng phát triển và tỏ rõ được thế mạnh của mình Tất cả các hệđiều hành Windows XP, Windows 2000, 2003 server đến Windows Mobile,Windows for Smart Phone đều hỗ trợ rất tốt NET Nếu bạn đã từng lậptrình NET cho Windows XP rồi thì chuyển sang Windows Mobile chỉ cầntìm hiểu thêm một số thư viện làm việc với những đặc thù cho Mobile là đã

có thể phát triển các ứng dụng

- Ngoài ra, còn có một số nền tảng và ngôn ngữ lập trình của các hãngkhác nữa nhưng không phổ biến

3 Các công cụ sử dụng

Để lập trình NET, ta cần sử dụng những công cụ sau đây:

- Bộ phần mềm Visual Studio.NET – phiên bản 2003, 2005 hoặc 2008

- Các thư viện nâng cao có thể download trên Internet

- Visual Studio.NET 2003 hỗ trợ NET Framework 1.1

- Visual Studio.NET 2005 hỗ trợ NET Framework 2.0

Trang 7

- Visual Studio.NET 2008 hỗ trợ NET Compact Framework 2.0 sp2 và3.5.

3.1 Thư viện lập trình:

Với lập trình Windows Mobile, ở đây ta cần phải có là bộ WindowsMobile SDK Tùy vào mỗi phiên bản của hệ điều hành Windows Mobile, màMicrosoft cung cấp cho ta một bộ SDK tương ứng

Một bộ SDK thường chứa:

- Tài liệu và các ví dụ cụ thể

- Các hàm API (Application Programming Interface)

- Các công cụ cho trình soạn thảo (cụ thể là Visual Studio) và biên dịch

Đối với Visual Studio 2008, thì Microsoft đã tích hợp bộ WindowsMobile 5 SDK có sẵn để có thể lập trình ứng dụng cho các thiết bị chạyWindows Mobile 5 Sau này, chúng ta sử dụng Windows Mobile 6, do đóMicrosoft cũng đã cung cấp 1 bộ Windows Mobile 6 SDK Trong WindowsMobile 6 SDK bao gồm:

Windows Mobile 6 SDK

Standard

Cung cấp thư viện, Emulator để phát triểnứng dụng cho các hệ máy SmartPhone Windows Mobile 6 SDK

Professional

Cung cấp thư viện, Emulator để phát triểnứng dụng cho các hệ Pocket PC

Ngoài ra, trong bộ Windows Mobile 6 SDK còn tích hợp một số công cụ

để phát triển ứng dụng tùy thuộc vào từng trường hợp cụ thể

Trang 8

FakeGPS Giả lập dữ liệu GPS thông qua các hàm API Local Server Framework

(aka FakeServer)

Giả lập tương tự như một server Khi đó ta cóthể kiểm tra tính kết nối của một ứng dụng Cellular Emulator Giả lập song Radio thật như một thiết bị di

động với một đầy đủ tính năng như GPRS,GSM, …

3.2 Công cụ soạn thảo code:

Ở đây, chúng ta sử dụng Visual Studio để lập trình cho thiết bị

Visual Studio cung cấp đầy đủ tính năng, sự thân thiện để ta có thể tiếpcận lập trình Windows Mobile một cách nhanh nhất Nó hỗ trợ đầy đủ cácchức năng, các loại ứng dụng phát triển, hỗ trợ ngôn ngữ C#, Visual Basic,cũng như tạo các Setup Project để triển khai ứng dụng một cách dễ dàng

* Các nền tảng được hỗ trợ trong Visual Studio:

- Windows Mobile 2003 SE Pocket PC

- Windows Mobile 2005 Pocket PC

- Windows Mobile 2005 Smartphone

- Windows Mobile 6 Classic

- Windows Mobile 6 Standard

- Windows Mobile 6 Professioncal

Trang 9

* Trình soạn thảo:

Hình 1-1: Giao diện soạn thảo

Hình 1-2: Các công cụ hỗ trợ

Trang 10

3.3 Thiết bị để kiểm tra ứng dụng:

3.3.1 Lợi ích của việc sử dụng Emulator:

+ Không tốn chi phí cho việc sắm thiết bị để kiểm tra ứng dụng Điềunày đặc biệt quan trọng vì các thiết bị di động thường có cấu hình, khuôndạng (form) và các nhà sản xuất khác nhau

+ Tất cả mọi lập trình viên đều có thể cài đặt lại thiết bị, có điều kiện đểthử nghiệm nhiều hệ điều hành khác nhau cho việc kiểm tra chương trình + Phục vụ việc triển khai ứng dụng nhanh hơn nhờ tính năng lưu giữtrạng thái

3.3.2 Visual Studio Device Emulator

Khi phát triển một ứng dụng, thì vấn đề là chúng ta phải kiểm tra đượcứng dụng đó Windows Mobile SDK cung cấp 1 bộ công cụ Emulator để giảlập thiết bị thật, nó hỗ trợ đầy đủ tính năng của 1 thiết bị thật

Là công cụ giả lập giúp bạn chạy thử chương trình trong trường hợp bạnkhông có chiếc PPC hay SmartPhone thật nào, hoặc bạn muốn kiểm trachương trình trên nhiều loại máy khác nhau như WM 2003,WM2005…Emulator đi kèm với Windows Mobile 5.0 SDK nên chỉ cần cài đặt SDK làđủ

Tính năng hệ điều hành đầy đủ như thiết bị thật, cả Windows CE vàWindows Mobile

Tính năng đầy đủ của thiết bị, hỗ trợ chipset ARM Hỗ trợ phần cứng giảlập như cổng COM, Network Card

* Trình quản lý thiết bị ảo

+ Điều khiển thiết bị ảo:

- Start

- Shutdown

- Reset

Trang 11

Hình 1-3: Khởi động thiết bị ảo

+ Quản lý Image:

- Save State, filesystem và Memory

- Có thể lưu lại tình trạng cho mỗi platform

- Khôi phục trạng thái image hệ điều hành

+ Kết nối thiết bị ảo:

Trang 12

3.4 ActiveSync:

+ Là công cụ cho phép kết nối giữa thiết bị Windows Mobile và máytính

Hình 1-4: Khởi động chương trình ActiveSync

+ Để kết nối Emulator với ActiveSync:

- Sử dụng Device Emulator Manager với tùy chọn Cradle

- Cài đặt kết nối trong ActiveSync phải cho phép kết nối DMA

Trang 13

Hình 1-5: NET Framework

Hình 1-6: NET Compact Framework

Ứng dụng chúng ta viết sử dụng NET Compact Framework được gọi làManaged Code, nghĩa là code của ứng dụng được quản lý bởi bộ thư việndùng chung CLR (Common Language Runtime) Việc quản lý tài nguyên bộnhớ, quản lý luồng và quản lý thực thi code đều được CLR xử lý

3.5.1 Microsoft Visual Studio NET 2005:

Trang 14

Là công cụ lập trình chính cho máy tính để bàn cũng như PPC chạy hệđiều hành Windows Bạn cũng có thể cài Microsoft Visual Studio NET 2003tuy nên cài phiên bản mới nhất Microsoft Visual Studio NET 2008 vì nó hỗtrợ nhiều tính năng hơn so với phiên bản cũ Bạn có thể mua đĩa cài ở các củahàng bán đĩa chương trình.

3.5.2 Windows Mobile 6 Professional SDK :

Chứa nhiều công cụ bổ sung để lập trình cho thiết bị di động nhưEmulator (Giả lập), CABWIZ (Đóng gói) , Sample Source code, và tài liệulập trình khác

Bạn có thể download miễn phí tại các địa chỉ sau:

+ http://32feet.net/ thư viện lập trình Bluetooth bổ sung cho CF

+ http://www.opennetcf.org/ thư viện bổ sung lập trình NET CF

+ http://codeproject.com/netcf/ Nhiều ví dụ bổ ích

+ http://blogs.msdn.com/windowsmobile/ Những kỹ thuật nâng cao+ http://forum.xda-developers.com/index.php Lập trình hệ thống PPC+ http://dotnet.chungta.com/ Cộng đồng NET Việt Nam

4 Ngôn ngữ lập trình C#

4.1 Giới thiệu về C#

C# là một ngôn ngữ rất đơn giản, với khoảng 80 từ khóa và hơn 10 kiểu

dữ liệu dựng sẵn, nhưng C# có tính diễn đạt cao C# hỗ trợ lập trình có cấutrúc, hướng đối tượng, hướng thành phần (component oriented)

Trang 15

Trọng tâm của ngôn ngữ hướng đối tượng là lớp Lớp định nghĩa kiểu dữliệu mới, cho phép mở rộng ngôn ngữ theo hướng cần giải quyết C# cónhững từ khóa dành cho việc khai báo lớp, phương thức, thuộc tính (property)mới C# hỗ trợ đầy đủ khái niệm trụ cột trong lập trình hướng đối tượng: đónggói, thừa kế, đa hình.

Định nghĩa lớp trong C# không đòi hỏi tách rời tập tin tiêu đề với tập tincài đặt như C++ Hơn thế, C# hỗ trợ kiểu sưu liệu mới, cho phép sưu liệu trựctiếp trong tập tin mã nguồn Đến khi biên dịch sẽ tạo tập tin sưu liệu theo địnhdạng XML

C# hỗ trợ khái niệm giao diện, interfaces (tương tự Java) Một lớp chỉ cóthể kế thừa duy nhất một lớp cha nhưng có thể cài đặt nhiều giao diện

C# có kiểu cấu trúc, struct (không giống C++) Cấu trúc là kiểu hạng nhẹ

và bị giới hạn Cấu trúc không thể thừa kế lớp hay được kế thừa nhưng có thểcài đặt giao diện

C# cung cấp những đặc trưng lập trình hướng thành phần như property,

sự kiện và dẫn hướng khai báo (được gọi attribute) Lập trình hướngcomponent được hỗ trợ bởi CLR thông qua siêu dữ liệu (metadata) Siêu dữliệu mô tả các lớp bao gồm các phương thức và thuộc tính, các thông tin bảomật…

Assembly là một tập hợp các tập tin mà theo cách nhìn của lập trình viên

là các thư viện liên kết động (dll) hay tập tin thực thi (exe) Trong NET, mộtAssembly là một đơn vị của việc tái sử dụng, xác định phiên bản, bảo mật, vàphân phối CLR cung cấp một số các lớp để thao tác với Assembly

C# cũng cho truy cập bộ nhớ dùng con trỏ kiểu C++, nhưng vùng mã đóđược xem như không an toàn CLR sẽ không thực thi việc thu dọn rác tự độngcác đối tượng được tham chiếu bởi con trỏ cho đến khi lập trình viên tự giảiphóng

Trang 16

4.2 Một số đặc điểm của C#

4.2.1 C# là ngôn ngữ đơn giản

C# loại bỏ một vài sự phức tạp và rối rắm của những ngôn ngữ như Java

và C++, bao gồm việc loại bỏ những Macro, những Template, đa kế thừa, vàlớp cơ sở ảo (virtual base class)

Chúng là những nguyên nhân gây ra sự nhầm lẫn hay dẫn đến những vấn

đề cho các người phát triển C++ Nếu chúng ta là người học ngôn ngữ nàyđầu tiên thì chắc chắn là ta sẽ không trải qua những thời gian để học nó!Nhưng khi đó ta sẽ không biết được hiệu quả của ngôn ngữ C# khi loại bỏnhững vấn đề trên

Ngôn ngữ C# đơn giản vì nó dựa trên nền tảng C và C++ Nếu chúng tathân thiện với C và C++ hoậc thậm chí là Java, chúng ta sẽ thấy C# khá giống

về diện mạo, cú pháp, biểu thức, toán tử và những chức năng khác được lấytrực tiếp từ ngôn ngữ C và C++, nhưng nó đã được cải tiến để làm cho ngônngữ đơn giản hơn Một vài trong các sự cải tiến là loại bỏ các dư thừa, hay làthêm vào những cú pháp thay đổi Ví dụ như, trong C++ có ba toán tử làmviệc với các thành viên là ::, , và -> Để biết khi nào dùng ba toán tử nàycũng phức tạp và dễ nhầm lẫn Trong C#, chúng được thay thế với một toán

tử duy nhất gọi là (dot) Đối với người mới học thì điều này và những việccải tiến khác làm bớt nhầm lẫn và đơn giản hơn

* Ghi chú: Nếu chúng ta đã sử dụng Java và tin rằng nó đơn giản, thì

chúng ta cũng sẽ tìm thấy rằng C# cũng đơn giản Hầu hết mọi người đềukhông tin rằng Java là ngôn ngữ đơn giản Tuy nhiên, C# thì dễ hơn là Java vàC++

4.2.2 C# là ngôn ngữ hiện đại

Điều gì làm cho một ngôn ngữ hiện đại? Những đặc tính như là xử lýngoại lệ, thu gom bộ nhớ tự động, những kiểu dữ liệu mở rộng, và bảo mật

Trang 17

mã nguồn là những đặc tính được mong đợi trong một ngôn ngữ hiện đại C#chứa tất cả những đặc tính trên Nếu là người mới học lập trình có thể chúng

ta sẽ cảm thấy những đặc tính trên phức tạp và khó hiểu

* Ghi chú: Con trỏ được tích hợp vào ngôn ngữ C++ Chúng cũng là

nguyên nhân gây ra những rắc rối của ngôn ngữ này C# loại bỏ những phứctạp và rắc rối phát sinh bởi con trỏ

Trong C#, bộ thu gom bộ nhớ tự động và kiểu dữ liệu an toàn được tíchhợp vào ngôn ngữ, sẽ loại bỏ những vấn đề rắc rối của C++

4.2.3 C# là ngôn ngữ hướng đối tượng

Những đặc điểm chính của ngôn ngữ hướng đối tượng (Object-orientedlanguage) là sự đóng gói (encapsulation), sự kế thừa (inheritance), và đa hình(polymorphism) C# hỗ trợ tất cả những đặc tính trên Phần hướng đối tượngcủa C# sẽ được trình bày chi tiết trong một chương riêng ở phần sau

4.2.4 C# là ngôn ngữ mạnh mẽ và cũng mềm dẻo

Như đã đề cập trước, với ngôn ngữ C# chúng ta chỉ bị giới hạn ở chínhbởi bản thân hay là trí tưởng tượng của chúng ta Ngôn ngữ này không đặtnhững ràng buộc lên những việc có thể làm C# được sử dụng cho nhiều các

dự án khác nhau như là tạo ra ứng dụng xử lý văn bản, ứng dụng đồ họa, bảntính, hay thậm chí những trình biên dịch cho các ngôn ngữ khác

4.2.5 C# là ngôn ngữ ít từ khóa

C# là ngôn ngữ sử dụng giới hạn những từ khóa Phần lớn các từ khóađược sử dụng để mô tả thông tin Chúng ta có thể nghĩ rằng một ngôn ngữ cónhiều từ khóa thì sẽ mạnh hơn Điều này không phải sự thật, ít nhất là trongtrường hợp ngôn ngữ C#, chúng ta có thể tìm thấy rằng ngôn ngữ này có thểđược sử dụng để làm bất cứ nhiệm vụ nào Bảng sau liệt kê các từ khóa củangôn ngữ C#

abstract default foreach object sizeof unsafe

as delegate Goto operator stackalloc ushort

Trang 18

base Do If Out static using

bool double implicit override string virtual

case event interface protected This while

catch explicit internal public throw

class finally Long Return typeof

const fixed namespace Sbyte Uint

continue float New Sealed ulong

Bảng 1.2: Từ khóa của ngôn ngữ C#.

4.2.6 C# là ngôn ngữ hướng module

Mã nguồn C# có thể được viết trong những phần được gọi là những lớp,những lớp này chứa các phương thức thành viên của nó Những lớp và nhữngphương thức có thể được sử dụng lại trong ứng dụng hay các chương trìnhkhác Bằng cách truyền các mẫu thông tin đến những lớp hay phương thứcchúng ta có thể tạo ra những mã nguồn dùng lại có hiệu quả

4.2.7 C# sẽ là một ngôn ngữ phổ biến

C# là một trong những ngôn ngữ lập trình mới nhất Nhưng ngôn ngữnày có một số lý do để trở thành một ngôn ngữ phổ biến Một trong những lý

do chính là Microsoft và sự cam kết của NET

Microsoft muốn ngôn ngữ C# trở nên phổ biến Mặc dù một công tykhông thể làm một sản phẩm trở nên phổ biến, nhưng nó có thể hỗ trợ Tuynhên, với C# thì khác, nó được sử dụng bởi Microsoft Nhiều sản phẩm củacông ty này đa chuyển đổi và viết lại bằng C# Bằng cách sử dụng ngôn ngữnày Microsoft đa xác nhận khả năng của C# cần thiết cho những người lậptrình

Micorosoft .NET là một lý do khác để đem đến sự thành công củaC# .NET là một sự thay đổi trong cách tạo và thực thi những ứng dụng

Trang 19

Ngoài hai lý do trên ngôn ngữ C# cũng sẽ trở nên phổ biến do những đặctính của ngôn ngữ này được đề cập trong mục trước như: đơn giản, hướng đốitượng, mạnh mẽ

4.2.8 So sánh ngôn ngữ C# và những ngôn ngữ khác

Microsoft nói rằng C# mang đến sức mạnh của ngôn ngữ C++ với sự dễdàng của ngôn ngữ Visual Basic Có thể nó không dễ như Visual Basic,nhưng với phiên bản Visual Basic NET (Version 7) thì ngang nhau Bởi vìchúng được viết lại từ một nền tảng Chúng ta có thể viết nhiều chương trìnhvới ít mã nguồn hơn nếu dùng C#

Mặc dù C# loại bỏ một vài các đặc tính của C++, nhưng bù lại nó tránhđược những lỗi mà thường gặp trong ngôn ngữ C++ Điều này có thể tiếtkiệm được hàng giờ hay thậm chí hàng ngày trong việc hoàn tất một chươngtrình

Một điều quan trọng khác với C++ là mã nguồn C# không đòi hỏi phải

có tập tin header

Tất cả mã nguồn được viết trong khai báo một lớp

.NET runtime trong C# thực hiện việc thu gom bộ nhớ tự động Do điềunày nên việc sử dụng con trỏ trong C# ít quan trọng hơn trong C++ Nhữngcon trỏ cũng có thể được sử dụng trong C#, khi đó những đoạn mã nguồn này

sẽ được đánh dấu là không an toàn (unsafe code)

C# cũng từ bỏ ý tưởng đa kế thừa như trong C++ Và sự khác nhau khác

là C# đưa thêm thuộc tính vào trong một lớp giống như trong Visual Basic

Và những thành viên của lớp được gọi duy nhất bằng toán tử “.” khác với C++ có nhiều cách gọi trong các tình huống khác nhau

Một ngôn ngữ khác rất mạnh và phổ biến là Java, giống như C++ và C#được phát triển dựa trên C Nếu chúng ta quyết định sẽ học Java sau này,chúng ta sẽ tìm được nhiều cái mà học từ C# có thể được áp dụng

Trang 20

Điểm giống nhau C# và Java là cả hai cùng biên dịch ra mã trung gian:C# biên dịch ra MSIL còn Java biên dịch ra bytecode Sau đó chúng đượcthực hiện bằng cách thông dịch hoặc biên dịch just-in-time trong từng máy ảotương ứng Tuy nhiên, trong ngôn ngữ C# nhiều hỗ trợ được đưa ra để biêndịch mã ngôn ngữ trung gian sang mã máy C# chứa nhiều kiểu dữ liệu cơ bảnhơn Java và cũng cho phép nhiều sự mở rộng với kiểu dữ liệu giá trị Ví dụ,ngôn ngữ C# hỗ trợ kiểu liệt kệ (enumerator), kiểu này được giới hạn đến mộttập hằng được định nghĩa trước, và kiểu dữ liệu cấu trúc đây là kiểu dữ liệugiá trị do người dùng định nghĩa

Tương tự như Java, C# cũng từ bỏ tính đa kế thừa trong một lớp, tuynhiên mô hình kế thừa đơn này được mở rộng bởi tính đa kế thừa nhiều giaodiện

Trang 21

CHƯƠNG II: TÌM HIỂU VỀ CÔNG NGHỆ BLUETOOTH

I GIỚI THIỆU VỀ BLUETOOTH

1 Khái niệm Bluetooth.

Bluetooth là công nghệ không dây cho phép các thiết bị điện, điện tửgiao tiếp với nhau trong khoảng cách ngắn, bằng sóng vô tuyến qua băng tầnchung ISM (Industrial, Scientific, Medical) trong dãy tầng 2.40- 2.48 GHz.Đây là dãy băng tầng không cần đăng ký được dành riêng để dùng cho cácthiết bị không dây trong công nghiệp, khoa học, y tế

Bluetooth được thiết kế nhằm mục đích thay thế dây cable giữa máy tính

và các thiết bị truyền thông cá nhân, kết nối vô tuyến giữa các thiết bị điện tửlại với nhau một cách thuận lợi với giá thành rẻ

Khi được kích hoạt, Bluetooth có thể tự động định vị những thiết bị khác

có chung công nghệ trong vùng xung quanh và bắt đầu kết nối với chúng Nóđược định hướng sử dụng cho việc truyền dữ liệu lẫn tiếng nói

2 Lịch sử, hình thành và phát triển của Bluetooth.

2.1 Lịch sử tên Bluetooth:

Bluetooth là tên của nhà vua Đan Mạch- Harald I Bluetooth (DanishHarald Blåtand) (910-985) Harald Bluetooth đã hợp nhất Đan Mạch vàNorway Ngày nay Bluetooth là biểu tượng của sự thống nhất giữa Computer

và Telecom, giữa công nghệ máy tính và công nghệ truyền thông đa phươngtiện

2.2 Hình thành và phát triển của Bluetooth:

Lần đầu tiên hãng Ericsson đưa ra một đề án nhằm hợp nhất liên lạc giữacác loại thiết bị điện tử khác nhau mà không cần phải dùng đến các sợi cápnối cồng kềnh, phức tạp vào năm 1994 Ðây thực chất là một mạng vô tuyếnkhông dây cự ly ngắn chỉ dùng một vi mạch cỡ 9mm có thể chuyển các tín

Trang 22

hiệu sóng vô tuyến điều khiển thay thế cho các sợi dây cáp điều khiển rối rắm.Đến năm 1998, 5 công ty lớn trên thế giới gồm Ericsson, Nokia, IBM, Intel vàToshiba đã liên kết, hợp tác thiết kế và triển khai phát triển một chuẩn công

nghệ kết nối không dây mới mang tên BLUETOOTH nhằm kết nối các thiết

bị vi điện tử lại với nhau dùng sóng vô tuyến

Bluetooth hiện đang có tốc độ phát triển khá nhanh với khả năng ứngdụng ngày càng đa dạng, theo tính toán của công ty nghiên cứu thị trườngFrost & Sulivan, trong năm 2001 có 4.2 triệu sản phẩm sử dụng công nghệBluetooth được đưa ra thị trường, con số này sẽ tăng lên 1.01 tỷ vào năm2006

Những năm gần đây, Bluetooth được coi là thị trường năng động và sôinổi nhất trong lĩnh vực truyền thông Với sự ra đời của công nghệ Bluetooththì ta có thể lạc quan nói rằng, thời kỳ kết nối bằng dây hữu tuyến giữa cácthiết bị đã đến hồi kết thúc, thay vào đó là khả năng kết nối không dây thôngminh và trong suốt, điều này sẽ là hiện thực chỉ trong một tương lai gần màthôi

3 Một số đặc điểm của Bluetooth.

Tiêu thụ năng lượng thấp, cho phép ứng dụng được trong nhiều loại thiết

bị, bao gồm cả các thiết bị cầm tay và điện thoại di động

Giá thành hạ (Giá một chip Bluetooth đang giảm dần, và có thể xuốngdưới mức 5$ một đơn vị)

Khoảng cách giao tiếp cho phép :

• Khoảng cách giữa hai thiết bị đầu cuối có thể lên đến 10m ngoài trời,

Trang 23

số cao) mà các thiết bị không cần phải thấy trực tiếp nhau (light-of-sightrequirements)

Dễ dàng trong việc phát triển ứng dụng: Bluetooth kết nối một ứng dụngnày với một ứng dụng khác thông qua các chuẩn “Bluetooth profiles”, do đó

4.1 Thiết bị thông minh.

Gồm có các loại điện thoại di động, PDA, PC, cellphone, smartphone…Điện thoại di động: Sony Ericsson P800, P900, Nokia 3650, 7610, 7650…Công nghệ Bluetooth gắn sẵn trên thiết bị di động nên không cần dùng cáp

Có thể kết nối với tai nghe Bluetooth, camera kỹ thuật số hay máy tính, chophép người dùng xem tivi, chụp ảnh, quay phim, nghe MF3, FM, duyệt web

và email từ điện thoại…

4.2 Thiết bị truyền thanh.

Gồm các loại tai nghe (headset), loa và các trạm thu âm thanh…

Công ty Logitech chuyên sản xuất thiết bị ngoại vi cho máy tính PC vừagiới thiệu loại tai nghe Bluetooth di động So với các tai nghe bluetooth kháctrên thị trường, tai nghe HS02 hỗ trợ tiêu chuẩn Bluetooth phiên bản 1.2 và cóloa nghe lớn 2cm

Tiêu chuẩn Bluetooth 1.2 giảm thời gian kết nối và tiêu thụ điện năngkhi nối với thiết bị Bluetooth 1.2 khác Ngoài ra khả năng sử dụng công nghệ

Trang 24

tần số tiêu chuẩn 1.2 giúp tránh xung nhiễu từ các thiết bị tần số 2,4Ghz khácnhư mạng không dây WiFi và các điện thoại không dây.

Với hỗ trợ Bluetooth 1.2, âm thanh nghe qua tai nghe to, như trên loa.Tai nghe cung cấp tần số trả về lớn và có âm lượng tối đa lớn hơn cầnthiết để sử dụng trong trường hợp nhất định

4.3 Thiết bị truyền dữ liệu.

Gồm chuột, bàn phím, joystick, camera, bút kỹ thuật số, máy in, LANaccess point…

4.4 Các ứng dụng nhúng.

Điều khiển nguồn năng lượng trong xe hơi, các loại nhạc cụ, trong côngnghiệp, y tế…

4.5 Một số ứng dụng khác.

Do số lượng công ty tham gia vào tổ chức SIG ngày càng nhiều, vì vậy,

số lượng các loại sản phẩm được tích hợp công nghệ Bluetooth được tung rathị trường ngày càng nhiều, bao gồm cả các thiết bị dân dụng như tủ lạnh, lò

vi sóng, máy điều hòa nhiệt độ, các loại đồ chơi

II KỸ THUẬT BLUETOOTH

1 Một số khái niệm dùng trong công nghệ Bluetooth.

1.1 Master Unit :

Là thiết bị duy nhất trong 1 Piconet, Master thiết lập đồng hồ đếm xung

và kiểu bước nhảy (hopping) để đồng bộ tất cả các thiết bị trong cùng piconet

mà nó đang quản lý, thường là thiết bị đầu tiên chuyển đổi dữ liệu Mastercũng quyết định số kênh truyền thông Mỗi Piconet có một kiểu hopping duynhất

1.1 Slaver Unit :

Là tất cả các thiết bị còn lại trong piconet, một thiết bị không là Masterthì phải là Slave Tối đa 7 Slave dạng Active và 255 Slave dạng Parked(Inactive) trong 1 Piconet

Trang 25

Có 3 dạng Slave trong một Piconet:

• Active: Slave hoạt động, có khả năng trao đổi thông tin với Master và

các Slave Active khác trong Piconet Các thiết bị ở trạng thái này được phân

biệt thông qua 1 địa chỉ MAC (Media Access Control) hay AMA (Active

Member Address ) - đó là con số gồm 3 bit Nên trong 1 Piconet có tối đa 8thiết bị ở trang thái này (1 cho Master và 7 cho Slave)

• Standby: Standby là một dạng inactive, thiết bị trong trạng thái này

không trao đổi dữ liệu, sóng radio không có tác động lên, công suất giảm đếntối thiểu để tiết kiệm năng lượng, thiết bị không có khả năng dò được bất cứ

mã truy cập nào Có thể coi là những thiết bị trong nằm ngoài vùng kiểm soátcủa Master

• Parked: là một dạng inactive, chỉ 1 thiết bị trong 1 Piconet thường

xuyên được đồng bộ với Piconet, nhưng không có 1 địa chỉ MAC Chúng như

ở trạng thái "ngủ" và sẽ được Master gọi dậy bằng tín hiệu "beacon" (tín hiệubáo hiệu) Các thiết bị ở trạng thái Packed được đánh địa chỉ thông qua địachỉ PMA (Packed Member Address) Đây là con số 8 bits để phân biệt cácpacked Slave với nhau và có tối đa 255 thiết bị ở trạng thái này trong 1Piconet

1.2 Piconet:

Picotnet là tập hợp các thiết bị được kết nối thông qua kỹ thuật Bluetooththeo mô hình Ad-Hoc (đây là kiểu mạng được thiết lập cho nhu cầu truyền dữliệu hiện hành và tức thời, tốc độ nhanh và kết nối sẽ tự động huỷ sau khitruyền xong) Trong 1 Piconet thì chỉ có 1 thiết bị là Master Đây thường làthiết bị đầu tiên tạo kết nối, nó có vai trò quyết định số kênh truyền thông vàthực hiện đồng bộ giữa các thành phần trong Piconet, các thiết bị còn lại làSlave Đó là các thiết bị gửi yêu cầu đến Master

Lưu ý rằng, 2 Slave muốn thực hiện liên lạc phải thông qua Master bởichúng không bao giờ kết nối trực tiếp được với nhau, Master sẽ đồng bộ các

Trang 26

Slave về thời gian và tần số Trong 1 Piconet có tối đa 7 Slave đang hoạt độngtại 1 thời điểm.

- Minh hoạ một Piconet:

Hình 3-1: Một Piconet trong thực tế

Trang 27

Các mô hình Piconet :

Piconet chỉ có 1 Slave :

Hình 3-2: Piconet gồm 1 Slave.

Piconet gồm nhiều Slave :

Hình 3-3 Piconet gồm nhiều Slave

Trang 28

hơn, bởi vì trong 1 piconet thì Clock và kiểu Hopping đã được đồng bộ nhausẵn.

Ví dụ một Scatternet :

Hình 3-4: Một Scatternet gồm 2 Piconet

1.4 Trạng thái của thiết bị Bluetooth:

Có 4 trạng thái chính của 1 thiết bị Bluetooth trong 1 piconet:

- Inquiring device (inquiry mode): thiết bị đang phát tín hiệu tìm thiết bị

Bluetooth khác

- Inquiry scanning device (inquiry scan mode): thiết bị nhận tín hiệu

inquiry của thiết bị đang thực hiện inquiring và trả lời

- Paging device (page mode): thiết bị phát tín hiệu yêu cầu kết nối với

thiết bị đã inquiry từ trước

- Page scanning device (page scan mode): thiết bị nhận yêu cầu kết nối

từ paging device và trả lời

1.5 Các chế độ kết nối:

- Active mode: trong chế độ này, thiết bị Bluetooth tham gia vào hoạt

động của mạng Thiết bị master sẽ điều phối lưu lượng và đồng bộ hóa chocác thiết bị slave

- Sniff mode: là 1 chế độ tiết kiệm năng lượng của thiết bị đang ở trạng

thái active Ở Sniff mode, thiết bị slave lắng nghe tín hiệu từ mạng với tần sốgiảm hay nói cách khác là giảm công suất Tần số này phụ thuộc vào tham số

Trang 29

của ứng dụng Đây là chế độ ít tiết kiệm năng lượng nhất trong 3 chế độ tiếtkiệm năng lượng.

- Hold mode: là 1 chế độ tiết kiệm năng lượng của thiết bị đang ở trạng

thái active Master có thể đặt chế độ Hold mode cho slave của mình Các thiết

bị có thể trao đổi dữ liệu ngay lập tức ngay khi thoát khỏi chế độ Hold mode.Đây là chế độ tiết kiệm năng lượng trung bình trong 3 chế độ tiết kiệm nănglượng

- Park mode: là chế độ tiết kiệm năng lượng của thiết bị vẫn còn trong

mạng nhưng không tham gia vào quá trình trao đổi dữ liệu (inactive) Thiết bị

ở chế độ Park mode bỏ địa chỉ MAC, chỉ lắng nghe tín hiệu đồng bộ hóa vàthông điệp broadcast của Master Đây là chế độ tiết kiệm năng lượng nhấttrong 3 chế độ tiết kiệm năng lượng

1.6 Phối hợp đa truy cập:

- Việc lựa chọn sự phối hợp đa truy cập cho một hệ thống vô tuyến hoc được điều khiển bởi những luật lệ của dãy tầng ISM và thiếu sự phối hợp(lack of coordination)

ad Đa truy cập phân chia theo tần số (FDMA) đã thu hút những hệ thống

ad hoc do kênh trực giao chỉ trả lời đúng tần số của máy tạo dao động tươngứng trên các băng tần khác nhau Phối hợp với việc phân chia kênh truyềnmột cách thích ứng và năng động thì việc nhiễu có thể tránh khỏi Đáng tiếcFDMA cơ bản lại không đáp ứng hết nhu cầu lan rộng có trong dãy ISM

- Đa truy cập phân chia theo thời gian (TDMA) đòi hỏi sự đồng bộ vềthời gian vô cùng khắc khe ở kênh trực giao Đối với nhiều liên kết ad hocđược sắp xếp ở một chỗ, việc duy trì sự tham chiếu khung thời gian trở nênkhá cồng kềnh

- Đa truy cập phân chia theo mã (CDMA) tỏ ra là đặc tính tốt nhất cho hệthống vô tuyến ad hoc khi nó quy định sự phân bổ và đề cập đến những hệthống rời rạc

Trang 30

- Direct sequence (DS)-CDMA không thu hút bằng vì vấn đề gần xa, nóđòi hỏi kiểm soát năng lượng lẫn nhau hoặc tăng thêm xử lý thừa Thêm vào

đó, như TDMA, kênh trực giao DS-CDMA cũng quy định việc tham chiếukhung thời gian Cuối cùng, đối với những user cao cấp thì những loại chipkhá đắt đã được dùng đến nhưng không thu hút lắm vì băng thông rộng (tránhnhiễu) và sự tiêu thụ hiện tại ngày càng tăng

- Nhảy tần số (FH)-CDMA kết hợp một số những đặc tính để trở thànhchọn lựa tốt nhất cho hệ thống vô tuyến ad hoc Trung bình một tín hiệu cóthể trải ra trên một dãy tần số lớn, nhưng ngay lúc đó chỉ có một dải băngthông nhỏ được sử dụng, tránh được hầu hết khả năng nhiễu trong dãy ISM.Bước nhảy của sóng mang là trực giao, và việc nhiễu trên những bước sóng

kế nhau có thể bị ngăn chặn bởi bộ lọc Việc phối hợp những bước sóng cóthể sẽ không trực giao (dù sao việc phối hợp lẫn nhau giữa các bước sóngkhông được cho phép theo luật FCC), nhưng băng thông hẹp và việc nhiễukhi người dùng chung (co-user) chỉ bị xem như là gián đoạn ngắn trong việctruyền tin, một việc có thể được khắc phục bằng giải pháp dùng những nghithức ở tầng cao hơn

- Bluetooth dựa vào kỹ thuật FH-CDMA- các packet được truyền trênnhững tần số khác nhau Trong dãy tầng ISM 2.45 GHz, định nghĩa một bộ 79bước nhảy, mỗi bước nhảy cách nhau 1MHz Việc truyền nhận sử dụng cáckhe thời gian Chiều dài 1 khe thời gian thông thường là 625μs Ms Một số lớnnhững cách phối hợp bước nhảy được tạo ra ngẫu nhiên nhưng chỉ cách phốihợp đặc biệt được định nghĩa bởi một unit gọi là master mới kiểm soát kênhnhảy tần số Một đồng hồ của master unit cũng định nghĩa một chu kỳ bướcnhảy Tất cả những unit khác đều gọi là slave, chúng dùng sự đồng nhất củamaster để chọn bước nhảy giống nhau và cộng thêm khoảng thời gian giánđoạn vào đồng hồ tương ứng của chúng để đồng bộ hoá việc nhảy tần số.Trong lĩnh vực thời gian, các kênh được chia thành những slot Một slot

Trang 31

tương ứng với một khoảng thời gian tối thiểu là 625 μs Ms Để thực hiện đơngiản, truyền tin song công được thực hiện bằng cách áp dụng timedivisionduplex (TDD) Điều này có nghĩa là một unit sẽ lần lượt phát và nhận Chiacắt việc phát và nhận thực sự ngăn chặn được nhiễu xuyên âm giữa quá trìnhphát và nhận trong máy thu phát vô tuyến Từ khi việc phát và nhận đặt ởnhững time slot khác nhau thì chúng cũng được đặt ở những bước nhảy khácnhau.

2 Kĩ thuật trải phổ nhảy tần trong công nghệ Bluetooth.

2.1 Khái niệm trải phổ trong công nghệ không dây :

- Trong truyền thông bằng sóng radio cổ điển, người ta chỉ dùng một tần

số để truyền dữ liệu, nhưng khả năng mất dữ liệu là rất lớn do tần số này cóthể bị nhiễu, mặt khác tốc độ truyền sẽ không cao

- Truyền thông trải phổ là kỹ thuật truyền tín hiệu sử dụng nhiều tần sốcùng 1 lúc (DSSS - Direct Sequence Spread Spectrum) hoặc luân phiên(FHSS - Frequency Hopping Spread Spectrum) để tăng khả năng chốngnhiễu, bảo mật và tốc độ truyền dữ liệu

- Trải phổ nhảy tần số là kỹ thuật phân chia giải băng tần thành một tậphợp các kênh hẹp và thực hiện việc truyền tín hiệu trên các kênh đó bằng việcnhảy tuần tự qua các kênh theo một thứ tự nào đó

2.2 Kĩ thuật nhảy tần số trong công nghệ Bluetooth :

- Việc truyền dữ liệu trong Bluetooth được thực hiện bằng sử dụng kỹthuật nhảy tần số, có nghĩa là các packet được truyền trên những tần số khácnhau Giải băng tần ISM 2.4Ghz được chia thành 79 kênh, với tốc độ nhảy là

1600 lần trong một giây, điều đó có thể tránh được nhiễu tốt và chiều dài củacác packet ngắn lại, tăng tốc độ truyền thông

Trang 32

Hình 3-7 Các Packet truyền trên các tần số khác nhau

Hình 3-8: Các Packet truyền trên khe thời gian.

- Việc truyền nhận sử dụng các khe thời gian Chiều dài 1 khe thời gianthông thường là 625μs Ms Một packet thường nằm trong 1 khe đơn, nhưng cũng

có thể mở rộng ra 3 hay 5 khe Với các packet đa khe, yêu cầu tần số phảikhông đổi cho đến khi toàn bộ packet gửi xong

- Sử dụng packet đa khe, tốc độ truyền dữ liệu cao hơn nhờ phần headercủa mỗi packet chỉ đòi hỏi 1 lần 220μs Ms (là thời gian chuyển đổi sau mỗipacket) Có thể hiểu ngắn gọn là thời gian truyền 3 packets đơn khe sẽ lớnhơn thời gian truyền 1 packet 3-khe Bù lại, trong môi trường có nhiều tínhiệu truyền, các packet dài chiếm nhiều timeslot dễ bị nhiễu hơn, do đó dễ bịmất hơn

Trang 33

- Mỗi packet chứa 3 phần :Access Code (Mã truy cập), Header, Payload.

Hình 3-9: Cấu trúc gói tin Bluetooth

- Kích thước của Access Code và Header là cố định

* Access code: Gồm 72 bits, dùng trong việc đồng bộ dữ liệu, định danh,

báo hiệu

* Header:

Hình 3-10: Cấu tạo một packet.

- Trong Header có 54 bits, trong đó:

+ 3 bits được dùng trong việc định địa chỉ, do đó có tối đa 7 Activeslave

+ 4 bits tiếp theo cho biết loại packet (một số không dùng đến)

+ 1 bit điều khiển luồng

+ 1-bit ARQ : cho biết packet là Broadcast không có ACK

+ 1-bit Sequencing : lọc bỏ những packet trùng do truyền lại

+ 8 bits HEC : kiểm tra tính toàn vẹn của header

Tổng cộng có 18 bits, các bit đó được mã hóa với 1/3 FEC (ForwardError Correction) để có được 54 bit

Trang 34

* PayLoad : phần chứa dữ liệu truyền đi, có thể thay đổi từ 0 tới 2744

bit/packet Payload có thể là dữ liệu Voice hoặc data

3 Cách thức hoạt động của Bluetooth.

3.1 Cơ chế truyền và sửa lỗi :

- Kỹ thuật Bluetooth dùng kỹ thuật nhảy tần số trong các timeslot (TS),được thiết kế để làm việc trong môi trường nhiễu tần số radio, Bluetooth dùngchiến lược nhảy tần để tạo nên sức mạnh liên kết truyền thông và truyềnthông thông minh Cứ mỗi lần gửi hay nhận một packet xong, Bluetooth lạinhảy sang một tần số mới, như thế sẽ tránh được nhiễu từ các tín hiệu khác

- So sánh với các hệ thống khác làm việc trong cùng băng tần, sóng radiocủa Bluetooth nhảy tần nhanh và dùng packet ngắn hơn Vì nhảy nhanh vàpacket ngắn sẽ làm giảm va chạm với các phương tiện gây nhiễu khác trongkhí quyển

- Có 3 phương pháp được sử dụng trong việc kiểm tra tính đúng đắn của

dữ liệu truyền đi:

Forwad Error Corrrection: thêm 1 số bit kiểm tra vào phần Header hayPayload của packet

Automatic Repeat Request: dữ liệu sẽ được truyền lại cho tới khi bênnhận gửi thông báo là đã nhận đúng

Cyclic Redundancy Check: mã CRC thêm vào các packet để kiểm chứngliệu Payload có đúng không

- Bluetooth dùng kỹ thuật sửa lỗi tiến FEC (Forward Error Correction)

để sửa sai do nhiễu tự nhiên khi truyền khoảng cách xa FEC cho phép pháthiện lỗi, biết sửa sai và truyền đi tiếp (khác với kỹ thuật BEC-Backward ErrorControl chỉ phát hiện, không biết sửa, yêu cầu truyền lại)

- Giao thức băng tần cơ sở (Baseband) của Bluetooth là sự kết hợp giữachuyển mạch và chuyển đổi packet Các khe thời gian có thể được dành riêngcho các packet phục vụ đồng bộ Thực hiện bước nhảy tần cho mỗi packet

Ngày đăng: 18/12/2013, 22:02

HÌNH ẢNH LIÊN QUAN

Hình 1-1: Giao diện soạn thảo - Tìm hiểu công nghệ bluetooth và lập trình mobile, xây dựng ứng dụng minh họa
Hình 1 1: Giao diện soạn thảo (Trang 9)
Hình 1-2: Các công cụ hỗ trợ - Tìm hiểu công nghệ bluetooth và lập trình mobile, xây dựng ứng dụng minh họa
Hình 1 2: Các công cụ hỗ trợ (Trang 9)
Hình 1-3: Khởi động thiết bị ảo - Tìm hiểu công nghệ bluetooth và lập trình mobile, xây dựng ứng dụng minh họa
Hình 1 3: Khởi động thiết bị ảo (Trang 11)
Hình 1-4: Khởi động chương trình ActiveSync - Tìm hiểu công nghệ bluetooth và lập trình mobile, xây dựng ứng dụng minh họa
Hình 1 4: Khởi động chương trình ActiveSync (Trang 12)
Hình 1-5: .NET Framework - Tìm hiểu công nghệ bluetooth và lập trình mobile, xây dựng ứng dụng minh họa
Hình 1 5: .NET Framework (Trang 13)
Hình 1-6: .NET Compact Framework - Tìm hiểu công nghệ bluetooth và lập trình mobile, xây dựng ứng dụng minh họa
Hình 1 6: .NET Compact Framework (Trang 13)
Bảng 1.2: Từ khóa của ngôn ngữ C#. - Tìm hiểu công nghệ bluetooth và lập trình mobile, xây dựng ứng dụng minh họa
Bảng 1.2 Từ khóa của ngôn ngữ C# (Trang 18)
Hình 3-1: Một Piconet trong thực tế. - Tìm hiểu công nghệ bluetooth và lập trình mobile, xây dựng ứng dụng minh họa
Hình 3 1: Một Piconet trong thực tế (Trang 26)
Hình 3-3 Piconet gồm nhiều Slave. - Tìm hiểu công nghệ bluetooth và lập trình mobile, xây dựng ứng dụng minh họa
Hình 3 3 Piconet gồm nhiều Slave (Trang 27)
Hình 3-2: Piconet gồm 1 Slave. - Tìm hiểu công nghệ bluetooth và lập trình mobile, xây dựng ứng dụng minh họa
Hình 3 2: Piconet gồm 1 Slave (Trang 27)
Hình 3-4: Một Scatternet gồm 2 Piconet. - Tìm hiểu công nghệ bluetooth và lập trình mobile, xây dựng ứng dụng minh họa
Hình 3 4: Một Scatternet gồm 2 Piconet (Trang 28)
Hình 3-7 Các Packet truyền trên các tần số khác nhau. - Tìm hiểu công nghệ bluetooth và lập trình mobile, xây dựng ứng dụng minh họa
Hình 3 7 Các Packet truyền trên các tần số khác nhau (Trang 32)
Hình 3-9: Cấu trúc gói tin Bluetooth - Tìm hiểu công nghệ bluetooth và lập trình mobile, xây dựng ứng dụng minh họa
Hình 3 9: Cấu trúc gói tin Bluetooth (Trang 33)
Hình 3-11: Mô hình piconet - Tìm hiểu công nghệ bluetooth và lập trình mobile, xây dựng ứng dụng minh họa
Hình 3 11: Mô hình piconet (Trang 35)
Hình 2-17 Bluetooth Protocol Stack - Tìm hiểu công nghệ bluetooth và lập trình mobile, xây dựng ứng dụng minh họa
Hình 2 17 Bluetooth Protocol Stack (Trang 37)

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

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

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w