Một bộ mô tả thông báo định nghĩa khuôn dạng và công dụng của dữ liệu chứa trong các report. Ví dụ nếu thiết bị là một con chuột thì dữ liệu trong report sẽ thông báo cho máy chủ biết sự di chuyển của con chuột và các sự kiện click chuột, nếu thiết bị là một bộ điều khiển rơle thì dữ liệu trong báo cáo sẽ cho biết rơle nào mở và rơle nào đóng.
Một bộ mô tả thông báo định nghĩa khuôn dạng và công dụng của dữ liệu chứa trong các report. Ví dụ nếu thiết bị là một con chuột thì dữ liệu trong report sẽ thông báo cho máy chủ biết sự di chuyển của con chuột và các sự kiện click chuột, nếu thiết
bị là một bộ điều khiển rơle thì dữ liệu trong báo cáo sẽ cho biết rơle nào mở và rơle nào đóng.
3.3 Giới thiệu về vi điều khiển PIC và PIC 18F45503.3.1 Vi điều khiển PIC 3.3.1 Vi điều khiển PIC
PIC là một họ vi điều khiển theo kiến trúc Havard được sản xuất bởi công ty Microchip Technology. Dòng PIC đầu tiên là PIC1650 được phát triển bởi Microelectronics Division thuộc General Instrument.
PIC bắt nguồn là chữ viết tắt của "Programmable Intelligent Computer" là một sản phẩm của hãng General Instruments đặt cho dòng sản phẩm đầu tiên của họ là PIC1650. Lúc này, PIC1650 được dùng để giao tiếp với các thiết bị ngoại vi cho máy chủ 16bit CP1600, vì vậy, người ta cũng gọi PIC với cái tên "Peripheral Interface Controller". CP1600 là một CPU tốt, nhưng lại kém về các hoạt động xuất nhập, và vì vậy PIC 8-bit được phát triển vào khoảng năm 1975 để hỗ trợ hoạt động xuất nhập cho CP1600. PIC sử dụng microcode đơn giản đặt trong ROM.
PIC sử dụng tập lệnh RISC, với dòng PIC low-end (độ dài mã lệnh 12 bit, ví dụ: PIC12Cxxx) và mid-range (độ dài mã lệnh 14 bit, ví dụ: PIC16Fxxxx), tập lệnh bao gồm khoảng 35 lệnh, và 70 lệnh đối với các dòng PIC high-end (độ dài mã lệnh 16 bit, ví dụ: PIC18Fxxxx). Tập lệnh bao gồm các lệnh tính toán trên các thanh ghi, với các hằng số, hoặc các vị trí bộ nhớ, cũng như có các lệnh điều kiện, lệnh nhảy/gọi hàm, và các lệnh để quay trở về, nó cũng có các tính năng phần cứng khác như ngắt hoặc sleep (chế độ hoạt động tiết kiện điện). Microchip cung cấp môi trường lập trình MPLAB, nó bao gồm phần mềm mô phỏng và trình dịch ASM.
Hiện nay có khá nhiều dòng PIC và có rất nhiều khác biệt về phần cứng, nhưng các chức năng chính có thể điểm qua một vài nét như sau:
• 8/16 bit CPU, xây dựng theo kiến trúc Harvard có sửa đổi khác với kiến trúc Von Neumann của AVR.
• Flash và ROM có thể tuỳ chọn từ 256 byte đến 256 Kbyte
• Các cổng Xuất/Nhập (I/O ports) (mức logic thường từ 0V đến 5.5V, ứng với logic 0 và logic 1)
• 8/16 Bit Timer
• Công nghệ Nanowatt (dòng PIC 18Fxxxx)
• Các chuẩn Giao Tiếp Ngoại Vi Nối Tiếp Đồng bộ/Không đồng bộ USART, AUSART, EUSARTs
• Bộ chuyển đổi ADC Analog-to-digital converters, 10/12 bit
• Bộ so sánh điện áp (Voltage Comparators)
• Các module Capture/Compare/PWM
• LCD
• MSSP Peripheral dùng cho các giao tiếp I²C, SPI, và I²S
• Bộ nhớ nội EEPROM - có thể ghi/xoá lên tới 1 triệu lần
• Module Điều khiển động cơ, đọc encoder
• Hỗ trợ giao tiếp USB
• Hỗ trợ điều khiển Ethernet
• Hỗ trợ giao tiếp CAN
• Hỗ trợ giao tiếp LIN
• Hỗ trợ giao tiếp IrDA
• Một số dòng có tích hợp bộ RF (PIC16F639, và rfPIC)
• KEELOQ Mã hoá và giải mã
• DSP những tính năng xử lý tín hiệu số (dsPIC)
Ở Việt Nam thì PIC được sử dụng rộng rãi, rất dễ kiếm và có hẳn nguyên 1 diễn đàn hỗ trợ về lập trình cho PIC là trang http://www.picvietnam.com
3.3.2 PIC 18F4550 và module USB.
PIC18F4550 là dòng vi điều khiển hiệu năng cao có giá thành rẻ. Nó là sản phẩm của họ vi xử lý PIC thông dụng của công ty Microchip của Mỹ có trụ sở đặt tại Chandler, Arizona (Mỹ).
Điểm riêng biệt của vi xử lý PIC18F4550 là một trong những PIC hỗ trợ đầy đủ các tính năng cho USB, nghĩa là ta nối trực tiếp các chân USB của vi điều khiển tới máy tính mà không cần mạch kéo hay bất cứ mạch gắn ngoài nào khác.
Hình 3. 10 Vi xử lí PIC 18F4550
Những tính năng của PIC 18F4550:
Tính năng Mô tả
Operating Frequency DC – 48 MHz
Program Memory (Bytes) 32768
Program Memory (Instructions) 16384
Data Memory (Bytes) 2048
Data EEPROM Memory (Bytes) 256
Interrupt Sources 20
I/O Ports Ports A, B, C, D, E
Timers 4 Capture/Compare/PWM Modules 1 Enhanced Capture/ Compare/PWM Modules 1 Serial Communication MSSP, Enhanced USART Universal Serial Bus (USB)
Module
1
Streaming Parallel Port (SPP) Yes
13-Bit Analog-to-Digital Module Yes
Comparator 2
Resets (and Delays) POR, BOR,
RESET Instruction, Stack Full, Stack Underflow (PWRT, OST), MCLR (optional), WDT
Detect
Programmable Brown-out Reset Yes