当前位置: 首页 > news >正文

STC89C52单片机学习——第28节: [12-2] AT24C02数据存储秒表(定时器扫描按键数码管)

写这个文章是用来学习的,记录一下我的学习过程。希望我能一直坚持下去,我只是一个小白,只是想好好学习,我知道这会很难,但我还是想去做!

本文写于:2025.03.20

51单片机学习——第28节: [12-2] AT24C02数据存储&秒表(定时器扫描按键数码管)

  • 前言
  • 开发板说明
  • 引用
  • 解答和科普
  • 一、编写I2C时序
  • 二、加入延迟函数实现LED闪烁
  • 问题
  • 总结

前言

   本次笔记是用来记录我的学习过程,同时把我需要的困难和思考记下来,有助于我的学习,同时也作为一种习惯,可以督促我学习,是一个激励自己的过程,让我们开始51单片机的学习之路。
   欢迎大家给我提意见,能给我的嵌入式之旅提供方向和路线,现在作为小白,我就先学习51单片机了,就跟着B站上的江协科技开始学习了.
   在这里会记录下江协科技51单片机开发板的配套视频教程所作的实验和学习笔记内容,因为我之前有一个开发板,我大概率会用我的板子模仿着来做.让我们一起加油!
   另外为了增强我的学习效果:每次笔记把我不知道或者问题在后面提出来,再下一篇开头作为解答!

开发板说明

   本人采用的是慧净的开发板,因为这个板子是我N年前就买的板子,索性就拿来用了。不再另外购买视频中的普中开发板了。
   原理图如下
在这里插入图片描述
视频中的都用这个开发板来实现,如果有资源就利用起来。
仔细看了看:开发板的晶振为:11.0592Mhz;12Mhz晶振是用来给CH340G芯片外置晶振;

下图是实物图
在这里插入图片描述

引用

51单片机入门教程-2020版 程序全程纯手打 从零开始入门
还参考了下图中的书籍:
手把手教你学51单片机(C语言版)
在这里插入图片描述
STC89C52手册
在这里插入图片描述

解答和科普

一、编写I2C时序

在main函数中调出来,AT.C就不用调出来I2C了。
在这里插入图片描述
在这里插入图片描述

声明位:

sbit I2C_SCL =P1^7;
sbit I2C_SDA=P1^2;

1.1起始拼图
在这里插入图片描述

void I2C_Start(void)
{
	 I2C_SDA=1;
	 I2C_SCL=1;

	I2C_SDA=0;
	I2C_SCL=0;
	
}

1.2终止拼图
在这里插入图片描述

void I2C_Stop(void)
{
	I2C_SDA=0;
	I2C_SCL=1;
	I2C_SDA=1;
}

1.3发送一个字节
在这里插入图片描述

void I2C_SendByte(unsigned char Byte)	
{
	unsigned char i;
	for(i=0;i<8;i++)
	{
	I2C_SDA=Byte&(0x80>>i);		//把数据放在线上
	I2C_SCL=1;
	I2C_SCL=0;			//看时序是否满足能够承受的时间是多少
	}
}

1.4接受一个字节

在这里插入图片描述

unsigned char I2C_ReceiveByte(void)	
{
	unsigned char i,Byte=0x00;
	I2C_SDA=1;					//释放总线
	for(i=0;i<8;i++)
	{
	I2C_SCL=1;
	if(I2C_SDA){Byte|=(0x80>>i);}
	I2C_SCL=0;
	
	}
	return Byte;
}

1.5主机的发送应答
在这里插入图片描述

二、加入延迟函数实现LED闪烁

1.代码
1.1main.c

1.2 LCD1602.C和LCD1602.H

1.4Delay.C和Delay.H

实验现象:

问题

总结

本节课主要学了了LED闪烁,通过延迟函数的延迟,实现了LED闪烁。

相关文章:

  • 回调函数中 qsort 函数的使用
  • dvwa的三个模式下sqlmap命令一把梭哈
  • 涨薪技术|Kubernetes(k8s)之yaml语法大全
  • 显示模块(LCD1602,OLED,四位数码管)
  • 腾讯云大模型知识引擎×DeepSeek:股票分析低代码应用实践
  • 企业数字化转型规划设计1(107页PPT)(文末有下载方式)
  • FPGA时钟约束
  • 实时内核稳定性问题 - 压测异常重启问题
  • 取消Win10锁屏界面上显示的天气、市场和广告的操作
  • 【 C/C++ 包管理工具】vcpkg安装+使用
  • gradle-8.13
  • 【Java】TCP网络编程:从可靠传输到Socket实战
  • abaqus后处理导出多个节点数据的顺序
  • EtherCAT转Modbus网关如何在倍福plc组态快速配置
  • 【MCU】芯片复位与软件复位 在生产工装上的应用
  • 软考系统架构设计师之计算机组成与体系结构笔记
  • 蓝桥杯备考----小贪心+分类讨论问题---Popsicle
  • OAK相机入门(一):深度测距原理
  • lvgl学习(一)
  • xss-labs靶场训练
  • 闽赣两省受强对流天气影响停运多条铁路
  • 每天少看1小时手机,就可能有神奇效果
  • 深一度|有望冲击首轮秀?杨瀚森走出舒适圈站上大舞台
  • 六个最伤脊柱的姿势,你可能天天在做
  • 单人飞行器首次实现海拔5000米载人试飞
  • 同济大学党委常务副书记冯身洪履新中国科协党组副书记