TÌNH HÌNH NGHIÊN CỨU HIỆN NAY
1.1.1 Tình hình nghiên cứu ngoài nước:
Việc ứng dụng led ma trận RGB trong trình chiếu hình ảnh hiện nay được xem là phương pháp tối ưu nhờ vào giá thành thấp, dễ sử dụng và khả năng mở rộng linh hoạt Các thiết bị sử dụng led ma trận RGB đang được cải tiến liên tục để nâng cao độ chính xác, cải thiện độ phân giải hình ảnh, tăng tính thẩm mỹ, kéo dài tuổi thọ và tiết kiệm năng lượng Chất lượng hình ảnh tốt với giá cả hợp lý luôn là ưu tiên hàng đầu của các nhà nghiên cứu Nhiều công ty lớn như Samsung và IKEA cũng đang tham gia vào lĩnh vực sản xuất và ứng dụng công nghệ led này.
1.1.2 Tình hình nghiên cứu trong nước:
Trong trường học, các môn học chuyên ngành điện tử đã giúp học sinh, sinh viên tiếp xúc và nghiên cứu về led ma trận Ngành công nghiệp Việt Nam cũng ghi nhận sự phát triển trong nghiên cứu và chế tạo led ma trận, với sự hiện diện của nhiều nhà máy đầu tư nước ngoài như nhà máy sản xuất LED DSE của Hàn Quốc và công ty FAWOOKIDI từ Hà Lan và Đài Loan Bên cạnh đó, các công ty giải pháp LED như VIETNAM SCHREDER và Potech cũng đóng góp vào sự phát triển này.
Trong các khu vực đô thị sôi động như trung tâm thành phố, sân vận động, quảng trường và nhà hát, chúng ta dễ dàng nhận thấy sự hiện diện của bảng quảng cáo và màn hình LED đa màu sắc Ngoài ra, tại các trường học và công ty, việc sử dụng màn hình LED cả trong nhà lẫn ngoài trời để thông báo tin tức và trình chiếu thông tin ngày càng trở nên phổ biến.
2 chiếu hình ảnh Một số nơi còn sử dụng màn hình led vào việc chỉ dẫn đường, báo hiệu.
MỤC TIÊU ĐỀ TÀI
Nghiên cứu cấu tạo và hoạt động của Kit Raspberry cùng màn hình LED RGB, đồng thời tìm hiểu cách kết nối các cơ sở dữ liệu phần mềm và phần cứng Quan trọng là đọc hiểu datasheet của các linh kiện cần thiết trong mạch để đảm bảo sự hoạt động hiệu quả.
Nghiên cứu và thiết kế sơ đồ khối là bước đầu tiên trong quá trình phát triển hệ thống, từ đó tạo ra mạch nguyên lý và lưu đồ giải thuật Tiếp theo, phát triển thuật toán và viết phần mềm điều khiển là những công đoạn quan trọng để đảm bảo hệ thống hoạt động hiệu quả Cuối cùng, cần giải thích rõ chức năng của các thành phần trong mạch để người dùng hiểu rõ hơn về cách thức hoạt động của hệ thống.
ĐỐI TƯỢNG VÀ PHẠM VI NGHIÊN CỨU
Panel led ma trận RGB
Cơ sở dữ liệu và thư viện của lập trình Python, Cython
Nghiên lý hoạt động của led ma trận RGB với kích thước 64x32, có số lượng điểm ảnh là 2048 pixel Cách xuất ra từng điểm ảnh, màu sắc thế nào
Xuất được dữ liệu: hình ảnh, text, video ra màn hình led ma trận RGB thông qua kit Raspberry.
PHƯƠNG PHÁP NGHIÊN CỨU
Khám phá các mô hình tương tự được áp dụng trong và ngoài nước, đồng thời tìm kiếm thư viện hỗ trợ và cách sử dụng chúng Thiết kế sơ đồ mạch bằng phần mềm chuyên dụng trên máy tính, sau đó thực hiện thi công và kiểm tra kết quả thu được.
BỐ CỤC CỦA ĐỒ ÁN
Đồ án gồm 6 chương với các nội dung như sau:
Chương 1: Tổng quan Trình bày về tình hình nghiên cứu trong và ngoài nước, ứng dụng, mục tiêu đề tài, đối tượng nghiên cứu và phương pháp nghiên cứu đề tài
Chương 2: Cơ sở lý thuyết Chương này giới thiệu khái quát về panel led RGB,
IC điều khiển panel, phần cứng kit Raspberry pi, ngôn ngữ lập trình và các khái niệm điểm ảnh, framebuffer…
Chương 3: Thiết kế và xây dựng hệ thống Chương này trình bày về các phương án lựa chọn, thiết kế ứng dụng cách hoạt động, điều khiển panel led và xây dựng hệ thống gồm: sơ đồ khối hệ thống, nguồn cung cấp, bộ đệm, vi xử lý trung tâm và thiết bị phát hình ảnh
Chương 4: Chương trình điều khiển Chương này giới thiệu về cách cài đặt hệ điều hành, cách chép tập tin từ máy tính vào vi điều khiển, cách đăng nhập vào vi điều khiển, phương pháp điều khiển và chương trình hiển thị hình ảnh
Chương 5: Kết quả so sánh,thực nghiệm, phân tích, tổng hợp Trình bày hình ảnh sản phẩm đã hoàn thiện và kết quả đạt được khi hoàn thành đồ án
Chương 6: Kết luận và hướng phát triển Trình bày những gì đã làm được và chưa làm được so với mục tiêu và nêu hướng phát triển của đồ án.
LED RGB
Led RGB có 4 chân, bao gồm 1 chân dương chung và 3 chân âm riêng cho từng màu: đỏ (R), xanh lá (G) và xanh dương (B) Thực chất, Led RGB là sự kết hợp của 3 diode LED thông thường trong một khối.
Hình 2.1 Cấu tạo của led RGB dán
2.1.2 Nguyên lý hoạt động: Để thay đổi màu sắc của led RGB, ta chỉ việc thay đổi độ sáng của từng con diode (led) trong led RGB Để thay đổi độ sáng của một con led ta chỉ việc điều chỉnh điện áp xuất ra con led
Dưới đây là hình ảnh thực tế và sơ đồ chân, kích thước của led RGB:
Hình 2.2 Sơ đồ chân và kích thước của led RGB dán.
PANEL LED RGB
Panel LED RGB thường được sử dụng cho màn hình lớn, có kích thước lên đến nhiều mét vuông, với khả năng hiển thị rõ nét từ khoảng cách xa nhờ vào cấu trúc điểm ảnh là các đèn LED Khoảng cách giữa các bóng LED dao động từ 1 đến 10 mm Mỗi tấm panel yêu cầu 12-13 chân điều khiển, bao gồm 6 bit dữ liệu và 6 hoặc 7 bit kiểm soát Chúng hoạt động hiệu quả với nguồn điện 5V, cung cấp tối đa 5A cho mỗi tấm.
Có các loại panel led RGB hiện có như:
Panel led P40: kích thước 640x640, loại led lưới, thích hợp sử dụng trang trí vách, sàn, cột
Panel led P16: kích thước 128x256, sử dụng cho màn hình led cần độ phân giải trung bình, kích thước màn hình từ 15 – 50m 2
Panel led P5: kích thước 64x32, sử dụng cho màn hình cần độ phân giải cao: thể hiện biểu đồ, bản đồ giao thông
Nhóm thực hiện đề tài đã chọn sử dụng panel led P5 do giá thành hợp lý và khả năng đáp ứng tốt nhu cầu hiển thị hình ảnh cũng như video động.
Panel led P5 64x32 pixel với 1 led RGB là 1 điểm ảnh được xếp nối tiếp với nhau
Bảng led sử dụng 2 IC 74138 để chọn hàng hiển thị, với các chân A, B, C nhận giá trị từ 000 đến 111 (0 đến 7) nhằm xác định hàng led sáng, trong khi chân D cho phép IC 74138 hoạt động Bên cạnh đó, bảng led còn tích hợp 4 IC điều khiển cho mỗi hàng, kết nối với chân màu của led RGB cùng với các IC đệm 74245 để đảm bảo hiệu suất hoạt động.
Hình 2.4 Mặt sau của panel led P5
Các tấm LED ma trận RGB sử dụng cổng kết nối đặc biệt gọi là HUB75, bao gồm 16 chân cấu tạo với 2 hàng rào đực, mỗi hàng có 8 chân.
Hình 2.5 cổng kết nối HUB75 trong thực tế
Hình 2.6 Dây bus gắn vào HUB75, chuyên dụng cho màn hình LED
Bảng 2.1 trình bày chức năng các chân của HUB75:
Bảng 2.1 Chức năng các chân của HUB75
Chân R0,G0,B0,R1,G1,B1 là các chân dữ liệu màu
Chân CLK là chân xung đồng hồ
Chân A,B,C,D là chân ngõ vào giải mã
Chân OE là chân cho phép dữ liệu ngõ ra
Chân STB (hay còn gọi là LA, latch) hoạt động ở mức cao và có chức năng chốt dữ liệu (strobe) Sau khi hoàn thành việc nạp dữ liệu cho một hàng LED, cần thực hiện chốt dữ liệu trước khi chuyển sang hàng tiếp theo.
2.2.4 Kết nối giữa các IC trong module LED RGB:
Dưới đây là sơ đồ kết nối IC điều khiển panel led RGB:
Hình 2.7 Sơ đồ kết nối IC điều khiển panel led
Sơ đồ nguyên lý của module LED RGB:
Hình 2.8 Sơ đồ nguyên lý module LED RGB
Ngõ vào giải mã A, B, C cho giá trị từ 000 -> 111 được kết nối với IC SSF
IC 4953 được sử dụng để điều khiển mức điện áp cung cấp cho các hàng LED Khi tín hiệu đầu vào là 000 (A=0, B=0, C=0), ngõ ra Y0 sẽ điều chỉnh điện áp cho MOSFET, làm cho LED hàng 1 và hàng 17 sáng Điều này cho thấy một tín hiệu ngõ ra từ IC 74HC138 có thể điều khiển hai hàng LED Các chân G1, G2A và G2B của IC 74HC138 là các chân cho phép hoạt động; nếu G1 ở mức cao và hai chân G2A, G2B ở mức thấp, IC sẽ hoạt động bình thường.
Các IC điều khiển được kết nối nối tiếp, với ngõ ra SDO của IC trước nối vào ngõ vào SDI của IC sau, mỗi hàng điều khiển một màu Chẳng hạn, bốn IC điều khiển đầu tiên sẽ kết nối với chân Red từ 1 đến 64 trên bảng 64x32, tương ứng với 64 cột LED Chân LE và chân OE của các IC điều khiển được kết nối với vi điều khiển để xác định thời điểm chốt dữ liệu và cho phép hoạt động.
IC 74HC245
IC 74HC245 là một IC đệm dữ liệu hai chiều, thường được sử dụng trong các mạch quét LED như LED matrix và LED 7 đoạn Nó cũng có thể được dùng để đệm dữ liệu trên bus trong các mạch có nhiều linh kiện mắc song song, giúp mở rộng số lượng cổng cho các vi điều khiển có ít chân I/O.
Hình 2.9 Sơ đồ chân của IC 74HC245
Chân DIR: chân chọn hướng dữ liệu Nếu DIR=1 thì input A và output B và ngược lại với DIR=0
Chân A1 đến A8 là chân dữ liệu vào/ra phụ thuộc vào chân DIR
Chân B1 đến B8 là chân dữ liệu vào/ra phụ thuộc vào chân DIR
Chân Enable: chân cho phép tích cực ở mức 0 Nếu E=0 thì IC xuất dữ liệu ngược lại E=1 là cấm
Dưới đây là bảng trạng thái của IC 74HC245:
Khi chân Enable ở mức thấp, DIR mức thấp thì dữ liệu vào B ra A, DIR mức cao thì dữ liệu vào A ra B
Khi chân Enable ở mức cao thì tất cả các chân của 2 bus A và B ở trạng thái trở cao hi-Z
Bảng 2.2 Bảng trạng thái của IC 74HC245.
IC 74HC138
IC 74HC138 là một bộ giải mã địa chỉ với 3 đầu vào (A0, A1, A2) và 8 đầu ra phủ định (Y0 đến Y7) Bộ giải mã này có 3 đầu vào cho phép, bao gồm 2 đầu vào tích cực mức thấp (1E, 2E) và 1 đầu vào tích cực mức cao (E3) Tất cả các đầu ra của 74HC138 sẽ ở mức cao trừ khi E1 ở mức thấp và E3 ở mức cao Khi cả hai đầu vào 1E và 2E đều ở mức thấp trong khi E3 ở mức cao, bộ giải mã sẽ hoạt động đúng theo yêu cầu.
Đầu ra của 74HC138 được xác định bởi các tín hiệu đầu vào, thường được sử dụng như mạch giải mã địa chỉ trong các mạch điều khiển và máy tính.
Hình 2.10 Sơ đồ chân của IC 74HC138
Dưới đây là bảng trạng thái hoạt động của IC 74HC138:
Bảng 2.3 Bảng trạng thái IC 74HC138
Hoạt động giải mã diễn ra bằng cách đưa dữ liệu nhị phân 3 bit vào các chân A0, A1, A2, và nhận dữ liệu đầu ra từ các ngõ O0 đến O7 Trong quá trình này, ba ngõ E1, E2, và E3 được sử dụng, trong đó E3 ở mức cao còn E1 và E2 ở mức thấp.
IC TLC5926
TLC5926 được thiết kế cho màn hình LED và ứng dụng chiếu sáng LED với open-load, shorted-load, phát hiện quá nhiệt TLC5926/TLC5927 có 16 ngõ ra được
14 điều khiển bởi ED1 và ED2 với 3 trạng thái Normal Mode phase, Mode Switching transition phase và Special mode phase
Hình 2.11 Sơ đồ chân IC TLC5926
Chân LE (ED1) là chân quyết định cho dữ liệu đầu vào nhấp nháy Khi chân LE (ED1) đạt mức cao, dữ liệu nối tiếp sẽ được chuyển đến chốt tương ứng Dữ liệu sẽ được chốt lại khi chân LE (ED1) ở mức thấp.
Chân OE (ED2) là chân điều khiển ngõ ra, với chức năng kích hoạt khi ở mức thấp và tắt khi ở mức cao.
OUT0 đến OUT15 là các chân ngõ ra
R-EXT là ngõ vào để kết nối với một điện trở bên ngoài để thiết lập tất cả các dòng đầu ra
SDI là chân dữ liệu đầu vào nối tiếp
SDO là chân dữ liệu đầu ra nối tiếp được nối với SDI của IC điều khiển tiếp theo hoặc là VĐK
Bảng 2.4 Bảng trạng thái chế độ Normal mode
Hình 2.12 Giản đồ xung của IC TLC5926/TLC5927
Tín hiệu ngõ ra hoạt động dựa theo giá trị xung clock, tín hiệu OE và tín hiệu chốt LED
Một chu kỳ hoạt động đầy đủ yêu cầu 16 xung clock Khi tín hiệu LE (ED1) ở mức thấp, tín hiệu đầu vào sẽ được truyền đến các chốt tương ứng với từng xung clock.
Khi đủ một chu kì, LE(ED1) lên mức cao chốt dữ liệu
Khi OE(ED2) mức thấp, nghĩa là ngõ ra ic điều khiển được cấp phép thì tín hiệu ở các chốt được truyền tới ngõ ra
IC SSF4953
IC SSF4953 được cấu tạo từ hai mosfet, là loại transistor hiệu ứng trường, với công suất lớn hơn nhiều so với BJT Trong tín hiệu một chiều, mosfet hoạt động như một công tắc đóng mở Nguyên tắc hoạt động của mosfet dựa trên hiệu ứng từ trường để tạo ra dòng điện, và nó có trở kháng đầu vào lớn, rất phù hợp cho việc khuếch đại các nguồn tín hiệu yếu.
SSF4953 là một mosfet kênh P có khả năng hoạt động ở hai chế độ: đóng và mở Với cấu trúc chứa các hạt mang điện, mosfet này có khả năng đóng cắt ở tần số rất cao Điện áp điều khiển để mở mosfet được gọi là Ugs0, và dòng điện sẽ di chuyển từ S đến D.
IC SSF 4953 gồm 2 mosfet tích hợp 2 kênh công suất song song Dòng điện đi từ S qua 2 kênh D
Hình 2.15 Cấu tạo của FDS4953
IC SSF4953 dùng để đóng ngắt nhanh với dòng diện và điện áp lớn Chân G được điều khiển tín hiệu ngõ ra của IC74HC138.
ĐIỂM ẢNH
Điểm ảnh (pixel) là đơn vị cơ bản cấu thành hình ảnh, thường mang một màu duy nhất từ sự pha trộn các màu cơ bản Để có ý nghĩa, kích thước điểm ảnh được quy đổi về đơn vị như inch hoặc cm/mm, và thường được diễn đạt theo số lượng điểm trên mỗi inch/cm chiều dài.
Số lượng điểm ảnh trên một đơn vị diện tích càng lớn sẽ mang lại hình ảnh chi tiết và sống động hơn, điều này phụ thuộc vào chất lượng của thiết bị thu nhận và hiển thị hình ảnh.
Kích thước hiển thị của ảnh trên màn hình phụ thuộc vào độ phân giải của màn hình; độ phân giải càng cao, ảnh sẽ hiển thị càng nhỏ Chẳng hạn, một bức ảnh sẽ có kích thước lớn hơn trên màn hình có độ phân giải 1024x768 px so với khi hiển thị trên màn hình 1280x960 px.
Hình 2.16 Số lượng điểm ảnh trong một diện tích
Hình ảnh bên trái chỉ có 4 điểm ảnh, cho phép thể hiện 4 màu sắc chi tiết, trong khi hình ảnh bên phải với 16 điểm ảnh có thể hiển thị 16 màu sắc, mang lại độ chi tiết cao hơn Số lượng điểm ảnh thường được biểu diễn theo chiều rộng và chiều cao; hình ảnh bên trái là 2x2 px, còn hình ảnh bên phải là 4x4 px Độ phân giải của một hình ảnh được xác định bởi tổng số điểm ảnh trong tệp tin hình ảnh.
MÁY TÍNH NHÚNG
Máy tính nhúng, hay còn gọi là máy tính đơn bảng (SBC), là một hệ thống máy tính hoàn chỉnh được tích hợp trên một bảng mạch duy nhất, bao gồm bộ vi xử lý, bộ nhớ và các cổng I/O Những máy tính này thường được sử dụng cho phát triển hệ thống, giáo dục hoặc như máy tính thông thường với khả năng xử lý hình ảnh, âm thanh và truy cập internet Ở Việt Nam, các loại máy tính nhúng phổ biến như Raspberry Pi, BeagleBone Black và Friendly ARM, với cộng đồng người dùng đông đảo, cung cấp nhiều tài liệu và hỗ trợ bằng tiếng Việt.
2.8.1 Máy tính nhúng BeagleBone Black:
Máy tính nhúng BeagleBone Black hỗ trợ hệ điều hành Android và Ubuntu Linux, được cài đặt sẵn Ångstrøm distro cho phép khởi động nhanh chóng trong vòng chưa đầy 10 giây Người dùng cũng nhận được sự hỗ trợ từ các cộng đồng trực tuyến và có thể truy cập miễn phí tài liệu, kernel và mã code cho hệ điều hành Ubuntu, Android và Fedora.
BeagleBone Black có kích thước 8,6 x 5,3 cm được trang bị bộ xử lý ARM Cortex-A8 tốc độ 1GHz (Texas Instruments sản xuất) hỗ trợ tăng tốc đồ họa, đầu cắm
BeagleBone Black sở hữu 46 chân kết nối ngoại vi, 2GB bộ nhớ flash tích hợp và 512MB bộ nhớ DDR3 Thiết bị còn được trang bị cổng USB, kết nối Ethernet và HDMI với độ phân giải hỗ trợ lên đến 1280 x 1024 pixel Giá bán của BeagleBone Black là 1,7 triệu đồng.
2.8.2 Máy tính nhúng Friendly ARM Mini 2440:
Friendly ARM Mini 2440 là một máy tính phổ biến tại Việt Nam, hỗ trợ nhiều hệ điều hành như Windows CE 5 và 6, Linux 2.6, và Android Được trang bị CPU S3C2440A ARM920T với tốc độ 400MHz (có thể đạt tối đa 533 MHz), nhưng RAM chỉ có 64 MB Mẫu SBC này tích hợp chip nhớ FLASH 256 MB và hỗ trợ thẻ nhớ SD qua SD-socket Ngoài ra, nó còn có 1 kết nối DB9 (RS232) và 1 cổng USB.
Máy được trang bị 1 cổng USB kiểu B, jack audio 3.5mm và kết nối Ethernet RJ-45 10/100M, sử dụng nguồn 5V Giá bán là 2,2 triệu đồng cho phiên bản màn hình cảm ứng 3.5 inch và 3 triệu đồng cho phiên bản màn hình 7 inch.
2.8.3 Máy tính nhúng Raspberry Pi 3:
Raspberry Pi 3 là phiên bản mới nhất của dòng máy tính đơn board (SBC) Raspberry Pi, nổi bật và được ưa chuộng tại Việt Nam và trên toàn thế giới Sản phẩm này được trang bị CPU ARM Cortex-A53 Quadcore 1.2GHz 64-bit và RAM 1GB, đặc biệt hỗ trợ chuẩn Wifi 802.11n, mang lại hiệu suất và khả năng kết nối mạnh mẽ.
Bluetooth 4.1 Điểm nổi trội của Raspberry là hệ điều hành Raspbian chuyên dùng với máy tính Raspberry Pi, hệ điều hành nền Linux này hỗ trợ giao diện người dùng, có tích hợp sẵn các phần mềm lập trình, soạn thảo văn bản và truy cập internet, phục vụ tốt cho nhu cầu giáo dục và lập trình Cấu hình chi tiết của Raspberry Pi 3 bao gồm: CPU 64-bit bốn nhân ARM Cortex-A53 1.2GHz, 802.11 b/g/n Wireless LAN, Bluetooth 4.1 (Classic & Low Energy), Bộ xử lý hình ảnh Videocore IV® Multimedia
Sản phẩm được trang bị bộ vi xử lý 2 nhân, bộ nhớ RAM 1 GB LPDDR2, và nhiều cổng kết nối bao gồm 1 cổng Ethernet 10/100, 1 cổng HDMI cho video/audio, 1 cổng RCA audio/video, 4 cổng USB 2.0, 40 chân GPIO, cùng với cổng kết nối màn hình DSI và khe cắm thẻ nhớ MicroSD Kích thước của thiết bị là 85 x 56 x 17 mm, với mức giá 1,2 triệu đồng.
2.8.4 Lựa chọn máy tính nhúng phù hợp:
Đề tài này tập trung vào việc hiển thị hình ảnh trên màn hình LED, yêu cầu máy tính nhúng phải xử lý và điều khiển xuất hình ảnh qua GPIO, hai nhiệm vụ tiêu tốn nhiều tài nguyên hệ thống Do đó, máy tính nhúng cần có tốc độ xử lý nhanh và bộ nhớ RAM lớn Nếu tốc độ xử lý không đủ, sẽ xảy ra hiện tượng giật hình, nhấp nháy và bóng ma Nếu bộ nhớ RAM không đủ, sẽ không có không gian cho FrameBuffer và lưu trữ khung hình động Sau khi tham khảo thông số kỹ thuật và cân nhắc chi phí, nhóm quyết định chọn máy tính nhúng Raspberry với CPU 4 nhân tốc độ 1.2 GHz và 1GB RAM, vì đây là lựa chọn có chi phí thấp nhất (1,2 triệu đồng so với 1,7 triệu đồng của BeagleBone Black và hơn 2 triệu đồng đối với Friendly ARM).
TÌM HIỂU KIT RASPBERRY PI 3
Raspberry Pi là một máy tính mini giá rẻ, có kích thước tương đương một thẻ tín dụng Thiết bị này có thể dễ dàng kết nối với màn hình (máy tính hoặc tivi), chuột và bàn phím để sử dụng.
Raspberry Pi là một thiết bị mạnh mẽ cho phép người dùng ở mọi lứa tuổi khám phá thế giới máy tính và lập trình với nhiều ngôn ngữ như Scratch, Python, và PHP Nó có khả năng thực hiện tất cả các chức năng của một máy tính để bàn, bao gồm duyệt web, xem video HD, xử lý bảng tính, soạn thảo văn bản và thậm chí chơi game.
Kit Raspberry Pi 3 Model B là phiên bản thứ ba của Raspberry Pi, nổi bật với kích thước nhỏ gọn và hiệu năng mạnh mẽ, cho phép hoạt động như một máy tính đa năng Với hệ điều hành cải tiến, thiết bị này nhanh hơn và có thể thay thế các phiên bản trước đó, mở ra nhiều ứng dụng mới cho người dùng.
10 lần so với thế hệ đầu tiên Raspberry Pi Ngoài ra còn có thêm kết nối mạng LAN không dây và Bluetooth
Raspberry Pi 3 được trang bị bộ xử lý Quad Core Broadcom BCM2837 64-bit ARMv8, giúp tăng tốc độ xử lý từ 900MHz trên Pi 2 lên 1.2GHz Ngoài ra, Pi 3 còn tích hợp chip BCM43143 Wifi và nâng cấp nguồn lên 2.5 amps, cho phép cung cấp năng lượng mạnh mẽ hơn qua cổng USB.
Dưới đây là hình mô tả cấu tạo cơ bản của Raspberry Pi 3 gồm: Wireless radio, Antenna, Chip hệ thống, GPIO, USB chip, các cổng USB, LAN, HDMI…
Hình 2.18 Cấu tạo phần cứng của Raspberry Pi 3
Chip BMC43438 của Broadcom là một linh kiện nhỏ gọn, có thể quan sát dễ dàng qua kính hiển vi hoặc kính lúp Chip này cung cấp mạng LAN không dây 802.11n với tần số 2.4 GHz, đồng thời hỗ trợ Bluetooth tiết kiệm năng lượng và Bluetooth 4.1 Classic Chức năng chính của chip là quản lý việc ngắt kết nối FM.
Hình 2.19 Chip BMC43438 Broadcom (Wireless radio)
Raspberry Pi 3 kết nối trực tiếp với chip Antenna thông qua hàn vào mạch, cho phép thu tín hiệu LAN và Bluetooth không dây.
Nhà phát triển đã nâng cấp Raspberry Pi 3 với chip Broadcom BCM2837, bao gồm bốn lõi ARM Cortex-A53 hoạt động ở tốc độ 1.2 GHz, đi kèm với 32 kB bộ nhớ cấp 1 và 512 kB bộ nhớ cấp 2 Thiết bị còn được trang bị bộ xử lý đồ họa VideoCore IV và kết nối với module bộ nhớ 1GB phía sau bo mạch.
Hình 2.21 Chip hệ thống Broadcom BCM2837 (SoC)
Raspberry Pi 3 sử dụng cùng một con chip SMSC LAN9514 như Raspberry
Pi 2 được trang bị kết nối Ethernet 10/100 và 4 cổng USB Thiết bị này kết nối với chip hệ thống thông qua một cổng USB duy nhất, hoạt động như một bộ chuyển đổi giữa USB và Ethernet.
Hình 2.22 Chip USB SMSC LAN9514
Raspberry Pi 3 giữ nguyên hình dạng, chân kết nối và lỗ gắn như Raspberry
Pi 2 Gồm 40 chân đầu vào – đầu ra
Bài viết giới thiệu về các chân nguồn 3.3V DC và 5V DC, giúp dễ dàng kết nối với các linh kiện Nó cũng bao gồm các chân truyền dữ liệu theo chuẩn SPI và UART, cùng với các chân GPIO vào/ra linh hoạt theo yêu cầu của người sử dụng.
Hình 2.23 Cấu tạo GPIO Rpi3.
PIXEL FORMAT
FrameBuffer chứa nhiều Pixel, mỗi Pixel có định dạng riêng với số bit khác nhau Khi FrameBuffer sử dụng 1 bit cho mỗi Pixel, điều này có nghĩa là ảnh được tạo ra là ảnh MONO, tức là chỉ có hai màu đen và trắng.
2 màu đen và trắng) Nếu FrameBuffer dùng 16 bit, 24 bit, 32 bit thì đây đều là ảnh HighColor
Với 16 bit thì thông thường có 2 dạng:
1 bit không sử dụng (hoặc có thể làm Transparent) , còn lại 5 bit Red, 5 bit Green, 5 bit Blue đại diện cho màu sắc
5 bit Red, 6 bit Green, 5 bit Blue
Với 24 bit: Red, Green, Blue sẽ chia đều 8 bit Còn đối với 32 bit: bao gồm 24 bit màu RGB đồng thời sẽ có 8 Bit làm giá trị Alpha (độ trong suốt của ảnh => ARGB)
In the case of an 8-bit FrameBuffer, it utilizes a color palette consisting of 256 colors, known as a Palette Each entry in this palette represents a color in 32-bit format The Buffer content follows, where every 8 bits correspond to a single pixel that holds an index referencing the color in the Palette.
FRAMEBUFFER
FrameBuffer là một vùng nhớ đặc biệt, nơi mọi dữ liệu được lưu trữ sẽ hiển thị trực tiếp trên màn hình Tất cả các thiết bị có màn hình, bao gồm điện thoại di động và tivi, đều sử dụng FrameBuffer để truyền tải hình ảnh.
Cấu trúc dữ liệu của FrameBuffer tương tự như tệp BMP, bao gồm các định dạng Buffer 1bit, 8bit, 16bit, 24bit và 32bit Kích thước của FrameBuffer phụ thuộc vào độ phân giải và định dạng pixel (PixelFormat).
Hình 2.25 Frame Buffer 24 bit màu
Bảng 2.5 cho ta biết kích thước bộ nhớ RAM cần cung cấp cho Frame Buffer ở các độ phân giải tương ứng
Bảng 2.5 Một số Frame Buffer RAM size
MẶT PHẲNG BIT (BIT PLANE)
Phương pháp cắt lớp mặt phẳng bit là kỹ thuật phân chia hình ảnh thành nhiều mặt phẳng khác nhau, từ bit level 0 (LSB) đến bit level 7 (MSB) Kết quả của phương pháp này là ảnh 8-bit cho mỗi pixel, đóng vai trò quan trọng trong xử lý ảnh Cụ thể, bitplane thể hiện độ sâu màu sắc của pixel; ví dụ, trong hệ màu 24 bit, độ sâu màu đỏ tương ứng là 8 bit.
Hình 2.26 Mô hình của mặt phẳng bit.
NGÔN NGỮ C++
Ngôn ngữ lập trình C/C++ là một trong những ngôn ngữ lập trình hướng đối tượng phổ biến và mạnh mẽ nhất hiện nay, nhờ vào tính linh hoạt và đa năng của nó Các ứng dụng và chương trình hệ thống lớn thường được phát triển chủ yếu bằng C/C++ C++ được xây dựng dựa trên ngôn ngữ C, không chỉ khắc phục những nhược điểm của C mà còn mang đến cho người dùng phương pháp lập trình mới thông qua lập trình hướng đối tượng.
2.13.1 Sự khác biệt giữa C và C++
C++ là một ngôn ngữ lập trình mở rộng từ C, mang đến nhiều tính năng và độ phức tạp cao hơn Bài viết này sẽ trình bày những điểm khác biệt chính giữa C và C++.
Bảng 2.6 Bảng so sánh giữa C và C++
Là ngôn ngữ lập trình hướng chức năng
Là ngôn ngữ hướng đối tượng (gồm 4 khái niệm về hướng đối tượng)
Chỉ hỗ trợ các structure Hỗ trợ các lớp và đối tượng
Không có biến tham chiếu, chỉ hỗ trợ con trỏ
Hỗ trợ cả biến tham chiếu và con trỏ
Sử dụng hàm scanf và printf để nhập xuất
Sử dụng hàm cin>> và cout