技术文档

深入浅出 单片机 深入浅出带你了解单片机

小编 2024-11-25 技术文档 23 0

深入浅出带你了解单片机

什么是单片机

首先,我们先来了解一下什么单片机,从事电子相关工作的朋友应该已经很熟悉了,但没接触过的朋友听起来可能就一头雾水了。用官方的话来说,单片机是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计数器等功能集成到一块硅片上构成的,一个小而完善的微型计算机系统。

简单来说就是少了键盘、鼠标、显示器的微型计算机。

其实,单片机在我们生活中并不少见,只是你没有去发现它。小到电子手表,大到汽车,还有常见的洗衣机、冰箱、电饭煲,它们都包含着单片机。可以说现在的电器产品或多或少都与单片机有着密不可分的关系。

单片机的发展

早期的单片机都是8位或者4位。其中最成功的是INTEL的8031,因为简单可靠二性能不错获得了很高的好评。后来格局8031发展而来的MCS51系列单片机被广泛使用,随着工业控制领域要求的提高,8位单片机的性能已经不够用,开始出现16位的单片机,但由于性价比原因没有被广泛使用。后来ARM系列单片机异军突起,带来了32位单片机,在性能和价格方面都碾压之前的单片机,获得了广泛的应用。

扫盲教程:深入浅出讲解单片机控制单只数码管循环显示0~F

最近有好多小伙伴留言说,我发的项目很难,他们都是刚入门的,希望我写一些入门级的教程,那么今天我就从硬件和软件两个方面来给大家讲一下最基本也是十分重要的电路 单片机驱动数码管显示电路。

要弄清楚单片机控制数码管显示字符的原理我们首先要知道:三个概念

单片机:通俗的讲单片机是一种集成电路芯片,利用一些特殊工艺把许多不同功能的模块集成到一块硅片上构成的一个小而完善的微型计算机系统,在工业控制领域广泛应用。单片机可以烧进程序,然后从不同的IO口输出规定的电平信号。

七段数码管(如下图):

数码管是一类价格便宜 使用简单,通过对其不同的管脚输入相对的电流,使其发亮,从而显示出数字能够显示 时间、日期、温度等所有可用数字表示的参数的器件。一般的七段数码管拥有七个发光二极管(三横四纵)用以显示十进制0至9的数字外加小数点,也可以显示英文字母 A 至 F(b、d 为小写,其他为大写)。现时大部分的七段数码管会以斜体显示。

好了,上面是单片机和数码管的概念,下面说一下单片机的工作原理:

一个单片机要想能正常工作必须满足它工作的最小系统,这个最小系统包括,电源电路,晶振电路,复位电路等,当电源电路给单片机正常供电后,在上电的一瞬间会给复位电容充电从而完成上电复位的动作。单片机复位结束后,我们把需要控制数码管显示的代码烧进单片机,这时候单片机就会根据写的代码从不同的IO口输出不同的电平,从而控制七段数码管每一段的亮灭,而达到显示不同数字的目的。

好了说了半天理论了,下面我们开始实践一下吧!

首先用PROTEUS仿真软件画好单片机最小系统和LED数码管驱动原理图:本项目中用STC89C52

把程序烧进去以后,数码管开始从0到F显示,适当调整源代码参数可以修改显示不同的数字和不同的时间间隔。

51单片机参考源代码如下:

/*单只数码管循环显示0~F 作者 科技小伟1*/

#include <reg51.h>

typedef unsigned char uint8;

typedef unsigned int uint16;

code uint8 LED_CODE[] = {0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,

0x80,0x90,0x88,0x83,0xA7,0xA1,0x86,0x8E};

void delay(uint16 x)

{

uint16 i,j;

for(i = x; i > 0; i --)

for(j = 114; j > 0; j --);

}

void main()

{

uint8 i = 0;

while(1)

{

for(i = 0; i < 16; i ++) //i = (i + 1) % 16

{

P0 = LED_CODE[i];

delay(500);

}

}

}

好了以上就是单片机控制数码管显示的全部内容了,本文从软件和硬件两个角度分别讲解,如果有任何意见或者需要设计文件 欢迎留言或者私信,如果你也对单片机感兴趣,那么快点行动起来吧!我们下期再见!

相关问答

学习计算机编程该如何开始? - 五月儿? 的回答 - 懂得

主要看你用于什么行业中。一般而言:最容易入门、最常用的就是vb。(要精通也不是很容易)如果要做单片机或工控方面,C是必学的。最难的,但也最强的当...

要想从零开始完全精通ps软件,一般要学多久?

1、程序员意味着要编程序。(如果你仅仅想得到一份高薪水的工作,喝喝咖啡就等老板发薪水,我奉劝你还是另找一份更合适的工作,譬如练摊,真的,兄弟,这份工作...

猜你喜欢