- 博客(21)
- 资源 (22)
- 收藏
- 关注
原创 载波通信模块的代码分析
struct PLC_STATE { uint8 cur_state; uint8 next_state; uint8 (*action)(uint8 init, void *args);//这个结构体是怎么用的 };void plc_machine_opt(
2015-05-31 17:24:55 1741
转载 总是稀里糊涂的移位操作
先要了解一下C语言里所有的位运算都是指二进制数的位运算。即使输入的是十进制的数,在内存中也是存储为二进制形式。 “<<”用法: 格式是:a=0。 功能:将整型数a按二进制位向左移动m位,高位移出后,低位补0。 “>>”用法: 格式是:a>>m,a和m必须是整型表达式,要求m>=0。 功能:将整型数a按二进制位向右移动m位,低位移出后,高位补0C语言中的移位操作,内容不多。不过有
2015-05-31 15:20:54 508
原创 stm8编译通不过的修改笔记
C:\Program Files\COSMIC\CXSTM8_32K在project-project setting-general-root path修改为如上。
2015-05-29 08:37:56 647
转载 瞬变二极管
瞬变二极管又称瞬态抑制二极管(TVS,Transient Voltage Suppressors),二极管中较常用的一种,是一种高品质的突波吸收器,以二极管(伏安特性)为核心,是目前国际上普遍使用的一种高效能电路保护器件,它的外型与普通二极管相同,但却能吸收高达数千瓦的浪涌功率。 其工作原理不是降低电流变化速率,而是提供一个电流的额外通路。电路中有感性元件(比如说电感线圈、继电器之类)
2015-05-28 17:00:03 770
转载 耦合变压器的作用
耦合变压器的作用:1、隔离作用,前后级之间没有直流回路。2、阻抗匹配,使前后级之间达到较佳的能量传输。3、给交流信号提供通道。
2015-05-28 16:45:31 2799
原创 压敏电阻
压敏电阻"是一种具有非线性伏安特性的电阻器件,主要用于在电路承受过压时进行电压钳位,吸收多余的电流以保护敏感器件。英文名称叫“Voltage Dependent Resistor”简写为“VDR”, 或者叫做“Varistor"。压敏电阻器的电阻体材料是半导体,所以它是半导体电阻器的一个品种。现在大量使用的"氧化锌"(ZnO)压敏电阻器,它的主体材料有二价元素锌(Zn)和六价元素氧(O)所构成。所
2015-05-28 16:34:48 1381
原创 浪涌测试
什么是共模干扰和差模干扰 电压电流的变化通过导线传输时有二种形态,我们将此称做"共模"和"差模"。设备的电源线,电话等的通信线,与其它设备或外围设备相互交换的通讯线路,至少有两根导线,这两根导线作为往返线路输送电力或信号。但在这两根导线之外通常还有第三导体,这就是"地线"。干扰电压和电流分为两种:一种是两根导线分别做为往返线路传输;另一种是两根导线做去路,地线做返回路传输。前者叫"差模",
2015-05-28 10:37:00 3494
转载 电流互感器
为了保证电力系统安全经济运行,必须对电力设备的运行情况进行监视和测量.但一般的测量和保护装置不能直接接入一次高压设备,而需要将一次系统的大电流按比例变换成小电流,供给测量仪表和保护装置使用。在测量交变电流的大电流时,为便于二次仪表测量需要转换为比较统一的电流(我国规定电流互感器的二次额定为5A或1A),另外线路上的电压都比较高如直接测量是非常危险的。电流互感器就起到变流和电气隔离作用。 它是电
2015-05-27 17:08:51 1228
原创 bit和byte
Bit意为"位"或"比特",是计算机运算的基础; Byte意为"字节",是计算机文件大小的基本计算单位; 1byte=8bits,两者换算是1:8的关系。 两个字节一个汉字。1Bit=1/16个字所以16bit=1个汉字
2015-05-27 07:32:16 394
原创 串口数据流的分析
数据流的分析先从串口的中断开始/*接收一个字节*/@far @interrupt void UART2RX_Interrupt(void){u8 byte; if(UART2->SR & UART2_FLAG_RXNE) { //byte = UART2->SR; byte = UART2_ReceiveData8()
2015-05-26 16:20:50 1566
原创 串口缓冲区管理分析
一、 概述:串口使用时一般包含两个缓冲区,即发送缓冲区和接收缓冲区。发送数据时,先将数据存在发送缓冲区,然后通过串口发送;接收数据时,先将接收的数据存在接收缓冲区,然后再进行读取。 合理恰当的使用缓冲区,不仅可以使不同设备间正常通信,而且还有助于节约内存,提高效率。 二、缓冲区分配管理:方法一:通过内存池实现 1、数据结构: struct _CHN_PO
2015-05-26 15:51:49 11280 4
原创 开关宏定义的学习
#ifdef DEBUG_IR_RCVvoid __imulate(void){ ir_eng.g_ir_state = IR_START; ir_eng.g_overflow_cnt = 0; _irwave.waveid[0] = 9;_irwave.bitcnt = 0; _irwave.bits_type_cnt = 0;
2015-05-26 09:17:06 808
原创 记录可控硅控制电路不能完全关闭的问题解决
原始电路是并联的电容是10nF、39欧姆。现象是灯不能够完全关闭。现在改为1nF、30欧姆,问题完全解决。1nF的耐压电容是1000V,封装为1206功率因数(Power Factor)的大小与电路的负荷性质有关, 如白炽灯泡、电阻炉等电阻负荷的功率因数为1,一般具有电感性负载的电路功率因数都小于1。功率因数是电力系统的一个重要的技术数据。功率因数是衡量电气设备效率高低的一
2015-05-25 15:43:21 4167
转载 使用单片机捕获红外编码
对于智能家居,有个重要的设备部分红外遥控器,因为需要它来控制一些红外家电。那么我们怎么获得这些红外编码呢?常用方法是记录遥控器发出的编码,并保存,当需要控制设备时,再将其编码发射出去。那么我们怎么使用单片机来捕获这些红外编码呢?下面我就给大家讲讲我所使用的方法。 我们一般会使用1838作为红外编码的接收头,1838的数字输出管脚是空闲为高电平(VDD),接收到红外信号时为低电平(G
2015-05-25 13:43:41 2152
转载 STM8的数据@near @tiny定义
总是记不住这个:stm8 stvd下near等于51的xdatatiny等于51的idata http://www.waveshare.net/article/STM8-3-1-10.htm 如何分配变量到指定的地址举例:unsigned char temp_A@0x00; //定义无符号变量temp_A,强制其地址为0x00unsi
2015-05-23 11:12:59 1804
原创 硬件的学习二
如果发表硬件博客可能会被封博客请提前警告我一下4.7uF以上的电容一般选择电解电容。电解电容里面是液体,可能会出现泄漏的现象。电解电容是不太精确的电容,大的电容一般都会选择电解电容。还要特别注意一下电解电容是由极性的电容,是正负极的。焊接的时候如果焊接接反的话会出现爆炸。电解电容是用来储能和滤波,滤波一般是低频波。瓷片电容是没有极性的,瓷片电容的值一般达到2.2uF。一般用来过
2015-05-21 15:40:08 486
原创 C语言小知识点的笔记
#define offset_of(obj_type,mb) ((unsigned int)&(((obj_type*)0)->mb))&是一个取地址符,解释为取((obj_type*)0)->mb的地址然后强制转换为类型unsigned int
2015-05-21 15:35:20 384
原创 硬件的学习一
1法拉=1000000微法、1微法=1000纳法、1纳法=1000皮法。C=Q/V;C为电容,Q为电荷量,V为电压电容的电压充电曲线Vin=(1-e(-t/t)) T=RC电容的电流充电曲线(Vin/R)*e(-t/t)T=RC电容大小的选型计算C=Iout/v*f; Iout为电流的输出,V为允许的纹波,f电流的频率。220V家用电的频率为50Hz,全桥整流为10
2015-05-15 20:17:48 929
原创 协议解析笔记
例如协议7E 01 00 00 00 B2 2B 00 66 01 05 07 18 C0 01 01 A9 7E :表示开始符01 00 00 00:源地址 B2 2B 00 66:目标地址 01:发送序号 05:帧的长度 07:CMD:(bit7-bit4)保留;bit3为1表示有2个字节分帧信息,为0时则没有分帧信息。(bit2-bit0): 010表示查
2015-05-07 12:29:34 608
原创 static volatile的应用
static volatile uint8 _msec = 0xff,tick_cnt = 0,tick_HW_cnt=0;;if (0xff == _msec) { _msec = 0; last_tick = __sys_tick; return; } static volatile 只在编译的时候调用一次 警告问题一定要想好再问,不然会
2015-05-06 09:09:34 886 1
原创 出现u8和uint8之间不匹配的解决办法
struct SI4438_Frame{ uint8 head; //5月4号修改uint8变为u8 uint8 dev_id[4];//适配器ID uint8 my_id[2]; //子设备ID uint8 handle; //报文上一跳 uint8 ctrl; uint8 data; //上电后广播的是自己的设备可
2015-05-04 22:04:41 4010 1
【原创】讯联电子DA14580实战教程---DA14580 SDK介绍
2018-11-12
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人