
C语言
AK_L_____
这个作者很懒,什么都没留下…
展开
-
串口接收到字符指令的处理
【代码】串口接收到字符指令的处理。原创 2024-05-24 17:11:51 · 186 阅读 · 0 评论 -
嵌入式系统的报错设计
嵌入式 报错设计 故障设计 状态机中的报错设计原创 2023-01-05 16:52:03 · 292 阅读 · 0 评论 -
NTC 负温度系数 10倍显示
NTC 负温度系数 10倍显示原创 2022-12-30 14:11:21 · 158 阅读 · 0 评论 -
红外接收C语言实现 NEC 定时器
使用定时器实现红外的接收,定时器的时间为80uS,协议为NEC。 typedef unsigned char bit;typedef unsigned char BYTE;//timer 80us 定时器每80us进去一次#define n_InfraredLowBitMin 4//560us#define n_InfraredLowBitMax 10//560us#define n_InfraredZeroBitMin n_InfraredLowBitMin#define n_Inf原创 2022-03-01 18:01:10 · 1068 阅读 · 0 评论 -
MODBUS RTU C语言 从机实现
参考链接:Modbus协议解析--小白一看就懂的协议_“社会大学三年级”的博客-优快云博客_modbus协议详解水平有限,仅供参考////////////////////////////////////////////////////////////modbus_rtu//地址(1字节)+功能码(1字节)+寄存器地址(2字节)+数据()+校验(2字节)////////////////////////////////////////////////////////////typedef原创 2021-09-16 18:13:21 · 5970 阅读 · 4 评论 -
WinAVR在win10下编译报错 win10安装不了USBISP驱动
1.WinAVR在win10下编译报错具体报错是:Build started 18.11.2014 at 23:33:54 0 [main] sh 13304 sync_with_child: child 11844(0x14C) died before initialization with status code 0xC0000142 38575 [main] sh 13304 sync_with_child: *** child state waiting for long...转载 2020-11-23 18:42:09 · 1686 阅读 · 0 评论 -
把一个范围的数映射到另一个范围
如何将一个范围的数映射到另一个范围,这是一个很简单的问题。但是有时候8位单片机对乘除法支持不是很好,会出现溢出,这样你就不能很好地得到你想要的数。这里我提供一个简单的算法,可以对整型进行误差较小的映射。/*************************************目的:将200 - 1023 中的某个数映射到 20 - 160 上*原范围:200 - 1023*目标范围:20 - 160*大数到小数的映射会出现精度的损失,所以先将小数的范围扩大,*这里采用的是左移n位,原创 2020-09-20 01:05:58 · 5505 阅读 · 0 评论 -
Linux C语言 socket 多线程(循环创建多个线程,同时进行,非阻塞)
我看了一些博客,多线程网络编程用的是堵塞,也就是 pthread_join函数,可是既然是监听接口怎么能用堵塞的。我要做的东西是:监听80端口,然后接收请求,创建一个线程完成相应任务。我遇到的问题是:用阻塞(也就是pthread_join(thread_id))相当于单线程无法满足要求,用非阻塞(pthread_detach(thread_id))然后我的socket没反应。问题原因...原创 2019-10-03 16:33:58 · 3189 阅读 · 0 评论 -
单片机温度传感器的想法
1.首先单片机AD是多少位的,比如n位,那么单片机AD的最大值是2^n-1;2.串接传感器的电阻为R,传感器的电阻为Rc3.AD的值: val = (Rc/(R+Rc))*2^n;4.根据供应商提供的温度和电阻的匹配表,进行计算。温度和电阻一般为非线性的,所以一般会用查表法来查找温度值(精度要求不高的情况下)。8位单片机ram很小,把你要查的数据设成 const, 别设成v...原创 2019-06-14 17:01:00 · 576 阅读 · 0 评论 -
C语言可变参数函数的两种实现方式以及va_list、va_start、va_arg、va_end详解
函数的可变参数的实现方式有两种:1.通过库函数stdarg.h实现先贴代码int add(int n,...){ int i = 0; int sum = 0; va_list ap; va_start(ap,n); for(i = 0;i < n;i++) { sum += va_arg(ap,int); ...原创 2019-05-08 22:08:22 · 1406 阅读 · 1 评论