草庐IT

51单片机的架构与原理(STC89C51)

前言    学习单片机,不管怎么学都是要走一些弯路的,有的人弯路走得多,有多人弯路走得少,有些人中途就放弃了,也有不少人成功上岸,掌握了各式各样的单片机、处理器。用51单片机来学习是最合适不过的,因为它的结构不复杂,该有的东西也都有,学会了它,再学习其他的单片机就简单多了。很多人会使用单片机来点亮LED、数码管,能使用单片机进行串口通讯,能用单片机进行各种传感器和驱动器,就觉得已经精通了。其实这还远远不够,换个单片机又要学习很久,换个处理器更是两眼一黑,真正学会单片机是要搞清楚单片机的内部构架和原理,这样你就可以一招鲜吃遍天了,因为不管是51构架的单片机、还是Cortex-M系列的单片机、或者

STC15F2K60S2学习笔记2——数码管动态显示

目录1.STC15F2K60S2数码管简介2.STC15F2K60S2数码管点亮原理3.STC15F2K60S2数码管的原理图①位选②段选③74HC138译码器74HC02或非门4.点亮一个数码管显示15.动态数码管显示012345676.动态数码管消除残影1.STC15F2K60S2数码管简介STC15F2K60S2所用数码管属于共阳数码管,所谓共阳数码管是指将所有发光二极管的阳极接到一起形成公共阳极(COM)的数码管。2.STC15F2K60S2数码管点亮原理 如上图,单个数码管是由8个led灯组成,每个led的正极都连在同一个端口上,但各led负极不在同一个端口上。如果想让单个数码管点亮

MDK与 C51安装共存、安装pack、添加STC单片机型号和头文件到Keil中以及keil界面美化

1.MDK与C51下载、安装1.1下载最新MDK和C51安装包进入keil官网产品下载界面1.2.安装MDK和C51**MDK安装**双击”MDK“安装包,然后按着提示,一步一步安装。这里我们安装在“D:\keil5\keil5_MDK”路径**C51安装**双击**“C51”**安装包,然后按着提示,一步一步安装。这里我们安装在“D:\keil5\keil5_C51”路径2.MDK5与KeilC51合并2.1.打开C51安装目录和MDK的安装目录2.2.把C51安装目录下的C51文件夹整个复制到MDK目录中2.3.打开C51安装目录下的UV4,选中UV4文件夹的全部文件进行复制2.4.打开M

STC8学习5 - 定时器

定时器也可以做为计数器,其实他们本质上的原理是一样的,定时器是计数单片机内部的系统时钟,每1个或者12个时钟脉冲,就加一。计数器则是记录外部输入脉冲。1. 定时器0有四种工作模式,这里使用的是定时器0的16位可重新装载模式,16位(0x0000~0xFFFF)即可以从0数到65535共计65536个,区别8位(0x00~0xFF)的256个,可重装载指的是初始化设置的起始数,在溢出中断后会重新装载。TMOD= 0x00;//配置工作模式2.配置定时器0的工作频率,手上的设备是工作在35MHz,设置1T模式,定时器0也工作35MHz,计数间隔就是1/35us,如果设置12T模式,那么定时器0就会

STC8G1K08单片机接收485发送的不等长混合数据

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录前言一、RS485引脚功能二、RS485驱动程序1.串口初始化程序2.串口中断服务程序2.RS485解码程序3.RS485发送程序总结前言 在自动化领域,随着分布式控制系统的发展,迫切需要一种总线能适合远距离的数字通信。在rs-422标准的基础上,eia研究出了一种支持多节点、远距离和接收高灵敏度的rs-485总线标准。  rs-485标准采用平衡式发送,差分式接收的数据收发器来驱动总线,具体规格要求:  1.接收器的输入电阻rin≥12kΩ  2.驱动器能输出±7v的共模电压  3.输入端的电容≤50pf  4.在节点数

单片机读/写端口或引脚区别及具体1个用例(一种基于STC8G1K08A最小8脚嵌入式单片机LED安全夜灯方案)

51单片机读引脚和读端口测试总结_单片机怎么读取引脚电平_爱嘟嘟的小屁孩的博客-CSDN博客近期看了几篇有关单片机读/写端口或引脚的区别的文章,其中上面引用本CSDN的这篇文章,总结的2点感觉还不错,先引用一下:1.51单片机里对某一个I/O口进行读--改--写(例如上面的取反后写回)操作时,读取的是与之对应的锁存器的输出,而不是实际物理引脚的电平;其他非读--改--写(例如上面的ifXX==0)指令读取的是引脚电平。2.读引脚电平时一定要先向该端口写1,然后再读取引脚电平!其中:第2点说的可能是针对已设置I/O为双向的情况! 实际可能不用写1,只需临时改写端口为高阻态也行的,高阻态时不用管原

单片机c51延时函数解析(isp自动生成)

voiddelay(unsignedinttime)//time代表需要延时的毫秒数{unsignedintj=0;for(;time>0;time--)for(j=0;j125;j++);}解析:假设单片机的工作频率为125kHz,那么每个循环的时间为1/125000秒,即0.000008秒。因此,为了实现1ms的延时效果,需要执行125次循环,即125*0.000008秒。将0.001秒转换为毫秒,得到1ms,因此125*0.000008秒=0.001秒,即每个循环需要执行0.000008秒,需要执行125次循环才能实现1ms的延时效果。 下面讲解如何使用isp自动生成延时程序软件STC官

STC89C52原理

STC89C52单片机介绍STC89C52RC是STC公司生产的一种低功耗、高性能CMOS8位微控制器,具有8K字节系统可编程Flash存储器。STC89C52使用经典的MCS-51内核标准功能具有以下标准功能:8k字节Flash,512字节RAM,32位I/O口线,看门狗定时器,内置4KBEEPROM,MAX810复位电路,3个16位定时器/计数器,4个外部中断,一个7向量4级中断结构(兼容传统51的5向量2级中断结构),全双工串行口。另外STC89C52可降至0Hz静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护

STC32G单片机内置ADC及应用编程

一 STC32G单片机内置ADC模块简介   STC32G单片机内部集成了一个12位高速ADC转换器,ADC的最高时钟频率为系统频率的1/2。其输入通道多达15个(第15通道为专门测量内部1.19V参考信号源的通道),可分时切换使用。   STC15系列单片机内置ADC模块以电源电源作为ADC参考电压,STC32G的ADC模块则与之不同,它有单独的参考电压源引脚,可以接入精准的参考电压(0~5V皆可),以获得稳定的ADC值;参考电源引脚也可直接与MCU供电电源连接,不过AD转换结果可能会收到电源电源波动的影响。注意:STC32GADC模块的参考电压输入引脚不可悬空。    STC32G单片机的

51单片机入门(1)环境搭建(Keil+ISP)

在学习51单片机之前,环境搭建是必不可少的一步,本文主要介绍Keil软件和STC-ISP软件的安装本人只是一个普通的嵌入式低级(初级)玩家,文章主要针对新手,所以大佬要是发现文中有何不妥之处,还请口下留情,若能指出,我一定虚心改正文章目录Keil软件安装下载Keil安装KeilKeil工程的创建注册KeilC51(PoJie)STC-ISP软件安装下载STC-ISP安装USBtoUART驱动使用STC-ISP烧录固件使用PZ-SP烧录固件Keil软件安装KeilC51是美国KeilSoftware公司出品的51系列兼容单片机C语言软件开发系统。Keil提供了包括C编译器、宏汇编、链接器、库管理