
裸机思维
文章平均质量分 67
设备驱动;
接口规范;
复杂设备: USB、ETH、SDIO等;
嵌入式算法;
串口通信协议;
Loong7066
精于基础,广于应用
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Intel HEX文件格式规范
1、介绍本文档介绍了Intel 8位,16位和32位的微处理器使用的HEX文件格式。 该HEX文件格式适合作为PROM编程器或硬件模拟器。HEX文件格式是一种使用ASCII表示二进制文件的一种方式。使用ASCII代替二进制存储,可以存储在非二进制存储介质上,如纸带、打孔卡等;并且这个文件能够显示在CRT终端,行式打印机等。8-bit的HEX格式文件允许使用16-bit的线性文件存放Intel ...翻译 2019-10-21 23:06:22 · 4463 阅读 · 0 评论 -
嵌入式串行接口标准
嵌入式串行接口标准:RS232、RS422、RS485介绍原创 2023-01-28 14:28:08 · 942 阅读 · 0 评论 -
计算机存储:大小端
1、概念大端模式,Big-Endian,是指高字节在前,低字节在后的排布方式(具体来讲,在存储中高字节在低地址,低字节在高地址;在通信中,高字节先传输,低字节后传输)。小端模式,Little-Endian,是指低字节在前,高字节在后的排布方式(具体来讲,在存储中低字节在低地址,高字节在高地址;在通信中,低低字节先传输,高字节后传输)。从直观感受上来讲,大端模式跟接近我们的书写阅读习惯。如将数...原创 2019-09-01 15:07:55 · 651 阅读 · 0 评论 -
单位“ppm”含义
ppm是英文part per million的缩写,表示百万分之几,在不同的场合与某些物理量组合,常用于表示器件某物理量的精度或含量信息。一、溶质浓度用溶质质量占全部溶液质量的百万分比来表示的浓度,也称百万分比浓度。PPM表示一百万份单位质量的溶液中所含溶质的质量,百万分之几就叫做几个PPM,PPM=(溶质的质量/溶液的质量)*1000000。如果ppm换算成百分号“%”为:1ppm=0....原创 2019-09-01 15:56:34 · 12778 阅读 · 0 评论 -
计算机浮点数运算处理
实现四舍五入计算机运算浮点型转整形时,不会按四舍五入进行运算,而是直接将小数点后数据丢失。为避免直接将数据丢失的情况,可将待转换数据+0.5后再进行转换,实现四舍五入运算。分析:记浮点数f1 = 0.1,f2 = 0.8,转换为整形,实际转换结果为(int) f1 = 0(int) f2 = 0数据处理后为:(int) (f1 + 0.5) = 0(int) (f2 + 0.5) ...原创 2019-09-01 15:57:20 · 1161 阅读 · 0 评论 -
串口文件传输协议 - X/Y MODEM
经典串口文件传输协议X/Y Modem介绍。原创 2024-11-26 00:35:50 · 972 阅读 · 0 评论 -
3DES算法软件实现
3DES算法是DES(数据加密标准)加密算法的一种模式:使用3条56bit的密钥对数据进行三次加密。3DES加密算法是DES加密算法向AES(高级加密标准)加密算法一个过渡。des.h#ifndef __DES_H__#define __DES_H__#include <stdint.h>void DES_DataEncrypt(const uint8_t *pUsing...原创 2020-04-17 00:18:02 · 284 阅读 · 0 评论 -
RC4加密算法软件实现
RC4,流式对称加密算法,与AES、DES相似,使用相同的固定长度的密钥进行加解密运算,与AES、DES不同的是,RC4运算时不需要对数据流进行分组处理,而是按字节流的方式进行加解密运算,最终运算数据流的长度与运算前数据流长度相同。RC4加密算法软件实现代码如下。#include <stdint.h>#define RC4_BUFFER_SIZE 256#define RC4_KEY_MAX_SIZE 256static uint8_t keyLength = 16;st原创 2021-02-19 18:17:25 · 440 阅读 · 0 评论 -
传感器数据滤波算法
嵌入式应用中,系统获取的传感器数据通常需要进行滤波处理。/******数字滤波:数字滤波功能是针对的问题是模拟采集的原始数据(Raw Data)存在噪声干扰:低频噪声和高频噪声。平均滤波: 过滤高频震荡误差IIR滤波: 过滤毛刺信号中值滤波: 缩小误差的最值抖动滤波: 减弱信号抖动自适应一阶IIR滤波器: 用于接近检测。未检测到时使用高阶IIR滤波,滤掉噪声;检测到时使用低阶IIR滤波,提高系统的灵敏度。******/int32_t FilterAverage(const int32_原创 2020-06-28 00:32:32 · 17060 阅读 · 0 评论 -
MD5算法软件实现
MD5摘要算法(MD5 Message-Digest Algorithm)是一种常用的单向散列算法(单向加密,不可逆,也成为HASH算法)。MD5摘要算法可将任意长度的明文数据压缩为某一固定长度(通常为128bit,16字节)。对于任意明文数据,产生的摘要信息也是确定唯一的,因此MD5摘要算法常用于文件信息完整性的校验。软件实现MD5摘要算法如下(详细流程说明再做补充):#include <stdint.h>#include <string.h>#define S11 7原创 2020-12-10 00:01:41 · 439 阅读 · 0 评论 -
奇偶校验原理及C实现
奇偶校验,是通过计算数据流中比特位1的个数向原数据流后补充1bit的“0”或“1”,来检查数据流是否正确的方法。奇校验(odd parity):如果字符数据位中“1”的数目为偶数,校验位为"1";如果为奇数,校验位为“0”。偶校验(even parity):如果字符数据位中“1”的数目为偶数,校验位为“0”;如果为奇数,校验位为“1”。1、直接法// data: 待校验数据// retu...原创 2020-02-15 10:24:33 · 7347 阅读 · 0 评论 -
嵌入式C 位段操作
对嵌入式开发中,位段操作基础做下整理总结。1、常用位操作符位与(&):只有1和1位于结果为1,其余全是0。位或(|):只有0和0位或结果为0,其余全是1。位取反(~):将操作数的二进制逐个按位取反。位异或(^):两个位相同异或为0,不同则异或为1。左移位(<<):(嵌入式中通常为无符号数,以无符号数为例)左移时右侧补0。右移位(>>):(嵌入式中通常为...原创 2020-02-15 10:24:14 · 692 阅读 · 0 评论 -
C/C++ Util函数整理
嵌入式C/C++开发中,常用工具类函数整理分类,记录便于查询使用。原创 2019-11-10 16:46:09 · 3134 阅读 · 0 评论 -
DateTime处理算法
日期时间相关处理代码实现计算机计时通常使用秒数表示,从1970年1月1日00时00分00秒*(格林威治时间,与北京时间相差8小时)*开始到现在所经历的秒数。闰年:能够被4且不能被100整除的年份,或者能够被400整除的年份。1天24小时,1小时60分,1分60秒,所以将时间信息转换为秒数较简单,复杂的时将日期信息转换为天数。从公元开始到格林威治时间的天数为:719468。1970年1月1...原创 2020-12-06 16:57:13 · 642 阅读 · 0 评论 -
CRC校验算法及实现
在嵌入式开发中,经常使用到CRC校验算法,用于校验通信数据和存储器数据。然后之前只是使用,对CRC原理及各种CRC算法的区别并不了解。参考网络上各位大神的文章和资料,从嵌入式软件开发的角度学习了下CRC校验算法,作个总结记录。参考资料:https://blog.youkuaiyun.com/u012923751/article/details/80352325https://www.bilibili.c...原创 2020-02-14 23:42:44 · 5770 阅读 · 2 评论 -
嵌入式串行通信协议
嵌入式串行通信协议介绍:1-Wire、I2C、SPI、UART原创 2023-01-28 00:43:52 · 2524 阅读 · 0 评论 -
Keil MDK 编译信息解读
一、资源占用嵌入式系统开发时,在程序源码设计编写完成后,需要使用编译器将程序源码转换编译为控制器平台可以识别的二进制文件(通常是.hex文件)。在编译器件编译器可以获取了程序所需要占用的存储资源信息,一般也会输出供程序编写者查看。以Keil MDK为例,编译后的存储资源占用信息输出如下:Code:程序源码编译后指令集所占用的空间,该部分存放于程序存储空间。RO-Data:程序源码中,被声...原创 2019-09-01 15:27:28 · 1301 阅读 · 0 评论 -
条形码校验计算
一、概述条形码(barcode)是将宽度不等的多个黑条和空白,按照一定的编码规则排列,用以表达一组信息的图形标识符。常见的条形码是由反射率相差很大的黑条(简称条)和白条(简称空)排成的平行线图案。二、条形码校验码交叉二五码具有自校验功能,当有检验位的时候,校验位由前面字符经过一定的算法得到。交叉码用的是Mod10D校验算法。如序列号为“2345678”,计算方法如下:a. 序列号奇...原创 2019-09-01 15:08:23 · 5482 阅读 · 0 评论 -
嵌入式按键消抖
一、硬件滤波二、软件滤波1、单次延时滤波获取按键状态,若检测到按键按下则延时一定时间(如10ms),再次获取按键状态,若按键仍为按下,则按键按下,否则可认为是扰动。2、多次延时滤波获取按键状态,若检测到按键按下后,根据按键状态将8bit的变量左移1位后,写入当前键值(0或1),延时一段时间(如1ms),再次检测按键,并将按键状态的8bit变量再次左移1位后,写入当前键值(0或1),重复该...原创 2021-02-19 22:35:45 · 3562 阅读 · 1 评论 -
IC卡片使用基础
一、 卡片基本概念集成电路卡,即日常生活中常使用的卡片,可以根据读写特性分为两类:ID卡和IC卡。ID卡,全称身份识别卡,是一种不可写入的感应卡,含固定编号。卡内除了卡号外,无任何保密功能,其“卡号”是公开、裸漏的。IC卡,带有存储器,又称为记忆卡或存储卡,带有微处理器的IC卡又称为智能卡或智慧卡。记忆卡可以存储大量信息;智能卡则不仅具有存储信息的能力,而且还具有处理信息的能力,它的功能相当...原创 2019-09-01 15:07:20 · 4854 阅读 · 1 评论