51单片机----LED与数码管模块

1.单片机相关概念

裸机程序:所编写的代码直接操作硬件(即直接与HARD WARE 交互);

SOC:系统级芯片;

MCU: 微控制器:

MPU:媒体播放器;

GPU:图形处理器;

CPU:中央处理器;

外设寄存器:外设寄存器是计算机系统中,外设内部用于暂存数据、状态信息或控制指令的专用存储单元,是CPU与外设之间进行数据交互和命令通信的核心接口,其核心功能是实现CPU与外设之间的异步协调;

GPIO(通用输入输出):GPIO是微控制器或处理器上的一类通用引脚接口,可通过软件配置为输入或输出模式,用于与外部设备进行简单的数字信号交互;

补充在51单片机中int型只占2字节;

2.LED模块的使用

其低电平点亮;

eg:

cs 复制代码
#include <reg52.h>
 void delay(unsigned int n)
 {
 	while(n)
	{
	   n--;
	}
 }

void led_all_on(void)
{
	P2 = 0;
}

void led_all_off(void)
{
	P2 = 0xff;
}

void led_on(unsigned char n)
{
	P2 = ~n;
}

int main(void)
{
	led_all_off();
	//P2 &= ~((1 << 1) | (1 << 3) |(1 << 5));
	//P2 |= (1 << 0) | (1 << 2) |(1 << 4) | (1 << 6);
	while(1)
	{	
		int i = 0;
		while(i < 8)
		{
			led_on(1 << i);
			++i;
			delay(20000);
		}
		
		i = 7;

		while(--i)
		{
			led_on(1 << i);
		  	delay(20000);
		}
	}
}

3.数码管模块的使用

高电平点亮

eg:

cs 复制代码
#include <reg52.h>

 void delay(unsigned int n)
 {
 	while(n)
	{
	   n--;
	}
 }

void bit_select(int n)
{
 	P1 &= ~((0x0F << 0));
	P1 |= (1 << n);
}

void segment_select(int n)
{
  unsigned char t[] = {0x3F, 0x06, 0x5B, 0x4F, 0x66, 0x6D, 0x7D, 0x07, 0x7F, 0x6F};
  P0 = t[n];
  delay(500);  //确保数码管导通
  P0 = 0;
  delay(100);  //消影
}

void show_number(int n)
{
	int t = 0;
	if(n > 9999)
	{
		return;
	}
	if(0 == n)
	{
	 	 bit_select(0);
		 segment_select(0);
	}

	while(n)
	{
		bit_select(t++);
		segment_select(n % 10);
		n /= 10;
	}
}

int main(void)
{
	bit_select(0);

	while(1)
	{
		show_number(1234);
	}
}
相关推荐
A小调的码农15 小时前
OPENOCD+MSYS+VSCODE:从“灯不亮“到“终于亮了“
ide·vscode·stm32·单片机·编辑器
嵌入式-老费17 小时前
esp32开发与应用(用好ttl转485模块)
stm32·单片机·嵌入式硬件
謓泽17 小时前
【6.30】芯片 Bring-up 三步核心|从短路检查到 SPI 排障全拆解!
单片机·嵌入式硬件
2CM_Embed17 小时前
Quartus II 工程编译与 FPGA 下载流程记录
嵌入式硬件·fpga开发
OIDCAT17 小时前
国产USB转千兆网卡芯片CH398 VLAN应用
网络·嵌入式硬件·国产·usb转千兆网卡
Industio_触觉智能18 小时前
RK3576开发板GPIO驱动入门教程,基于触觉智能开发板教学-上
嵌入式硬件·硬件工程·智能硬件·开发板·gpio·瑞芯微·rk3576
薄情书生18 小时前
基于51单片机的电子钟设计(LCD12864显示 + DS1302)
c语言·51单片机·protues
A小调的码农18 小时前
给垃圾平板“一生E本” 装新系统—————Armbian 编译 KYX T7Y (RK3326) 踩坑全记录
linux·嵌入式硬件
执迷不悟82319 小时前
51单片机--通信/串口
单片机·嵌入式硬件·51单片机
捷瑞电子工坊19 小时前
电赛入门实战:基于MSPM0G3507(MOG3507)的GPIO点灯实验
单片机·嵌入式硬件·mspm0g3507·电赛入门