51单片机c语言程序控制,51单片机C语言总结

希望对大家有帮助!!!

入门有针对性的解决一些简单的实际问题,边理论边实践学一样会一样

基本实验:LED流水灯,数码管显示,键盘控制,音乐播放,继电器控制I2C通信实验,串口通信实验,红外线遥控信号解码实验等

单片机的定义分类和内部组成

1单片机就是中央处理器CPU,随机存储器RAM。只读存储器ROM。定时、计数器和各种输入输出接口I/o接口电路等部件集成在一块电路芯片上的微型计算机。

2,1分类按制造工艺分:HMOS和CHMOS   CHMOS包括80c51等中间加了C功耗要小

适合便携式手提式和野外作业。

2分类按不同容量的存储器配置分:51子系列和52子系列

51表示单片机最后一位数字为1作为标志。片内带有4KbROM或EPROM(Erasable Programmable ROM,可擦除可编程ROM,128BRAM,两个16位定时器/计数器和5个中段器52系列是增强型各项指标都高。

AT89S51是AT89C51的升级版支持ISP在线更新程序ISP(Internet Service Provider

内部集成看门狗计时器等。

3.1串行接口就是接口数据传送

3.2中断控制系统接收中断请求如定时时间到,需要鸣笛报警类似stop to do停下来去执行ROM中特定的每段程序,执行完后再继续执行先前中断的程序

时钟电路控制节拍工作。

一个典型的单片机应用系统包括输入电路,单片机,输出电路

把他想象成电脑。

单片机的应用:

p5

十六进制A10B11C12D13E14F15

记A10和D13点得13点F15不是F16

十六进制加H

逻辑数据的运算

逻辑与。。。两个输入一个输出中间加一个恒定5v电压

有0为0,全1出1

逻辑或有1为1,全0出0;

字长通常与计算机内部的寄存器和运算器数据总线的宽度一致

实例1功能感受protues仿真单片机播放《渴望》主题曲

运用protues打开仿真原理图。

对单片机进行处理编辑edit component,选取目标文件hex

Clock frequency 时钟频率

Ok

原理图编辑窗口没有滚动条,可通过预览窗口该表原理图的可视范围。

Protues双击右键删除

先单击鼠标右键,可通过鼠标左键可以编辑元器件的属性

鼠标右键来删除画错的连线

中键缩放原理图

新建即保存新建设计文件

Junction dot mode连接点

Subcircuit mode 子电路 lab用总线时会用到

Terminals mode 终端接口,有VCC地输出输入等接口

Device pins mode 器件引脚用于绘制各种引脚。

Graph mode 仿真图表,用于各种分析,如noise analysis

Tape recorder  mode录音机

Generator mode 信号发生器

Voltage probe mode 电压探针仿真图表用

Current probe mode 电流探针仿真图表用

Virtual instruments mode虚拟仪表有示波器可显示工作波形

Resistors 电阻

Capacitors电容

Crystal晶振

Radianl electrolytic圆柱形电解电容

Keywords输入resistors 470r或功率先选择元器件后放元器件

Led+yellow

Drag object 拖动对象

Editi properties 编辑属性

Rotate clockwise 顺时针旋转90°

Rotate anti-clockwise 逆时针旋转90°

X-mirror 水平翻转

Y-mirror 垂直翻转

删可以右键双击

双击鼠标左键编辑label

放置电源和地必须编辑正确的label如VCC地GND

各元器件引脚通过总线的连接并不表示真正意义上的电气连接,需要添加网络标号。

要运行双击单片机

基本

电源5V

振荡电路:单片机是一种时序电路,必须施加脉冲信号才能工作。在它的内部有一个时钟产生电路,只要接上两个电容和一个晶振即可正常工作。P30

复位电路;启动后让单片机从初始状态开始执行程序。

EA一横:接正电源端,表示使用内部程序存储器。

注意:观察仿真效果时,晶振电路,复位电路和EA引脚和电路的连接可以省略。

Keil软件源程序后缀。C必须手工输入,表示为c语言程序,让keilc51采用对应的c语言的方式来编译源程序。

#include包含51单片机寄存器定义的头文件

将新建的源程序文件加载到项目管理器右击source group文件add c文件

单片机不能处理c,必须将c转换成二进制或十六进制代码,汇编或编译。

用鼠标右键点击target 进入options fortarget确认output选项中create hex

file:///Z:\TEMP\msohtmlclip1\01\clip_image002.jpg重新构造所有目标

程序烧录器及烧录软件的使用

单片机软硬件系统仿真成功后,要真正投入实际应用,必须将程序烧写入单片机芯片,A51程序烧录器和

先将COM接口(用作数据通信)与计算机的COM接口(RS-232)连接好,然后将单片机安插在烧录器的插座中,再用一根USB线将USB接口与计算机的USB接口连接,让计算机通过这根USB线向烧录器提供+5V电源

使用烧录器前,手动设置一些,参数标签页,根据COM口,设置好串口,波特率设置为28800;

点击自动擦除器件命令,点击打开文件命令选择单片机文件十六进制文件hex 再点击打开点击自动写器件。

实例4用单片机控制一个灯闪烁

Led灯亮存在电压差和正向偏置

延迟函数

Void main(void)//    两个void分别表示无须返回值和没有参数传递

{

Unsignedint i;//  定义无符号整数,最大65535

For(i=0;i<20000;i++)

;    只有一个分号表示什么都不做,等待一个机器周期

}

0x中的0是数字0,而不是字母O

郁闷一编写keil时,

文档第一行必须是#include

虚拟仪表

示波器oscilloscope

Protues示波器面板?及使用

单片机需要一个时钟信号送给内部个电路,才能使他们有节拍的工作,时钟信号的频率由外部振荡电路的晶振频率决定,51系列单片机的机器周期是由12个振荡周期组成。

指令周期:单片机执行一条指令的时间。

时钟频率越低,延时的时间就越长,灯闪烁的速度就越慢。

实例5将p1口状态送入p0口p2口p3口

利用单片机工作速度快的特点,无限循环可以让单片机不停地把p1口的电平状态送到p0口p2口和p3口。

引脚接地低电平被输入到p口

实例6使用p3口流水点亮8位led

记忆,0xfe 11111110  0xfd11111101  0xfb 11111011 0xf7 11110111

0xef 111011110xdf 11011111    0xbf10111111 0x7f 01111111实例7通过对p3口地址的操作流水点亮8位led

单片机都有固定的地址,记忆:张三在教室的第2排第5列

老师可以说清张三回答问题也可以说请第2排第5列的同学答题。

Sfr x=0xb0;通过关键字sfr将x定义为p2的地址0xb0

定义后,程序中对x的操作就相当于对地址0xb0即p3的操作

类似于指针

P3口的固定地址是BOH

MCS-51单片机存储器的基本结构

它有两种1即程序存储器和2数据存储器

从物理MSC-51有4个存储地址空间,即片内程序存储器和片外程序存储器

程序存储器受EA一横外接电平的控制。

1当EA一横接地时,单片机只能使用外部程序存储器

2当EA一横接+5v是单片机先使用内部程序存储器,容量不够时自动使用外部程序存储器。

特殊功能寄存器

ACC 累加器

标识符名称地址

ACC累加器E0H

Bb寄存器F0H

PSW程序状态字D0H

SP堆栈指针81H

DRTR数据指针83H 82H

P080H

P190H

P2A0H

P3B0H

IP中断优先级控制B8H

IE允许中断控制A8H

TMOD定计方式控制89H

TCON定计控制88H

TH0定计0高位字节8CH

TL0定计0低位字节8AH

TH1定计1高位字节8DH

TL1定计1低位字节8BH

SCON串行控制98H

  • 0
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值