单片机是微机的一种,现时有8051、AVR、ARM7、ARM9等系列,其中 “8051”是源自于Intel公司的MCS-51系列芯片,但目前不同生产厂商都以其兼容芯片为主,如Ateml公司的89C51/89S51系统,宏晶公司的STC89C52RC。本文所述的正是宏晶的STC89C52RC,该芯片烧写简单,只用通过宏晶的工具通过串口MAXRS232的TX、RX脚位就可以将程序烧录到芯片,是一个非常不错的嵌入式入门基础,教程多、51系列的学习板普遍就是采用STC89C52RC的芯片,可见其通用性很广,那怎样才能快速学习8051单片机呢。
学习51系列的CPU需要记忆脚位功能,我学习的时候得益于其简单的熟记方法,脚位的功能与位置掌握得很快,不用死记硬背,就可以轻松记住P0、P1、P2、P3的脚位,请看下图:
学习好脚位功能后,如果要启动单片机的电路还需要了解外围连接,这样才能为日后自己制作单片机控制电路打下基础。这是学习8051系统单片机所必须熟记的,以下是51单片机的最小电路图,只要按照以下方面连接,就可以简单上电驱动单片机的运行,功能脚位的应用是在最小系统的基础上添加的。
学习单片机,你不能没有一本纸质的教程,到本地的书店挑选或便宜的可以到卓越、当当网掏一掏。有了教程能更好的指导如何系统地学习单片机,尤其是学习C语言版本的,我学习时用的《例说51单片机(C语言版)》邮电出版社的,就不错。即有单片机理论基础,又有C语言的学习,我接触C语言也比较长的时间,之前是使用C++Builder进行Windows方面的开发,通过教程我发觉Windows的C语言与单片机上的C语言不同在于脚位的定义上,这个是单片机C独有的。
教程有了,但是光有知识没有实践怎么能知道自己学得怎样,学是一回时,实践应用又是另外一回事。编程现在51系统的都是用Keil v3,最好是打上“过滤0xfd字符的bug”的修正程序,我曾经试过遇到因为这个字符出现显示结果不正确而浪费时间的经历,打上补丁可以减少我们在程序调试中遇到的奇怪现象。
使用Keil软件编程只能检测C语言编程语法的正确性,而无法检验真正的功能是实现,现在可以使用单片机软件仿真Proteus(教程)进行电路板及程序功能的仿真与调试。不过仿真模拟虽然是好的方法,但比不上使用单片实验板,通过Keil编写的程序,再通过RS232将程序灌写到单片机进行实质性的操作,才能更好的了解单片机的性能与硬件之件的配搭使用,不要买最小系统的那种,这种只是供已经掌握单片机控制的人群使用,他们有自己的外围电路板,只需要根据自己的实际接上相应的单片机脚去驱动电路,是不适合初学者的,入门的单片机实验板最好是功能比较齐的、学习的内容越多,你对单片机的应用就越熟悉。以下是一款单片板学习板,在淘宝上的,价格在200元以下,还有视频教程,比较适合初学者,有兴趣的网友可以参考一下,选择好的学习板、辅导、交流是快速学习单片机的方法。
手把手教你学单片机》视频教程 51单片机开发板学习板
学习一门技能,最可贵的还是持之以恒,不断学习与总结,才会有所提高。学习51系列的单片机是进入嵌入式领域的踏脚石,如果你是电子方面的也可以考虑从简单的51入手,向更高级的应用迈进。
——Written By Jason
关键字:51单片机 微机 兼容芯片
引用地址:
掌握方法与技巧轻松学习51单片机
推荐阅读最新更新时间:2024-03-16 13:44
数显温度计设计电路图大全(DS18B20/89S51单片机/液晶)
数显温度计设计电路图(一):液晶显示的数字式电脑温度计电路 如图为液晶显示的数字式电脑温度计电路。该八段式四位LCD显示器,内置驱动器,串行数据传送,使用方便。 液晶显示的数字式电脑温度计电路 数显温度计设计电路图(二) 介绍一种具有简单人工智能的温度控制电路,使用该电路进行温度控制时,只需将开关打在2的位置,通过设定控制温度,并通过3位半数显表头所显示的温度值,即可精确地控制温度,使得温控操作变得十分方便。LM35是一种内部电路已校准的集成温度传感器,其输出电压与摄氏温度成正比,线性度好,灵敏度高,精度适中.其输出灵敏度为10.0MV/℃,精度达 0.5℃.其测量范围为-55—150℃。在静止温度中自热效应低.工作电压较
[单片机]
51单片机学习笔记6 -- 定时器中断
1.引脚复用 通过原理图可以发现定时器0(T0)和定时器1(T1)是P3.4引脚和P3.5引脚的复用功能,当将这两个引脚配置为定时器功能时,引脚外接的传感器(模块)将不能正常使用,即引脚同一时间只能作为一个功能使用(普通I/O或复用功能) T0、T1是两个16位定时器/计数器,每经过1个机器周期内部的16位计数寄存器的值加1,当计数器装满时会溢出,在定时模式时单次最大的定时时间是 65535*1.085us 的时间(单位us) 2.定时器配置 定时器0配置需要用到的寄存器(TCON、TMOD、TL0、TH0) 1.定时器/计数器控制寄存器TCON TCON为定时器/计数器T0、T1的控制寄存器,同时也锁存T0、T1溢出
[单片机]
基于51单片机数控恒流源
电路原理图如下: 该项设计的主要目的是设计一种数控稳压电源。它利用单片机STC89C51作为主控芯片,控制数字/模拟转换器(TLC5615)的输出电压的大小,经过运算放大器LM358与IRF9Z24N构成负反馈系统,从而输出恒定电压。最后通过电位器分压将输出信号反馈到运算放大器LM358上,使输出准确度可以调节。此设计通过键盘电路与单片机连接,读入控制数据,利用软件进行判断,从而起到控制电源输出的作用。通过LCD1602(或LED数码管)显示数控电源的输出电压,实现简单的人机对话。该项设计具有设计简单,控制灵活,调节方便,携带方便、成本低等优势,具有较强的实用性。 下图是为了了解整个电路如何工作的,把整个电路拆开。 二
[单片机]
51单片机——存储器(一)
1.存储器概述 存储器是许多存储单元的集合,存储器单元实际上是时序逻辑电路(锁存器)的一种,按单元号顺序排列。每个单元由若干二进制位构成,以表示存储单元中存放的数值,这种结构和数组的结构非常相似。按存储器的使用类型可分为只读存储器(ROM)和随机存取存储器(RAM)。 1.1 存储单位 位(bit):它是计算机中最小的数据单位。由于计算机采用二进制数,所以1位二进制数称作1bit,例如101011为6bit。 字节(Byte,单位简写为B):8位二进制数称为一个字节,1B=8bit。 字(Word):两个字节构成一个字,即2Byte=1Word。 在单片机中还有一个常用术语:字长。所谓字长是指单片机一次能处理的二进制数的位数。
[单片机]
51单片机OLED12864 I2C接口使用教程
现在能买到的OLED12864显示屏大多为SPI和I2C接口的,I2C通信协议只需要两条总线就可以进行通信,下面介绍一下如何用51单片机使用I2C接口的OLED12864。 首先介绍一下I2C通信协议,I2C(Inter-Integrated Circuit)字面上的意思是集成电路之间,它其实是I2CBus简称,所以中文应该叫集成电路总线,它是一种串行通信总线,使用多主从架构,由飞利浦公司在1980年代为了让主板、嵌入式系统或手机用以连接低速周边设备而发展。I2C的正确读法为“I平方C”( I-squared-C )。 I2C只使用两条双向漏极开路(Open Drain)(串行数据(SDA)及串行时钟频率(S
[单片机]
51单片机控制步进电机的程序
初学单片机: #include reg52.h #include stdio.h code unsigned char tab = {0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F}; unsigned char code F_Rotation ={0x02,0x04,0x08,0x10}; unsigned char Dis_Shiwei;//定义十位 unsigned char Dis_Gewei; //定义个位 sbit key1=P3^0;//定义按键位置 sbit key2=P3^1; sbit key3=P3^2; sbit key4=
[单片机]
51单片机编程让新手最容易出错的几点总结
最近在网上看到很提问都是程序出错,而且找不到错误在那,所以在这我也总结一下,和大家分享一下: 1、在写头件时,有的朋友会把 或 这两忘记写,比如说:#include reg52.h,它就写成这样,所以你编译的时候肯定会出错的,正确的应该这样:#include reg52.h ;再说一点,一般 的是编译器中自带的文件,而 是自己定义的头文件,这是C语言规则里面提到的,不这样写也没事,但是我们也应该遵守是吧! 2、在写宏定义时最容把关键字中字母写错,#define uint unsigned int #define uchar unsigned char,在网上找到很多鞋童,把unsigned中的'n
[单片机]
51单片机如何实现对CF卡的读写
引言 由于CF卡(Compact Flash Card)具有容量大、体积小、高性能、携带方便等优点,而且读写速度快,可与多种电脑操作系统平台兼容,因此在数据采集系统中的数据记录或与PC机之间的数据转存多采用CF卡。为了在PC机中能方便地进行数据处理,在下位机端必须采用一种标准的格式组织数据,即将数据按照Windows标准文件格式写入,在PC机端通过读卡器将写入CF的内容以标准文件形式读出。Windows标准文件格式有FAT、FAT32和NTFS。考虑到广泛使用的Windows 98系统的CF卡的容量等因素,通常采用FAT(File Allocation Table)文件系统。单片机系统对CF卡的读写,就是从底层对它进行直接操
[单片机]