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

May in nhiet cam tay

108 14 0

Đ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

Định dạng
Số trang 108
Dung lượng 9,91 MB

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

Nội dung

Đề tài này sẽ ứng dụng KIT thực hành Discovery STM32F746NGHx với lõi là vi điều khiển ARM Cortex-M7 để lập trình điều khiển đầu in nhiệt Fujitsu FTP – 628MCL103 và màn hình cảm

Trang 1

KHOA ĐIỆN – ĐIỆN TỬ

BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH

Tp Hồ Chí Minh – 01/2018

Trang 2

KHOA ĐIỆN – ĐIỆN TỬ

BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH

GVHD: ThS Phan Vân Hoàn

SVTH: Cao Nhữ Ân 16341002 Lưu Quốc Tuấn 16341026

Tp Hồ Chí Minh – 01/2018

Trang 3

Họ tên sinh viên: Cao Nhữ Ân MSSV: 16341002

Lưu Quốc Tuấn MSSV: 16341026 Chuyên ngành: CNKT Điện Tử Truyền Thông Mã ngành: 41

Hệ đào tạo: Đại học chính quy Mã hệ: 3

I TÊN ĐỀ TÀI: THIẾT KẾ VÀ THI CÔNG MÁY IN NHIỆT CẦM TAY

II NHIỆM VỤ

1 Các số liệu ban đầu:

 Nhóm tiến hành việc khảo sát các loại vi điều khiển, lựa chọn màn hình cảm ứng, đầu in nhiệt và giấy in

 Tiến hành tìm hiểu và thu thập các số liệu từ các trang mạng và sách về lập trình vi điều khiển ARM Tham khảo các máy in nhiệt để xây dựng lên mô hình điều khiển

 Tìm hiểu các bộ cắt giấy để lựa chọn và tham khảo cách thức hoạt động phù hợp cho mô hình

2 Nội dung thực hiện:

 NỘI DUNG 1: Nghiên cứu tài liệu về đầu in nhiệt Fujitsu-FTP-628MCL10

 NỘI DUNG 2: Dựa trên các dữ liệu thu thập được, tiến hành lựa chọn giải pháp thiết kế và thi công mô hình phần mạch điều khiển

 NỘI DUNG 3: Thiết kế hệ thống điều khiển dao cắt giấy in

 NỘI DUNG 4: Thiết kế lưu đồ giải thuật và viết chương trình điều khiển cho

Vi điều khiển, thiết kế giao diện màn hình chính soạn thảo văn bản

 NỘI DUNG 5: Thử nghiệm và điều chỉnh phần cứng cũng như chương trình để mô hình được tối ưu Đánh giá các thông số của mô hình so với thông số thực tế

 NỘI DUNG 6: Viết báo cáo thực hiện

Trang 4

IV NGÀY HOÀN THÀNH NHIỆM VỤ: 15/01/2018

V HỌ VÀ TÊN CÁN BỘ HƯỚNG DẪN: ThS Phan Vân Hoàn

Trang 5

Tên đề tài: THIẾT KẾ VÀ THI CÔNG MÁY IN NHIỆT CẦM TAY

Trang 6

Nhóm xin cam đoan đề tài này là do nhóm tự thực hiện dựa vào một số tài liệu và

đề tài trước đó Các số liệu trong đề tài này được nhóm thu thập từ các tài liệu hướng dẫn và tham khảo một số đề tài liên quan từ đó nhóm đã nghiên cứu và phát triển để thực hiện đề tài này Không sao chép từ tài liệu hay công trình đã có trước đó

TP Hồ Chí Minh, ngày 15 tháng 01 năm 2018

Sinh viên thực hiện 1 Sinh viên thực hiện 2

CAO NHỮ ÂN LƯU QUỐC TUẤN

Trang 7

vi

Sau quá trình học tập ở trường cùng với những kiến thức được các Thầy Cô giảng dạy, những kinh nghiệm được học hỏi, trong quá trình thực hiện đồ án nhóm đã được các Thầy Cô tạo điều kiện tốt nhất để thực hiện đồ án này Nhóm xin gửi lời cảm

ơn tới tất cả các Thầy, Cô trong Trường Đại Học Sư Phạm Kỹ Thuật TPHCM nói chung, đặc biệt các giảng viên Khoa Điện - Điện Tử nói riêng đã giảng dạy và cung cấp cho Nhóm có những kiến thức quý báu, tạo tiền đề quan trong cho Nhóm có thể thực hiện được đồ án này

Nhóm xin gửi lời cảm ơn chân thành và sâu sắc tới Thầy Phan Vân Hoàn đã trực tiếp hướng dẫn tận tình cho nhóm trong suốt quá trình làm đồ án, cảm ơn Thầy đã giành thời gian quý báu để hướng dẫn cho nhóm, hỗ trợ các thiết bị cũng như đưa ra hướng đi giải quyết đúng cho nhóm mỗi khi gặp khó khăn

Bên cạnh đó nhóm xin cảm ơn tập thể lớp 163410A đã cùng đồng hành với nhóm trong suốt quá trình học tập và thực hiện đồ án Các bạn đã cùng nhau giúp đỡ, chia sẻ kinh nghiệm và tạo thêm động lực để nhóm có thể hoàn thành được đồ án này

Nhóm cũng xin chân thành cảm ơn bố mẹ, người thân và bạn bè Những người đã giúp đỡ về mặt tinh thần cũng như vật chất rất nhiều để có thể hoàn thành tốt đồ án này Xin chân thành cảm ơn mọi người

Trong quá trình nghiên cứu và thực hiện đồ án, vì thời gian và trình độ có giới hạn nên không tránh khỏi những thiếu sót Vì vậy, nhóm hy vọng sẽ nhận được những

ý kiến đóng góp quý báu từ Thầy Cô, bạn bè và những người quan tâm để đề tài được hoàn thiện hơn

Xin chân thành cảm ơn

Sinh viên thực hiện 1 Sinh viên thực hiện 2

CAO NHỮ ÂN LƯU QUỐC TUẤN

Trang 8

Trang bìa i

Nhiệm vụ đồ án ii

Lịch trình iv

Cam đoan v

Lời cảm ơn vi

Mục lục vii

Liệt kê hình vẽ x

Liệt kê bảng vẽ xii

Tóm tắt xiii

Chương 1 TỔNG QUAN 1

1.1 ĐẶT VẤN ĐỀ 1

1.2 MỤC TIÊU 2

1.3 NỘI DUNG NGHIÊN CỨU 2

1.4 GIỚI HẠN 3

1.5 BỐ CỤC 3

Chương 2 CƠ SỞ LÝ THUYẾT 5

2.1 QUY TRÌNH IN NHIỆT 5

2.1.1 Giới thiệu về in nhiệt 5

2.1.2 Mô tả kỹ thuật in nhiệt trực tiếp 5

2.1.3 Tìm hiểu thông số của một số loại giấy in nhiệt trên thị trường 6

2.2 GIỚI THIỆU PHẦN CỨNG 6

2.2.1 Cảm biến giấy 7

2.2.2 Động cơ bước 8

2.2.3 Giới thiệu về vi điều khiển ARM 9

a Tổng quan về ARM 9

b Tổng quát về ARM Cortex - M7 STM32F746NGHx 12

2.2.4 Giới thiệu về đầu in nhiệt Fujitsu FTP – 628MCL103 15

a Tổng quan về đầu in nhiệt 15

b Tổng quan về đầu in nhiệt Fujitsu 16

c Thông số kỹ thuật đầu in nhiệt 16

Trang 9

viii

a Tổng quan về thời gian thực 19

b Tổ chức bộ nhớ IC DS1307: 20

2.3 GIỚI THIỆU PHẦN MỀM 22

2.3.1 Giới thiệu thư viện đồ họa StellarisWare Grlib 22

a Tổng quan về StellarisWare Grlib 22

b Cấu trúc dạng cây Widget của Grlib 22

c Các bước vẽ cây Widget của Grlib 24

d Các bước thực thi cây Widget của Grlib 25

2.3.2 Giới thiệu về chuẩn giao tiếp SPI 26

a Định nghĩa 26

b Cách giao tiếp giữa đầu in với vi điều khiển 29

c Cách đầu in xuất dữ liệu ra các cụm in 30

2.3.3 Giới thiệu về chuẩn giao tiếp I2C 30

a Định nghĩa 30

b Cách giao tiếp giữa Module DS1307 với vi điều khiển 32

Chương 3 TÍNH TOÁN VÀ THIẾT KẾ 34

3.1 GIỚI THIỆU 34

3.2 TÍNH TOÁN VÀ THIẾT KẾ HỆ THỐNG 34

3.2.1 Thiết kế sơ đồ khối hệ thống 34

3.2.2 Tính toán và thiết kế mạch 35

a Thiết kế khối xử lý trung tâm 35

b Thiết kế khối cảm biến 35

c Thiết kế khối điều khiển 37

d Thiết kế khối cơ cấu chấp hành 40

e Thiết kế khối nguồn 41

Chương 4 THI CÔNG HỆ THỐNG 44

4.1 GIỚI THIỆU 44

4.2 THI CÔNG HỆ THỐNG 44

4.2.1 Thi công bo mạch 44

4.2.2 Lắp ráp và kiểm tra 47

4.3 ĐÓNG GÓI VÀ THI CÔNG MÔ HÌNH 48

4.3.1 Đóng gói bộ điều khiển 48

Trang 10

4.4 LẬP TRÌNH HỆ THỐNG 50

4.4.1 Lưu đồ giải thuật 50

4.4.2 Phần mềm lập trình cho Vi điều khiển ARM 51

4.4.3 Phần mềm tạo Project cho ARM STM32CubeMX 52

4.5 LẬP TRÌNH MÔ PHỎNG 55

4.5.1 Lưu đồ chương trình máy in 55

4.5.2 Lưu đồ chương trình đồng hồ 58

4.5.3 Lưu đồ chương trình khóa màn hình 59

4.6 VIẾT TÀI LIỆU HƯỚNG DẪN SỬ DỤNG, THAO TÁC 60

4.6.1 Viết tài liệu hướng dẫn sử dụng 60

4.6.2 Quy trình thao tác 61

Chương 5 KẾT QUẢ_NHẬN XÉT_ĐÁNH GIÁ 65

5.1 KẾT QUẢ MÔ HÌNH PHẦN CỨNG 65

5.2 KẾT QUẢ GIAO DIỆN SOẠN THẢO VĂN BẢN 66

5.3 ĐÁNH GIÁ VÀ NHẬN XÉT KẾT QUẢ 70

Chương 6 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 71

6.1 KẾT LUẬN 71

6.2 HƯỚNG PHÁT TRIỂN 71

TÀI LIỆU THAM KHẢO 73

PHỤ LỤC 74

Trang 11

x

Hình Trang

Hình 2.1: Hình ảnh minh họa quá trình hoạt động của cảm biến 7

Hình 2.2: Giản đồ xung kích cho động cơ bước 9

Hình 2.3: Phân khúc chip Cortex của ARM trong thị trường nhúng 10

Hình 2.4: Kiến trúc của vi xử lý ARM Cortex-M7 12

Hình 2.5: KIT Discovery STM32F7 14

Hình 2.6: Đầu in nhiệt Fujitsu-FPT-628MCL103 15

Hình 2.7: Cấu trúc đầu in nhiệt 16

Hình 2.8: Sơ đồ chân và hình ảnh của DS13B07 19

Hình 2.9: Sơ đồ kết nối DS13B07 20

Hình 2.10: Tổ chức bộ nhớ và thanh ghi của DS1307 20

Hình 2.11: Cấu trúc cây widget 23

Hình 2.12: Ví dụ về cấu trúc cây widget 24

Hình 2.13: Các bước vẽ cấu trúc cây widget 25

Hình 2.14: Các bước thực thi cấu trúc cây widget 26

Hình 2.15: Giao tiếp SPI giữa Master và Slave 27

Hình 2.16: Truyền dữ liệu SPI 28

Hình 2.17: Truyền dữ liệu giữa đầu in và vi điều khiển 29

Hình 2.18: Xuất dữ liệu ra đầu in 30

Hình 2.19: Truyền dữ liệu I2C 31

Hình 2.20: Quá trình thiết bị chủ ghi dữ liệu vào thiết bị tớ 32

Hình 2.21: Quá trình thiết bị chủ đọc dữ liệu từ thiết bị tớ 33

Hình 3.1: Sơ đồ khối của hệ thống 34

Hình 3.2: Biểu đồ cường độ sáng và điện áp 36

Hình 3.3: Sơ đồ kết nối cảm biến với Op-Amp 36

Hình 3.4: Sơ đồ nguyên lý mạch điều khiển 39

Hình 3.5: Mạch giảm áp dùng LM2576ADJ 41

Hình 3.6: Cấu tạo IC555 41

Hình 3.7: Sơ đồ nguyên lý mạch sạc Pin 42

Hình 4.1: Mạch in lớp trên 44

Hình 4.2: Mạch in lớp dưới 45

Hình 4.3: PCB 3D lớp trên 45

Hình 4.4: PCB 3D lớp dưới 46

Hình 4.5: Hình ảnh khối nguồn và điều khiển 48

Hình 4.6: Mô hình máy in nhiệt cầm tay nhìn từ phía trên. 48

Hình 4.7: Tầng dưới của mô hình 49

Hình 4.8: Mô hình hệ thống hoàn chỉnh 49

Hình 4.9: Lưu đồ điều khiển chương trình chính 50

Hình 4.10: Giao diện trình biên dịch Keil uVision5 51

Hình 4.11: Giao diện STM32CubeMX 53

Trang 12

Hình 4.13: Lưu đồ điều khiển chương trình con máy in 55

Hình 4.14: Lưu đồ chương trình con nhập dữ liệu 56

Hình 4.15: Lưu đồ chương trình con điều khiển in 57

Hình 4.16: Lưu đồ chương trình con điều khiển đồng hồ 58

Hình 4.17: Lưu đồ chương trình khóa màn hình 59

Hình 4.18 Giao diện màn hình chính 61

Hình 4.19 :Giao diện SETTING 62

Hình 4.20: Giao diện PRINTER 62

Hình 4.21: Nhập văn bản thông thường 63

Hình 4.22:Nhập bảng bằng các chọn từng ô từ màn hình 63

Hình 4.23: Hệ thống bắt đầu in dữ liệu 64

Hình 4.24: Bộ phận cắt giấy cắt rời giấy in khỏi cuộn giấy 64

Hình 5.1: Hình ảnh thực tế mô hình 65

Hình 5.2: Khối thiết bị điều khiển 66

Hình 5.3: Giao diện chính 66

Hình 5.4: Giao diện SETTING 67

Hình 5.5: Giao diện PRINTER 67

Hình 5.6: Quá trình thao tác chọn logo 68

Hình 5.7: Quá trình thao tác soạn thảo văn bản 68

Hình 5.8: Kết quả sau khi in 69

Hình 5.9: Kết quả in thử nghiệm trong quá trình thiết kế 69

Trang 13

xii

Bảng Trang

Bảng 2.1: Thông số cảm biến quang trong đầu in nhiệt 8

Bảng 2.2: Thông số động cơ bước trong đầu in nhiệt 9

Bảng 2.3: Thông số kỹ thuật đầu in nhiệt 16

Bảng 2.4: Sơ đồ chân kết nối vi điều khiển 18

Bảng 3.1: Các địa chỉ kết nối 37

Bảng 4.1: Danh sách các linh kiện 46

Trang 14

Sau một thời gian tìm hiểu và nghiên cứu về kỹ thuật in nhiệt trực tiếp, cùng với việc nắm bắt xu thế in ấn hóa đơn trực tiếp mà không cần có sự hỗ trợ của máy vi tính trong việc soạn thảo đang được ưa chuộng hiện nay thì nhóm thực hiện đề tài đã nghiên cứu được làm thế nào để điều khiển được các thông số cần in sao cho phù hợp nhất với văn bản và các loại hóa đơn bán hàng Từ các kiến thức được học ở trường và kinh nghiệm từ thực tiễn cộng với sự giúp đỡ của giáo viên hướng dẫn và các thầy cô bạn bè thì nhóm đã thực hiện được đề tài này

Đề tài được thực hiện thông qua các giai đoạn rõ ràng, từ việc thu thập các thông

số thực tế của các loại hóa đơn dựa vào đó để thiết kế mô hình cơ khí phù hợp để có thể điều khiển các thông số của hệ thống một cách chính xác nhất

Sau khi đã xây dựng mô hình cơ khí, trên cở sở các thông số kỹ thuật của các loại văn bản nhóm đã thiết kế được mô hình để điều khiển các thông số theo yêu cầu Với phương pháp điều khiển đầu in nhiệt và soạn thảo văn bản trực tiếp trên màn hình cảm ứng để tạo ra các loại hóa đơn, các văn bản cần in phù hợp với nhu cầu của người tiêu dùng

Mô hình đã điều khiển được các thông số một cách tương đối chính xác, cũng như giám sát được các thông số này thông qua màn hình hiển thị

Trang 15

Chương 1 TỔNG QUAN

1.1 ĐẶT VẤN ĐỀ

Công nghệ in nhiệt là không sử dụng mực in để in ấn, mà sử dụng giấy in nhiệt

để in Trong giấy này có chất nhạy nhiệt, chỉ cần có nhiệt độ tác động lên nó sẽ chuyển thành màu đen Vì thế, khi đầu in nhiệt của máy in nóng lên tác động vào giấy in nhiệt

nó sẽ hiển thị những thông tin cần in

Ưu điểm của công nghệ in nhiệt

1 Tiết kiệm chi phí:

Những máy in hóa đơn này sử dụng giấy in nhiệt Khi có tác dụng của nhiệt từ đầu in của máy in hóa đơn nhiệt sẽ hiển thị những thông tin cần in, mà không cần phải

sử dụng mực in Vì trong thành phần của giấy in nhiệt có cấu tạo hóa chất, mà hóa chất này khi gặp nhiệt độ cao sẽ chuyển thành màu đen Vì vậy bạn không cần thiết phải sử dụng mực in

Điều này giúp bạn tiết kiệm một khoản chi phí khi mua và giảm bớt trục trặc do mực in gây ra, như những máy in thông thường ở văn phòng

2 Tốc độ in nhanh chóng

Tốc độ in nhanh chóng là ưu điểm nổi bật của máy in hóa đơn in nhiệt

Vì lẽ đó, máy in hóa đơn nhiệt hay được sử dụng cho các cửa hàng, siêu thị Chúng có thể in liền với công suất lớn, do vậy phục vụ được nhu cầu thanh toán của nhiều người, tạo sự hài lòng cho khách đến mua hàng

Hãy đầu tư cho cửa hàng của bạn một máy in hóa đơn nhiệt vì nó có tốc độ in lớn giúp bạn tiết kiệm được thời gian và chi phí

3 Không gây tiếng ồn

Đối với máy in thông thường trong quá trình in ấn sẽ tạo ra tiếng ồn Nhưng với máy in hóa đơn nhiệt thì tiếng ồn sẽ được giảm đi đáng kể, không gây sự khó chịu cho người khác

4 Tiết kiệm diện tích

Đa số máy in hóa đơn nhiệt có thiết kế rất nhỏ gọn, thích hợp với môi trường bán lẻ, hệ thống siêu thị, nhà hàng Bên cạnh đó, tính tiện ích này còn làm tăng sự

Trang 16

chuyên nghiệp trong hoạt động kinh doanh và tạo được sự thiện cảm từ phía khách hàng

Với máy in hóa đơn in nhiệt, cửa hàng và siêu thị của bạn sẽ được tăng thêm sự chuyên nghiệp và tạo được sự thiện cảm nhiều hơn từ phía khách hàng

Tuy máy in nhiệt có nhiều ưu điểm như đã nêu ở trên nhưng nhóm nhận thấy rằng mỗi một máy in nhiệt đều cần phải có một máy tính để nhập dữ liệu hàng hóa và truy xuất thông tin khách hàng

Với mong muốn giải quyết vấn đề trên Nhóm thực hiện đề tài quyết định áp

dụng những kiến thức đã học và chọn hướng nghiên cứu: “THIẾT KẾ VÀ THI

CÔNG MÁY IN NHIỆT CẦM TAY”, khi mà nhân viên bán hàng chỉ cần nhập dữ

liệu hàng hóa và thông tin khách hàng là có thể in trực tiếp mà không cần đến sự giúp đỡ của máy tính

Đề tài này sẽ ứng dụng KIT thực hành Discovery STM32F746NGHx với lõi là

vi điều khiển ARM Cortex-M7 để lập trình điều khiển đầu in nhiệt Fujitsu FTP – 628MCL103 và màn hình cảm ứng trong việc soạn thảo văn bản cần thiết để in Những dữ liệu soạn thảo được hiển thị trực tiếp trên màn hình giúp người sử dụng dễ dàng quan sát và kiểm soát được thông tin cần in ấn

1.2 MỤC TIÊU

- Tìm hiểu đầu in nhiệt Fujitsu-FTP-628MCL10

- Tìm hiểu các ngoại vi KIT thực hành Discovery STM32F746NGHx

- Xây dựng mô hình máy in cầm tay

- Xây dựng chương trình để điều khiển mô hình

1.3 NỘI DUNG NGHIÊN CỨU

 NỘI DUNG 1:Nghiên cứu tài liệu về đầu in nhiệt 628MCL10

Fujitsu-FTP- NỘI DUNG 2: Dựa trên các dữ liệu thu thập được, tiến hành lựa chọn giải

pháp thiết kế và thi công mô hình phần mạch điều khiển

NỘI DUNG 3: Thiết kế hệ thống điều khiển dao cắt giấy in

Trang 17

NỘI DUNG 4: Thiết kế lưu đồ giải thuật và viết chương trình điều khiển

cho Vi điều khiển, thiết kế giao diện màn hình chính soạn thảo văn bản

NỘI DUNG 5: Thử nghiệm và điều chỉnh phần cứng cũng như chương

trình để mô hình được tối ưu Đánh giá các thông số của mô hình so với thực tế

NỘI DUNG 6: Viết báo cáo thực hiện

1.4 GIỚI HẠN

 Kích thước của mô hình máy in nhiệt cầm tay: 190x90x70 mm

 Sử dụng đầu in nhiệt Fujitsu-FTP-628MCL103

 Sử dụng vi điều khiển ARM STM32F746NGHx

 Sử dụng màn hình LCD TFT 4.3 INCH để soạn thảo và hiển thị nội dung in

 Điều khiển cơ cấu dao cắt giấy in sau khi in hoàn tất

1.5 BỐ CỤC

Chương 1: Tổng Quan

Chương này trình bày tổng quan về đề tài, xu hướng của công nghệ in nhiệt, các

ưu điểm của việc in nhiệt, hướng nghiên cứu của nhóm thực hiện đề tài

Chương 2: Cơ Sở Lý Thuyết

Chương này trình bày cơ sở lý thuyết về quy trình in nhiệt và phương pháp in nhiệt trực tiếp

Trình bày cơ sở lý thuyết về các thiết bị sử dụng trong mô hình như: Vi điểu khiển

arm, đầu in nhiệt, thư viện thiết kế đồ họa …

Chương 3: Tính Toán và Thiết Kế

Xây dựng mô hình phần cứng để giao tiếp giữa vi điều khiển, đầu in nhiệt và màn hình hiển thị thông tin dữ liệu cần in ấn

Thiết kế sơ đồ nguyên lý để điều khiển và sạc pin cho toàn mô hình hoạt động

Chương 4: Thi Công Hệ Thống

Trong chương này chúng ta thực hiện thi công các board mạch, các phần điều khiển và mạch động lực cũng như phần cứng mô hình hệ thống đề tài

Trang 18

Sau đó lắp ráp thành một hệ thống mô hình hoàn chỉnh để từ đó xây dựng nên lưu

đồ giải thuật để viết chương trình điều khiển cho hệ thống

Sau khi có được mô hình và chương trình điều khiển cho hệ thống thì sẽ thực hiện các bước để mô hình được hoạt động tốt Sau đó là các bước để hướng dẫn các thao tác cho việc hoạt động mô hình hoàn thiện hơn

Chương 5: Kết Quả, Nhận Xét và Đánh Giá

Nêu rõ được trong quá trình đồ án đã thu được những kết quả, tìm hiểu và thu thập được nhiều kiến thức cũng như tích luỹ thêm kinh nghiệm để có thể bước ra môi trường học tập để thích nghi với môi trường làm việc của doanh nghiệp Tiến hành nhận xét kết quả trong quá trình thực hiện đồ án giữa những gì thực hiện thực tế so với kết quả trong lý thuyết

Chương 6: Kết Luận và Hướng Phát Triển

Kết luận về những gì đạt được trong quá trình thực hiện đồ án Đưa ra thêm những hướng phát triển khả thi cho đề tài để có thể ứng dụng tốt trong thực tế

Trang 19

Chương 2 CƠ SỞ LÝ THUYẾT

2.1 QUY TRÌNH IN NHIỆT

2.1.1 Giới thiệu về in nhiệt

Phân loại in nhiệt (Thermal print):

- In nhiệt trực tiếp: Ở phương pháp này giấy in và đầu in tiếp xúc trực tiếp Không sử dụng bằng mực giống như các máy in hóa đơn sử dụng đầu in kim Công nghệ in kim với tốc độ in chậm hơn rất nhiều so với việc in nhiệt trực tiếp Chúng đã dần trở nên lỗi thời Trong giấy này có chất nhạy nhiệt, chỉ cần có nhiệt độ tác động lên nó sẽ chuyển thành màu đen Vì thế, khi đầu in nhiệt của máy in nóng lên tác động vào giấy in nhiệt nó sẽ hiển thị những thông tin cần in In nhiệt không cần sử dụng mực in, do đó chi phí giảm mang lại hiệu quả kinh tế cao Đầu in nhiệt rất bền và có thể in liên tục trong một thời gian dài

- In chuyển nhiệt: Một trong những phương pháp in ấn hiện đại đang được sử dụng phổ biến rộng rãi trên thị trường In chuyển nhiệt sử dụng nhiệt độ cao, và loại mực in đặc biệt (còn gọi là mực in chuyển nhiệt) để in hình ảnh lên giấy in nhiệt rồi sau đó ép nhiệt lên các vật liệu cần in Phương pháp này đặc biệt phù hợp để in lên các sản phẩm áo thun có họa tiết phức tạp, nhiều màu sắc Bên cạnh đó kỹ thuật in chuyển nhiệt cũng được ứng dụng khá phổ biến trong các ngành in ấn quảng cáo, tạo mẫu trong các công ty may mặc, các công ty in quà tặng In hình ảnh, logo lên ly sứ, dĩa sứ, in áo thun, in lên pha lê, in lên thủy tinh, in lên gạch men, gỗ, …

2.1.2 Mô tả kỹ thuật in nhiệt trực tiếp

Đầu in nhiệt có tác dụng tác động vào giấy in nhiệt để in ra những thông tin cần

in Mỗi một đầu in nhiệt có một trục lăn Nó được làm bằng cao su có chức năng lăn giấy và ép để cho giấy tác dụng với đầu in nhiệt của máy in nhiệt Khi giấy in nhiệt đến giữa trục lăn và các đầu in Đầu in nhiệt lúc này sẽ tạo ra một lượng nhiệt nhất định tác dụng lên bề mặt của giấy in

Trang 20

Ưu điểm kỹ thuật in nhiệt trực tiếp:

 In tốc độ cao

 Chính xác

 Bảo mật

 Gọn nhẹ

 Không cần mực để in

 Không tích lũy chất độc trong cơ thể do tiếp xúc trực tiếp với mực

in công nghiệp, không gây ô nhiễm môi trường

2.1.3 Tìm hiểu thông số của một số loại giấy in nhiệt trên thị trường

Dựa vào khổ giấy in nhiệt thì người ta phân làm 3 loại chính là giấy in nhiệt khổ K80, giấy in nhiệt khổ K57 và giấy in nhiệt khổ K75 Tiếp theo từ khổ giấy in nhiệt này lại phân loại tiếp theo theo đường kính cuộn giấy Do nhóm sử dụng giấy loại K57 nên chỉ tìm hiểu về loại giấy này

Các loại giấy in nhiệt K57 theo đường kính cuộn:

- Giấy in nhiệt K57 đường kính 45mm Giá: 5.500 đ/cuộn 1 thùng 100 cuộn: 550.000 đ/thùng Loại này thông dụng nhất trên thị trường được sử dụng nhiều cho cửa hàng, siêu thị, quán ăn

- Giấy in nhiệt K57 đường kính 38mm Giá: 5.000 đ/cuộn 1 thùng 140 cuộn: 700.000 đ/thùng Chuyên dùng cho các máy quẹt thẻ

- Giấy in nhiệt K57 đường kính 30mm Giá: 4.000 đ/cuộn 1 thùng: 250 cuộn Giá: 1.000.000 đ/thùng Chuyên dùng cho máy pos mini

- Giấy in nhiệt K57 đường kính 80mm Giá: 18.000 đ/cuộn 1 thùng 50 cuộn Chuyên dùng làm giấy in nhật ký ATM K57 dùng cho máy Diebold - Loại xuyên tường

2.2 GIỚI THIỆU PHẦN CỨNG

Trong đề tài này sẽ thực hiện thi công mô hình máy in nhiệt cầm tay Trước tiên nhóm sẽ xây dựng sơ đồ nguyên lý kết nối giữa đầu in nhiệt với KIT Discovery, mạch nguyên lý gồm có: khối sạc pin, khối điều khiển động cơ cuộn giấy vào đầu in nhiệt, khối cảm biến giấy, khối cắt giấy, khối ổn áp nguồn, khối đèn báo

Trang 21

Về phần điều khiển sẽ sử dụng KIT Discovery lập trình để thực hiện việc điều khiển mô hình, cùng với các thiết bị như IC cầu H L293D điều khiển động cơ bước, cảm biến giấy, động cơ servo cắt giấy, truyền dữ liệu cho đầu in nhiệt, màn hình hiển thị thông tin cần in ấn

Thiết bị đầu vào: Nút nhấn, màn cảm ứng

Thiết bị đầu ra: Đầu in nhiệt, dao cắt giấy, màn hình hiển thị

Thiết bị điều khiển trung tâm: KIT Discovery STM32F746NGHx lõi

in có sẵn trên giấy

Nguyên lý hoạt động của cảm biến quang dựa vào truyền ánh sáng từ bộ phát tới vật thể Vật này sẽ phản xạ lại một phần ánh sáng (phản xạ khuếch tán) ngược trở lại

bộ thu của cảm biến, kích hoạt tín hiệu ra

Lượng ánh sáng nhận về sẽ được chuyển tỉ lệ thành tín hiệu điện áp (hoặc dòng điện) và sau đó được khuếch đại

Cảm biến xuất tín hiệu ra báo có vật nếu mức điện áp lớn hơn mức ngưỡng

Hình 2.1: Hình ảnh minh họa quá trình hoạt động của cảm biến

Trang 22

Bảng 2.1: Thông số cảm biến quang trong đầu in nhiệt

2.2.2 Động cơ bước

Động cơ bước được chia làm hai loại: nam châm vĩnh cửu và biến từ trở (cũng có loại động cơ hỗn hợp nhưng nó không khác gì với loại nam châm vĩnh cửu)

Động cơ nam châm vĩnh cửu dường như có các nấc khi bạn dùng tay xoay nhẹ rotor của chúng, trong khi động cơ biến từ trở thì dường như xoay tự do

Với một bộ điều khiển, hầu hết các loại động cơ nam châm vĩnh cửu và hỗn hợp đều có thể chạy ở chế độ nửa bước, và một vài bộ điều khiển có thể điều khiển các phân bước nhỏ hơn hay còn gọi là vi bước

Đối với cả động cơ nam châm vĩnh cửu hoặc động cơ biến từ trở, nếu chỉ một mấu của động cơ được kích, rotor (ở không tải) sẽ nhảy đến một góc cố định và sau đó giữ nguyên ở góc đó cho đến khi moment xoắn vượt qua giá trị moment xoắn giữ ( hold torque) của động cơ

Điện áp giữa cực

Điện áp giữa cực

Trang 23

Bảng 2.2: Thông số động cơ bước trong đầu in nhiệt

Cực Lưỡng cực(bi-polar)

Trở kháng cuộn

Điện áp DC 4,2~8,5V Điều khiển động cơ bằng cách cấp xung kích cho từng cặp cực như mô tả ở hình bên dưới:

Hình 2.2: Giản đồ xung kích cho động cơ bước

2.2.3 Giới thiệu về vi điều khiển ARM

a Tổng quan về ARM

Cấu trúc ARM (viết tắt từ tên gốc là Acorn RISC Machine) là một loại cấu trúc

vi xử lý 32 bit kiểu RISC (thuộc kiến trúc Hardvard, có tập lệnh rút gọn) được sử dụng rộng rãi trong các thiết kế nhúng Do có đặc điểm tiết kiệm năng lượng, các bộ CPU

Trang 24

ARM chiếm ưu thế trong các sản phẩm điện tử di động, mà với các sản phẩm này việc tiêu tán công suất thấp là một mục tiêu thiết kế quan trọng hàng đầu

Việc thiết kế ARM được bắt đầu từ năm 1983 trong một dự án phát triển của công ty máy tính Acorn Nhóm thiết kế hoàn thành việc phát triển mẫu gọi là ARM1 vào năm 1985, và vào năm sau, nhóm hoàn thành sản phẩm “thực’’ gọi là ARM2 với thiết kế đơn giản chỉ gồm 30.000 transistor ARM2 có tuyến dữ liệu 32 bit, không gian địa chỉ 26 bit tức cho phép quản lý đến 64 Mbyte địa chỉ và 16 thanh ghi 32 bit Thế hệ sau, ARM3, được tạo ra với 4KB cache và có chức năng được cải thiện tốt hơn nữa Trải qua nhiều thế hệ nhưng lõi ARM gần như không thay đổi kích thước ARM2

có 30.000 transistors trong khi ARM6 chỉ tăng lên đến 35.000 Ý tưởng của nhà sản xuất lõi ARM là sao cho người sử dụng có thể ghép lõi ARM với một số bộ phận tùy chọn nào đó để tạo ra một CPU hoàn chỉnh, một loại CPU mà có thể tạo ra trên những nhà máy sản xuất bán dẫn cũ và vẫn tiếp tục tạo ra được sản phẩm với nhiều tính năng mà giá thành vẫn thấp

ARM lõi Cortex là lõi nhúng kế thừa các ưu điểm từ các thế hệ lõi ARM11 về trước đó Để phù hợp với nhu cầu sử dụng, ARM Cortex được chia làm 3 dòng:

 Cortex-A: Bộ xử lý dành cho hệ điều hành và các ứng dụng phức tạp Hỗ trợ tập lệnh ARM, thumb, và thumb-2

 Cortex-R: Bộ xử lý dành cho hệ thống đòi hỏi khắc khe về đáp ứng thời gian thực Hỗ trợ tập lệnh ARM, thumb, và thumb-2

 Cortex-M: Bộ xử lý dành cho dòng vi điều khiển, được thiết kế để tối ưu

về giá thành Hỗ trợ tập lệnh Thumb-2 (Dòng ARM STM32 có lõi Cortex-M)

Trang 25

Tập đoàn ST Microelectronic đã cho ra mắt dòng STM32, vi điều khiển đầu tiên dựa trên nền lõi ARM Cortex-M3 thế hệ mới do hãng ARM thiết kế, lõi ARM Cortex-M3 là sự cải tiến của lõi ARMv7-M 32bit truyền thống, từng mang lại sự thành công vang dội cho công ty ARM Dòng STM32 thiết lập các tiêu chuẩn mới về hiệu suất, chi phí, cũng như khả năng đáp ứng các ứng dụng tiêu thụ năng lượng thấp và tính điều khiển thời gian thực khắt khe

Chip ARM Cortex-M4 tích hợp lõi xử lý trung tâm, gọi là CM3Core, với các thiết bị ngoại vi hệ thống tiên tiến để tạo ra các khả năng kiểm soát ngắt, bảo vệ bộ nhớ, gỡ lỗi và theo vết hệ thống Các thiết bị ngoại vi có thể được cấu hình một cách thích hợp, cho phép bộ vi xử lý Cortex-M4 đáp ứng được rất nhiều ứng dụng và yêu cầu khắc khe của hệ thống Lõi của bộ vi xử lý được thiết kế đặc biệt để đáp ứng yêu cầu bộ nhớ tối thiểu, năng lượng tiêu thụ thấp và thiết kế nhỏ gọn

Chip ARM Cortex-M7 là một vi điều khiển 32-bit cao cấp nhất trong series Cortex-M của ARM cho đến hiện nay Theo ARM, Cortex-M7 có DSP (Digital Signal Processing: Xử lý tín hiệu số) cao gấp đôi so với Cortex-M4 do đó có thể xử lý cùng lúc 2 tập lệnh, giúp cho M7 có thể hoạt động ở mức xung nhịp cao hơn. Đây là dòng chip MCU 32-bit giúp tăng tốc thông dịch dữ liệu từ các cảm biến thành thông tin số

Nó tăng gấp đôi hiệu năng tính toán và DSP trong khi giảm thiểu mức tiêu thụ điện năng nhờ vào công nghệ sản xuất 28nm Chip M7 hỗ trợ các thiết bị nhúng điều khiển giọng nói hoặc giao diện rich OS và còn được sử dụng trong các smartphone hoặc trên

xe hơi để điều khiển các chức năng màn hình chạm và âm thanh phức tạp hơn

Về cơ bản thì chip Cortex-M không được gọi là vi xử lý mà nó chỉ đóng vai trò là một chip vi điều khiển (microcontroller) do cấu trúc thiếu đi một bộ phận khá quan trọng là MMU (Memory Management Unit - Đơn vị quản lý bộ nhớ) Nhiệm vụ chính của MMU là đứng giữa CPU và bộ nhớ để xử lý quá trình đọc ghi của memory và thông dịch giữa địa chỉ ảo và địa chỉ vật lý Đó là lý do tại sao các hệ điều hành như Linux (Android), Windows, MAC OS, và iOS đều phải cần đến MMU

Phân tích sâu vào chi tiết thì ta thấy Cortex-M7 được tích hợp một ống dẫn siêu

vô hướng 6 trạng thái với các FPU single/double-precision (Một khối chịu trách nhiệm thực thi các chỉ lệnh toán học phức tạp) và tập lệnh 32-bit ARMv7, Dual 16-bit MAC,

Trang 26

bộ nhớ đệm dữ liệu và các tập lệnh, hỗ trợ SIMD 8/16-bit, và TCM (Tightly coupled memory) có chức năng làm giảm độ trễ của bộ nhớ và chức năng tiên đoán nhánh TCM thực chất đóng vai trò như một MMU vốn chỉ xuất hiện trên dòng A và R series của ARM Khi sử dụng, hiệu năng của TCM có thể tương tự như bộ nhớ đệm, nhưng không hoàn toàn, vì nội dung của TCM sẽ do các nhà phát triển điều khiển trực tiếp Cortex-M7 hỗ trợ lên đến 16 MB TCM

Hình 2.4: Kiến trúc của vi xử lý ARM Cortex-M7

b Tổng quát về ARM Cortex - M7 STM32F746NGHx

Dòng STM32 tiêu thụ năng lượng cực thấp trong khi đó hiệu suất cực cao và việc lập trình cũng rất dễ dàng Với sự đồ sộ về ngoại vi (GPIO, I2C, SPI, ADC, USB, Ethernet, CAN ), ST cung cấp cho chúng ta các thư viện trực tiếp cho mỗi dòng ARM (gọi là CMSIS - Cortex Microcontroller Software Interface Standard), nhiệm vụ của chúng ta không thể dễ dàng hơn: khai báo và sử dụng mà thôi

KIT Discovery STM32F7 cho phép người dùng phát triển mở rộng các ứng dụng

về âm thanh, đồ họa, cảm biến và các tính năng kết nối tốc độ cao với các ngoại vi

Trang 27

 USB functions: virtual COM port, mass storage, debug port

 4.3-inch 480x272 color LCD-TFT with capacitive touch screen

 Camera connector

 SAI audio codec

 Audio line in and line out jack

 Stereo speaker outputs

 Two ST MEMS microphones

 SPDIF RCA input connector

 Two pushbuttons (user and reset)

 128-Mbit Quad-SPI Flash memory

 128-Mbit SDRAM (64 Mbits accessible)

 Connector for microSD card

 RF-EEPROM daughterboard connector

 USB OTG HS with Micro-AB connectors

 USB OTG FS with Micro-AB connectors

 Ethernet connector compliant with IEEE-802.3-2002

 Five power supply options:

o ST LINK/V2-1

o USB FS connector

o USB HS connector

o VIN from Arduino connector

o External 5 V from connector

 Power supply output for external applications: 3.3 V or 5 V

 Arduino Uno V3 connectors

Trang 28

Hình 2.5: KIT Discovery STM32F7

Trang 29

2.2.4 Giới thiệu về đầu in nhiệt Fujitsu FTP – 628MCL103

a Tổng quan về đầu in nhiệt

Trong công nghệ in nhiệt, bộ phận quan trọng nhất của một máy in nhiệt đó chính là đầu in nhiệt Đầu in là một khối cố định gồm nhiều điểm nóng, còn giấy hoặc các vật liệu in thì di chuyển đi qua đầu in và trục lăn làm bằng cao su nằm trực tiếp bên dưới đầu in và phục vụ hai mục đích

Đầu tiên là sử dụng áp lực tạo ra giữa các con lăn và đầu in để kéo nhẵn bên dưới khi làm nóng của đầu in Thứ hai là sử dụng áp lực để kéo phẳng các vật liệu in đảm bảo cho bề mặt tiếp xúc của vật liệu in với đầu in tốt hơn Đầu in nhiệt có tác dụng tác động vào giấy in nhiệt để in ra những thông tin cần in Thành phần quan trọng tiếp theo là bảng điều khiển kiểm soát cơ chế in ấn của máy in hóa đơn, sử dụng giấy in hóa đơn ở các siêu thị

Quá trình in ấn là một mô hình khá phức tạp Khi giấy in nhiệt đến giữa trục lăn và các đầu máy in, các yếu tố nhiệt của máy in nhận được dòng điện, hiệu lệnh sinh nhiệt từ vi điều khiển Nhiệt sinh ra kích hoạt màu nhạy nhiệt trên bề mặt giấy in nhiệt hiển thị những thông tin cần in Có hai loại in nhiệt của máy in nhiệt đó là in nhiệt trực tiếp và in chuyển nhiệt

Máy in nhiệt trực tiếp là phổ biến nhất bởi vì tốc độ in cao và mức độ hiệu quả cao, không cần sử dụng mực in nên hiệu quả giảm chi phí, bền và có thể in liên tục trong một thời gian dài

Hình 2.6: Đầu in nhiệt Fujitsu-FPT-628MCL103

Trang 30

b Tổng quan về đầu in nhiệt Fujitsu

Đầu in này được thiết kế nhỏ và gọn nhẹ, đầu in nhiệt được cấu tạo với 8 điểm đốt trên 1mm

Để thực hiện dễ dàng việc thay giấy, phần con trục lăn có thể tách ra từ thân máy

in chính với một thao tác

Hình 2.7: Cấu trúc đầu in nhiệt

c Thông số kỹ thuật đầu in nhiệt

Bảng 2.3: Thông số kỹ thuật đầu in nhiệt

Phương pháp in Phương pháp in nhiệt trực tiếp

Độ phân giải điểm 0,125 mm ( 8 điểm/mm)

Trang 31

Tốc độ in 60 mm/s

Phương pháp cấp giấy Dùng ma sát (1 dòng/4 xung)

Độ chính xác cấp giấy ± 5% với tốc độ cấp giấy cố định ở lực kéo

Mức logic

Điện áp: DC 2.7 ~ 5.25V Dòng: 0.1A Max

Nguồn điều khiển động cơ

Điện áp: DC 4.2V ~ 8.5V Dòng: 1,0 A Max

Môi trường hoạt động + 5 ℃ ~ 40 ℃, 20 ~ 85% RH Không được đọng

sương

Môi trường bảo quản -20 ℃ ~ 60 ℃, 5 ~ 95% RH Không được đọng

sương và không bao gồm giấy in

Độ bền đầu in nhiệt

- 1 trăm triệu xung (dưới điều kiện in tiêu chuẩn)

- 50km chiều dài giấy được in

Độ bền con trục lăn 5000 lần (tháo và lắp vào được tính là 1 lần)

Độ bền cảm biến giấy 1,2 x 104giờ (khi được cấp dòng)

Trang 32

d Sơ đồ chân kết nối vi điều khiển

Bảng 2.4: Sơ đồ chân kết nối vi điều khiển

1 PHK Cực thu cảm biến giấy

3 PHE Cực phát cảm biến giấy

27 MT/A Tín hiệu kích động cơ

28 MT/A̅ Tín hiệu kích động cơ

29 MT/B Tín hiệu kích động cơ

Trang 33

2.2.5 Giới thiệu về module thời gian thực DS1307

a Tổng quan về thời gian thực

Module thời gian thực: có chức năng đếm thời gian và được duy trì bởi nguồn pin CMOS 3v3 cấp vào chân VVBAT nên vẫn hoạt động dù có mất điện cấp nguồn vào chân VCC Khối này được xây dựng dựa trên IC thời gian thực

Trên thị trường có rất nhiều loại IC thời gian thực như: DS1302, DS1307, BQ32000, … Nhóm quyết định chọn IC thời gian thực được sử dụng phổ biến trên thị trường đó là IC DS1307 Với ưu điểm giá thành thấp, lập trình giao tiếp đơn giản thông qua chuẩn I2C

IC DS13B07 là IC thời gian thực có chức năng cung cấp các giá trị thời gian thực chính xác, sơ đồ chân của DS13B07 như hình 2.8

Hình 2.8:Sơ đồ chân và hình ảnh của DS13B07

Chức năng các chân của IC DS13B07:

 Hai chân X1, X2 dùng để kết nối với thạch anh 32768 Hz để tạo dao động

 Chân VVBAT nối với nguồn dương pin 3.3V để IC vẫn hoạt động đếm dao động ngay cả khi mất điện

 Chân GND là chân nối 0V (mass)

 Chân VCC nối với nguồn 5V hoặc 3.3V tùy theo từng loại chip

 SQW/OUT là ngõ ra tạo xung vuông (Square Wave / Output Driver)

 Hai chân SCL, SDA là 2 đường tín hiệu giao tiếp theo chuẩn I2C

Trang 34

Hình 2.9:Sơ đồ kết nối DS13B07

b Tổ chức bộ nhớ IC DS1307:

Tổ chức bộ nhớ bên trong của DS13B07 như hình 2.10:

Hình 2.10:Tổ chức bộ nhớ và thanh ghi của DS1307.

Hình 2.10 thể hiện rõ tổ chức của thanh ghi theo từng bit

Bảng 2.5: Bảng trạng thái và chức năng của thanh ghi thời gian

Trang 35

muốn đồng hồ hoạt động thì bit này phải bằng

Ô nhớ lưu giờ (HOURS) 0x02

Lưu hàng chục giờ và hàng đơn vị giờ ở 2 chế

độ 12 giờ và 24 giờ được lựa chọn bởi bit thứ

Lưu tháng trong năm có giá trị từ 1-12

Ô nhớ lưu năm (YEARS) 0x06 Lưu giá trị năm từ 00-99

Trang 36

2.3 GIỚI THIỆU PHẦN MỀM

2.3.1 Giới thiệu thư viện đồ họa StellarisWare Grlib

a Tổng quan về StellarisWare Grlib

Trong chương này sẽ đề cập đến Grlib (Thư viện đồ họa) trong gói phần mềm StellarisWare cung cấp khả năng phát triển giao diện người dùng phức tạp (GUI) trên các cấp độ widget với API cấp cao (Giao diện lập trình ứng dụng) Lớp Widget của Grlib được xây dựng trên các hàm cơ bản (để vẽ các đường thẳng, hình chữ nhật, hình tròn, v.v…) và các trình điều khiển hiển thị (ví dụ như trình điều khiển LCD) cho phép người dùng dễ dàng xây dựng giao diện người dùng với các điều khiển được xác định trước như các nút nhấn, thanh trượt, hộp kiểm tra, v.v…

Grlib hỗ trợ các loại tiện ích sau:

 Canvas: bề mặt vẽ đơn giản không cung cấp phương tiện tương tác với người dùng (có thể được tô màu, phác hoạ với màu sắc, có hình ảnh / thử nghiệm vẽ trong vùng vải và cho phép ứng dụng vẽ vào khung)

 Checkbox: phần tử đồ hoạ có thể được chọn hoặc không được chọn

 Container: cung cấp các phương tiện để nhóm các widget với nhau trong hệ thống thứ bậc widget

 Image button: cung cấp một nút được chèn hình, tạo ra một hành động khi được nhấn vào

 Listbox: cho phép người dùng chọn một trong số các thuộc tính trong danh sách được giữ bởi widget

 Push Button: cung cấp một nút nhấn, tạo ra một hành động khi được thực hiện

 Radio Button: cung cấp một phần tử đồ họa có thể được nhóm với các nút radio khác để tạo thành một phương tiện để chọn một trong nhiều mục

 Slider: cho phép người dùng kéo một điểm đánh dấu theo chiều ngang hoặc chiều dọc để chọn một giá trị từ trong phạm vi đã được khởi tạo trước đó

b Cấu trúc dạng cây Widget của Grlib

Các widget trong Grlib được tổ chức theo một cấu trúc giống như cây để cho phép Widget Manager vẽ các vật dụng và xử lý thông tin đưa vào của người dùng vào

Trang 37

các vật dụng một cách chính xác Mỗi widget có ba chỉ dẫn cơ bản kết nối chúng với các vật dụng khác trong cấu trúc cây:

Con trỏ cha (pParent): con trỏ tới widget ở mức trên

Con trỏ cùng cấp (pNext): con trỏ tới widget ở cùng một cấp độ

Con trỏ con (pChild): con trỏ tới widget ở mức dưới

Hình dưới đây cho thấy một ví dụ về cấu trúc cây widget:

Hình 2.11: Cấu trúc cây widget

Như có thể nhìn thấy ở trên, các vật dụng được neo lại bởi một WIDGET_ROOT toàn cục Các widget khác do người dùng xác định có thể được đính kèm với WIDGET_ROOT trong cấu trúc giống như dạng cây trong suốt thời gian khởi tạo (được định dạng cứng trong các định nghĩa cấu trúc lớp Widget) hoặc thêm vào bằng cách sử dụng WidgetAddr (tWidget * pParent, tWidget * pWidget)

Xác định hệ thống phân cấp cấu trúc cây đúng là quan trọng đối với từng ứng dụng để đảm bảo quá trình vẽ lại chính xác và xử lý yêu cầu của người dùng Xem ví

Trang 38

dụ sau với hai container, một chứa hai radio button, và một cái khác có chứa một nút nhấn:

Hình 2.12: Ví dụ về cấu trúc cây widget

c Các bước vẽ cây Widget của Grlib

Cây Widget được vẽ bắt đầu từ WIDGET_ROOT xuống dưới (cha mẹ được vẽ trước các con - do đó cha mẹ có thể được coi là nằm dưới con cái của chúng trên màn hình) Quá trình vẽ sẽ được Widget Manager thực hiện bằng cách gọi WidgetPaint (WIDGET_ROOT):

Trang 39

Hình 2.13: Các bước vẽ cấu trúc cây widget

d Các bước thực thi cây Widget của Grlib

Trái ngược với cách Widget Manager vẽ các vật dụng xuống trong cấu trúc cây widget, cách thực thi được chuyển lên trên trong cấu trúc cây (con cái được thực thi trước cha mẹ) Thông báo thực thi của người dùng được chuyển đến các vật dụng trong cấu trúc cây như sau:

 Thông báo (WIDGET_MSG_PTR_DOWN, WIDGET_MSG_PTR_MOVE hoặc WIDGET_MSG_PTR_UP):

 Khi nhận được một thông báo con trỏ (WIDGET_MSG_PTR_DOWN),

Widget Manager sẽ chuyển nó đến tất cả các vật dụng, con đầu tiên

 Mỗi widget kiểm tra xem con trỏ có nằm trong khu vực của nó hay không, nếu

có, trả lại tin nhắn "true" đến yêu cầu thông báo

Trang 40

 Tất cả thông báo di chuyển con trỏ (WIDGET_MSG_PTR_MOVE) được gửi tới Widget cho đến khi nhận được con trỏ(WIDGET_MSG_PTR_UP) hoặc xóa Widget con

Đối với ví dụ với hai container ở trên, việc xử lý thực thi yêu cầu người dùng sẽ được thực hiện bởi Widget Manager như sau:

Hình 2.14: Các bước thực thi cấu trúc cây widget

2.3.2 Giới thiệu về chuẩn giao tiếp SPI

a Định nghĩa

SPI (Serial Peripheral Bus) là một chuẩn truyền thông nối tiếp tốc độ cao do hãng Motorola đề xuất Đây là kiểu truyền thông Master-Slave, trong đó có 1 chip Master điều phối quá trình tuyền thông và các chip Slaves được điều khiển bởi Master vì thế truyền thông chỉ xảy ra giữa Master và Slave SPI là một cách truyền song công (full duplex) nghĩa là tại cùng một thời điểm quá trình truyền và nhận có thể xảy ra đồng thời SPI đôi khi được gọi là chuẩn truyền thông “4 dây” vì có 4 đường giao tiếp trong chuẩn này đó là SCK (Serial Clock), MISO (Master Input Slave Output), MOSI (Master Ouput Slave Input) và SS (Slave Select) Hình 2.15 thể hiện kết nối SPI giữa một chip Master và 3 chip Slave thông qua 4 đường

Ngày đăng: 19/01/2021, 07:33

TRÍCH ĐOẠN

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

TÀI LIỆU LIÊN QUAN

w