当前位置:   article > 正文

蓝桥杯单片机竞赛学习计划(一)_蓝桥杯单片机用的什么板子

蓝桥杯单片机用的什么板子

蓝桥杯单片机学习计划之点亮LED灯


前言

昨天学校开始放寒假,由于之前正好报名参加了十五届蓝桥杯单片机竞赛,所以想利用寒假这段时间准备一下蓝桥杯的比赛,同时计划每天写一篇博客记录一下每日所学。今天当然是从最基础的点亮LED灯开始勒,Ready Go!


一、竞赛板简介

使用的板子是国信长天的CT107D,板载芯片为IAPF15F2K61S2,具有61K的FLASH和2K的SRAM,芯片的内部资源就不介绍了,手册上都有,直接上图:
蓝桥杯单片机竞赛板——CT107D

二、LED灯部分原理图介绍

板子上共焊有8个贴片红色LED灯,这八个LED灯的阴极分别连接到74HC573锁存器的8个输出端,而锁存器的八个输入端又连接到单片机的P0端口,所以如果想要驱动这八个LED灯,只需要给P0端口输出高低电平即可。原理图如下:
在这里插入图片描述
大家可以看到,锁存器的锁存使能端LE连接到Y4C,那Y4C又连接到哪里呢?我们一起来看下:
在这里插入图片描述
可以看到Y4C连接到了或非门74HC02的输出端,而74HC02的两个输入端又连接了Y4和WR,我们再来看下Y4和WR又分别连到了哪里(搁这套娃呢是吧!!!):
在这里插入图片描述
在这里插入图片描述
从上面两幅图片可以看到,Y4连到了74HC138译码器的Y4端口,译码器的译码输入端A、B、C又分别连接到单片机的P2.5、P2.6、P2.7三个端口,WR连到了单片机的P4.2端口,到此为止和LED灯相关的端口已经寻找完毕,看来想要驱动个LED灯还是挺麻烦的。
现在我们来理一下思路,想要控制LED灯,则需要让锁存器输入和输出同步,那么就需要给锁存使能端LE一个高电平,想要LE获得高电平,则需要给或非门HC02两个输入端都给低电平,WR已经通过J13跳线帽置零(IO口模式),则我们只需要让Y4输出低电平即可,那又怎么让Y4输出低电平呢?这时候就需看138译码器的真值表了:
在这里插入图片描述
从138译码器的真值表上可以看出,想要让Y4输出低电平,需要让译码输入端C输出高电平,A和B输出低电平。那么到这里,想要让LED灯点亮的思路我们已经分析完毕了,再来快速捋一遍:
给A和B(P2.5和P2.6)输出低电平,给C(P2.7)输出高电平,此时Y4输出低电平,Y4C输出高电平,锁存器输入和输出同步,这时候我们控制P0端口输出高低电平就可以使LED灯闪烁了,下面开始写程序。

三、代码部分

这边包含了两个库文件,第一个就不用多说了,鼠标右击添加即可,第二个使用到里面的左右移函数用来实现流水灯。然后定义一下三个译码输入端。

#include <STC15F2K60S2.H>
#include "intrins.h"

sbit ADDR_A = P2^5;//74HC138译码输入端
sbit ADDR_B = P2^6;
sbit ADDR_C = P2^7;
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

这边的延时函数是从STC-ISP下载软件中的延时计算器生成的。
主函数中先对P0和P2端口进行初始化配置,然后设置三个译码输入端。在循环中实现闪烁和流水灯的功能。

void Delay500ms()		//@12.000MHz
{
	unsigned char i, j, k;

	_nop_();
	_nop_();
	i = 23;
	j = 205;
	k = 120;
	do
	{
		do
		{
			while (--k);
		} while (--j);
	} while (--i);
}
void main()
{
	unsigned char temp=0x01;
	unsigned char i;
	P0M1=0x00;//P0端口配置为准双向口模式
	P0M0=0x00;
	P2M1&=0x1F;//P2端口配置为准双向口模式
	P2M0&=0x1F;
	ADDR_A=0;//74HC138选择Y4
	ADDR_B=0;
	ADDR_C=1;
	while(1)
	{
		for(i=0;i<4;i++)//闪烁两次
		{
			P0=~P0;
			Delay500ms();
		}
		Delay500ms();
		for(i=0;i<8;i++)//流水灯一次
		{
			P0=~temp;
			temp=_crol_(temp,1);
			Delay500ms();
		}
		P0=0xFF;//熄灭
		Delay500ms();
	}
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46

四、下载程序

时钟配置为12M,点击下载,按下板子上的下载按键即可将程序烧录到单片机中。
在这里插入图片描述

五、效果

下载完程序后可以看到板子上的LED灯开始闪烁,效果图如下:
在这里插入图片描述

总结

今天主要对板子有一个初步的认识,然后编写程序实现了最基础的效果——点亮LED灯。期待下次的学习!

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小丑西瓜9/article/detail/369454
推荐阅读
相关标签
  

闽ICP备14008679号