推荐阅读最新更新时间:2024-03-16 15:44
51单片机定时器初值计算方法详解
在学习单片机的时候,我们发现很多功能都是通过中断来实现的。之前也举过烧水的例子来阐述中断,今天就讲解一下定时器赋初值的方法。8位的定时器最大可计数2的8次方为256,16位的定时器最大可计数2的16次方为65536。由于单片机的定时器是递加式的,所以最大值减去所要定时的值就是初值,举例如下: 最大值为100,我们只需要38,怎么办呢,由于是递加的,我们只需要在62时开始计时就可以了。 以proteus仿真为例简单讲解定时器赋初值 用proteus搭建的电路图如下,晶振为12M,P2.0每10ms翻转一次,即P2.0输出的频率为100HZ。 这里使用16位的定时器,那单片机定时器0的最大计数就是65536.晶振为12
[单片机]
简述MCS51单片机的中断响应过程
单片机一旦响应 中断 请求, 就由硬件完成以下功能: (1) 根据响应的中断源的中断优先级, 使相应的优先级状态触发器置1; (2) 执行硬件中断服务子程序调用, 并把当前程序计数器PC的内容压入堆栈,保护断点,寻找中断源; (3) 清除相应的中断请求标志位(串行口中断请求标志RI和TI除外); (4) 把被响应的中断源所对应的中断服务程序的入口地址(中断矢量)送入PC, 从而转入相应的中断服务程序。 (5)中断返回,程序返回断点处继续执行。
[单片机]
自制简单51单片机编程器(烧写器)
AT89C51是一款应用最为广泛的8051单片机,更重要的是他具有反复烧写(FLASH)的特性。一般情况下可重复烧写1000次,这样为初学者试验提供了一个廉价的平台。为了满足广大单片机爱好者动手的需要,本人利用半个月的时间,参考国外资料,实际设计制作成功一款简单的AT89C51/52/55单片机编程器。由于单片机编程时序不同,这一款编程器仅仅支持ATMEL公司的AT89C51, AT89C52, AT89C55芯片,不支持华邦或飞利浦兼容芯片。下面是单片机编程器电路图. 注:元器件清单见附录 工作原理简述: Q2, Q4以及周围的几个元件构成了电平转换电路,这样节省了1片max 232芯片,在要求不高的场合,这个电路在
[单片机]
51单片机设计方案TOP10(七)
基于C51单片机的校园自助导览仪设计 本文采取硬件解码方案,在单片机上实现了MP3的解码,并加入无线功能,使其向产品靠拢,设计成为一种电子产品“校园自助导览仪”。它的功能和导游一样,具备自助和电子的要素。 本文还对 MP3编码 进行优化,除了算法优化和高级语言的优化之外,还进行了汇编级优化,大大降低了算法的复杂性。 1 系统总体设计 本设计是基于校园的一种电子产品,将旅游景点的解说以MP3格式存储,通过无线形式实现智能控制。该系统能根据观众的位置和需要自动确定解说的语言和内容,使得每个观众不但可以得到每个展位、景点的完整信息,而且能够感受到高清晰、低噪声的音响效果。同时,本设计产品还配有键盘,可以对播放的
[模拟电子]
MAX7219与51单片机的驳接
MAX7219是一种高集成化的串行输入/输出的共阴极LED显示驱动器。每片可驱动8位7段加小数点的共阴极数码管,可以数片级联,而与微处理器的连接只需3根线。MAX7219内部设有扫描电路,除了更新显示数据时从单片机接收数据外,平时独立工作,极大地节省了MCU有限的运行时间和程序资源。 MAX7219芯片上包括BCD译码器、多位扫描电路、段驱动器、位驱动器和用于存放每个数据位的8×8静态RAM以及数个工作寄存器。通过指令设置这些工作寄存器,可以使MAX7219进入不同的工作状态。 1 管脚说明 图1是MAX7219的管脚分布图。其中: (1)DIN 为串行数据输入端。当CLK为上升沿时,数据被载入16 b内部移位寄存
[单片机]
MCS-51单片机实用子程序库(一)
内容 目前已有若干版本的子程序库公开发表,它们各有特色。本程序库中的开平方算法为快速逼近算法,它能达到牛顿迭代法同样的精度,而速度加快二十倍左右,超过双字节定点除法的速度。 本子程序库对《单片机应用程序设计技术》一书附录中的子程序库作了重大修订: (1)按当前流行的以 IBM PC 为主机的开发系统对汇编语言的规定,读者不必再进行修改,便可直接使用。 (2)对浮点运算子程序库进行了进一步的测试和优化,对十进制浮点数和二进制浮点数的相互转换子程序进行了彻底改写,提高了运算精度和可靠性。 (3)新增添了若干个浮点子程序(传送、比较、清零、判零等),使编写数据处理程序的工作变得更简单直观。 在使用说明中开列了最主要的几项:标号
[单片机]
AT89C51单片机电机转速测量系统仿真
单片机电机转速测量系统仿真统采用单片机中T1计数器对转速脉冲进行计数。定时器T1 工作于外部事件计数方式,对转速脉冲计数; T0 工作于定时器方式。每到1 s 读1 次计数值,此值即为脉冲信号的频率,根据式( 1) 可计算出电机的转速。转速检测装置的软件系统主要包括: 测速主程序、数据处理子程序和显示子程序。单片机上电后,系统进入准备状态。首先进行初始化,然后读取脉冲数据进行运算,将转速显示在LCD上。需要这款仿真及C语言程序的爱好者可从文章配图左上角网址上了解。 该单片机电机转速测量系统仿真仿真采用测频法“M法”测量电机转速。即在一定测量时间T内,测量脉冲发生器(替代输入脉冲)产生的脉冲数m1来测量转速,计算式如下:n=6
[单片机]
基于80C51单片机的多功能肌电测量仪设计
肌电测量或肌电图是检查人体神经、肌肉系统功能的重要方法,广泛应用于神经科、骨科、耳鼻喉科及口腔科。它可为临床诊断、治疗神经肌肉系统疾患提供客观的科学依据。肌电测量仪一般只具有在示波器上显示波形和记录波形的功能。早期,肌电信号通过照相对胶片进行显影才能看到;后来,把肌电信号描绘在肌电图纸上。这两种肌电信号记录法的机构都很复杂。这里介绍一种利用普通的示波器,通过单片机和A/D、D/A转换控制系统构成的,具有记忆、波形分析(诊断)功能和各种操作的实时处理的低功耗智能肌电测量仪。该肌电测量仪可实现一次采集后,多次重复显示、打印,实现了肌电信号测量仪的智能化 1 多功能肌电测量仪的硬件设计 1.1 系统硬件结构框图 系统硬件结构框图如图
[单片机]