自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(120)
  • 资源 (33)
  • 收藏
  • 关注

原创 MOS管参数详解

2017-11-01 20:33:49 18239 1

原创 空结构体多大?

struct student{}stu;sizeof(stu)的值等于1.编译器为每个结构体类型数据至少预留1个byte

2017-10-23 08:48:07 550

原创 怎么查看单片机程序占多少RAM 、ROM

Code = 121550 字节——程序代码段的flash 大小RO-data = 12154字节——程序中所定义的指令和常量大小(read only)RW-data = 1896 字节——程序中已初始化的变量大小(read/write)ZI-data = 34472 字节——程序中未初始化的变量大小(zero)单片机 单片机 FLASH 空间被谁占用了

2017-09-26 14:25:55 11226 1

原创 Modbus协议中概念

1、保持寄存器和输入寄存器是什么?最为不同的就是保持寄存器的值可以读取也可以修改,而输入寄存器的值对于master来说就只能读取。所谓保持寄存器,指的是可以通过通信命令读或者写的寄存器;通常是一些功能控制寄存器或者输出寄存器等。不同的设计中,有些保持寄存器是掉电保持;有些则不。这个看需要,不一定的。所谓输入寄存器,指的是只能读不能写的寄存器,通常是状态寄存器或者是输入结果寄存器等。(输

2017-09-11 10:46:25 1028

原创 3DES加密

#include "des.h"#include /************************************************************************//* *//* Module title:

2017-09-07 22:03:48 1956 2

原创 Ubuntu 14.04设置默认root 用户

1、先切换到root用户2、在  /etc/lightdm/       创建文件    lightdm.confvim  /etc/lightdm/lightdm.conf在lightdm.conf中写入这些命令:(以下命令复制到lightdm.conf)[SeatDefaults]autologin-user=rootautologin-user-timeo

2017-08-26 13:54:27 723

原创 GSM模块启动流程

1、 AT通讯正常:模块开机后,发送指令 AT,返回OK 表示模块通讯正常。2、 自适应波特率情况下,AT 通讯需要进行同步串口波特率流程,此步骤可参考图2 流程。

2017-08-25 08:53:16 3386

原创 AD PCB打印1:1

1、打印设置(print preview):在AD中,如果默认的打印设置不是1:1的,可以从文件(file)—>打印预览(print preview),进入打印预览。2、右键,页面设置(page setup)3、纸张选择A4(常用的),Portrait(肖像,是立着的),landscape(风景,是横着的),在Scaling(比例)选项中,模式选择Scale P

2017-08-23 18:12:28 6101 1

原创 QT编写cmd工具

mainwindow.c#include "mainwindow.h"#include "ui_mainwindow.h"MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow){ ui->setupUi(this); this->pro

2017-08-18 18:38:07 1550 2

原创 QT 显示图片

#include "mainwindow.h"#include "ui_mainwindow.h"#includeMainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow){ ui->setupUi(this);}MainWindow::~Main

2017-08-18 16:02:31 811

原创 两个单片机串口通讯IO口串电阻

最近生产了一批电路板,2个单片机串口IO口之间焊了10k的电阻,发现在波特率9600情况下没问题,而在波特率为115200的时候不能通讯,需要把电阻改成1k

2017-07-06 14:04:35 11601 4

原创 数据转换宏

#define LB(x) ((unsigned char)(x))#define HB(x) ((unsigned char)(x>>8))#define DEC2BCD(x)   ((((x/10)#define BCD2DEC(x)   ((((x>>4)&0x0f)*10)+(x&0x0f))#define BCD2BIN(n)   (((((n) >> 4) & 0x0F

2017-06-21 10:13:08 766

原创 锂电池充电电路

左边是一个锂电池管理电池芯片,可以通过调整R4来控制锂电池的充电电流右边是一个供给单片机用的电路,下面部分是供给4G模块的电源

2017-06-10 10:50:23 3654

原创 uchar a=2,b=254;a-b=?

uchar a=2,b=254;a-b=4;254=-2;  -(-2)=+2;255=-1; +1=-255

2017-06-10 10:29:11 1441

原创 敷铜的时候间距调整办法

画板的时候 线间距通常是设置7mil  ,但是敷铜的时候想离线远一点 可以添加一个规则如果想在顶层敷铜的间距是30 那么可以再添加一个规则

2017-05-19 16:35:42 2869

原创 Altium Designer覆铜特定区域不敷铜?

方法1:place/solid region,在定位孔附近画一个区域(若要画圆形的区域,先画圆并选中,再tools/convert/create cutout from selected primitives),双击勾选polygon cutout,完成敷铜。方法2:先敷铜,再place/polygon pour cutout,双击铜皮,重新敷铜。

2017-05-19 15:35:22 13083

原创 Hello QT

#include #include #include #include int main(int argc, char* argv[]){ QApplication a(argc, argv); QMainWindow w; QPushButton b(&w); b.setText("Hello QT!"); for(int i=0; i<10

2017-03-26 23:11:07 922

原创 Keil使用技巧文章收集

Keil MDK从未有过的详细使用讲解

2017-03-22 17:40:12 694

原创 HJT212协议

HJ/T212是由国家环保行业制定的数据传输标准协议,目前广泛使用的是HJ/T212-2005通信协议,该协议在2005年制定,并于2006年2月1日正式实施。 HJ/T212标准不规定数据采集传输仪与监控仪器仪表的通讯方式,可以采用RS232、RS485、GPRS、TCP/IP等通信方式。 HJ/T212通讯协议数据结构中所有的通讯包都是由ACSII码字符组成(CRC校验码除外)。

2017-03-21 15:40:42 38397 3

原创 lwip学习杂记之int lwip_setsockopt (int s, int level, int optname, const void *optval, socklen_t optlen);

optval = 1; lwip_setsockopt(socket_list[i].socket, SOL_SOCKET, SO_KEEPALIVE, &optval, sizeof(optval)); /** µ÷ÓÃclosesocketºóÇ¿ÖÆ¹Ø±Õ */

2017-03-19 14:32:25 7139

原创 C语言case关键字后面的值有什么要求?

case后面只能是整型或字符型的常量或常量表达式

2017-03-15 18:57:29 15798

原创 C语言的关键字有几个

C语言有32个关键字,初学者比较容易忽略的有union 联合体enum 声明枚举类型register 声明寄存器变量goto 无条件跳转语句sizeof 计算对象所占的空间大小

2017-03-15 18:15:47 3096

原创 stm32的备份寄存器能否当EEPROM来用?

突然想到stm32的备份寄存器能否当EEPROM来用这个问题。百度了一把,答案是不行的。因为是EEPROM是不需要任何电的,而stm32的备份寄存器是靠TC电池.首先 检查RTC电池是否装载,没电池的话,设备掉电也保存不了数据。备份寄存器就是普通的RAM,需要配合外接电池使用,如果没有电池,就不能掉电保持数据。因为是普通RAM,所以不存在写入次数的问题,理论上是无限次的。

2017-03-14 13:34:50 1687

原创 MT7620路由器设计笔记

无法输入的时候有2个原因:CRT配置的时候打钩全部去掉,MT7620的RX引脚电阻分压要改成0欧姆,因为模块电平也是3.3V。PCB要改版的地方:1地线要加粗,按键方向,看门狗电路要改

2017-03-13 11:14:53 4443

原创 RT-Thread的rt_thread_create函数介绍

thread = rt_thread_create("T_RTU", Thread_RTU, RT_NULL, 2048, //分配堆栈大小 3, // 线程的优先级 20);//线程所分配的时间片 当一个线程的优先级独一无二的时候,它的时间片这个参数将失去作用,我们不要认为上面的两个线程运行完 20 个系统 ticks 后就会

2017-03-07 17:33:30 10211

原创 基本的HTTP流程有哪些

HTTP是Hyper Text Transfer Protocol(超级文本传输协议)的缩写,其主要负责服务器与浏览器之间的通信.HTTP把客户端浏览器的请求发送到服务器,并响应的网页内容由服务器返回到客户端浏览器。(1)打开HTTP连接。因为HTTP是一种无状态协议,所以每一个请求都需要建立一个新的连接。(2)初始化方法请求。包含一些类型的方法指示符,它们的用来描述调用什么方法和需要什么

2017-03-06 23:04:26 991

原创 printf()函数是否有返回值

有。printf函数的一般形式为int printf(const char) * format,[argument]),它返回一个int,表示被打印的字符数。#includeint main(){ int i=4321; printf("%d\n",printf("%d\n",printf("%d\n",i))); return 0;}输出:432

2017-03-05 11:58:18 1082

原创 \n与\n\r的区别

换行(\n)就是光标下移一行却不会移到这一行的这一行的开头回车(\r)就是回到当前行的开头却不会下移一行按键后会执行“\n\r”,这样就是看到的一般意义的回车了,所以在用十六进制查看方式看一个文本,就会在行尾发现“\n\r”。Tab是制表符,就是“\t”,作用是预留8个字符的显示宽度,用于对齐。引申:“\n”与‘\n’的区别“\n”的是一个字符串,该字符串以‘/

2017-03-05 11:27:46 1349

原创 altium designer绘制 pcb时怎么隐藏其中网络提示线

在画PCB的时候想隐藏掉一下网络线,比如GND。通常GND的线是不手工步的,我们可以隐藏GND来看看其它线是否全部步完,这样就不用覆铜然后DRC检查是否步完等这繁琐的步骤。隐藏网络线 快捷键N-H-N ,选中要隐藏的网络线显示网络线 快捷键N-S-N 选中要显示的网络线

2017-03-04 13:29:38 21521 2

原创 枚举和define有什么区别

两者只有恨小的区别,在C语言中,枚举为整型,枚举常量为int型,因此它们都可以和其他整型类别混用而不会出错,而且枚举优点众多;能自动赋值;调试器在检验枚举变量时,可以显示符号值;服从数据块作用域规则。具体而言,两者的区别表现在以下几个方面:(1)枚举常量是实体中的一种,而宏定义不是实体。(2)枚举常量属于常量,但宏定义不是常量。 (3)枚举量具有类型,但宏没有类型,枚举变量具有与普通变

2017-03-01 23:46:24 2254 1

原创 如何用sizeof判断数组中有多少个元素

只需要用整个数组的sizeof去除以一个元素的sizeof即可求出数组中元素的个数,以数组名array为例,代码为 #define  Count (sizeof(array[0]))或者#define  Count(sizeof(array)、sizeof(数组的类型,如int,double等))。程序示例如下:#include#define Count (sizeof(array)/si

2017-03-01 23:27:46 4479

原创 不使用sizeof,如何求出数据类型的字节数

32位机器下,int型变量占用的内存空间大小为4个字节,如果不用sizeof的话可以通过以下2种方式:1,定义宏 #include #define MySizeof(Value) (char*)(&Value+1)-(char *)&Value int main() { int i; double f; double a[4]; double *q; print

2017-02-27 23:46:05 1914 2

原创 C语言中,整型变量x小于0,是否可知x*2也小于0

假定计算机中32位的,用2的补码表示整数,若x程序如下: #include int main() { int x= -4292967295; if(2*x<0) printf("2*x<0\n"); else printf("2*x>0\n"); return 0; }程序输出    2*x>0

2017-02-25 23:35:45 1665

原创 RT-Threaad的。drive.c

/* * File : device.c * This file is part of RT-Thread RTOS * COPYRIGHT (C) 2006 - 2012, RT-Thread Development Team * * The license and distribution terms for this file may be * found in the

2017-02-23 09:13:45 833

原创 char str1[]="abc"; char str2[]="abc";str1与str2不相等,为什么

两者不相等,是因为str1 和 str2 都是字符数组,每个都有其自己的存储区,它们的值则是各存储区的首地址。但有些情况却不一样,程序如下:#include int main(void){ const char str3[] = "abc"; const char str4[] = "abc"; const char *str5 = "abc"; c

2017-02-22 22:59:00 4955 1

原创 枚举变量的值如何计算

以如下程序实例进行分析。 #include int main() { enum{a, b=5, c,d=5,e); printf("%d%d%d%d%d\n",a,b,c,de); return 0; } //程序输出 0 5 6 4 5枚举量的值默认为前一个变量值加1,而第一个如果没有赋值,则默认值为0。从这个例子可以看出枚举量值是可以重复的。

2017-02-21 23:24:56 1525

原创 断言ASSERT() 是什么

ASSERT()一般被称为断言,它是一个调试程序时经常使用的宏。它定义在头文件中,通常用于判断程序中是否出现了非法的数据,在程序运行时它计算括号内的表达式的值。在此强调的一点,ASSERT()捕获的是非法情况,而非错误情况,错误情况是必然存在的,并且一定需要作出相应的处理,而非法情况则不是,它可能只是漏洞而已。其用法如下: ASSERT(n != 0); k = 10/n;

2017-02-20 23:39:44 1241

原创 AltiumDesigner 网络隐藏显示操作

网络线隐藏后画要显示按L快捷键跳出来这个界面打钩

2017-02-17 16:22:03 5958

原创 原理图和PCB对应元器件交叉查找

http://blog.csdn.net/jayson_zhong/article/details/49980905

2017-01-09 09:32:17 3321

原创 C语言到C++的升级

在C语言中,重复定义多个同名的全局变量是合法的(多个同名的全局变量最终会被链接到全局数据区的同一个地址空间上)在C++ 中,不允许定义多个同名的全局变量struct  关键字的加强--C语言中的 struct 定义了一组变量的集合--C语言中的struct 定义的标识符并不是一种新的类型--C++中的struct用于定于一个全新的类型(也就是说不用typedef再声明一

2016-12-21 09:23:41 647

单片机课后答案

单片机接口技术 李朝青 第三版答案完整版

2013-03-31

PROTEL99SE封装说明

Protel99se 的封装具体说明 让初学者更容易记住 也让高手便于查询

2014-01-06

开关电源各部分详解

开关电源具体分析电路 开关电源原理及各功能电路详解 不管是初学者还是大侠级别都使用

2014-01-05

树莓派系统安装教程

步骤如下11在下载好的NOOBSZIP压缩包上右键选择12解压文件将红框内的字母如上图H改成内存卡的盘符点击确定并等待解压完成。13将内存卡插入树莓派主机卡槽HDMIN线连接显示器键盘鼠标接好后接上电

2016-08-07

单片机仿真

很好的单片机仿真软件,适合初学者,通俗易懂

2013-03-31

电源设计经验之谈 50例

电源设计经验之谈 1-50合集 不管是初学者还是大侠级别都很好的资料 好好学习

2014-01-05

《Rapid GUI Programming with Python and Qt》

《Rapid GUI Programming with Python and Qt》是一本非常适合入门的书

2016-08-19

jsoncpp-master源码包

自己测可以用的

2016-11-12

树莓派系统安装教程1

同事给我的安装教程 很详细 我就是按照这个来装

2016-08-20

curl-7.51.0.tar.gz

这个我编译成功,可以用

2016-11-18

JSON C++ 例程

自己写的 亲手测了

2016-11-12

VHDL程序设计教程

VHDL的程序设计教程,邢建平,曾繁泰,第三版,清华大学出版社PPT

2013-03-31

Jlink驱动稳定版

2016-07-30

PLC试题及答案

PLC期末考试复习题目及答案,基础知识复习你的期末考试就不是问题啦

2013-06-02

硬件面试题目

超全的面试题目 几乎硬件面试会问的题目里面都有

2014-01-05

PyQt非常好的资料

PyQt 非常好的资料

2016-09-04

汇编基础入门

很好的单片机汇编 入门基础篇,适合初学者使用

2013-03-31

M35命令AT指令

M35 AT指令。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。

2017-10-21

LinkIt Smart MT7688

LinkIt Smart MT7688 中文翻译资料。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。

2017-12-10

STM8L051F3P6T.PDF

官方的资料。PDF文档STM8L051F3P6T.PDF

2019-06-12

SN74AHC1G14DBVR.PDF

SN74AHC1G14DBVR资料PDF

2019-06-12

ESP8266 AT 指令集.pdf

ESP8266指令文档

2020-03-05

openssl-1.0.1u.tar.gz

这个虽然不是最新的,但是我为了参考别人博客就用接近的版本

2016-11-18

可视化cmd 工具

用QT写的 cmd工具 跟Windows自带的dos命令输入框一样

2017-08-18

FM1701源码

FM17xx技术支持提供的测试代码,裸机at89c62.。这份代码相对比较规范

2019-01-30

ST公司以太网培训资料

非常全面的资料 ST培训资料 包括在线升级等等。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。

2017-11-12

FM1701原理图参考电路

芯片技术支持给我的原理图,参数比较准确,设计的可以参考

2018-12-14

QT 显示图片

非常简单例子 只是显示张图片而已

2017-08-18

DES加密算法C语言

C语言写的DES加解密源码,单片机上、上位机兼可以用。

2018-07-07

九日通代码.rar

于振南九日通源码。配套九日通视频,非常好的单片机入门资料,代码规范

2019-06-12

FM1701+S50中文资料PDF

FM1701+S50中文资料PDF比较详细,官方资料。

2018-12-14

modbus驱动程序

Linux下的Modbus驱动,RTU

2017-03-14

rt5350上GDB安装包

rt5350 openWRT GDB 调试工具

2016-12-06

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除