All blogs

Machine Code Generated by AVR-GCC

In this article, a number of experiments are used to examine the output machine code generated by AVR-GCC. Description is given for possible reasons AVR-GCC generates machine code in this way.

--by Captdam @ Nov 18, 2024

分割PDF文档

将大尺寸PDF文件切割为数个小尺寸页面以方便打印,适合处理地图与工程图纸

--by Captdam @ Nov 12, 2024

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 @ Nov 12, 2024

我的ATtiny记录

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

--by Captdam @ Nov 12, 2024

Tiling PDF

Divide large PDF into tiles on multiple page to allow print on small-size paper, suit for map and civil drawing

--by Captdam @ Nov 2, 2024

工程图PDF标题栏与目录生成器

生成PDF工程图,合并PDF文件,添加文字、图片与自定义标题栏,并生成目录。

--by Captdam @ Sep 21, 2024

Engineering drawing PDF & titleblock & index generator

Merge, add text, pictures and custom titleblock to PDF engineering drawing, and generate index.

--by Captdam @ Sep 20, 2024

68HC11打印ASCII字符串

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

--by Captdam @ Sep 2, 2024

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 @ Sep 2, 2024

AVR Naked Interrupt Service Routine

Using naked interrupt service routine (ISR) in AVR development

--by Captdam @ Sep 1, 2024

AVR裸中断

在AVR开发中使用裸中断

--by Captdam @ Sep 1, 2024

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 @ Aug 31, 2024

使用CNC制作PCB

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

--by Captdam @ Aug 31, 2024

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

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

--by Captdam @ Dec 23, 2023

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 @ Dec 23, 2023

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 @ Aug 20, 2023

理解MODBUS RTU协议

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

--by Captdam @ Aug 20, 2023

Bearweb网站架构-简介

Bearweb是一个为个人网站与小型组织设计的轻量级的数据库驱动PHP网站架构。Bearweb使用简单的数据库与代码结构,致力于降低网站维护难度与成本。

--by Captdam @ Jul 2, 2023

Bearweb网站架构-流程

Bearweb是一个为个人网站与小型组织设计的轻量级的数据库驱动PHP网站架构。Bearweb使用简单的数据库与代码结构,致力于降低网站维护难度与成本。

--by Captdam @ Jul 2, 2023

Bearweb网站架构

Bearweb是一个为个人网站与小型组织设计的轻量级的数据库驱动PHP网站架构。Bearweb使用简单的数据库与代码结构,致力于降低网站维护难度与成本。

--by Captdam @ May 25, 2023

OpenGL Issues

Inconsistencies I encountered during OpenGL and OpenGL ES dev.

--by Captdam @ May 1, 2023

AVR Software UART Tx

AVR UART Tx in software for ATtiny series

--by Captdam @ Oct 23, 2022

初始化AVR单片机

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

--by Captdam @ Oct 23, 2022

SoC开发关于AXI的一些记录

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

--by Captdam @ Jan 14, 2021

Arduino (ATmega328P) bootloader

ATmega328P与Arduino,bootloader的原理与使用

--by Captdam @ Jan 17, 2019

MSC-51 and ultrasonic sensor

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

--by Captdam @ Dec 20, 2018

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

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

--by Captdam @ Dec 20, 2018

Intel8051软件SPI

--by Captdam @ Nov 13, 2018

51单片机驱动辉光管时钟

作为一个老二次元技术宅怎么能拒绝拥有一台世界线变动率探测仪呢?那就用51单片机和辉光管做一个时钟吧。

--by Captdam @ Feb 14, 2018