• Chương 3 Thiết kế Phần Cứng: đề cập đến những tính toán cụ thể để thiết kế phần cứng cho hệ thống bao gồm các thông tin về sơ đồ nguyên lý, chức năng,hoạt động các khối, các linh kiện
Trang 1TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP HCM
KHOA ĐIỆN - ĐIỆN TỬ
BỘ MÔN ĐIỆN TỬ - VIỄN THÔNG
Trang 4Mục lục
Trang 5Liệt kê hình
Trang 6Liệt kê bảng
Trang 7Tóm tắt
Sau khoảng thời gian thực hiện, người thực hiện đề tài đã hoàn thành đề tài củamình và có những đặc điểm nổi bật như sau:
Về phần hiển thị, mạch thiết kế có 5 Led ma trận, được tính toán cấp nguồn sao cho
đủ dòng để Led sáng rõ và đẹp Sử dụng thêm IC ghi dịch để tiết kiệm số chân vi điềukhiển và có khả năng mở rộng không giới hạn
Về phần điều khiển, người thực hiện đề tài chọn sử dụng PIC 18F4550 có hỗ trợgiao tiếp ethernet thông qua chuẩn SPI, bộ nhớ lớn có thể chứa nội dung trang web vàmảng quét Led ma trận Trang web điều khiển được nhúng vào vi diều khiển nên tạo sựthuận lợi khi sử dụng
Về giao diện của chương trình, nó được thiết kế đơn giản, dễ sử dụng nhưng vẫn có
đủ các chức năng như truyền chuỗi hiển thị, cài đặt các thông số, tốc độ…
Nội dung đề tài được chia thành 6 chương và được sắp xếp như sau:
• Chương 1 Giới thiệu: trình bày tổng quan nội dung chính trong đề tài – những
vấn đề sẽ được đề cập đến trong toàn bộ đồ án
• Chương 2 Cơ sở Lý thuyết: chương này sẽ trình bày về lý thuyết vi điều
khiển PIC18F4550 và trình biên dịch mikroC PRO for PIC, module EthernetENC28J60 và chuẩn giao tiếp SPI, led matrix và các phương pháp điều khiển
• Chương 3 Thiết kế Phần Cứng: đề cập đến những tính toán cụ thể để thiết kế
phần cứng cho hệ thống bao gồm các thông tin về sơ đồ nguyên lý, chức năng,hoạt động các khối, các linh kiện sử dụng trong mạch
• Chương 4 Thiết kế phần Mềm: đề cập đến những tính toán cụ thể để thiết kế
phần mềm cho hệ thống bao gồm phân tích các chương trình trên máy tính, cácyêu cầu và hướng giải quyết, phân tích chương trình trên vi điều khiển, giảiquyết lưu đồ giải thuật cho chương trình
• Chương 5 Kết Quả: bao gồm kết quả thi công mạch điện tử, giao diện trên
máy tính
• Chương 6 Kết Luận: trình bày kết quả đạt được, những hạn chế và hướng
phát triển của đề tài
Trang 8Chương 1 Giới Thiệu
1.1 Tình hình nghiên cứu hiện nay
Vấn đề truyền dữ liệu giữa thiết bị và máy tính hay từ máy tính xuống thiết bị là mộtkhâu khá quan trọng trong khi thiết kế hệ thống Mục đích giao tiếp trên máy tính làgiúp người sử dụng kiểm soát được các thông số hoạt động của thiết bị trên máy tính
và điều khiển được thiết bị thông qua máy tính một cách dễ dàng
Hiện nay có nhiều phương pháp kết nối máy tính với các thiết bị điều khiển như kếtnối theo chuẩn RS232, LPT…, tuy nhiên khi thực hiện kết nối theo các chuẩn này thìgặp những hạn chế:
• Khoảng cách kết nối giữa máy tính và thiết bị điều khiển khoảng 30 – 50 m
• Tốc độ truyền dữ liệu tối đa 19,2 kBd
• Kết nối điểm – điểm
Từ những hạn chế trên nhóm thực hiện đề tài đã nghiên cứu và thực hiện đề tài
“Thiết Kế Thi Công Mạch Quang Báo Điều Khiển Bằng Web Nhúng” có nhiều cải
• Xây dựng được trang web nhúng vào vi điều khiển, và thông qua trang web đó
có thể điều khiển được mạch quang báo
1.3 Nhiệm vụ của đề tài
Để có thể đạt được mục tiêu đề ra, nhóm thực hiện đề tài đã đưa ra nhiệm vụ cầnphải thực hiện:
• Thiết kế và thi công mạch phần cứng điều khiển
• Thiết kế giao diện phần mềm giúp người sử dụng theo dõi và điều khiển mạchphần cứng
Trang 91.4 Giới thiệu tổng quan nội dung các chương
• Chương 1 Giới thiệu: trình bày tình hình nghiên cứu hiện nay, mục tiêu,
nhiệm vụ của của đề tài
• Chương 2 Cơ sở Lý thuyết: trình bày về lý thuyết vi điều khiển PIC18F4550
và trình biên dịch mikroC PRO for PIC, module Ethernet ENC28J60 và chuẩngiao tiếp SPI, led matrix và ngôn ngữ HTML
• Chương 3 Thiết kế Phần Cứng: bao gồm các thông tin về sơ đồ nguyên lý,
chức năng, hoạt động các khối, sơ đồ mạch in
• Chương 4 Thiết kế phần Mềm: đề cập đến thiết kế phần mềm cho hệ thống
bao gồm phân tích các chương trình trên máy tính, các yêu cầu và hướng giảiquyết, phân tích chương trình trên vi điều khiển, giải quyết lưu đồ giải thuậtcho chương trình
• Chương 5 Kết Quả: bao gồm kết quả thi công mạch điện tử, giao diện trên
máy tính
• Chương 6 Kết Luận: trình bày kết quả đạt được, những hạn chế và hướng
phát triển của đề tài
Trang 10Chương 2 Cơ Sở Lý Thuyết
2.1 Tổng quan về mạng Ethernet
2.1.1 Giới thiệu
Ethernet là một công nghệ mạng nội bộ (LAN) được ứng dụng chủ đạo ngày nay vàchiếm 85% các máy PC và máy trạm có kết nối mạng LAN Nói tới Ethernet tức là đềcập tới họ sản phẩm LAN theo chuẩn IEE 802.3, công nghệ này cho phép dùng cápquang và cáp xoắn đôi
Ethernet dùng phuơng pháp truy nhập Carrier Sensing Multiple Access - CollisionDetection (CSMA-CD) tạm dịch là đa truy nhập cảm nhận sóng mang có phát hiệnxung đột CSMA-CD là hệ luật chỉ rõ các hành động mà mỗi thiết bị mạng phải thựchiện khi có xung đột Truớc khi một trạm truyền 1 frame, nó nghe ngóng môi truờngtruyền: [1]
• Nếu môi truờng đang rảnh, nó sẽ truyền frame đó Trong quá trình truyền, nótheo dõi môi truờng truyền để phát hiện xung đột Nếu có xung đột xảy ra,trạm đó huỷ việc truyền frame đó
• Nếu môi truờng truyền đang bận, nó sẽ liên tục lắng nghe môi truờng truyền,ngay khi môi truờng hết bận, nó sẽ bắt đầu truyền frame
Ethernet thuộc lớp giao tiếp mạng trong mô hình TCP/IP hay thuộc lớp vật lý và lớpliên kết dữ liệu trong mô hình OSI
Ethernet được chuẩn hóa bởi IEEE thành IEEE 802.3 vào những năm 1980 IEEE802.3 quy định tốc độ bit tối đa, chế độ truyền và môi truờng truyền của Ethernet:
• Tốc độ bit tối đa(Mbits/s): 10, 100, 1000…
• Chế độ truyền: broadband, baseband
• Môi truờng truyền: cáp đồng trục, cáp quang, cáp UTP…
• 10Base-T: sử dụng cáp xoắn đôi UTP tốc độ 10Mb/s
• 100Base-T: sử dụng cáp UTP tốc độ 100Mb/s
• Gigabit Ethernet sử dụng cả cáp quang hoặc cáp xoắn đôi với tốc độ truyền là1Gb/s
Trang 112.1.2 Khung truyền:
Bảng 2.1: Khung truyền
Một frame của Ethernet bao gồm các phần sau:
Phần mở đầu: 7 bytes (không được tính vào kích thước frame của Ethernet)
• Tất cả các byte đều có giá trị 10101010
• Được dùng để đồng bộ đồng hồ giữa nơi nhận và gửi frame
SFD (Start frame delimiter): 1 byte (không được tính vào kích thước Ethernet
frame)
• Byte này có giá trị 10101011
• Được dùng để đánh dấu bắt đầu một frame
• Tuy vậy, không có end-frame-delimieter cho Ethernet frame Việc thêm bit/byte (stuffing) cũng không được sử dụng cho các bit thông tin Kết thúc của một frame được phát hiện bằng việc sử dụng tín hiệu vật lý
Địa chỉ nơi đến: 6 bytes
• Đây là địa chỉ MAC của Ethernet card của nơi đến
• Ý nghĩa của bit thấp nhất (least-significant bit) xác định 6 bytes này:
Trang 12- ff-ff-ff-ff-ff-ff-ff: địa chỉ quảng bá (broadcast)
o Ở chế độ hoạt động bình thường, Ethernet chỉ tiếp nhận những frame có địa chỉ nơi đến trùng với địa chỉ (duy nhất) của nó, hoặc địa chỉ nơi đến thể hiện một thông điệp quảng bá Tuy vậy, hầu hết các Ethernet card đều
có thể được đặt ở chế độ "promiscuous" Trong chế độ này, nó sẽ nhận tất
cả các frame xuất hiện trong mạng LAN
• Đây là địa chỉ MAC của Ethernet card nguồn
Loại/ Độ dài: 2 bytes
• Có hai loại cấu trúc Ethernet frame :
o IEEE 802.3 MAC: Dùng để chỉ độ dài của Ethernet frame
o DIX Ethernet: Được công bố bởi DEC, Intel và Xeror vào năm
1980 (phổ biến hơn) Dùng để chỉ giao thức của lớp phía trên
Phần thông tin: Từ 46 tới 1500 bytes:
• Do kích thước frame tối thiều là 64 bytes, kích thước tối thiểu của phần thông tin là 64-18=46 bytes
Trang 13• Kích thước phần thông tin tối đa là 1500 bytes Do đó, kích thước gói IP trong Ethernet tối đa là 1500 bytes, đây cũng là một trong ba kích thước gói
IP thông dụng nhất (40, 576, 1500)
• Chứa mã kiểm tra CRC 32 bits
Trang 142.2 Vi điều khiển PIC18F4550 và Trình biên dịch mikroC PRO for PIC
2.2.1 Giới thiệu khái quát PIC18F4550 [2 ]
Hình 2.2: hình dạng thực tế của PIC 18F4550
PIC18 là dòng vi điều khiển cao cấp của họ vi điều khiển PIC với việc thêm vào khảnăng chịu đựng cao và tăng cường bộ nhớ flash PIC18 sử dụng công nghệ nanoWattnhằm mở rộng các tính năng đáng kể nhằm giảm mức tiêu thụ điện năng
Điểm riêng biệt của vi xử lý PIC18F4550 là một trong những PIC hỗ trợ đầy đủ cáctí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áytí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ọ PIC18F dựa trên kiến trúc 16-bit tập lệnh PIC18F4550 bao gồm 32KB bộ nhớflash, 2KB SRAM và 256 Bytes EEPROM Đây là một trong 40 chân của vi điều khiểnPIC bao gồm 5 cổng I / O (PORTA, PORTB, PORTC, PORTD và PORTE) PORTB
và PORTD có 8 chân để nhận / truyền 8-bit I / O dữ liệu Các cổng còn lại có số lượng
khác nhau của các chân cho I / O truyền thông dữ liệu PIC18F4550 có thể làm việc
trên các nguồn clock nội bộ và bên ngoài khác nhau Nó có thể làm việc trên một phạm
vi với tần số từ 31 KHz đến 48 MHz Có thiết bị ngoại vi sẵn có khác nhau như ADC,
bộ so sánh… trong bộ vi điều khiển này
PIC18F4550 là một vi điều khiển tiên tiến được trang bị giao thức truyền thông nângcao như EUSART, SPI, I2C, USB…
Trang 15Hình 2.3: Cấu trúc PIC 18F4550
Bảng 2.2: Thông số kỹ thuật cả PIC18F4550
Kỹ thuật số truyền thông thiết bị ngoại vi UART, A/E/USART, SPI,
1-I2C1-MSSP (SPI/I2C)Capture/Compare / PWM thiết bị ngoại vi 1 CCP, 1 ECCP
USB (ch, speed, compliance) 1, tốc độ đầy đủ, USB 2.0
Trang 16• Bộ nhớ flash với 100.000 lần ghi/xóa.
• Bộ nhớ EEPROM với 1.000.000 lần ghi/xóa
• Tuổi thọ bộ nhớ EEPROM và flash lên đến trên 40 năm
• Tầm điện áp hoạt động từ 2.0 đến 5.5V
Trang 17Hình 2.4: Sơ đồ chân PIC18F4550 Bảng 2.3: Mô tả các chân PIC18F4550
AN0: đầu vào Analog 0
VREF-: A / D điện áp tham chiếu (Thấp) đầu vào
CVREF: đầu ra so sánh tham chiếu Analog
VREF +: A / D điện áp tham chiếu (Cao) đầu vào
Timer0
C1OUT: so sánh output 1RCV: đầu vào thu phát USB RCVngoài
SS: SPI slave chọn đầu vàoHLDVIN: High / Low-Voltage phát đầu vào
Trang 18OESPP: SPP Enabled output
Osc2: Oscillator pin 2
Pins 1-3
T1OSO: Timer1 đầu ra dao độngT13CKI: Timer1/Timer3 đầu vào đồng hồ bên ngoài
CCP2: Chụp 2 đầu vào / đầu ra so sánh 2 output/PWM2
UOE: thu phát ngoài cổng USB
cung cấp dương tính với bộ thu phát USB
Pins 1-4
SPP0-SPP4Luồng dữ liệu cổng song song
dòng (đầu vào / đầu ra)
VP: đầu vào thu phát USB VP ngoài
Trang 19(xem RX / DT).
nhận được
DT: dữ liệu đồng bộ EUSART (xem TX / CK)
SDO: SPI dữ liệu ra
songP1C: Tăng cường sản lượng CCP1 PWM, kênh C
songSản lượng tăng cường CCP1 PWM, kênh D: P1D
AN12: đầu vào Analog 12
INT2: ngắt ngoài 2
VMO: thu phát ngoài cổng USB VMO đầu ra
CCP2: Chụp 2 đầu vào / đầu ra so sánh 2 output/PWM2
VPO: thu phát USB đầu ra VPO ngoài
Trang 2037 RB4/AN11/KBI0/CSSPP AN11: đầu vào Analog 11.
KBI0: Gián đoạn-on-thay đổi pin.CSSPP: chip SPP chọn đầu ra kiểm soát
PGM: điện áp thấp ICSP lập trình cho phép pin
PGC: điện áp thấp ICSP lập trình cho phép pin
PGD: In-Circuit Debugger và ICSP lập trình dữ liệu pin
2.2.2 Trình biên dịch mikroC PRO for PIC
Các trình biên dịch cho vi điều khiển PIC nói chung phát triển theo 2 hướng:
• Hướng tiện dụng, nhanh chóng: phổ biến nhất là CCS C và mikroC
• Hướng chuyên sâu: phổ biến nhất là HITECH C, MPLAB XC
Xét thấy mức độ phổ biến hiện nay, mảng thư viện hỗ trợ mạnh cho người dùng từphía nhà sản xuất, và quy mô đồ án môn học, đồng thời cũng do là lần đầu tiên tiếp cậnvới vi điều khiển PIC, nên người thực hiện đề tài đã quyết định lựa chọn trình biên dịchmikroC PRO for PIC để thực hiện đồ án môn học này
Có thể khát quát một số ưu, nhược điểm của trình biên dịch này như sau:
Ưu điểm:
• Dễ sử dụng: chỉ cần có kiến thức về C cơ bản
• Nhiều thư viện hỗ trợ: rút ngắn thời gian lập trình
• Hỗ trợ nhiều công cụ đi kèm : USART Terminal, UDP terminal, …
• Phổ biến nên nhiều tài liệu tham khảo, diễn đàn trao đổi học tập: rút ngắnthời gian nghiên cứu
Nhược điểm:
• Tính bao đóng của thư viện và các hàm trong thư viện dẫn đến không thểsửa đổi thư viện, không thể kết hợp với những cú pháp của các trình biêndịch khác
• Không tối ưu về code: do ảnh hưởng của nhược điểm đầu tiên nên mãchương trình sau khi biên dịch sẽ có nhiều đoạn không cần thiết
Trang 21• Khó có thể lập trình theo hướng Realtime hoặc những ứng dụng yêu cầukhắt khe về thời gian tính toán.
2.3 Module Ethernet ENC28J60 [ 3 ] và chuẩn giao tiếp SPI
2.3.1 Giới thiệu
− ENC28J60 là vi điều khiển hỗ trợ kết nối Ethernet cho bất kỳ vi điều khiển nào
có giao tiếp SPI ENC28J60 được thiết kế và chế tạo bởi Microchip gồm có 28chân
− Phần cứng của ENC28J60 được tích hợp trong cả hai lớp kết nối dữ liệu vàlớp vật lý
− Hỗ trợ giao tiếp SPI với tốc độ tối đa đạt 20MHz
− Điện áp hoạt động của ENC28J60 từ 3.1V đến 3.6V
− Hỗ trợ công nghệ 10BASE-T
− Hỗ trợ truyền song công và bán song công
Bảng 2.4: Thông số kỹ thuật của ENC28J60
Nhiệt độ Khoảng Min (° C) -40
Nhiệt độ Khoảng Max (° C) 85
Standalone Ethernet Controller 10Base-T
Trang 222.3.2 Khảo sát ENC28J60
Hình 2.5: Sơ đồ chân ENC28J60
Hình 2.6: Sơ đồ khối ENC28J60
Trang 23Giao tiếp giữa vi điều khiển với ENC28J60
• Sơ đồ kết nối với vi điều khiển
Hình 2.7: Kết nối phần cứng vi điều khiển với ENC28J60 Nguyên lý hoạt động của mạch:
• Vi điều khiển ENC28J60 được điều khiển hoàn toàn thông qua giao tiếp SPIvới PIC18
• PIC18 đóng vai trò là Master trong giao tiếp SPI với ENC28J60
• Tương tự như kết nối mạng trên PC, PIC18 đóng vai trò là PC còn
ENC28J60 đóng vai trò như card mạng
• Nhận dữ liệu:
- Tín hiệu yêu cầu từ mạng truyền qua cổng RJ45 vào ENC28J60
ENC28J60 được thiết kế để giải mã tín hiệu và chuyển tín hiệu đó thành
dữ liệu và lưu vào bộ đệm thu Thông qua giao tiếp SPI, PIC18 liên tục kiểm tra bộ đệm của ENC28J60 Nếu phát hiện có dữ liệu nó sẽ đọc dữ liệu và xử lí
• Truyền dữ liệu:
- Thông qua giao tiếp SPI, PIC18 sẽ gửi dữ liệu vào bộ đệm phát của ENC28J60 ENC28J60 sẽ mã hóa dữ liệu và truyền ra đường RJ45 đến địa chỉ mong muốn
2.3.3 Truyền thông SPI
Module MSSP của PIC18F4620 có 2 chế độ: chế độ SPI và chế độ I2C Trong đề tàinày sẽ chỉ trình bày về chế độ SPI
Trang 24Chế độ SPI cho phép 8 bits dữ liệu truyền và nhận đồng thời 4 chế độ SPI đều được
hỗ trợ Để có thể giao tiếp cần 4 chân:
• Serial Data Out (SDO) – RC5/SDO: ngõ ra dữ liệu
• Serial Data In (SDI) – RC4/SDI/SDA: ngõ vào dữ liệu
• Serial Clock (SCK) – RC3/SCK/SCL: xung giữ nhịp của SPI
• Slave Select (SS) – RA5/AN4/SS/HLVDIN/C2OUT: đường chọn Slave cần giao tiếp Nếu Master kéo SS xuống mức thấp thì việc giao tiếp giữa Master vàSlave sẽ xảy ra
Có 4 thanh ghi liên quan đến chế độ SPI: SSPCON1, SSPSTAT, SSPBUF, SSPSR
• SSPSR: là thanh ghi dịch, sử dụng để dịch dữ liệu vào, ra
• SSPBUF: là thanh ghi đệm có chức năng chứa giá trị nhận được và phát đi của
SPI
Trong chế độ nhận, SSPSR và SSPBUF tạo thành cặp bộ đệm nhận Khi SSPSRnhận hoàn chỉnh 1byte, nó được truyền sang SSPBUF và cờ ngắt SSPIF được bật lên.Trong chế độ truyền, việc ghi đến SSPBUF sẽ ghi đến cả SSPBUF và SSPSR
• SSPCON1: là thanh ghi điều khiển trong chế độ SPI
Hình 2.8: Thanh ghi SSPCON1
• WCOL: bit phát hiện xung đột ghi
- 1 = thanh ghi SSPBUF được ghi trong khi nó vẫn đang truyền ở lệnh trước (phải được xóa bằng phần mềm)
- 0 = không xung đột
• SSPOV: bit chỉ định nhận tràn
• SSPEN: bit cho phép module MSSP hoạt động
Trang 25- 1 = cho phép.
- 0 = cấm
• CKP: bit chọn cực tính của xung
- 1 = trạng thái nghỉ của xung là mức cao
- 0 = trạng thái nghỉ của xung là mức thấp
• SSPM3:SSPM0: bit chọn chế độ hoạt động của module MSSP
- 0101 = chế độ SPI Slave, xung = chân SCK, không sử dụng chân SS
- 0100 = chế độ SPI Slave, xung = chân SCK, chân SS sử dụng
- 0011 = chế độ SPI Master, xung = ngõ ra TMR2/2
- 0010 = chế độ SPI Master, xung = Fosc/64
- 0001 = chế độ SPI Master, xung = Fosc/16
- 0000 = chế độ SPI Master, xung = Fosc/4
SSPSTAT: là thanh ghi trạng thái, 6 bits thấp chỉ đọc, 2 bits cao cho phép
đọc/ghi
Hình 2.9: Thanh ghi SSPSTAT
• SMP: bit mẫu
Chế độ SPI Master
1 = dữ liệu ngõ vào được lấy mẫu tại thời điểm kết thúc ngõ ra dữ liệu
0 = dữ liệu ngõ vào được lấy mẫu tại thời điểm giữa ngõ ra dữ liệu
Chế độ SPI Slave
SMP phải được xóa
• CKE: bit chọn xung SPI
Trang 261 = Việc truyền xuất hiện khi có xung tác động cạnh xuống
0 = Việc truyền xuất hiện khi có xung tác động cạnh lên
• BF: bit báo bộ đệm đầy
1 = quá trình nhận hoàn tất, SSPBUF đầy
0 = quá trình nhận chưa hoàn tất, SSPBUF rỗng
Kết nối điển hình giữa Master và Slave
Hình 2.10: Kết nối Master và Slave
Master có thể truyền dữ liệu bất cứ lúc nào bởi vì nó điều khiển đường xung giữnhịp SCK Cứ mỗi xung nhịp do Master tạo ra trên đường giữ nhịp SCK, một bit trongthanh ghi đệm của Master được truyền qua Slave SDO (Master) -> SDI (Slave) Đồngthời 1 bit trong thanh ghi đệm của chip Slave cũng được truyền qua Master SDO(Slave) -> SDI (Master) Do 2 gói dữ liệu trên 2 chip được gởi qua lại đồng thời nênquá trình truyền dữ liệu này được gọi là song công
Cực của xung giữ nhịp (CKP) là khái niệm dùng chỉ trạng thái chân SCK ở trạngthái nghỉ Ở trạng thái nghỉ (Idle) chân SCK có thể được giữ ở mức cao (CKP=1) hoặcmức thấp (CKP=0) Pha (SMP) chỉ cách mà dữ liệu được lấy mẫu theo xung giữ nhịp
Dữ liệu có thể được lấy mẫu ở cạnh lên của SCK (SMP=1) hoặc cạnh xuống (SMP=0)
Sự kết hợp giữa CKP và CKE tạo nên 4 chế độ hoạt động của SPI
Trang 27 Chế độ Master:
Hình 2.11: Dạng sóng chế độ Master
Trang 28 Chế độ Slave:
Hình 2.12: Dạng sóng chế độ Slave
Trang 29Hình 2.13: SPI giữa một chip Master và 3 chip Slave thông qua 4 đường
2.4 Giới thiệu về HTML [ 4 ]
2.4.1 Giới thiệu
HTML (tiếng Anh, viết tắt cho "HyperText Markup Language", tức là "Ngôn ngữĐánh dấu Siêu văn bản") là một ngôn ngữ đánh dấu được thiết kế ra để tạo nên cáctrang web, nghĩa là các mẩu thông tin được trình bày trên World Wide Web Đượcđịnh nghĩa như là một ứng dụng đơn giản của SGML, vốn được sử dụng trong các tổchức cần đến các yêu cầu xuất bản phức tạp, HTML giờ đây đã trở thành mộtchuẩn Internet do tổ chức World Wide Web Consortium (W3C) duy trì Phiên bản mớinhất của nó hiện là HTML 4.01 Sau đó, người ta đã thay thế nó bằng XHTML Hiệnnay, các nhà phát triển đang tập trung hoàn thiện phiên bản tiếp theo của HTML
Trang 30bản WYSIWYG phức tạp HTML không phải là ngôn ngữ lập trình, nó là ngôn ngữtrình bày.
• Đánh dấu Có cấu trúc miêu tả mục đích của phần văn bản (ví
dụ, <h1>Golf</h1> sẽ điều khiển phần mềm đọc hiển thị "Golf" là đề mục cấp một),
• Đánh dấu trình bày miêu tả phần hiện hình trực quan của phần văn bản bất
kể chức năng của nó là gì (ví dụ, <b>boldface</b> sẽ hiển thị đoạn văn bản boldface) (Chú ý là cách dùng đánh dấu trình bày này bây giờ không còn được khuyên dùng mà nó được thay thế bằng cách dùng CSS),
• Đánh dấu liên kết ngoài chứa phần liên kết từ trang này đến trang kia (ví
dụ, <a href="http://www.wikipedia.org/">Wikipedia</a> sẽ hiển thị
từ Wikipedia như là một liên kết ngoài đến một URL) cụ thể, và
• Các phần tử thành phần điều khiển giúp tạo ra các đối tượng (ví dụ, các nút
và các danh sách)
Tách phần trình bày và nội dung
Nỗ lực tách phần nội dung ra khỏi phần hình thức trình bày của trang HTML đã đưađến sự xuất hiện của các chuẩn mới như XHTML Các chuẩn này nhấn mạnh vào việc
sử dụng thẻ đánh dấu vào việc xác định cấu trúc tài liệu như phần đề mục, đoạn văn,khối văn bản trích dẫn và các bảng, chứ không khuyên dùng các thẻ đánh dấu mangtính chất trình bày trực quan, như <font>,<b> (in đậm), và <i> (in nghiêng) Những mãmang tính chất trình bày đó đã được loại bỏ khỏi HTML 4.01 Strict và các đặc
tả XHTML nhằm tạo điều kiện cho CSS CSS cung cấp một giải pháp giúp tách cấutrúc HTML ra khỏi phần trình bày của nội dung của nó
Định nghĩa kiểu tài liệu (DTD)
Tất cả các trang HTML nên bắt đầu với một khai báo Định nghĩa kiểu tài liệu (hayDTD) Ví dụ:
"http://www.w3.org/TR/html4/strict.dtd">
Trang 312.4.2 Phần tử HTML.
Phần tử HTML hay còn được biết đến với tên Tag hay Entity hay thẻ HTML làngôn ngữ đánh dấu (markup-language) do đó có thể hiểu một phần tử HTML chính làmột đoạn văn bản được đánh dấu để thể hiện theo một cách nào đó
HTML có nhiều loại phần tử và mỗi phần tử HTML có một tên cũng như tác dụngkhác nhau, có phần tử dùng để chỉ cả một tài liệu nhưng có phần tử chỉ sử dụng để mô
< p > đây là nội dung của thẻ "p" < / p >
Có một số phần tử HTML không cần thẻ đóng, khi đó để đảm bảo tính hợp lệ của HTML, bạn nên đặt thêm một dấu gạch chéo ở cuối thẻ mở Ví dụ:
< img src = "test.jpg" >
Một số phần tử nổi bật
Trang 32Bảng 2.5: Danh sách một số phần tử nổi bật của ngôn ngữ HTML
head Phần tử head là phần tử chứa phần đầu của tài liệu HTML, tại đây sẽ chứa những mô tả, nội dung hoặc tham chiếu cần thiết cho tài liệu
a Phần tử a chứa một siêu liên kết tới một điểm trong tài liệu HTML hiện tại hoặc một tài liệu HTML khác (a
2.4.3 Cấu trúc cơ bản của HTML
Một tài liệu HTML cơ bản cần có cấu trúc như sau:
Một cặp thẻ trong file html được nghĩa như sau:
<tên thẻ>Nội dung</tên thẻ>, ngoài ra cũng có một số thẻ được định nghĩa
khác ví dụ như thẻ meta <meta nội dung thẻ />, <br />
<tên thẻ> là dấu hiệu bắt đầu của một thẻ.
</tên thẻ> là dấu hiệu kết thúc một thẻ.
Trong cấu trúc trên có những cặp thẻ sau:
Trang 33- <HTML></HTML>Là cặp thẻ được sử dụng để xác nhận đó là một file HTML.
<meta http-equiv="Content-Type" content="text/html; 8" />
charset=utf-Xác định file được định dạng theo chuẩn utf-8
- <HEAD></HEAD> Được dùng để xác định phần mở đầu cho file
- <TITLE></TITLE> Cặp thẻ này chỉ có thể sử dụng trong phần mở đầu của tài liệu, nó phải nằm trong thẻ HEAD, thể hiện tiêu đề của trang HTML này khiđược chạy trên Internet hoặc Localhost
- <BODY></BODY> Thẻ này được sử dụng để xác định phần nội dung chính của bài viết thể hiện trên file này
- <h1></h1> Thẻ định dạng đề mục, thường người lập trình sẽ đặt tiêu đề bài viết vào cặp thẻ định dạng này
- <p></p> Được sử dụng để định dạng một đoạn văn bản.
- </BR> Là thể không có mở đầu và kết thúc thẻ, thẻ này xuất hiện ở đâu thì phần nội dung dưới đó sẻ sang dòng mới
- <B></B> Được sử dụng để định dạng một đoạn văn bản được in đậm.
- <i></i> Được sử dụng để định dạng một đoạn văn bản được in nghiêng.
- <u></u> Được sử dụng để định dạng một đoạn văn bản được nghạch dưới.
- <UL> Cặp thể kết hợp dùng để định dạng danh sách thông thường:
- <li> </li> Mục thứ nhất Cặp thể kết hợp dùng để định dạng danh sách thông thường:
- <li></li> Mục thứ hai Cặp thể kết hợp dùng để định dạng danh sách thông thường
- </UL>Cặp thể kết hợp dùng để định dạng danh sách thông thường:
2.5 Led Ma trận
2.5.1 Giới thiệu về led ma trận
Bảng hiển thị ma trận LED có rất nhiều loại và đủ kích cỡ to nhỏ khác nhau, mỗibảng gồm có rất nhiều LED đơn được ghép lại với nhau trong một khối Trong khối đó