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);
	}
}
相关推荐
点灯小铭1 小时前
基于单片机的电子琴设计与乐曲存储播放实现
单片机·嵌入式硬件·毕业设计·课程设计·期末大作业
hemama_2 小时前
STM32F103VET6开发板例程(一)-LED
stm32·单片机·嵌入式硬件
夜月yeyue2 小时前
Linux 内核驱动加载机制
linux·服务器·stm32·嵌入式硬件
奋斗的牛马2 小时前
FPGA--zynq学习 PS与PL交互(二) HP接口
单片机·嵌入式硬件·学习·fpga开发·信息与通信
ACP广源盛139246256734 小时前
GSV1016/ACP#HDMI2.0 HDCP1.4 发射器(TTL/LVDS 输入 + 音频插入)技术解析
单片机·嵌入式硬件·音视频
d111111111d5 小时前
STM32中为什么会有APB1和APB2两个外设有什么区别
笔记·stm32·单片机·嵌入式硬件·学习
ACP广源盛139246256735 小时前
GSV6505F---1 In to 4 Out HDMI 2.1 Splitter with Embedded MCU
单片机·嵌入式硬件·音视频
ThreeYear_s6 小时前
【FPGA+DSP系列】——CCS联合proteus仿真DSP工程,以TMS320f28027芯片为例,LED闪烁仿真。
单片机·fpga开发·proteus
2501_925317136 小时前
【底层奥秘与性能艺术】让 RTOS 在 48 MHz MCU 上跑出 0.5 µs 上下文切换——一场从零开始的嵌入式“时间革命”
单片机·嵌入式硬件·#嵌入式·#嵌入式开发·#rtos
-凌凌漆-6 小时前
【嵌入式】单片机fft
单片机·嵌入式硬件