Cách vào Linux console của Galileo

Giới thiệu

Như các bạn đã biết, Intel Galileo là một mạch linux và tương thích với Arduino. Như vậy có 2 cách để lập trình Galileo, một là dùng phần mềm Arduino Galileo-ized IDE để lập trình thông qua ngôn ngữ Arduino, hai là dùng các ngôn ngữ lập trình khác (như PHP, Python, LUA, BASH, C, C++, JS,... - tất nhiên là những cái này đã cài trình biên dịch) lập trình cho phần Linux trong mạch Galileo. Hôm nay, chúng ta sẽ nghiên cứu về cách vào Linux từ đó lập trình theo cách thứ hai, vì cách một bạn chỉ cần nghiên cứu về mạch Arduino ở các bài trước là được!

Mục đích của bài viết

Bài viết này nhằm giải quyết vấn đề "không vô được Linux" xuất hiện ở Bài 6: Sử dụng Terminal trên Intel Galileo, vì vậy nếu ở Bài 6, bạn làm tốt và vô được Linux Console thì hãy tham khảo bài này như là để có thể tham kiến thức, nhằm hỗ trợ cho những bạn chưa biết. Còn nếu ở bài 6, bạn làm chưa được thì đây sẽ là cuốn cẩm nang tốt dành cho bạn.

Mình sẽ viết cực kì ngắn gọn nhưng đầy đủ thông tin để các bạn làm theo, từ đấy tự suy ra những kinh nghiệm dành cho mình.

Nội dung

Ở phạm vi bài viết này, mình xin hướng dẫn vào Linux lúc bạn chưa cài một hệ điều hành linux nào khác trên thẻ nhớ. Và máy tính của bạn phải chạy hệ điều hành Windows

Mặc định hệ thống Linux của galileo có thông số truy cập với tên người dùng là root và không có mật khẩu. Bạn không cần thay đổi cho mật khẩu của bản linux khi chưa cài hệ điều hành trên galileo làm gì, nhưng nếu muốn thì bạn hãy xem mục bình luận ở dưới.

Vì vậy khi truy cập vào Linux Console của Galileo, bạn chỉ cần gõ root rồi ấn nút Enter là xong!

Theo mình thì có 4 cách để truy cập vào phần Linux Console của Galileo với giá thành rẻ.

1. Sử dụng kết nối UART giữa Intel Galileo và máy tính (chỉ có cách này bạn mới cài được hệ điều hành linux khác với hệ điều hành cơ bản mà Intel khuyên dùng)

  • Máy tính của bạn cần có một cổng COM (DB9), nếu không có bạn cần mua một cái Serial to USB. Thường thì máy tính để bàn có cổng COM sẵn nằm ở sau máy.
  • Bạn cần có một cổng RS-232 to DB9 cho galileo, nếu không có, bạn hãy xem cách làm tại đây.
  • Sau đó bạn sử dụng Putty để vào phần Linux Console với thông số như hình và sau đó bạn có thể vô được Linux Console của Galileo rồi.

2. Kết nối Intel Galileo trực tiếp với máy tính thông qua dây LAN

  • Bạn kết nối Intel Galileo với PC trực tiếp bằng dây LAN
  • Mặc định thì khi boot lên Galileo không mở cổng Ethernet (nhưng nó vẫn sáng đèn), vì vậy bạn cần khởi động cổng Ethernet. Vì vậy, bạn cần upload đoạn code sau lên Galileo.
#include <SPI.h>
#include <Ethernet.h>

//Bạn thay đổi địa chỉ MAC dưới đây sao cho giống với địa chỉ MAC của Galileo của bạn.
byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };  
//Địa chỉ IP dùng để truy cập vào Serial Console khi máy của bạn không cấp IP động cho Galileo
byte ip[] = { 192, 168, 0, 2 };    

// Upload xong bạn nhớ nhanh tay bật Serial Monitor nhé.

void setup()
{
    Serial.begin(9600);
    Serial.println("Khoi dong cong Ethernet, lay IP dong (DHCP)");
    if (Ethernet.begin(mac) == 0) {
        Serial.println("Khong duoc cap IP dong (DHCP)");
        Serial.println("Dat Galileo bang dia chi IP tinh");
        Ethernet.begin(mac, ip);
    }
    Serial.print("Dia chi IP cua ban la: ");
    Serial.println(Ethernet.localIP());
}

void loop () {}
  • Từ chương trình trên, bạn sẽ được một địa chỉ IP, ví dụ là 192.168.0.2. bạn chỉ việc dùng Putty cài đặt các thông số sau là có thể vào được Linux Console.

3. Kết nối Intel Galileo với Router Wireless hoặc Modem

  • Bạn làm tương tự như cách 2, nhưng ở đây khác ở bước 1, thay vì kết nối giữa máy tính và Galileo, bạn kết nối Galileo với  Modem hoặc Router Wireless

4. Sử dụng code "Poor Man's Telnet" - được viết bởi Mikal Hart

  • Bạn chỉ việc upload đoạn code này lên Intel Galileo rồi vô Serial Monitor là vào được Serial Console.
  • Ưu điểm:
    • Đơn giản, tiện lợi, nhanh chóng, không cần mua thêm đồ, chi phí = 0 đồng
    • Bạn chỉ cần mở Serial Monitor của Arduino Galileo-ized IDE là được
  • Nhược điểm:
    • Một số câu lệnh trả về hơi khác những gì nó cần trả về. Bạn chạy lệnh top là rõ ngay.

 

lên
3 thành viên đã đánh giá bài viết này hữu ích.
Chuyên mục: 
Các dự án được truyền cảm hứng

Select any filter and click on Apply to see results

Các bài viết cùng tác giả

Xử lý nhiều tiến trình cùng một lúc trên Arduino - Xử lý bát đồng bộ - Có thể hay không?

Một khi viết một chương trình lớn, bạn sẽ phải viết chương trình để thực hiện nhiều chức năng. Và khi viết chương trình với nhiều chức năng bạn sẽ gặp các vấn đề phức tạp như: làm thế nào để chức này hoạt động ổn định với chức năng kia, và khi thêm chức năng mới vào sản phẩm của mình nó sẽ đụng độ như thế nào với các chương trình khác? Qua bài viết này, mình muốn chia sẻ với các bạn một thư viện khá hay của anh Đại Huỳnh (trong đó mình có mod lại một tí laugh) để giải quyết các vấn đề nêu trên - xử lý nhiều tiến trình cùng một lúc trên Arduino.

lên
24 thành viên đã đánh giá bài viết này hữu ích.

Bài 2: Download Arduino IDE dành cho mạch Intel Galileo

Ở bài viết này, tớ sẽ hướng dẫn bạn tải về phiên bản Arduino được Intel phát triển để lập trình mạch Intel Galileo. Bản Arduino hơi nặng một tí nhưng đã được chỉnh sửa phù hợp cho việc lập trình mạch Intel Galileo. Tớ sẽ hướng dẫn chi tiết từng bước. Từ đó, các bạn sẽ cài đặt được ngay thôi!

lên
2 thành viên đã đánh giá bài viết này hữu ích.