很多初学单片机者往往对C51的头文件感到很神秘,而为什么要那样写,甚至有的初学者喜欢问,P1口的P为什么要大写,不大写行不行呢?其实这个是在头文件中用sfr定义的,现在定义好了的是这样的 sfr P1  = 0x90; 也就是说,到底大写,还是小写,就是在这里面决定的.这就说明,如果你要用小写,就得在头文件中改为小写.其实它都是为了编程序方便才这样写的,在程序编译时,就会变成相应的地址(如P1就变成了0x90). 下面是一个标准的C51头文件REG52.H: (此文件一般在C:\KEIL\C51…
目录: 单片机的大致介绍         1-1.通俗定义         1-2.51系列产品         1-3.标号意思         1-4.引脚介绍         1-5.用C语言开发的部分信息 1.单片机的大致介绍    1-1.通俗定义    1-2.51系列产品    1-3.标号意思 附加关键字:芯片上标号对应温度范围.芯片封装(DIP\PLCC\QFP\PGA\BGA\CBGA\)    1-4.引脚介绍 通用的为40引脚的,但是也有其他数量引脚的. >_<&quo…
MCS-51单片机在物理结构上有四个存储空间: 1.片内程序存储器2.片外程序存储器3.片内数据存储器4.片外数据存储器 但在逻辑上,即从用户的角度上,8051单片机有三个存储空间: 1.片内外统一编址的64K的程序存储器地址空间(MOVC)2.256B的片内数据存储器的地址空间(MOV)3.以及64K片外数据存储器的地址空间(MOVX)在访问三个不同的逻辑空间时,应采用不同形式的指令(具体我们在后面的指令系统学习时将会讲解),以产生不同的存储器空间的选通信号. 程序内存ROM 寻址范围:000…
如图3,点阵屏分单色和彩色,点阵屏是由许多点组成的,在一个点上,只有一颗一种颜色的灯珠,这就是单色点阵屏,彩色的在一个点上有三颗灯珠,分别是RGB三原色. 图4你可能没看出来,那么大块黄色的就是点阵屏,下面那个粉色的长条也是. 大的点阵屏实际上是由许多一小块一小块点阵屏拼接在一块的,最终形成一个大的,在做移动舞台时,它拆装方便,例如演唱会时,液晶的就不方便,运输也不方便,也容易损坏,而点阵屏就一快一块运输就可以,然后拼在一起. 单色点阵屏成本低,就不能像图4一样显示视频了,只能显示文字. 这是我…
1.单片机C51编程规范- 前言  为了提高源程序的质量和可维护性,从而最终提高软件产品生产力,特编写此规范. 2.单片机C51编程规范-范围 本标准规定了程序设计人员进行程序设计时必须遵循的规范.本规范主要针对C51编程语言和keil编译器而言,包括排版.注释.命名.变量使用.代码可测性.程序效率.质量保证等内容. 3.单片机C51编程规范-总则 格式清晰  注释简明扼要  命名规范易懂  函数模块化  程序易读易维护  功能准确实现  代码空间效率和时间效率高  适度的可扩展性 4.单片机C…
在利用keil进行8051单片机编程的时,常常需要进行绝对地址进行访问.特别是对硬件操作,如DA AD 采样 ,LCD 液晶操作,打印操作.等等.C51提供了三种访问绝对地址的方法: 1. 绝对宏:     在程序中,用“#include<absacc.h>”即可使用其中定义的宏来访问绝对地址,包括: CBYTE.XBYTE.PWORD.DBYTE.CWORD.XWORD.PBYTE.DWORD 具体使用可看一看absacc.h便知 例如: #include<absacc.h> #…
#include <iostream.h>#include "myfile_h" #include 是预处理器标识符.<>表示是标准的工程.标准的头文件.查找过程检查预定义的目录.可通过设置搜索路径环境变量或命令行修改这些目录 " "则表明是用户提供的头文件.查找该文件从当前文件所在的目录开始. 关于C51的库函数可以参考下面文档 参考资料: 1)资料共享,KEIL C51库函数 http://blog.ednchina.com/IET/10…
1)h文件作用 1 方便开发:包含一些文件需要的共同的常量,结构,类型定义,函数,变量申明: 2 提供接口:对一个软件包来说可以提供一个给外界的接口(例如: stdio.h). 2)h文件里应该有什么     常量,结构,类型定义,函数,变量申明. 3)h文件不应该有什么     变量定义, 函数定义. 4)extern问题     对于变量需要extern:     对于函数不需要因为函数的缺省状态是extern的.如果一个函数要改变为只在文件内可见,加static. 5)include包含问…
A:anolog模拟的         D:digital数字的 AD模拟转数字,DA数字转模拟 生活中的基本都是模拟量,如温度,可以是10℃,10.1℃等 手机的背光亮度自动调节,拿到太阳光下,亮度会增亮,拿到暗的地方光线会减暗,是因为,手机上有一个感光头,采集环境光的亮度,采集到的的是模拟量,经过内部的AD转换器,把模拟量转换成数字量给CPU,CPU通过亮度值再输出一个数字量,输出的数字量再转换为模拟量去控制背光屏的电压,手机后面有一个背光板,手机液晶屏自身是不发光的,为什么能看到字?是因为…
外置式PID模板 #define MuBiaoCS 0 //目标常数 #define CHang_aCS 0 //比例常数 #define CHang_bCS 0 //积分常数 #define CHang_cCS 0 //微分常数 /*******************************************************************************************/ struct P_I_D { int MuBiao; //设定目标 Desire…