学习笔记:C51/51单片机


前言

学习使用的MCU是:STC89C52RC


C51基础:

常用头文件:
intrins.h:移位函数

C51(C语言)和ASM51(汇编)
在这里插入图片描述
C51数据类型:
在这里插入图片描述
在这里插入图片描述

keil软件的基本配置:

51单片机的定时器和中断系统:

定时器:

STC89C52系列单片机的定时器/计数器有四种工作模式,我们最常用的就是模式1:16位定时器/计数器。
使用定时器的流程:
(1)一般需要先设置工作模式定时器TMOD(Timer mode)
在这里插入图片描述
以定时器0举例:
在这里插入图片描述

(2)再设置定时器控制寄存器TCON(Timer control)

定时器代码解读:

void Timer0_Init()		//1毫秒@12.000MHz 初始化
{
	//AUXR &= 0x7F;		//定时器时钟12T模式
	TMOD &= 0xF0;		//设置定时器模式
	TMOD |= 0x01;		//设置定时器模式
	TL0 = 0x18;		//设置定时初始值
	TH0 = 0xFC;		//设置定时初始值
	TF0 = 0;		//清除TF0标志
	TR0 = 1;		//定时器0开始计时
	ET0 = 1;		//
	EA = 1;			//
	PT0 = 0;		//
}

中断:
在这里插入图片描述

C51常用库函数:

常见数字电路的逻辑门:

在这里插入图片描述

定时器Timer:

定时器可划分三部分:时钟、计数单元、中断系统

定时器工作模式TMOD:

定时器计数单元:

定时器时钟:

在这里插入图片描述

SYSclk:定时器时钟,即晶振周期。
12MHz晶振:频率的单位是赫兹,用Hz表示,含义就是1秒钟振荡多少次。12MHz = 12,000,000Hz,也就是1秒振荡一千二百万次。晶振12MHz可以产生12个机器周期,起到一个定时作用。12MHz晶振用途非常广泛,常见于一般低速单片机。

STC89C52系列单片机的定时器有两种计数速率:-种是12T模式,每12个时钟加1,与传统8051单片机相同;另外–种是6T模式,每6个时钟加1,速度是传统8051单片机的2倍。

中断系统Interrupt:

中断资源:

定时器相关寄存器:

串口通讯:

在这里插入图片描述
24C02:是E2PROM
在这里插入图片描述

I2C总线:

D/A转换器:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

AD:

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

PWM:
频率=1/Ts
占空比=Ton/Ts
精度=占空比变化步距

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值