Xu hướng lập trình kéo thả (Lập trình không sử dụng ngôn ngữ lập trình) đang được thế giới phát triển nhiều trong những năm gần đây trong đó có thể kể đến 2 nền tảng khá quen thuộc là Scratch và App Inventor. Với hai nền tảng này chúng ta có thể dễ dàng tạo ra các ứng dụng máy tính hoặc ứng dụng dành cho smartphone mà không cần biết nhiều về ngôn ngữ lập trình tương ứng. Những nền tảng lập trình này tập trung vào hệ thống tư duy mà không cần quan tâm nhiều đến ngôn ngữ trong quá trình lập trình.
Với lĩnh vực điện tử, chắc hẳn chúng ta đều đã từng gặp phải một vài khó khăn như: code mẫu dài, khó hiểu (chưa có khái niệm gì về ngôn ngữ lập trình C/C++), đau đầu tìm thư viện trong số hàng trăm hàng nghìn thư viện trên mạng, kết nối lằng nhằng khi cắm board test bằng dây… và đôi khi tất cả mọi thứ tưởng như đã đúng mà thiết bị của chúng ta vẫn không hoạt động hoặc hoạt động không đúng ý đồ thiết kế.
Hiểu được những khó khăn đó, nhóm phát triển Clover Team (http://stemlab.vn/...) đã nghiên cứu và cho ra đời phần mềm CloverBlock. Phần mềm CloverBlock được xây dựng trên nền tảng Blockly của Google cho phép người dùng có thể sử dụng các khối kéo thả để lập trình cho các thiết bị điện tử trên nền tảng tương tự với nền tảng Arduino. Giao diện lập trình kéo thả trực quan sử dụng nhiều khối màu sắc, chú thích dễ hiểu kết hợp với nền tảng phần cứng plug and play sẽ giúp cho chúng ta tiếp cận các bài học, dự án được nhanh chóng và hạn chế rủi ro hơn. Khi thực hiện lập trình kéo thả các lệnh lập trình C/C++ sẽ được sinh ra tự động tương ứng giúp chúng ta có thể thông qua đó từ từ tiếp cận với ngôn ngữ lập trình C/C++ dành cho các thiết bị điện tử.
Nền tảng này giúp các bạn trẻ và những người không thuộc nhóm ngành chuyên ngành điện tử, công nghệ có thể dễ dàng học tập và tiếp cận thiết kế các sản phẩm công nghệ. CloverBlock mở cánh cửa đến với khoa học, công nghệ ra đến mọi bạn trẻ và người yêu công nghệ Việt Nam, không giới hạn độ tuổi, giới tính, lĩnh vực, vùng miền…. Với CloverBlock bất cứ ai cũng có thể tiếp cận thế giới công nghệ và chuẩn bị cho cuộc các mạng công nghiệp 4.0 theo cách của mình.
Chương trình Blink LED cơ bản trên phần mềm CloverBlock
CloverBlock cho phép người lập trình nhanh chóng sử dụng được các ngoại vi (linh kiện, thiết bị điện tử) như đèn LED, nút nhấn, còi, LED 7 thanh (Đèn LED hiển thị số), LED ma trận, điều khiển hồng ngoại, các cảm biến như: Nhiệt độ, độ ẩm, khoảng cách,… một cách dễ dàng mà không cần tập trung sâu vào phân tích cách thức giao tiếp của các ngoại vi này với Arduino. Chỉ với một lệnh kéo thả sử dụng ngoại vi tương ứng các hàm về khởi tạo cấu hình sẽ được thiết lập đồng thời để chương trình có thể nhanh chóng hoạt động với ngoại vi tương ứng.
Ngoài ra, CloverBlock còn cho phép chúng ta học được ngôn ngữ lập trình C/C++ cho Arduino thông qua chương trình bằng C/C++ được sinh ra tự động tương ứng với chương trình mà chúng ta xây dựng bằng kéo thả. Điều này đặc biệt hữu ích với những bạn mới bắt đầu làm quen với Arduino.