Mục lục:

Gỡ lỗi nối tiếp với CloudX: 3 bước
Gỡ lỗi nối tiếp với CloudX: 3 bước

Video: Gỡ lỗi nối tiếp với CloudX: 3 bước

Video: Gỡ lỗi nối tiếp với CloudX: 3 bước
Video: FPT Cloud Insights #3: Tìm Hiểu Sự Khác Biệt Giữa Backup & Disaster Recovery 2024, Tháng sáu
Anonim
Gỡ lỗi nối tiếp với CloudX
Gỡ lỗi nối tiếp với CloudX

Trong dự án này, tôi đang hướng tới việc giải thích khái niệm gỡ lỗi thông qua thiết bị đầu cuối nối tiếp. Nhưng trước tiên với tư cách là người mới bắt đầu, hãy giải thích khái niệm của nó thông qua ý nghĩa của nó.

1. giao tiếp nối tiếp

giao tiếp nối tiếp dành cho giao tiếp giữa bo mạch CloudX và máy tính hoặc các thiết bị khác. Tất cả các bo mạch CloudX đều có ít nhất một cổng nối tiếp được nhìn thấy (còn được gọi là UART hoặc USART): Serial. Nó giao tiếp trên chân RX và TX kỹ thuật số với phần cứng khác hoặc mô-đun giao tiếp nối tiếp (như gsm và gps) như với máy tính qua USB bằng SoftCard. Do đó, nếu bạn sử dụng các chức năng này, bạn cũng không thể sử dụng TX và RX cho đầu vào hoặc đầu ra kỹ thuật số. Bạn có thể sử dụng màn hình nối tiếp tích hợp trong môi trường CloudX để giao tiếp với bảng CloudX. Nhấp vào nút theo dõi nối tiếp trên thanh công cụ và chọn cùng tốc độ truyền được sử dụng trong tham số được gọi tới serialBegin ().

2. Gỡ lỗi

Gỡ lỗi đơn giản có nghĩa là xác định và loại bỏ các lỗi từ (phần cứng hoặc phần mềm máy tính). Gỡ lỗi liên quan đến việc định vị và sửa lỗi mã trong một chương trình máy tính. Gỡ lỗi là một phần của quy trình kiểm thử phần mềm và là một phần không thể thiếu trong toàn bộ vòng đời phát triển phần mềm. Ví dụ, ví dụ như mã của bạn đã được biên dịch thành công và bạn đang kiểm tra phần cứng của mình và nó không hoạt động như mong đợi, mặc dù có nhiều cách để gỡ lỗi mã của bạn; một cách đơn giản và hiệu quả để gỡ lỗi nó là thông qua việc sử dụng gỡ lỗi nối tiếp. CloudX IDE tạo ra 2 loại tệp trên quá trình biên dịch thành công, tệp HEX và COFF. Tệp HEX hoàn toàn là mã máy, là những gì được khởi động vào bảng để thực thi trong thế giới thực nhưng cũng có thể chạy trên phần mềm mô phỏng PC của bạn như Proteus Isis trong khi tệp COFF là định dạng có thể đọc được, có thể thực thi trên phần mềm mô phỏng PC của bạn (Proteus Isis). Đối với phạm vi này, chúng tôi sẽ xem xét hai loại gỡ lỗi cơ bản trên giao thức nối tiếp,

1. Gỡ lỗi nối tiếp mềm:

Trong phương pháp này, mọi kiểm tra và gỡ lỗi đều được thực hiện trên PC thông qua một số phần mềm hữu ích như Proteus ISIS. Vì CloudX về cơ bản tạo tệp COFF, tôi khuyên bạn nên sử dụng tệp này cho mô phỏng PC vì về cơ bản, bạn có thể chuyển giữa các dòng mã và tìm ra nguyên nhân sự cố xảy ra và nếu mã của bạn phải chạy mà không cần bước, hãy sử dụng teminal ảo từ "ảo chế độ cụ ", bạn luôn có thể biết bộ điều khiển đang chạy ở đâu tại bất kỳ thời điểm nào. hãy xem ví dụ mã này,

Bước 1:

Hình ảnh
Hình ảnh
Hình ảnh
Hình ảnh

/*

* Tệp: newmain.c

* Tác giả: OGBOYE GODWIN * * Được tạo vào ngày 28 tháng 6 năm 2018, 10:15 AM * /

#bao gồm

#bao gồm

/ * chúng tôi sẽ làm

pin đỏ pin1 xanh pin2 vàng pin3 * nút pin4 * / char * tell = "hmmm, tôi đã được chạm"; setup () {pinMode (1, OUTPUT); pinMode (2, OUTPUT); pinMode (3, OUTPUT); pinMode (4, INPUT); Serial_begin (9600); loop () {while (! readPin (4)); Serial_writeText (noi); Serial_writeText ("…. Chuyển sang màu đỏ"); Serial_write (0x0D); portWrite (1, 0x00); pinSelect (1, CAO); chậm trễ (200); // thử loại bỏ tất cả sự chậm trễ của bình luận và xem điều gì xảy ra // sau đó thay thế chúng (chắc chắn bạn sẽ thích!). while (! readPin (4)); Serial_writeText (noi); Serial_writeText ("…. Chuyển sang màu xanh lá cây"); Serial_write (0x0D); portWrite (1, 0x00); pinSelect (2, CAO); chậm trễ (200); // thử loại bỏ tất cả sự chậm trễ của bình luận và xem điều gì xảy ra // sau đó thay thế chúng (chắc chắn bạn sẽ thích!).

while (! readPin (4));

Serial_writeText (noi); Serial_writeText ("…. Chuyển sang màu vàng"); Serial_write (0x0D); portWrite (1, 0x00); pinSelect (3, CAO); chậm trễ (200); // thử loại bỏ tất cả sự chậm trễ của bình luận và xem điều gì xảy ra // sau đó thay thế chúng (chắc chắn bạn sẽ thích!). }}

với điều này, bạn có thể thấy cách gỡ lỗi nối tiếp quan trọng nếu bạn loại bỏ độ trễ. nếu bạn đã làm điều đó, bạn sẽ thấy mã đơn giản đó có thể gây ra rắc rối như thế nào nếu nó được thực thi trong thế giới thực mà không có những độ trễ đó.

Bước 2:

Hình ảnh
Hình ảnh
Hình ảnh
Hình ảnh
Hình ảnh
Hình ảnh

2. Gỡ lỗi phần cứng:

Trong phương pháp này, mọi kiểm tra và gỡ lỗi được thực hiện bằng cách gắn bảng nguyên mẫu CloudX vào PC bằng softCard và sử dụng thiết bị đầu cuối nối tiếp của CloudX IDE (được khuyến nghị) hoặc một số phần mềm hữu ích khác như Proteus ISIS compim, realTerm, v.v. Tạo COFF Không thể sử dụng tệp ở đây vì phương pháp này yêu cầu tải khởi động HEX vào phần cứng, tôi khuyên bạn nên sử dụng tệp này cho thẻ mềm CloudX. Lưu ý rằng mã của bạn chạy mà không cần bước để bạn luôn có thể biết dòng nào là bộ điều khiển đang chạy tại bất kỳ thời điểm nào bằng đầu ra nối tiếp. Chúng ta hãy xem đoạn mã này, cùng một ví dụ được liệt kê ở trên, thiết lập phần cứng của bạn thành trình mô phỏng để khai thác đèn LED màu đỏ --------- thành đèn LED màu xanh lá cây pin1 --------- đèn LED màu vàng pin2 - ------- nút pin3 --------- pin4

Bước 3:

Hình ảnh
Hình ảnh

các bước

1. Sử dụng mã tương tự như trên

2. khởi động vào bảng của bạn

3. khởi động Thiết bị đầu cuối nối tiếp CloudX bằng cách nhấp vào nút "nối tiếp" trên thanh công cụ

4. chọn cổng mong muốn và tốc độ truyền (9600 trong hướng dẫn này)

5. khởi động thiết bị đầu cuối bằng cách nhấp vào kết nối (ngắt kết nối nếu bạn muốn thoát)

6. với cổng được mở / kết nối, nhấn nút theo ý muốn trong giây lát và bạn sẽ thấy đầu ra nối tiếp được hiển thị trên cửa sổ đầu cuối. Lưu ý rằng nếu bạn có độ trễ khi tắt mã, bạn sẽ nhận được nhiều dòng đầu ra nối tiếp chạy quá nhanh mà không có sự kiểm soát trước khi bạn rời tay khỏi nút. Nếu vì bất kỳ lý do nào trong mã của bạn, bạn gặp sự cố như vậy hoặc tương tự, bạn luôn có thể sử dụng phương pháp này để gỡ lỗi.

Đề xuất: