Author name: Tạ Lục Gia Hoàng

Ưu điểm và Nhược điểm của Biến Global

Các biến toàn cục (global variable) hay biến global có một tiếng xấu, là chúng có mặt ở mọi chỗ trong mớ code lộn xộn. Chúng liên tục âm mưu với các thế lực bên ngoài không thể giải thích được để kiểm soát luồng code. Chúng không biết ý nghĩa của từ reentrant.* Thuận […]

Ưu điểm và Nhược điểm của Biến Global Read More »

GPS và GNSS là gì?

Chúng ta đang sống trong một thế giới mà sóng vệ tinh bao phủ mọi nơi. Thiết bị truyền hình vệ tinh như TV để giải trí hàng ngày, máy thu tín hiệu vệ tinh (như bộ thu tích hợp sẵn trên điện thoại) lại cho con người những thông số hữu ích về vị trí. Trong cuộc sống, bạn rất dễ bắt gặp những cụm từ nói về tín hiệu vệ tinh như GPS, GNSS, nhưng chúng là gì?

GPS và GNSS là gì? Read More »

BeagleBone Black vs Raspberry Pi 3 – Cái nào tốt hơn?

Đối với những ai mới bắt đầu tìm hiểu hoặc dự tính mua một con BeagleBone Black, có lẽ câu hỏi đâu tiên mỗi người đều tự thắc mắc là so sánh giữa BeagleBone Black và Raspberry Pi cái nào tốt hơn. Bài viết này sẽ liệt kê những điểm khác nhau cơ bản giữa chúng từ đó đưa ra một vài lời khuyên để lựa chọn phù hợp theo nhu cầu dự án của bạn.

BeagleBone Black vs Raspberry Pi 3 – Cái nào tốt hơn? Read More »

Học Lập Trình C - Con trỏ -Pointer

C – Con Trỏ (Pointer)

Trong lập trình C, con trỏ (pointer) là một chủ đề quan trọng và thú vị. Vài tác vụ chương trình C được thực hiện dễ dàng hơn bằng con trỏ, như là cấp phát bộ nhớ động (dynamic memory allocation). Cấp phát bộ nhớ động không thể thực hiện được nếu không sử dụng con trỏ. Do đó để trở thành một lập trình viên C giỏi, cần phải tìm hiểu về con trỏ. Hãy bắt đầu bằng những bước đơn giản trước.

C – Con Trỏ (Pointer) Read More »

Con Trỏ và Hàm (Pointers and Functions)

Con trỏ (pointer) trang bị một khả năng quan trọng cho hàm (function). Nó cho phép dữ liệu (data) được truyền (pass) vào và sửa đổi (modify) bằng hàm. Dữ liệu phức tạp cũng có thể được truyền và trả về từ hàm dưới dạng một con trỏ tới cấu trúc (a pointer to a

Con Trỏ và Hàm (Pointers and Functions) Read More »

Một chút suy nghĩ về Open Source (mã nguồn mở)

Open source (mã nguồn mở), thời sinh viên mình có suy nghĩ dựa vào nó để làm mọi thứ, có khi còn nghĩ có thể dùng để chế cái gì đó đem bán. Nhưng có đúng là dễ dàng như vậy không? Nếu ta cho mình quyền sử dụng miễn phí công sức trí tuệ

Một chút suy nghĩ về Open Source (mã nguồn mở) Read More »

HiFive1 Rev B board

Sự trở lại của RISC-V HiFive1

Hệ thống trên chip (System on Chip – SoC) Freedom Everywhere 310 (FE310) được phát triển và ra mắt bởi công ty startup SiFive. FE310 là một SoC thương mại đầu tiên của ngành, dựa trên kiến trúc mã nguồn mở. Quay lại năm 2016, kiến trúc RISC-V đã trải qua những giai đoạn có

Sự trở lại của RISC-V HiFive1 Read More »

API and HAL Fundamentals (Phần 1)

“Software is a great combination between artistry and engineering.” —Bill Gates 1. The Wonderful World of HALs Có nhiều công cụ mà các nhà phát triển phần mềm nhúng có thể sử dụng để phát triển phần mềm một cách nhất quán, nhưng công cụ tốt nhất hiện nay có thể cải thiện khả năng

API and HAL Fundamentals (Phần 1) Read More »

Device Driver Fundamentals in C (Phần 4)

(Phần 1, Phần 2, Phần 3, Phần 4) Nội dung Chương 3: Device Driver Fundamentals in C 1. Hiểu về Memory Map 2. Planning the Driver Interfaces 3. Design by Contract 4. Assertion Fundamentals 5. Device Driver Models 6. Polling Versus Interrupt-Driven Drivers 7. Driver Component Definition 8. Naming Convention Recommendations 9. Object-Oriented Programming in

Device Driver Fundamentals in C (Phần 4) Read More »