Công nghệ và khoa học ngày càng phát triển một cách nhanh chóng, mục đích cuối cùng chính là đem lại cho con người sự thuận tiện đến mức tối đa trong cuộc sống hàng ngày. Và những kết nối không dây chính là chìa khóa để giải quyết một cách hữu hiệu vấn đề này khi sử dụng các thiết bị điện tử.Trước đây khi những kết nối không dây chưa ra đời, vấn đề liên kết giữa các thiết bị điện từ chỉ thông qua những hệ thống dây dẫn phức tạp và tốn kém, cùng với đó là những bất tiện không thể tránh khỏi khi chúng ta cần giao tiếp hay kết nối với các thiết bị khác. Ngày nay khi các kết nối không dây được phát minh và triển khai một cách quy mô thì vấn đề đó đã được giải quyết. Tuy vẫn còn những hạn chế nhưng có thể nói các chuẩn giao tiếp không dây như Bluetooth hay Wifi và sóng Radio đã thay đổi cách tương tác giữa các thiết bị điện tử với nhau, giúp con người có thể làm được nhiều thứ chỉ với những thiết bị cầm tay như điện thoại hay máy tính xách tay.
Trang 1PHẦN A
Trang 2TRƯỜNG ĐH SƯ PHẠM KỸ THUẬT CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
TP HỒ CHÍ MINH ĐỘC LẬP - TỰ DO - HẠNH PHÚC
KHOA ĐIỆN-ĐIỆN TỬ
Tp HCM, ngày 23 tháng 7 năm 2013
NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP
Chuyên ngành: Kỹ thuật Điện - Điện tử Mã ngành: 01
I TÊN ĐỀ TÀI: HỆ THỐNG CỬA TỰ ĐỘNG DÙNG CÔNG NGHỆ NFC
II NHIỆM VỤ
1 Các số liệu ban đầu:
2 Nội dung thực hiện:
IV NGÀY HOÀN THÀNH NHIỆM VỤ: 23/07/2013
V HỌ VÀ TÊN CÁN BỘ HƯỚNG DẪN: Ths Nguyễn Văn Hiệp
Ths Nguyễn Văn Hiệp GVC.ThS NGUYỄN ĐÌNH PHÚ
Trang 3TRƯỜNG ĐẠI HỌC SPKT TPHCM CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
Khoa Điện - Điện Tử Độc lập - Tự do - Hạnh phúc
Bộ Môn Điện Tử Viễn Thông
Tp Hồ Chí Minh, ngày 23 tháng 07 năm 201
LỊCH TRÌNH THỰC HIỆN ĐỒ ÁN TỐT NGHIỆP
Họ tên sinh viên 1:
Lớp: MSSV:
Họ tên sinh viên 2:
Lớp: MSSV:
Tên đề tài:
GV HƯỚNG DẪN (Ký và ghi rõ họ và tên)
Ths Nguyễn Văn Hiệp
LỜI MỞ ĐẦU
Trang 4Công nghệ và khoa học ngày càng phát triển một cách nhanh chóng, mục đích cuối cùngchính là đem lại cho con người sự thuận tiện đến mức tối đa trong cuộc sống hàng ngày Vànhững kết nối không dây chính là chìa khóa để giải quyết một cách hữu hiệu vấn đề này khi sửdụng các thiết bị điện tử.
Trước đây khi những kết nối không dây chưa ra đời, vấn đề liên kết giữa các thiết bị điện
từ chỉ thông qua những hệ thống dây dẫn phức tạp và tốn kém, cùng với đó là những bất tiệnkhông thể tránh khỏi khi chúng ta cần giao tiếp hay kết nối với các thiết bị khác Ngày nay khicác kết nối không dây được phát minh và triển khai một cách quy mô thì vấn đề đó đã được giảiquyết Tuy vẫn còn những hạn chế nhưng có thể nói các chuẩn giao tiếp không dây nhưBluetooth hay Wifi và sóng Radio đã thay đổi cách tương tác giữa các thiết bị điện tử với nhau,giúp con người có thể làm được nhiều thứ chỉ với những thiết bị cầm tay như điện thoại hay máytính xách tay
Công nghệ luôn luôn phát triển và sự ra đời công nghệ giao tiếp trường gần (Near FieldCommunication – NFC) là một bước đánh dấu cho sự phát triển đó Với công nghệ NFC conngười có thể làm cho cuộc sống trở nên thuận tiện hơn bao giờ hết chỉ trong những khoảng thờigian rất ngắn với chiếc điện thoại của mình
Với những tính năng ưu việt của mình, hiện nay công nghệ NFC đã và đang được triểnkhai ngày càng nhiều trong các ứng dụng của cuộc sống Với mục đích tìm hiểu phần nào công
nghệ mới này, nhóm đã tiến hành thực hiện đồ án “HỆ THỐNG CỬA TỰ ĐỘNG DÙNG
CÔNG NGHỆ NFC” để tìm hiểu sâu hơn cũng như áp dụng công nghệ này vào ứng dụng thực
tiễn
Mặc dù nhóm thực hiện đề tài đã cố gắng hoàn thành nhiệm vụ đề tài đặt ra và đúng thờihạn nhưng chắc chắn sẽ không tránh khỏi những thiếu sót, mong quý Thầy/Cô và các bạn sinhviên thông cảm Nhóm thực hiện đề tài mong nhận được những ý kiến đóng góp của quýThầy/Cô và các bạn sinh viên
Xin chân thành cảm ơn!
Nhóm thực hiện đề tài
Lê Tommy Nguyễn Minh Trí
Trang 5LỜI CẢM ƠN
Nhóm thực hiện đề tài xin chân thành cảm ơn thầy Nguyễn Văn Hiệp đã tận tình
hướng dẫn, chỉ bảo, kinh nghiệm quý báu cũng như hỗ trợ phương tiện thí nghiệm trongsuốt quá trình tìm hiểu, nghiên cứu đề tài
Đồng thời chúng em xin cảm ơn các thầy cô trong Khoa Điện - Điện Tử đã tạo điều
kiện, cung cấp cho nhóm những kiến thức cơ bản, cần thiết để chúng em có điều kiện và
đủ kiến thức để thực hiện quá trình nghiên cứu
Đồng thời, nhóm cũng xin cám ơn các thành viên trong lớp 09101CLC đã có những
ý kiến đóng góp, bổ sung, giúp nhóm hoàn thành tốt đề tài
Ngoài ra, nhóm cũng đã nhận được sự chỉ bảo của các anh (chị) đi trước Các anh(chị) cũng đã hướng dẫn và giới thiệu tài liệu tham khảo thêm trong việc thực hiệnnghiên cứu
Người thực hiện đề tài
Nguyễn Minh Trí
Trang 6MỤC LỤC
PHẦN A: GIỚI THIỆU
Nhiệm vụ đồ án ii
Lịch trình thực hiện đồ án iii
Lời mở đầu iv
Lời Cảm ơn v
Mục lục vi
Liệt kê hình vẽ x
Liệt kê bảng xii
PHẦN B: NỘI DUNG CHƯƠNG I: DẪN NHẬP 1
1.1 Đặt vấn đề Error! Bookmark not defined 1.2 Lý do chọn đề tài Error! Bookmark not defined 1.3 Đối tượng nghiên cứu Error! Bookmark not defined 1.4 Giới hạn đề tài Error! Bookmark not defined 1.5 Dàn ý nghiên cứu Error! Bookmark not defined 1.6 Tình hình nghiên cứu Error! Bookmark not defined 1.7 Ý nghĩa thực tiễn của đề tài Error! Bookmark not defined. CHƯƠNG II: CƠ SỞ LÝ THUYẾT 5
2.1 Công nghệ giao tiếp trường gần ( Near Field Communication – NFC ) 6
2.1.1 Giới thiệu 6
2.1.2 Lịch sử phát triển 6
2.1.3 Các đặc tính kỹ thuật thiết yếu của NFC 7
2.1.4 So sánh với kết nối Bluetooth 8
2.1.5 Các ứng dụng thực tế hiện nay của NFC 9
2.2 Hệ điều hành Android 11
2.2.1 Giới thiệu 11
2.2.2 Lịch sử phát triển 12
2.2.2.1 Kiến trúc của hệ điều hành Android 14
Trang 72.2.2.2 Applications 14
2.2.2.3 Applications Framework 15
2.2.2.4 Libraries 16
2.2.2.5 Android Runtime 16
2.2.2.6 Kernel Linux 16
2.2.3 Các phần mềm hỗ trợ lập trình Android 17
2.3 Sơ lược về họ vi điều khiển MSP430 17
2.3.1 Giới thiệu 17
2.3.2 Các đặc điểm cơ bản của họ VDK MSP430 19
2.3.2.1 Không gian địa chỉ 19
2.3.2.2 Flash/ROM 19
2.3.2.3 RAM 19
2.3.2.4 Những khối ngoại vi 19
2.3.2.5 Những thanh ghi chức năng đặc biệt (SFR) 20
2.3.2.6 Truy cập bộ nhớ 20
CHƯƠNG III: GIỚI THIỆU KIT THÍ NGHIỆM TRF7970A…… 21 3.1 Giới thiệu Error! Bookmark not defined 3.2 Sơ đồ nguyên lý kit TRF7970A EVM Error! Bookmark not defined.
3.2.1 Sơ đồ khối và chức năng của các khối. Error! Bookmark not defined.
3.2.2 Sơ đồ nguyên lý và một số chức đặc điểm phần cứng. Error! Bookmark not defined.
3.3 Vi điều khiển MSP430F2370 Error! Bookmark not defined.
3.3.1 Tổng quan về MSP430F2370. Error! Bookmark not defined.
3.3.2 Cấu trúc cơ bản của vi điều khiển MSP430F2370. Error! Bookmark not defined.
3.3.3 Cấu trúc chân của vi điều MSP430F2370. Error! Bookmark not defined 3.4 Sơ lược về IC chuyên dụng RFID/NFC TRF7970A Error! Bookmark not
defined.
3.4.1 Tổng quan về TRF7970A. Error! Bookmark not defined.
3.4.2 Các ứng dụng có thể phát triển. Error! Bookmark not defined.
3.4.3 Cấu trúc TRF7970A. Error! Bookmark not defined.
3.4.4 Chế độ hoạt động NFC. Error! Bookmark not defined 3.5 Truyền dữ liệu song song giữa MSP430F2370 và TRF7970A Error! Bookmark
not defined.
Trang 8CHƯƠNG IV: THẺ NFC TAG-IT HF-I PLUS……… 394.1 Tổng quát Error! Bookmark not defined 4.2 Mô tả hệ thống Error! Bookmark not defined 4.3 Mô tả sản phẩm Error! Bookmark not defined 4.4 Mô tả chức năng Error! Bookmark not defined 4.5 Tổ chức bộ nhớ Error! Bookmark not defined 4.6 Tập lệnh Error! Bookmark not defined.
CHƯƠNG V: THIẾT KẾ & THI CÔNG………445.1 Mục đích, yêu cầu đặt ra Error! Bookmark not defined 5.2 Tiếp cận với hệ thống cửa tự động - NFC Error! Bookmark not defined 5.2.1 Sự khác nhau giữa cửa thông thường & cửa NFC Error! Bookmark not
defined.
5.3.3.2 Khối quản lý và xử lý Error! Bookmark not defined 5.3.3.3 Khối thiết bị NFC Error! Bookmark not defined 5.4 Thi công Error! Bookmark not defined 5.4.1 Khối động lực Error! Bookmark not defined 5.4.2 Khối điều khiển trung tâm và khối giao tiếp NFC Error! Bookmark not
defined.
5.4.3 Khối quản lý và xử lý Error! Bookmark not defined 5.4.3.1 Giao diện quản lý Error! Bookmark not defined 5.4.3.2 Lập trình cho phần mềm Error! Bookmark not defined 5.4.4 Khối thiết bị NFC Error! Bookmark not defined.
Trang 9PHẦN C: KẾT LUẬN & HƯỚNG PHÁT TRIỂN
A: KẾT QUẢ NGHIÊN CỨU 84
B: KẾT LUẬN 85
C: H ƯỚNG PHÁT TRIỂN ĐỀ TÀI 85
TÀI LIỆU THAM KHẢO 86
PHỤ LỤC 87
Trang 10LIỆT KÊ HÌNH VẼ
2.1 Chia sẻ dữ liệu giữa 2 điện thoại qua giao tiếp NFC 9
2.2 Ứng dụng NFC trong xe hơi 10
2.3 Giao tiếp điện thoại với Tivi thông qua NFC 11
2.4 Tóm tắt quá trình phát triển của Android OS đến năm 2008 13
2.5 Cấu trúc stack của Android OS 14
2.6 Một số dòng vi điều khiển họ MSP430 18
2.7 Sơ đồ khối VDK MSP430 19
2.8 Sơ đồ bộ nhớ 20
3.1 Sơ đồ khối Kit TRF7970A 23
3.2 Sơ đồ nguyên lý Kit TRF7970A 24
3.3 Hình ảnh tổng quan Kit TRF7970A 25
3.4 Sơ đồ khối MSP430F2370 28
3.5 Sơ đồ chân vi điều khiểu MSP430F2370 28
3.6 Sơ đồ khối IC TRF7970A 32
3.7 Sơ đồ chân IC TRF7970A 33
3.8 Sơ đồ khối Kit TRF7970A ở chế độ NFC 33
3.9 Dạng sóng điệu khiển 38
4.1 Các thẻ NFC Tag-it HF-I Plus 40
4.2 Hệ thống RFID với bộ đọc, anten và bộ tiếp sóng Tag-It HF-I 41
4.3 Sơ đồ cấu trúc của bộ tiếp sóng Tag-it HF-I Plus 41
4.4 Tổ chức bộ nhớ của bộ tiếp sóng Tag-it HF-I Plus 42
5.1 Cửa sử dụng công nghệ NFC 45
5.2 Quy trình mở cửa bằng công nghệ NFC 46
5.3 Các khối của hệ thống cửa 47
5.4 Sơ đồ các khối của hệ thống cửa 47
5.5 Adaptor 12V-1,5A 48
5.6 Sơ đồ nguyên lý mạch động lực 49
5.7 Lưu đồ chương trình chính 50
Trang 115.8 Lưu đồ chương trình kiểm tra thiết bị kết nối 51
5.9 Lưu đồ chương trình đọc ID của thiết bị 52
5.10 Lưu đồ đóng mở cửa 53
5.11 Lưu đồ quy trình thực hiện trên điện thoại 56
5.12 Giao diện chương trình Eclipse trong lập trình giao diện 57
5.13 Giao diện chương trình đăng nhập trên điện thoại 57
5.14 Giao diện chương trình đăng nhập trên điện thoại 58
5.15 Mạch in sơ đồ nguyên lý 58
5.16 Sắp xếp & bố trí các linh kiện 59
5.17 Mạch hoàn chỉnh sau khi thi công 59
5.18 Giao diện quản lý người ra vào cổng 65
5.19 Các chức năng của thanh Menu 66
5.20 Mô tả chức năng của Drive 66
5.21 Tìm kiếm 1 đối tượng trong danh sách 67
Trang 12LIỆT KÊ BẢNG
2.1 So sánh NFC với Bluetooth 8
2.2 Các phiên bản của Android 13
3.1 Chức năng các chân HDR5 26
3.2 Chức năng các chân HDR1,HDR2,HDR3 26
3.3 Cấu trúc thanh ghi Target Detection Level 34
3.4 Cấu trúc thanh ghi NFC Target Protocol 35
3.5 Thanh ghi Chip Status 36
3.6 Thanh ghi ISO Control 36
3.7 Các chế độ của Thanh ghi ISO Control 37
3.8 Thanh ghi IRQ Status 37
Trang 14PHẦN B
Trang 15CH ƯƠNG I NG I
Trang 16
1.1 Đặt vấn đề
Chìa khoá từ xưa đến nay luôn là sự lưa chọn hàng đầu cho ổ khoá bởi tính đơn giản, phổ biến của vật liệu làm ra chúng Song song với chìa khoá cơ khí con người cũng phát minh ra nhiều phương pháp khoá khác như khoá số, và nhiều phương pháp hiện đại như dấu vân tay, quétvõng mạc … v.v và gần đây nhất là công nghệ RFID/NFC ( giao tiếp trường gần )
Công nghệ càng cao, càng phức tạp sẽ làm tăng tính bảo mật, cũng như sự tiện lợi cho người
sử dụng, đặc biệt khi smartphone càng ngày càng được phổ biến, tích hợp vào đó là công nghệ NFC Vậy thay vì dùng chìa khoá để mở cửa – hơi rườm rà và phức tạp nếu ta có 1 xâu trên 10 chiếc chìa khác nhau cho những nơi khác nhau, chúng ta không cần chìa khoá nữa mà thay vào
đó sử dụng một thiết bị di động (hoặc thẻ Tag) luôn luôn ở bên người để mở với tốc độ nhanh chóng và gọn gàng, và không còn ám ảnh bởi nỗi lo quên hay mất chìa khoá
1.2 Lý do chọn đề tài
Trong thời đại hiện nay, điện thoại di động giúp mọi người có thể liên lạc với bạn bè, gia
đình, đồng nghiệp… một cách dễ dàng Nhưng với ứng dụng NFC (Near-Field Communications
- Giao tiếp trường gần), điện thoại di động sẽ trở nên gần gũi hơn với cuộc sống hằng ngày,
chẳng hạn chỉ cần cú chạm đến một điện thoại di động khác là ta có thể trao đổi thông tin, mua
vé xem hát, trả tiền mua hàng… Chính vì vậy, việc phát triển công nghệ NFC là chất xúc tác quan trọng để phát triển công nghệ kết nối không dây có tính ổn định, trực quan trong tương tác
2 chiều giữa 2 thiết bị điện tử
Trong thực tế tại Việt Nam, công nghệ NFC đang dần được phổ biến, thể hiện ở việc thị trường Việt Nam đang ra mắt rất nhiều loại điện thoại có tính năng này Chính vì thế việc phát triển cơ sở hạ tầng, cho phù hợp với công nghệ này nói chung, và việc tiếp cận với công nghệ này nói riêng là vấn đề rất cần thiết
Đánh giá từ thực tế xã hội, nhóm sinh viên chúng tôi nhận thấy cần có những nghiên cứu
kỹ thuật để tiếp cận công nghệ này Ngoài ra đây cũng là một đề tài mới lạ, và nhóm chúng tôi thực sự có những đam mê về lĩnh vực này Chính vì thế nhóm chúng tôi quyết định chọn đề tài
“HỆ THỐNG CỬA TỰ ĐỘNG DÙNG CÔNG NGHỆ NFC” làm đề tài tốt nghiệp của nhóm
chúng tôi
1.3 Đối tượng nghiên cứu
Dựa vào những kiến thức cơ bản cùng các điều kiện thực tế, nhóm sinh viên thực hiện đề tài chú trọng nghiên cứu tới các đối tượng sau:
Phương pháp lập trình ứng dụng và giao diện trên hệ điều hành Android
Nghiên cứu về hoạt động của công nghệ giao tiếp trường gần (NFC)
Nguyên lý hoạt động và điều khiển của vi điều khiển MSP430F2370
Nguyên lý hoạt động của IC chuyên dụng TRF7970A
Nguyên lý hoạt động của kit thí nghiệm TRF7970A
Tuy nhiên, với quỹ thời gian khá ngắn, nhóm không nghiên cứu tổng quan toàn bộ nhữngđối tượng trên, mà chỉ chú trọng các phần, yếu tố liên quan trực tiếp tới đề tài
1.4 Giới hạn đề tài
Trang 17Đề tài được thực hiện bởi nhóm sinh viên chưa có nhiều kinh nghiệm trong lập trình
Android, cũng như còn hạn chế nhiều về mặt cơ khí nên hệ thống còn khá đơn giản Thêm vào
đó thời gian nghiên cứu cũng khá hạn hẹp nên chỉ tập trung vào những điểm mạnh sinh viên điệntử
1.5 Dàn ý nghiên cứu
Với sự hướng dẫn của thầy Nguyễn Văn Hiệp, nhóm đã thực hiện các bước tiến hành nghiên cứu như sau :
Phân chia các nội dung cần tìm hiểu và nghiên cứu chủ động về mặt thời gian
Tìm hiểu về hệ điều hành Android
Tìm hiểu về công nghệ giao tiếp trường gần NFC , các điện thoại có hỗ trợ chip NFC hiện nay
Tải và cài đặt các phần mềm, công cụ hỗ trợ cho việc lập trình ứng dụng trên hệ điều hành Android
Tìm hiểu về Kit TRF7970A về các chức năng và đặc tính, tìm hiểu phần mềm lập trình và nạp chương trình cho kit
Tìm giải thuật chương trình, vẽ lưu đồ và bắt đầu lập trình
Tiến hành viết chương trình từ cả hai đối tượng là hệ điều hành Android và Kit TRF7970A
Kiểm tra chương trình, thử nghiệm thực tế
Các đề tài về hệ điều hành Android đã được nghiên cứu nhiều trong thời gian gầnđây:
Đề tài nghiên cứu “TÌM HIỂU VÀ VIẾT ỨNG DỤNG MINH HỌA CHO
HỆ ĐIỀU HÀNH ANDROID” của tác giả Hồ Công Đức và Huỳnh Huy Tấn,
sinh viên trường ĐH Sư Phạm Kỹ Thuật năm 2011
Đề tài nghiên cứu “THIẾT KẾ HỆ THỐNG ĐIỀU KHIỂN THIẾT BỊ DỰA
TRÊN HỆ ĐIỀU HÀNH ANDROID” của tác giả Nguyễn Huy Đức và Hồ
Huỳnh Công Nhân sinh viên trường ĐH Sư Phạm Kỹ Thuật năm 2011
Đề tài “ ĐIỀU KHIỂN THIẾT BỊ BẰNG SMARTPHONE THÔNG QUA
GIAO TIẾP NFC” của tác giả Nguyễn Đăng Nhật và Thái Văn Chánh sinh
viên trường ĐH Sư Phạm Kỹ Thuật năm 2012
Trên thế giới thì các đề tài về công nghệ NFC đã được thực hiện và phát triển khánhiều, với cơ sở hạ tầng được phát triển các ứng dụng liên quan đến NFC ngày càngđược mở rộng và chứng tỏ được tính ưu việt
1.7 Ý nghĩa thực tiễn của đề tài
Trang 18Với sự phát triển nhanh chóng của các thiết bị viễn thông trên thế giới, đặc biệt là các thiết bịđiện thoại di động, thì các hệ thống mạng liên quan cũng không ngừng phát triển Với việc thực hiện thành công đề tài này, sẽ mở ra sự phát triển cho những sản phẩm đầu tiên ứng dụng công nghệ này tại Việt Nam Trên thế giới, công nghệ NFC là một công nghệ mang tính đột phá Giống như công nghệ RFID, công nghệ NFC nhanh chóng trao đổi thông tin giữa các thiết bị khichúng chạm vào nhau hoặc ở gần nhau Người dùng có thể truyền đi văn bản, hình ảnh, đường link và những dữ liệu khác Nên từ việc phát triển công nghệ này sẽ mở ra một tiềm năng mới tạiViệt Nam như: ví điện tử, quản lý nhân viên, poster thông minh, hệ thống âm thanh,…
Trang 19CH ƯƠNG I NG II
C S LÝ Ơ SỞ LÝ Ở LÝ
Trang 202.1 Công nghệ giao tiếp trường gần ( Near Field Communication – NFC )
2.1.1 Giới thiệu
NFC (Near Field Communication) được phát triển dựa trên nguyên lý tần số vô tuyến nhận dạng (Radio-frequency identification - RFID) RFID cho phép một đầu đọc gởi sóng radio đến một thẻ điện tử thụ động để nhận dạng và theo dõi Việc giao tiếp được tiến hành bằng cách đưa các thiết bị lại gần nhau, thông thường nằm trong khoảng vài cm NFC được phát triển dựa trên công nghệ RFID( Radio Frequency Identifi ) có nghĩa là sóng vô tuyến nhận dạng - ra đời năm
1983
Chuẩn NFC bao gồm các khái niệm: giao thức giao tiếp và định dạng dữ liệu trao đổi, bao gồm chuẩn ISO/IEC 14443 và Felica được dựa trên chuẩn giao tiếp sóng vô tuyến sẵn có RFID Các chuẩn này bao gồm tiêu chuẩn ISO/IEC 18092 và những tiêu chuẩn được định nghĩa bởi cộng đồng NFC (được thành lập vào năm 2004 bởi Nokia, Sony và Philips, đến nay đã có hơn
160 thành viên) Cộng đồng này phát triển NFC và đồng thời cấp chứng nhận cho các thiết bị
2.1.2 Lịch sử phát triển
Nguồn gốc của NFC là để nhận dạng bằng sóng vô tuyến hay còn gọi là RFID RFID cho phép các bộ đọc gửi sóng vô tuyến đến một thẻ điện tử thụ động để nhận dạng cũng như theo dõi
Năm 1983 Bằng sáng chế đầu tiên liên quan đến từ viết tắt RFID đã được cấp choCharles Walton
Năm 2004 Nokia, Philips và Sony thành lập cộng đồng NFC
Năm 2006 Thiết lập các đặc tính kỹ thuật cho các thẻ NFC
Năm 2006 Đặc tính kỹ thuật cho 1 “SmartPoster”
Năm 2006 Nokia 6131 là điện thoại NFC đầu tiên
Năm 2009 Vào tháng 1, cộng đồng NFC đưa ra tiêu chuẩn Peer to Peer để truyền đi danh
bạ, địa chỉ web (URL), khởi tạo Bluetooth và các chức năng khác
Năm 2010 Samsung Nexus S là điện thoại NFC chạy hệ điều hành Android đầu tiên được
Năm 2012 Sony giới thiệu “Smart Tags”, các thẻ dùng công nghệ NFC để thay đổi chế
độ và dữ liệu cho smartphone của Sony ở tầm gần
Năm 2012 Samsung giới thiệu Tectile, một bộ miếng dán MIFARE NFC và ứng dụng đểghi và đọc dữ liệu cho chúng
Năm 2013 Samsung và Visa tuyên bố hợp tác để cùng phát triển thanh toán trên nền diđộng
Trang 212.1.3 Các đặc tính kỹ thuật thiết yếu của NFC
NFC là công nghệ giao tiếp không dây tầm ngắn, đặc trưng yêu cầu một khoảng cách4cm hoặc ít hơn NFC hoạt động ở tần số 13,56MHz trên chuẩn giao tiếp ISO/IEC18000-3 với tốc độ từ 106Kbit/s đến 424Kbit/s NFC luôn liên quan đến 1 thiết bị khởitạo và 1 thiết bị mục tiêu Thiết bị khởi tạo sẽ chủ động phát ra sóng vô tuyến để cungcấp năng lượng cho thiết bị mục tiêu Điều này cho phép các thiết bị mục tiêu NFC cóhình thức rất đơn giản như các loại thẻ, giấy, móc chìa khóa vì không cần phải có nguồncung cấp Giao tiếp ngang hàng NFC được tiến hành khi cả 2 thiết bị được cấp nguồn
Các thẻ NFC có chứa dữ liệu và thông thường chỉ đọc được, tuy nhiên cũng có các loạithẻ có thể ghi được Nó có thể được lập trình bởi nhà sản xuất hoặc sử dụng các đặc tính
kỹ thuật được cung cấp bởi cộng đồng NFC Những thẻ này có thể chứa các thông tin cánhân như thông tin thẻ tín dụng, thẻ ghi nợ, thẻ khách hàng, mã pin… một cách an toàncũng như những dữ liệu khác Cộng đồng NFC định nghĩa 4 loại thẻ khác nhau về tốc độgiao tiếp và cấu hình liên quan, bộ nhớ, bảo mật, lưu trữ dữ liệu và số lần ghi Hiện tại bộnhớ của các thẻ dao động từ 96 byte đến 4092 byte (4Kbyte)
Với công nghệ thẻ không tiếp xúc, NFC sử dụng cảm ứng từ giữa 2 anten vòng kín đượcđặt trong từ trường của nhau, hình thành hiệu ứng như 1 biến áp lõi không khí NFC hoạtđộng trong phạm vi băng tần không cần cấp phép ở toàn cầu là 13,56MHz Phần lớnnăng lượng sóng radio được tập trung trong giới hạn băng thông cho phép ± 7kHz, nhưng
độ rộng phổ có thể rộng đến 1,8MHz khi điều chế ASK
Khoảng cách hoạt động về lý thuyết khi sử dụng ăngten tiêu chuẩn lên đến 20cm (khoảngcách hoạt động thực tế chỉ khoảng 4cm) Tốc độ truyền dữ liệu được hỗ trợ: 106, 212 hay
424 kbit/s ( tốc độ 848 kbit/s là không tuân thủ tiêu chuẩn ISO/IEC 18092)
Có 2 chế độ hoạt động:
Chế độ giao tiếp bị động: Thiết bị khởi tạo phát ra trường sóng mang và thiết bịmục tiêu đáp lại bằng cách điều chế sóng mang có sẵn đó, thiết bị mục tiêu có thểlấy năng lượng cho hoạt động của nó từ điện từ trường phát ra bởi thiết bị khởitạo, vì vậy nó còn được gọi là một bộ phát đáp
Chế độ giao tiếp chủ động: Cả thiết bị khởi tạo và mục tiêu giao tiếp bằng cáchluân phiên phát ra từ trường riêng của mình Thiết bị sẽ vô hiệu hóa trường sóngradio của nó trong lúc chờ để nhận dữ liệu Trong chế độ này, cả 2 thiết bị đềuđược cấp nguồn
NFC sử dụng 2 cách mã hóa khác nhau để truyền dữ liệu Nếu 1 thiết bị chủ động truyền
dữ liệu ở tốc độ 106 kbit/s thì sẽ sử dụng kiểu mã hóa sửa đổi Miller với 100% điều chế.Tất cả các trường hợp khác sẽ sử dụng kiểu mã hóa Manchester với tỉ lệ điều chế 10%
Trang 22 Các thiết bị NFC có khả năng nhận và truyền dữ liệu cùng lúc Vì vậy nó có thể kiểm tranhững khả năng xung đột xảy ra nếu tần số tín hiệu nhận được và tần số tín hiệu truyền đikhông khớp với nhau.
2.1.4 So sánh với kết nối Bluetooth
lượng thấp Tương thích với
RFID
Chuẩn ISO 18000-3 Kích họat Kích hoạt
Tổ chức phát triển ISO/IEC Bluetooth SIG Bluetooth SIG
Tiêu chuẩn mạng ISO 13157 IEEE 802.15.1 IEEE 802.15.1
Mã bảo mật Không đối với RFID Có sẵn Có sẵn
Tầm hoạt động Dưới 0.2m Khoảng 100m Khoảng 50m
Thời gian cài đặt Dưới 0.1 s Dưới 6s Dưới 0.006s
Lượng điện năng Dưới 15mA(Đọc) Tùy theo cấp độ Dưới 15mA
(truyền và nhận)
Bảng 2.1 So sánh gữa NFC với Bluetooth
NFC và Bluetooth đều là công nghệ giao tiếp tầm ngắn được tích hợp trong điện thoại di động Như được miêu tả chi tiết ở dưới thì NFC hoạt động ở tốc độ thấp hơn Bluetooth nhưng điện năng tiêu thụ ít hơn nhiều và không yêu cầu bắt cặp
NFC cài đặt nhanh hơn kết nối Bluetooth tiêu chuẩn nhưng không nhanh bằng kết nối
Bluetooth năng lượng thấp Với NFC, thay vì tự cấu hình bằng tay để định dạng thiết bị thì kết nối giữa 2 thiết bị NFC thành lập tự động một cách nhanh chóng chỉ trong vòng ít hơn 1 phần 10 giây Tốc độ truyền dữ liệu tối đa của NFC (424 kbit/s) thấp hơn Bluetooth phiên bản 2.1 (2.1 Mbit/s) NFC có tầm giao tiếp ngắn hơn, khoảng cách hoạt động tối đa nhỏ hơn 20cm, điều này giúp giảm thiểu nguy cơ từ những nguy hại không mong muốn Nó khiến cho NFC đặc biệt phù hợp trong khu vực đông người, nơi mà việc liên hệ giữa tín hiệu với thiết bị phát ra (hay mở rộng
là người dùng) trở nên khó khăn
Trong tương tác với Bluetooth, NFC tương thích với cơ sở hạ tầng có sẵn của tiêu chuẩn RFID thụ động (13.56MHz ISO/IEO 18000-3) NFC yêu cầu lượng điện năng tiêu thụ thấp tương tự như giao thức năng lượng thấp phiên bản 4.0 của kết nối Bluetooth Tuy nhiên khi NFChoạt động với một thiết bị không được cấp nguồn (thẻ thông minh không tiếp xúc, poster thông minh…) thì điện năng tiêu thụ của NFC lại lớn hơn kết nối Bluetooth V4.0 , bởi vì việc tìm ra thẻ thụ động cần thêm năng lượng
2.1.5 Các ứng dụng thực tế hiện nay của NFC
Chuyển hình ảnh, video và nhạc qua lại giữa các thiết bị
Trang 23Trước đây, khi muốn chuyển hình ảnh hay video từ một thiết bị này sang thiết bị khác, ngườidùng hay sử dụng một thiết bị trung gian là máy tính Mọi thứ được chép sang máy tính bằngUSB và từ máy tính sang thiết bị khác bằng cáp chuyên dụng Việc làm này rất mất thời gian,Bluetooth 4.0 ra đời và đã hỗ trợ tốt hơn cho công việc này, để kích hoạt kết nối bluetooth chỉcần thao tác 1 chạm của NFC.
Hình 2.1 Chia sẻ dữ liệu giữa 2 điện thoại qua giao tiếp NFC
Điều khiển xe hơi
Nhiều hãng sản xuất ô tô như Huyndai đã bắt đầu ứng dụng smartphone có hỗ trợ NFC để điềukhiển một số tính năng trên xe hơi của họ Khi đặt điện thoại trong xe, smartphone có thể tự
Trang 24động sạc, sao lưu danh bạ và kết nối với loa NFC trên xe để phát các bản nhạc mà người dùng ưathích
Hình 2.2 Ứng dụng NFC trong xe hơi
Thay thế cho thẻ ATM
Thay vì luôn phải mang theo nhiều loại thẻ ATM khác nhau, bạn có thể sử dụng điện thoại có hỗtrợ NFC để rút tiền ở máy ATM Cách thức hoàn toàn đơn giản, bạn chỉ cần chạm điện thoại vàomáy ATM, nhập mã pin và rút tiền
NFC hoàn toàn đủ sức hỗ trợ các thiết bị gia dụng phổ biến
Công nghệ NFC vẫn tiếp tục được tích hợp trên rất nhiều thiết bị gia đình Ngoài giải trí thì bâygiờ ngay cả TV Samsung, máy giặt LG, cũng có thể khởi động thông qua kết nối NFC của điệnthoại Trong tương lai không xa, bạn có thể dùng smartphone để thiết lập các tính năng cho TVhay các chế độ giặt của máy giặt một cách dễ dàng
Trang 25Hình 2.3 Giao tiếp điện thoại với Tivi thông qua NFC
2.2 Hệ điều hành Android.
2.2.1 Giới thiệu.
Android là một hệ điều hành dành cho thiết bị di động như điện thoại, máy tính bảng và notebooks Android được phát triển bởi Google, dựa trên nền tảng Linux kernel và các phần mềm nguồn mở Ban đầu nó được phát triển bởi Android Inc (sau đó được Google mua lại) và gần đây nó trở thành một trong những phần mềm đứng đầu của liên minh OHA (Open Handset Alliance - với khoảng 78 thành viên bao gồm cả nhà sản xuất, nhà phát triển ứng dụng cho thiết bị di dộng mà dẫn đầu là Google) Andorid được phát triển nhằm cạnh tranh với các hệ điềuhành di động khác như iOS (Apple), BlackBerry OS, Windows Mobile (Microsoft), Symbian (Nokia), Samsung (Bada), WebOS (Palm)
Android có một cộng đồng phát triển ứng dụng rất lớn, hiện có khoảng hơn 400.000 ứng
dụng có sẵn cho Android (1/2012) và đang liên tục được cập nhật Ứng dụng được phát triển bằng ngôn ngữ Java kết hợp với thư viện Java có sẵn của Google Các nhà phát triển ứng dụng
có thể sử dụng máy tính chạy hệ điều hành Windows hoặc MacOS hoặc Linux kết hợp với Android SDK để phát triển ứng dụng cho Android
Trang 262.2.2 Lịch sử phát triển.
Tập đoàn Android (Inc) được thành lập tại Palo Alto, California, Hoa Kỳ vào tháng 10 năm
2003 bởi Andy Rubin, Rich Miner, và một số thành viên khác, với mục đích để phát triển hay tạo
ra các thiết bị di động thông minh hơn phục vụ các mục đích cho lợi ích con người Nhân viên chính tham gia vào việc thành lập Android Inc bao gồm Andy Rubin, cũng là đồng sáng lập của Danger Inc, Andy McFadden là người đã làm việc với Rubin tại WebTV, và Chris White người
đã lãnh đạo việc thiết kế và giao diện của WebTV Nhân viên quan trọng khác bao gồm Richard Miner, đồng sáng lập của Wildfire Communications Inc và cựu phó chủ tịch công nghệ và tương lai ở Orange, và tất cả những người trong số họ sử dụng các kinh nghiệm có được để góp phần vào việc phát triển ngành công nghiệp không dây của công ty Bước đầu, hệ điều hành Android chỉ đơn thuần là phần mềm trên điện thoại di động
Google mua lại Android Inc vào tháng 8 năm 2005 và Android Inc trở thành một công ty concủa Google Inc Các nhân viên chính của Android Inc, trong đó có Andy Rubin, Rich Miner và Chris White vẫn tiếp tục làm việc tại công ty này sau khi bị mua lại
Và sau tiếp, vào cuối năm 2007, thuộc về Liên minh Thiết bị Cầm tay Mã Nguồn mở (OpenHandset Alliance) gồm các thành viên nổi bật trong ngành viễn thông và thiết bị cầm tay như: Texas Instruments, Broadcom Corporation, Google, HTC, Intel, LG, Marvell Technology Group,Motorola, Nvidia, Qualcomm, Samsung Electronics, Sprint Nextel, T-Mobile, ARM Holdings, Atheros Communications, Asustek Computer Inc, Garmin Ltd, Softbank, Sony Ericsson,
Toshiba Corp, and Vodafone Group … Mục tiêu của Liên minh này là nhanh chóng đổi mới để đáp ứng tốt hơn cho nhu cầu người tiêu dùng và kết quả đầu tiên của nó chính là nền tảng
Android Android được thiết kế để phục vụ nhu cầu của các nhà sản xuất, các nhà khai thác và các lập trình viên trên các thiết bị cầm tay
Phiên bản SDK lần đầu tiên phát hành vào tháng 11 năm 2007, hãng T-Mobile cũng công bốchiếc điện thoại Android đầu tiên đó là chiếc T-Mobile G1, chiếc smartphone đầu tiên dựa trên nền tảng Android Một vài ngày sau đó, Google lại tiếp tục công bố sự ra mắt phiên bản Android SDK release Candidate 1.0 Trong tháng 10 năm 2008, Google được cấp giấy phép mã nguồn
mở cho Android Platform
Vào cuối năm 2008, Google cho phát hành một thiết bị cầm tay được gọi là Android Dev Phone 1 có thể chạy được các ứng dụng Android mà không bị ràng buộc vào các nhà cung cấp mạng điện thoại di động Mục tiêu của thiết bị này là cho phép các nhà phát triển thực hiện các cuộc thí nghiệm trên một thiết bị thực có thể chạy hệ điều hành Android mà không phải ký một bản hợp đồng nào Vào khoảng cùng thời gian đó thì Google cũng cho phát hành một phiên bản
vá lỗi 1.1 của hệ điều hành này Ở cả hai phiên bản 1.0 và 1.1 Android chưa hỗ trợ soft-keyboard
mà đòi hỏi các thiết bị phải sử dụng bàn phím vật lý Android cố định vấn đề này bằng cách pháthành SDK 1.5 vào tháng Tư năm 2009, cùng với một số tính năng khác Chẳng hạn như nâng cao khả năng ghi âm truyền thông, vật dụng, và các live folder
Mới đây tại hội nghị GOOGLE I/O diễn ra vào cuối tháng 6/2012, google đã giới thiệu phiênbản mới nhất của hệ điều hành Android là Jelly Bean (4.1)
Trang 27Hình 2.4 Bảng tóm tắt quá trình phát triển của Android OS đến năm 2008
Các phiên bản của Android:
Bảng 2.2 Các phiên bản của Android
2.2.2.1 Kiến trúc của hệ điều hành Android
Trang 28Hình 2.5 Cấu trúc stack của Android OS
2.2.2.2 Applications.
Tích hợp sẵn một số ứng dụng cần thiết cơ bản như: contacts, phone, Browser, Camera … Tất cả ứng dụng chạy trên Android đều được viết trên nền tảng Java (tuy nhiên một số ứng dụng vẫn có thể viết bằng C++)
Các ứng dụng được cài thêm như các phần mềm chứng khoán (Stock), các trò chơi (Game),
từ điển
Mỗi chương trình có các đặc điểm là:
Viết bằng Java, phần mở rộng là apk
Khi mỗi ứng dụng được chạy, có một phiên bản Virtual Machine được dựng lên
để phục vụ cho nó Nó có thể là một Active Program - Chương trình có giao diệnvới người sử dụng hoặc là một background - Chương trình chạy nền hay là dịchvụ
Android là hệ điều hành đa nhiệm, điều đó có nghĩa là trong cùng một thời điểm,
có thể có nhiều chương trình cùng chạy một lúc, tuy nhiên, với mỗi ứng dụng thì
có duy nhất một thực thể (instance) được phép chạy mà thôi Điều đó có tác dụnghạn chế sự lạm dụng tài nguyên, giúp hệ thống hoạt động tốt hơn
Trang 29 Các ứng dụng được gán số ID của người sử dụng nhằm phân định quyền hạn khi
sử dụng tài nguyên, cấu hình phần cứng và hệ thống
Android là một hệ điều hành có tính mở, khác với nhiều hệ điều hành di độngkhác, android cho phép một ứng dụng của bên thứ ba được phép chạy nền Cácứng dụng đó chỉ có một hạn chế nhỏ đó là nó không được phép sử dung quá5~10% công suất CPU, điều đó nhằn để tránh độc quyền trong việc sử dụngCPU
Ứng dụng không có điểm vào cố định, không có phương thức main để bắt đầu
Tầng Application Framework bao gồm nhiều dịch vụ (services) cho việc quản lý:
Activity Manager: quản lý vòng đời (lifecycle) của các ứng dụng điều hướng cho
các avtivity
Window Manager: cung cấp khả năng quản lý giao diện người dùng.
View System: tập hợp rất nhiều các View có khả năng kế thừa lẫn nhau dùng để
thiết kế phần giao diện ứng dụng như: TextView, EditText, GirdView, TableView
…
Content Providers: cho phép các ứng dụng truy xuất dữ liệu từ các ứng dụng
khác (tính kế thừa), ví dụ như ứng dụng Phone sẽ truy xuất dữ liệu thông tin về số
điện thoại của người được gọi được chứa trong ứng dụng Contact.
Resource Manager: cung cấp truy xuất tới các tài nguyên không phải là mà
nguồn (source code), chẳng hạn như graphics, layout …
Location Manager, Notifycation Manager: cho phép tất cả ứng dụng có thể hiển
thị các loại thông báo khác nhau (custom arlets) trong status bar
Telephony Manager: dịch vụ thoại (Phone’s services), cho phép các ứng dụng
thông qua dịch vụ này truy xuất các thao tác liên quan đến điện thoại, ví dụ nhưthực hiện 1 cuộc gọi điện thoại …
Package Manager: quản lý các gói ứng dụng, các chương trình đã cài đặt, các thư
viện
2.2.2.4 Libraries
Bao gồm 1 tập hợp các thư viện C/C++ được sử dụng bởi các thành phần khác nhau trong hệ thống Android Một số các thư viện cơ bản được liệt kê dưới đây:
Trang 30 System C library: sử dụng hệ thống C chuẩn, được điều hưởng cho những thiết bị nền
tảng Linux nhúng
Media Framework: dự trên nền tảng PacketVideo’s OpenCore, các thư viện hỗ trợ phát
và ghi cho các định dạng âm thanh, hình ảnh thông dụng bao gồm MPEG4, H.264, MP3,AAC, AMR, JPG, và PNG
Surface Manager: Quản lý việc truy xuất vào hệ thống hiển thị.
Webkit: cung cấp kỹ thuật duyệt web hiện đại thông qua việc kết hợp sức mạnh giữa
trình duyệt web của Android với một trang web nhúng
SGL: cung cấp các công cụ đồ họa 2D.
OpenGL / ES: thi hành các hàm API dựa trên thư viện đồ họa OpenGL / ES 1.0, cung
cấp công cụ đồ họa 3D đối với phần cứng được hỗ trợ và phần mềm
FreeType: bộ tạo phông chữ dạng bitmap và vector.
SQLite: hệ quản lý cơ sở dữ liệu cho các ứng dụng với đặc điểm chạy nhẹ nhàng và việc
quản lý mạnh
2.2.2.5 Android Runtime
Phần này chứa các thư viện mà một chương trình viết bằng ngôn ngữ Java có thể hoạt động Phần này có 2 bộ phận tương tự như mô hình chạy Java trên máy tính thường Thứ nhất là các thư viện lõi (Core Library) , chứa các lớp như JAVA IO, Collections, File Access Thứ hai là một máy ảo java (Dalvik Virtual Machine)
Mặc dù cũng được viết từ ngôn ngữ Java nhưng một ứng dụng Java của hệ điều hành androidkhông được chạy bằng JRE của Sun (nay là Oracle) (JVM) mà là chạy bằng máy ảo Dalvik do Google phát triển Các VM Dalvik thực thi các tập tin thực thi Dalvik (dex) Định dạng được tối
ưu hóa cho bộ nhớ tối thiểu VM là dựa trên register-based, và chạy các lớp đã được biên dịch bởi một trình biên dịch Java để chuyển đổi thành các định dạng dex Các VM Dalvik dựa vào nhân Linux cho các chức năng cơ bản như luồng và quản lý bộ nhớ thấp
2.2.2.6 Kernel Linux
Hệ điều hành android được phát trển dựa trên hạt nhân linux, cụ thể là hạt nhân linux phiên bản 2.6, điều đó được thể hiện ở lớp dưới cùng này Tất cả mọi hoạt động của điện thoại muốn thi hành được thì đều được thực hiện ở mức cấp thấp ở lớp này bao gồm quản lý bộ nhớ
(memory management), giao tiếp với phần cứng (driver model), thực hiện bảo mật (security), quản lý tiến trình (process)
Tuy được phát triển dựa vào nhân linux nhưng thực ra nhân linux đã được nâng cấp và sửa đổi rất nhiều để phù hợp với tính chất của những thiết bị cầm tay như hạn chế về bộ vi xử lý, dung lượng bộ nhớ, kích thước màn hình, nhu cần kết nối mạng không dây
Tầng này có các thành phần chủ yếu:
Display Driver: điều khiển việc hiển thị lên màn hình cũng như thu nhận những điều
khiển của người dùng lên màn hình (di chuyển, cảm ứng )
Camera Driver: điều kiển hoạt động của camera, nhận dữ liệu từ camera trả về.
Bluetooth Driver: điều khiển thiết bị phát và thu sóng Bluetooth.
Trang 31 USB driver: quản lý hoạt động của các cổng giao tiếp USB.
Keypad driver: điều khiển hoạt động của bàn phím cứng trên máy.
Wifi Driver: quản lý về việc thu phát sóng wifi.
Audio Driver: điều khiển các bộ thu phát âm thanh, giải mã các tính hiệu dạng audio
thành tín hiệu số và ngược lại
Binder IPC Driver: Chịu trách nhiệm về việc kết nối và liên lạc với mạng vô tuyến
như CDMA, GSM, 3G, 4G, E để đảm bảo những chức năng truyền thông được thựchiện
M-System Driver: quản lý việc đọc ghi lên các thiết bị nhớ như thẻ SD, flash.
Power Management: quản lý, giám sát việc tiêu thụ điện năng.
2.2.3 Các phần mềm hỗ trợ lập trình Android
Việc phát triển phần mềm cho Android OS có thể được thực hiện trên Hệ điều hành
Windows của Microsoft hay trên Hệ điều hành nguồn mở Linux Trong giới hạn đồ án này, nhóm chọn phát triển các ứng dụng cho Android OS trên Windows vì nó mang tính phổ biến, việc cài đặt các phần mềm hỗ trợ cho việc lập trình không quá phức tạp
Các bộ công cụ phục vụ việc lập trình ứng dụng trên Android OS gồm:
Java for Developers 6 (JDK): do các phần mềm chạy trên Android OS đều được
phát triển trên nền tảng ngôn ngữ Java nên ta cần bộ thư viện của Java, được cung cấpmiễn phí cho người phát triển phần mềm bởi Oracle
Eclipse 3.5 (GALILEO) hoặc Eclipse-Java-Indigo: bộ công cụ dùng để lập trình,
phát triển phần mềm cho Java, được cung cấp miễn phí từ trang web của Eclipse
Android software development Kit (Android SDK) plugin: là tập hợp các công cụ
và thư viện để phát triển các ứng dụng cho Android OS Sau khi cài đặt thì Android SDK sẽ được tích hợp vào chương trình Eclipse Nhà phát triển phần mềm sẽ dùng Eclipse đã tích hợp Android SDK plugin để viết ứng dụng cho Android OS
2.3 Sơ lược về họ vi điều khiển MSP430.
2.3.1 Giới thiệu.
MSP là viết tắt của chữ “ MIXED SIGNAL MICROCONTROLLER ”, được sản xuất vàphát triển bởi công ty Texas Instruments Là dòng vi điều khiển siêu tiết kiệm năng lượng, sửdụng nguồn rất thấp MSP430 kết hợp các đặc tính của một CPU hiện đại và tích hợp sẵn cáckhối ngoại vi Đặc biệt MSP430 là giải pháp thích hợp cho những ứng dụng yêu cầu trộn tínhiệu
MSP430 là một sự kết hợp chặt chẽ của một CPU RISC 16 bit, những khối ngoại vi và hệthống linh hoạt xung linh hoạt MSP430 đã đưa ra được những giải pháp tốt cho những nhu cầuứng dụng với nhiều phiên bản khác nhau MSP430 có một số phiên bản như: MSP430x1xx,MSP430x2xx, MSP430x3xx, MSP430x4xx, MSP430x5xx
Trang 32Hình 2.6 Một số dòng vi điều khiển họ MSP430
Kiến trúc nguồn điện cực thấp để mở rộng tuổi thọ của Pin:
1µA duy trì RAM
0.8µA chế độ xung thời gian thực
250µA /MIPS tích cực
Xử lý tín hiệu tương tự với hiệu suất cao:
12 bit hoặc 10 bit ADC – 200Ksps, cảm biến nhiệt, VRef
12 bit kép ADC
16 bit RISC CPU cho phép được nhiều ứng dụng, thể hiện một phần ở kích thước codelập trình:
Thanh ghi lớn nên loại trừ được trường hợp tắt nghẽn tập tin khi đang làm việc
Thiết kế nhỏ gọn làm giảm lượng tiêu thụ điện và giảm giá thành
Tối ưu hóa cho những chương trình ngôn ngữ bậc cao như C, C++
Có 7 chể độ định địa chỉ
Khả năng ngắt theo véc tơ lớn
Trong lập trình cho bộ nhớ Flash cho phép thay đổi Code một cách linh hoạt, phạm virộng, bộ nhớ Flash còn có thể lưu lại được nhật ký của dữ liệu
Trang 33Hình 2.7 Sơ đồ khối VDK MSP430
2.3.2 Các đặc điểm cơ bản của họ VDK MSP430.
2.3.2.1 Không gian địa chỉ.
Cấu trúc vi điều khiển MSP430 có một địa chỉ không gian nhớ được chia sẻ với các thanh ghichức năng đặc biết (SFRs), các bộ ngoại vi, RAM và bộ nhớ Flash/ROM Việc truy cập mã chương trình luôn luôn được thực hiện trên một địa chỉ chẵn Dữ liệu có thể được truy cập như lànhững byte hay những từ
Không gian địa chỉ nhớ có thể mở rộng hơn nữa cho những hoạt động khác
Ram có địa chỉ bắt đầu tại 0200h Địa chỉ kết thúc của RAM phụ thuộc vào số lượng RAM
có và thay đổi tùy vào từng dòng vi điều khiển RAM có thể được sử dung cho cả mã và dữ liệu
2.3.2.4 Những khối ngoại vi.
Những module giao tiếp ngoại vi được sắp xếp vào không gian địa chỉ Không gian địa chỉ từ0100h tới 01FFh được dành riêng cho module ngoại vi 16 bit Những module này có thể được truy cập với những từ chỉ dẫn ( lệnh)
Không gian địa chỉ từ 010h tới 0FFh được dành riêng cho module ngoại vi 8 bit
2.3.2.5 Những thanh ghi chức năng đặc biệt (SFR).
Trang 34Một vài chức năng ngoại vi được cấu hình trong thanh ghi chức năng đặc biệt Những thanh ghi chức năng đặc biệt được nằm trong 16 byte thấp của không gian địa chỉ Những SFR phải được truy cập bằng việc sử dụng câu lệnh byte.
2.3.2.6 Truy cập bộ nhớ.
Những byte được nằm tại địa chỉ chẵn hay lẻ Những từ chỉ nằm tại địa chỉ chẵn được biểu diễn trong hình Khi sử dụng từ chỉ dẫn, chỉ những địa chỉ chẵn có thể được sử dụng Những byte thấp của từ luôn luôn là một địa chỉ chẵn Byte cao ở tại địa chỉ lẻ tiếp theo Ví dụ nếu một
từ dữ liệu nằm tại địa chỉ xxx4h, kết thúc byte thấp của từ dữ liệu nằm tại địa chỉ xxx4h, và bytecao của từ đó nằm tại địa chỉ xxx5h
Hình 2.8 Sơ đồ bộ nhớ
Trang 35CH ƯƠNG I NG III
GI I THI U KIT ỚI THIỆU KIT ỆU KIT
TRF7970A EVM
Trang 36 Các đặc tính cơ bản của kit thí nghiệm TRF7970A EVM gồm:
Mô tả các hệ thống RFID/ NFC theo các tiêu chuẩn:
Tiêu chuẩn thu và phát ISO 15693
Tiêu chuẩn thu và phát ISO 14443 (cả loại A và B)
Tiêu chuẩn NFC (có thể đọc và ghi RFID, chia sẻ mạng đồng cấp và giả lậpthẻ)
Tiêu chuẩn thu và phát FELICA (chỉ có thể đọc UID)
Lựa chọn giao thức giao tiếp bằng thuật toán hỏi vòng Polling
Giao tiếp hiển thị giao diện người dùng (GUI) trên máy tính theo chuẩn USB
Trang 373.2 Sơ đồ nguyên lý kit TRF7970A EVM.
3.2.1.Sơ đồ khối và chức năng của các khối.
Hình 3.1 Sơ đồ khối Kit TRF7970A
Khối cài đặt: cài đặt các cấu hình giao tiếp bằng phần cứng cho vi điều khiển
MSP430F2370
Khối giao tiếp máy tính: sử dụng IC CP2103 để giao tiếp với máy tính thông qua cổng
USB, lấy nguồn cho bộ thí nghiệm
Khối hiển thị: hiển thị các trạng thái lập trình, hiển thị tín hiệu dữ liệu.
Khối vi điều khiển: sử dụng vi điều khiển MSP430F2370 để điều khiển hệ thống.
Khối RF: sử dụng IC TRF7970A để điều khiển thu phát sóng RF.
Khối anten: dùng để thu phát dữ liệu bằng sóng RF.
3.2.2 Sơ đồ nguyên lý và một số chức đặc điểm phần cứng.
GIAO TIẾP MÁY
TÍNH
BẰNG USB
VI ĐIỀU KHIỂN MSP430F2370
KHỐI RFTRF7970A
ANTEN LƯỠNG CỰC
KHỐI HIỂN THỊKHỐI CÀI ĐẶT
Trang 38Hình 3.2 Sơ đồ nguyên lý Kit TRF7970A.
Trang 39Hình 3.3 Hình ảnh tổng quan Kit TRF7970A.
Như hình vẽ trên, Kit thí nghiệm TRF7970A EVM là một phần cứng dùng để phát triển các ứng dụng, kiểm tra hoặc mô phỏng dựa trên IC TRF7970A Nhà sản xuất đã thiết kế cho kit một
bộ anten lưỡng cực, nó sẽ giúp việc thu phát trở nên hoàn thiện hơn Kit thí nghiệm được thiết lập chế độ giao tiếp giữa MSP430F2370 và TRF7970A theo chế độ truyền dữ liệu song song thông qua việc kết nối giữa 2 dãy chân HDR_4 và HDR_5 Khi điện được cấp, phần mềm của vi điều khiển MSP430F2370 sẽ tự động kiểm tra mức điện áp tại chân P2.3 (chân số 15), là chân I/
O SEL được nhà sản xuất thiết lập chế độ truyền (song song hoặc nối tiếp) bằng việc kết nối chân này với chân GND hoặc VCC tại HDR_7, và thông thường được đặt ở chuẩn kết nối dữ liệu song song Nếu muốn chuyển sang chế độ truyền SPI hoạt động ở trạng thái Slave Select (SS), ta phải chuyển các kết nối giữa HDR_4 với HDR_5 thành kết nối giữa HDR_5 với HDR_6
và cả kết nối của I/O SEL sang SPI Khi đó, chương trình sẽ tự động hiểu la ta đã chuyển từ chế
độ truyền dữ liệu song song sang truyền dữ liệu SPI ở chế độ SS
Để dễ dàng phân tích các tín hiệu, ta có thể lấy mức logic của các tín hiệu DATA_CLK và IRQ tại các hàng rào ngõ ra ở HDR_1 và HDR_3 Hoặc ở dãy hàng rào HDR_5, ta có thể thấy được các tín hiệu truyền ở chế độ song song hoặc SPI giữa MSP430F2370 và TRF7970A Ta có thể tham khảo thêm ở bảng sau:
Trang 40Bảng 3.1 Chức năng các chân HDR5
Bảng 3.2 Chức năng các chân HDR1,HDR2,HDR3
Ta cũng có thể ngắt kết nối giữa MSP430F2370 và TRF7970A để kết nối TRF7970A với các
vi điều khiển khác như các vi điều khiển dòng MSP430, Stellaris Cortex-M3, hoặc Sitara ARM8/ARM9