51单片机程序设计
① 51单片机程序设计
P1=0xff,关闭所有LED(低电平才能点亮LED);
10000mS=10S;
右移1位;P1.7 先=0,即LED点亮
② 89c51单片机程序设计!!!
办法比较多,抄89c51自己是不带ad的,那么外接ad程序比较麻烦,你这对电压也不测量精确值,所以用不着ad,只要能区分电压值不同就行了。考虑到程序的简单,就用比较器,比如说接五个比较器,阈值分别为1v、2v、3v、4v、5v,把他们的输入端接在一起,输出端接在单片机的五个io口上,再接五个发光二极管在另外五个io口上,发光二极管的另一端分别串个限流电阻接在电源上,硬件完成了。程序就好写多了,只要判断五个比较器输出端电平,然后控制相应的灯亮灭就行了。比较器也不一定五个,三个两个也一样,这样精度就不太高而已。不过程序就几行代码。简单。
③ 求一个简单的51单片机c语言程序设计~
机的外部结构
:
1.
DIP40
双列直插;
2.
P0
,
P1
,
P2
,
P3
四个
8
位准双向
I/O
引脚;(作为
I/O
输入时,要先输出高电平)
3.
电源
VCC
(
PIN40
)和地线
GND
(
PIN20
);
4.
高电平复位
RESET
(
PIN9
);(
10uF
电容接
VCC
与
RESET
,即可实现上电复位)
5.
内置振荡电路,外部只要接晶体至
X1
(
PIN18
)和
X0
(
PIN19
);(频率为主频的
12
倍)
6.
程序配置
EA
(
PIN31
)接高电平
VCC
;(运行单片机内部
ROM
中的程序)
7.
P3
支持第二功能:
RXD
、
TXD
、
INT0
、
INT1
、
T0
、
T1
单片机内部
I/O
部件
:
(
所为学习单片机,实际上就是编程控制以下
I/O
部件,完成指定任务
)
1.
四个
8
位通用
I/O
端口,对应引脚
P0
、
P1
、
P2
和
P3
;
2.
两个
16
位定时计数器;(
TMOD
,
TCON
,
TL0
,
TH0
,
TL1
,
TH1
)
3.
一个串行通信接口;(
SCON
,
SBUF
)
4.
一个中断控制器;(
IE
,
IP
)
针对
AT89C52
单片机,头文件
AT89x52.h
给出了
SFR
特殊功能寄存器所有端口的定义。
C
语言编程基础
:
1.
十六进制表示字节
0x5a
:二进制为
01011010B
;
0x6E
为
01101110
。
2.
如果将一个
16
位二进数赋给一个
8
位的字节变量,则自动截断为低
8
位,而丢掉高
8
位。
3.
++var
表示对变量
var
先增一;
var
—
表示对变量后减一。
4.
x |= 0x0f;
表示为
x = x | 0x0f;
5.
TMOD = ( TMOD & 0xf0 ) | 0x05;
表示给变量
TMOD
的低四位赋值
0x5
,而不改变
TMOD
的高四
位。
6.
While( 1 );
表示无限执行该语句,即死循环。语句后的分号表示空循环体,也就是
{;}
④ 51单片机简单程序设计
;循环制检测按键:K1,K2,K3
ORG 0000H
LJMP 0030H
ORG 0030H
K0:
MOV P1, #00H ;关显示
k1: JB P3.1, k2 ;检测K1(按下为0),没有按下去检测K2
MOV P1, #06H ;显示“1”(共阴极显示)
JNB P3.1, $ ;等待释放
k2: JB P3.2, k3
MOV P1, #5BH ;显示“2”
JNB P3.2, $
k3: JB P3.3, K0
MOV P1, #4FH ;显示“3”
JNB P3.3, $
LJMP K0 ;循环检测
END
⑤ 51单片机程序设计
按键按下去不是K2等于回0么?答
else if(K2==1 && dly==0)
{
dly=DLY1;
if(mode==2 && hour<23)hour++;
if(mode==3 && minute<59) minute++;
if(mode==4 && minute<59) second++;
⑥ 急求51单片机C语言应用程序设计实例精讲的光盘下载
你还不如去我的博客上看看,那里有一些很实用的程序.
⑦ 51单片机源程序设计
先实现一个功能吧,按K1数码管显示加1,LED灯左移一位。
#include<reg51.h>
#include<intrins.h>
#defineucharunsignedchar
ucharcodetable[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};//共阳版级数码管码权表0-9
ucharkey;
voidext0()interrupt0
{
key++;
P1=_crol_(0xfe,key);
P0=table[key];
}
main()
{
EX0=1;
IT0=1;
EA=1;
while(1);
}
⑧ 51单片机程序设计
按键抄按下去不是K2等于0么?
else if(K2==1 && dly==0)
{
dly=DLY1;
if(mode==2 && hour<23)hour++;
if(mode==3 && minute<59) minute++;
if(mode==4 && minute<59) second++;
⑨ 求 51单片机C语言应用程序设计实例精讲pdf
有doc格式的51单片机教程
⑩ 51单片机C语言应用程序设计实例精讲的目录
第1章51单片机开发的基础知识
1.151单片机的硬件结构
1.1.1功能模块
1.1.2CPU
1.1.3并行I/O端口
1.1.4存储嚣结构
1.1.5定时/计数器
1.1.6串行口
1.1.7中断系统
1.251单片机的指令系统
1.2.1寻址方式
1.2.2指令说明
1.2.3指令系统表
1.3本章总结
第2章C语言程序各语句用法与意义
2.1数据结构
2.1.1数据类型
2.1.2变量与常量
2.1.3数组
2.1.4指针
2.1.5结构
2.1.6共用体
2.1.7枚举
2.2运算符与表达式
2.2.1运算符分类与优先级
2.2.2算术运算符与表达式
2.2.3关系运算符与表达式
2.2.4逻辑运算符与表达式
2.2.5位操作运算符与表达式
2.2.6赋值运算符与表达式
2.3程序结构与函数
2.3.1程序结构
2.3.2函数
2.4流程控制语句
2.4.1选择语句
2.4.2循环语句
2.4.3转移语句
2.5本章总结
第3章Keil8051C编译器
3.1Keil编译器简介
3.2使用Keil开发应用软件
3.2.1建立工程
3.2.2工程的设置
3.2.3编译与连接
3.3dScopeforWindows的使用
3.3.1如何启动
3.3.2如何调试
3.3.3调试窗口
3.4本章总结 第4章单片机实现液晶显示
4.1实例说明
4.2设计思路分析
4.2.1液晶显示模块
4.2.2液晶显示工作原理
4.2.3设计思路
4.3硬件电路设计
4.3.1器件选取
4.3.2电源模块
4.3.3液晶显示模块
4.3.4单片机模块
4.4软件设计
4.4.1液晶控制驱动嚣指令集
4.4.2程序说明
4.5实例总结
第5章基于MAX7219的8位数码管显示
5.1实例说明
5.2设计思路分析
5.2.1LED显示驱动芯片的选取
5.2.2MAX7219的工作原理
5.3硬件电路设计
5.3.1主要器件
5.3.2电路原理图
5.4软件设计
5.4.1MAX7219的工作时序和寄存器描述
5.4.2程序说明
5.5实例总结
第6章键盘输入实例——实现4x4键盘
6.1实例说明
6.2设计思路分析
6.3硬件电路设计
6.4软件设计
6.5实例总结
第7章单片机实现语音录放
7.1实例说明
7.2设计思路分析
7.2.1语音芯片选取
7.2.2语音芯片1SD2560简介
7.3硬件电路设计
7.3.1主要器件
7.3.2电路原理图及说明
7.4软件设计
7.4.1程序流程
7.4.2程序说明
7.5实例总结 第8章基于MAX197的并行A/D转换
8.1实例说明
8.2设计思路分析
8.2.1A/D转换原理
8.2.2如何选择A/D转换器件
8.2.3A/D转换器对电源电路的要求
8.3硬件电路设计
8.3.1主要器件
8.3.2电路原理图及说明
8.4软件设计
8.4.1MAX197控制字
8.4.2程序流程
8.4.3程序说明
8.5实例总结
第9章基于TLC549的串行A/D转换
9.1实例说明
9.2设计思路分析
9.2.1芯片选取
9.2.2工作原理
9.3硬件电路设计
9.3.1主要器件
9.3.2电路原理图及说明
9.4软件设计
9.4.1转换过程和时序要求
9.4.2程序流程
9.4.3程序说明
9.5实例总结
第10章基于MAX527的并行D/A转换
10.1实例说明
10.2设计思路分析
10.2.1D/A转换原理
10.2.2如何选择D/A转换器件
10.2.3D/A转换器对电源电路的要求
10.3硬件电路设计
10.3.1主要器件
10.3.2电路原理图及说明
10.4软件设计
10.4.1MAX527的地址和重要引脚
10.4.2程序流程
10.4.3程序说明
10.5实例总结
第11章基于MAX517的串行D/A转换
11.1实例说明
11.2设计思路分析
11.2.1芯片选取
11.2.2工作原理
11.3硬件电路设计
11.3.1主要器件
11.3.2电路原理图及说明
11.4软件设计
11.4.1时序要求和转换过程
11.4.2程序说明
11.5实例总结
第12章基于SHT71数字温/湿度传感器的采集实现
12.1实例说明
12.2设计思路分析
12.2.1SHT71性能概述
12.2.2SHT71的功能说明
12.2.3SHT71的引脚尺寸和说明
12.3硬件电路设计
12.4软件设计
12.4.1SHT71的操作方法
12.42程序流程
12.4.3源程序清单
12.5实例总结
第13章基于DS1624的数字温度计设计
13.1实例说明
13.1.2设计思路分析
13.2.1DS1624简介
13.2.2DS1624基本特性
13.2.3DS1624工作原理
13.2.4DS1624工作方式
13.2.5DS1624的指令集
13.3硬件电路设计
13.3.1硬件设计
13.3.2原理科及其说明
13.4软件设计
13.4.1程序流程
13.4.2程序说明
13.5实例总结 第14章基于DS12C887的实时日历时钟显示系统设计
14.1实例说明
14.2设计思路分析
14.2.1选择合适的日历时钟芯片7
14.2.2如何由DS12C887芯片获取时间信息
14.3硬件电路设计
14.3.1结构框图
14.3.2主要器件
14.3.3电路原理图及说明
14.4软件设计
14.4.1DS12C877的内存空间
14.4.2程序流程
14.4.3程序代码及说明
14.5实例总结
第15章单片机控制的步进电机系统
15.1实例说明
15.2设计思路分析
15.2.1步进电机的工作原理
15.2.2步进电机的控制
15.2.3脉冲分配与驱动芯片的选取
15.3硬件电路设计
15.3.1结构框图
15.3.2主要器件
15.3.3电路原理图厦说明
15.4软件设计
15.4.1程序流程
15.4.2程序说明
15.5实例总结
第16章基于MAX1898的智能充电器设计
16.1实例说明
16.2设计思路分析
16.2.1为何需要实现充电器的智能化
16.2.2如何选择电池充电芯片
16.2.3MAX1898的充电工作原理
16.3硬件电路设计
16.3.1主要器件
16.3.2电路原理图及说明
16.4软件设计
16.4.1程序流程
16.4.2程序说明
16.5实例总结 第17章基于NORFlashAM29LV320的数据存储
17.1实例说明
17.2设计思路分析
17.2.1芯片AM29LV320
17.2.2具体设计思路
17.3硬件电路设计
17.4软件设计
17.4.1AM29LV320的命令与状态
17.4.2串行异步数据传输
17.4.3程序代码说明
17.5实例总结
第18章基于XC95144的串口扩展
18.1实例说明
18.2设计思路分析
18.2.1串口发送的设计
18.2.2串口接收的设计
18.2.3串口模块的设计l
18.3硬件电路设计
18.4软件设计
18.4.1CPLD的设计原理图
18.4.2C51单片机程序代码说明
18.5实例总结
第19章基于8255扩展并行口
19.1实例说明
19.2设计思路分析
19.2.1并行口扩展的原理
19.2.2芯片选择
19.3硬件电路设计
19.4软件设计
19.5实例总结 第20章单片机实现智能信号发生器
第21章单片机实现步进式PWM信号输出
第22章单片机实现CRC算法
第23章单片机实现软件滤波
第七篇通信传输系统设计
第24章单片机实现点对点的数据传输
第25章单片机实现点对多点的数据传输
第26章单片机实现以太网接口
第27章单片机实现1C总线通信
第28章单片机实现RS-485总线现场监测系统
第29章CAN总线接口通信设计
第八篇电源监控与抗干扰设计
第30章单片机监控电路设计
第31章光电隔离电路设计 附录A汇编语言与C语言的混合编程
附录B实例配套实验箱