Embedded System

Embedded system combines circuit hardware and micro-controller (MCU) program software.

Building embedded systems is one of my hobbies. Most of my projects are based on 8-bit MCUs (such as AVR and the legacy MCS-51), a variety of digital and analog actuators and sensors, interconnected by digital buses.

My projects contains multiple phases. Starts from selecting MCU, sensor and actuator modle, studying manual; to circuit design, programming and breadboard test; and PCB design and fabrication, soldering, commissioning.

68HC11打印ASCII字符串

这篇文章阐述字符串在内存中的结构,并讲解如何在电脑上通过C语言和单片机上通过汇编打印字符串。这篇文章将使用68HC11作为汇编的例子.

--by Captdam @ Mon, 02 Sep 2024 22:56:10 GMT

Print string on 68HC11

This article illustrates string structure in memory and how to print string on PC using C and on microprocessor using assembly. Assembly language of 68HC11 is used as example.

--by Captdam @ Mon, 02 Sep 2024 22:55:57 GMT

AVR Naked Interrupt Service Routine

Using naked interrupt service routine (ISR) in AVR development

--by Captdam @ Sun, 01 Sep 2024 02:23:20 GMT

AVR裸中断

在AVR开发中使用裸中断

--by Captdam @ Sun, 01 Sep 2024 02:23:06 GMT

Use CNC to make PCB

This blog shows how I use KiCad to design a PCB, then use FlatCAM to generate the G-code for a CNC to engrave on copper plated board. This blog also discusses the challenges I encountered and my solutions.

--by Captdam @ Sat, 31 Aug 2024 05:01:48 GMT

使用CNC制作PCB

这一篇博客将展示我如何使用KiCad制作PCB工程文件并使用FlatCAM生成G-Code,最后使用CNC在覆铜板上雕刻出电路。这一篇博客还会讨论我所遇到的一些问题和我的解决方案。

--by Captdam @ Sat, 31 Aug 2024 05:00:17 GMT

我的ATtiny记录

这一篇博客主要讨论一下我玩过的基于SPI的ICSP编程头的DIP与SOIC封装的ATtiny。

--by Captdam @ Sun, 11 Aug 2024 20:26:04 GMT

My ATtiny experience

This blog will introduce ATtiny chips in DIP / SOIC packages and with SPI-based ICSP interface that I have been used in my projects.

--by Captdam @ Sun, 11 Aug 2024 08:16:16 GMT

N沟道场效应管设计与二极管设计的电平转换器

介绍N沟道场效应管设计与二极管设计的电平转换器。这篇博客将会介绍两种设计的工作原理,提供贴片PCB走线与示波器时序图,并对比相互优缺点。

--by Captdam @ Sat, 23 Dec 2023 21:06:21 GMT

NMOS and diode based level shifter design

Introduce two different level shifter for logic circuit design: the NMOS-based design and the diode-based design. This blog will introduce the working principle of both design, provide PCB layout for both of them using SMD, provide timing diagrams using scope for both implementation, and compare the pros and cons of them.

--by Captdam @ Sat, 23 Dec 2023 21:05:58 GMT

Understanding MODBUS RTU

Introduction to MODBUS and MODBUS RTU protocol. This blog presents the format of MODBUS RTU packet, including the request from master to slave and the response form slave to master. This blog also shows how to ccompute the CRC-16 value for MODBUS packet in AVR assembly language.

--by Captdam @ Sun, 20 Aug 2023 23:00:17 GMT

理解MODBUS RTU协议

MODBUS与MODBUS RTU协议简介。这篇博客展示了MODBUS RTU请求与响应数据包的结构,并展示了如何使用AVR汇编对进行CRC-16计算。

--by Captdam @ Sun, 20 Aug 2023 22:45:46 GMT

AVR Software UART Tx

AVR UART Tx in software for ATtiny series

--by Captdam @ Sun, 23 Oct 2022 07:41:59 GMT

初始化AVR单片机

通过配置AVR单片机的fuse bits,并对AVR的内部RC时钟进行校准,使AVR单片机达到所需要的工作状态

--by Captdam @ Sun, 23 Oct 2022 06:38:56 GMT

SoC开发关于AXI的一些记录

在开发SoC系统时关于AXI总线的一些记录

--by Captdam @ Thu, 14 Jan 2021 10:28:18 GMT

Arduino (ATmega328P) bootloader

ATmega328P与Arduino,bootloader的原理与使用

--by Captdam @ Thu, 17 Jan 2019 12:56:19 GMT

MSC-51 and ultrasonic sensor

Distance measure using HC-SR04 ultrasonic sensor and MSC-51 MCU in assembly language.

--by Captdam @ Thu, 20 Dec 2018 21:50:16 GMT

51单片机与超声波测距模块

使用HC-SR04超声波测距模块与51单片机汇编。

--by Captdam @ Thu, 20 Dec 2018 21:50:16 GMT

Intel8051软件SPI

--by Captdam @ Tue, 13 Nov 2018 12:05:36 GMT