自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 资源 (2)
  • 收藏
  • 关注

转载 实时时钟DS1302

在前面的课程中我们已经了解到了不少关于时钟的概念,比如我们用的单片机的主时钟是11.0592M、I2C总线有一条时钟信号线SCL等,这些时钟本质上都是一个某一频率的方波信号。那么除了这些在前面新学到的时钟概念外,还有一个我们早已熟悉的不能再熟悉的时钟概念——年-月-日 时:分:秒,就是我们的钟表和日历给出的时间,它的重要程度我想就不需要多说了吧,在单片机系统里我们把它称作实时时钟,以区别于前面提到

2015-03-25 17:21:55 6662 1

原创 旋转编码器 C程序

/************************************************************************************************    函数名称:bianma_scan    函数功能:编码器扫描及处理     入口参数:    出口参数:无    备注: 100us扫描一次*****************

2015-03-16 16:24:25 8989

转载 C语言中利用共用体、结构体、位域实现位操作

编写过51(MCU)程序的同学都知道51架构的MCU支持位操作,这是一个很方便的特性,在读取/修改寄存器某位的值时非常方便快捷。但其他架构的MCU大多都不支持该特性,即不支持位操作,所在在对寄存器中某一位进行操作的时候都是and/or两个操作共同使用,在编写程序时非常麻烦。在查找了大量资料后,笔者得出了本文中提到的一种折中方法。名词解释:共用体(union)表示几个变量共用一个内存位置,在

2015-03-16 11:39:11 5521

转载 C语言头文件中定义变量问题(转)

上个星期回学校的时候,刚好碰到一个学弟在写程序,并且刚好碰到一个总编不过去的问题,我看了看,正好是个头文件重复包含问题,问题描述如下:他在程序中建立了一个global.h的文件,代码如下:#ifndef _GLOBAL_H_#define _GLOBAL_H_int a;int b;int c;然后在其他文件代码中,有多个.cpp文件引用他,

2015-03-16 11:38:24 798

转载 模拟红外协议接收程序

/*********************************************简介:本程序为模拟红外协议的接收程序 包含起始码和数据码本程序现固定一次性接收16BIT(2字节)的数据起始码与数据码长度定义如下图(用户可自行更改): **********************************************/

2015-03-04 09:33:26 744

转载 模拟红外协议发送源程序

/*********************************************简介:本程序为模拟红外协议的发送程序 包含起始码和数据码本程序现固定一次性发送16BIT的数据起始码与数据码长度定义如下图(用户可自行更改):?123456789

2015-03-04 09:31:43 896

转载 红外编解码彻底解析

1、编码格式  现有的红外遥控包括两种方式:PWM(脉冲宽度调制)和PPM(脉冲位置调制)。  两种形式编码的代表分别为NEC 和PHILIPS 的RC-5、RC-6 以及将来的RC-7。  PWM(脉冲宽度调制):以发射红外载波的占空比代表“0”和“1”。为了节省能量,一般情况下,发射红外载波的时间固定,通过改变不发射载波的时间来改变占空比。例如常用的电视遥控器,使用NEC up

2015-03-03 17:40:49 19641 1

转载 红外遥控系统原理及单片机软件解码程序,我的编写经历(C版本)

应该说现在每一块开发板都带有红外模块,并且大都配置了相应的程序。但其实自己动手写解码程序,更能锻炼自己所学,且不谈程序写的如何,这个过程中肯定是受益良多的。现在我就把我花一下午写出的解码程序与大家分享,期待高手的光临指正。  首先,必须要了解一些基本原理。其实按下遥控器的某一个键,遥控器会发出一连串经过调制后的信号,这个信号经过红外一体化模块接收后,输出解调后的数字脉冲,每个按键对应不同的

2015-03-03 17:39:40 3356

转载 C语言条件编译及编译预处理阶段

一、C语言由源代码生成的各阶段如下:C源程序->编译预处理->编译->优化程序->汇编程序->链接程序->可执行文件       其中 编译预处理阶段,读取c源程序,对其中的伪指令(以#开头的指令)和特殊符号进行处理。或者说是扫描源代码,对其进行初步的转换,产生新的源代码提供给编译器。预处理过程先于编译器对源代码进行处理。       在C 语言中,并没有任何内在的机制

2015-03-03 16:34:42 317

转载 一种软件去除键抖动的方法

摘要:单片机控制系统中大多使用控制键来实现控制功能。消除按键瞬间的抖动是设计者必须要考虑的问题。本文介绍一种很实用的软件去抖动方法,它借助于单片机内的定时中断资源,只要运算一下逻辑表达就完成了去抖动。这个方法效率高,不耗机时且易实现。文中使用的逻辑表达式由简单卡诺图和真值表推出,使该方法的机理容易理解。文中还提供用C51单片机编程语言编写的实用例程。   关键词:单片机 键处理 控制系统 去抖

2015-03-02 16:54:15 4901

转载 关于按键扫描程序的终极讨论

一、思路基于STM8,按键处理,思路是这样的:每20ms左右一次去扫描按键,用一个key_now记录当前值,用key_last记录上次的值,如果key_now和key_last同时有效,则开始进行cnt++。 我设定两个阈值,LONG_PRESS为100(100*20ms=2s),SHORT_PRESS为4(4*20ms=80ms,去抖)。 cnt大于LONG_PRESS,

2015-03-02 16:34:56 1016

转载 关于独立按键扫描程序的思考(整合两种算法)

转自关于独立按键扫描程序的思考(整合两种算法)源程序主要部分如下:[cpp] view plaincopyprint?volatile unsigned char Trg;    volatile unsigned char Cont;    volatile unsigned char Release;   

2015-03-02 16:26:22 1038

很全的电子元器件基础知识

很全的电子元器件基础知识,讲解很多电子方面的基础知识

2012-02-25

DS18B20温控设计的讲解

讲解DS18B20原理,有原理图,最后有汇编代码

2012-02-20

空空如也

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

TA关注的人

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