问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

一个单片机C51定时器发射程序 调不通

发布网友 发布时间:2022-08-20 03:59

我来回答

1个回答

热心网友 时间:2023-10-31 00:01

是发40KHz的
方波
吗,那个I有什么用啊??“
//记录
反向
次数
,达到要求后进行延时
”??发方波没这么麻烦吧,直接定时好25us,来一次中断翻转不就行了吗。
/******************************************************************/
根据补充:不知道你的延时时间是多少,以及开通的时间是多少,从你的
代码
中可以简单的看到,你是发了2个
周期
的方波,然后延时了“Delay(1)”(几个us,很短,意义不大)。在这里假设你发2个周期,停止4个周期来写吧。关于延时的时间建议使用
定时器
中断来做,这样方便。
#include<reg52.h>
#include<stdio.h>
#include<intrins.h>
sbit
out=P1^0;
sbit
bIsStop;
//判断停止发送
波形
的标志
unsigned
int
rStopCount;//
停止的时间
计数
unsigned
int
rSendCount;//发送的时间计数
void
t0(void)
interrupt
1
using
0
//中断发射40KHZ方波
{
TL0=0xe7;//
初始化
定时器
TH0=0xe7;
if
(bIsStop)//需要停止了?
{
out=0;//
端口
置0
rStopCount++;//停止的时间累计,25us一次
if
(
rStopCount
>=
8
)//4个周期到了?
{
rStopCount
=
0;//复位
累加器
bIsStop
=
0;//清标志,允许发送
}
}
else
//
原理
同上
{
rSendCount++;
out=!out;
if
(rSendCount
>=
4)
{
rSendCount
=
0;
bIsStop
=
1;
}
}
}
void
main(void)
{
TMOD=0x12;
TL0=0xe7;
TH0=0xe7;
EA=1;
//开中断
PT0=1;
//to溢出中断为最高
优先级
ET0=1;
//开to溢出中断
out=0;
TR0=1;
//to开始工作
while(1)
{;}
}
注:时间可以通过调整rSendCount
,rStopCount
的比较值来重新定义,这里借用了你的中断25us,
如果时间
不是25us的
倍数
的话,可以通过再开一个定时器中断来计时间(或者软件延时也可以@@)。原理就是这样了,
数字
对不对自己
调下
吧。为了这20分,真累啊~~
c51的单片机需要有一个低电平的触发做开关用,可是只有脉冲信号怎么办...

编写软件定时程序,在需要的时间翻转端口电平,也就是取反就行,然后重复执行。如果要用51的定时器,那你可以先算出参数,看看用哪种模式好,最好用自动重装方式,时间一到,开中断把欲输出的端口取反就行。

伺服驱动器怎么接线?

伺服驱动器的接线分为电源接线和信号接线两部分:电源接线:1. 将伺服驱动器的供电电源接到电源插座上。2. 确认电源插座的电压是否与伺服驱动器的电压匹配。3. 将电源线接入驱动器的电源输入端子。信号接线:1. 将伺服驱动器的控制信号线接到编码器线,如果使用的是总线编码器,则将编码器线接入总线。2. 将编码器线接入电机的编码器端子。3. 将电机的速度反馈信号线接入电机的速度反馈端子。4. 将速度反馈信号线接入编码器的速度反馈端子。具体接线方式取决于伺服驱动器的型号和使用场合,建议按照驱动器说明书上的接线图进行接线。驱动---电机:动力线:UVW 接地,这是供电用的 是驱动器到电机上的电机反馈回来的是: A + A-B+B- Z 三相 报警, 伺服使能即:S-ON虽然各种驱动器型号不同,但是原理上都是利用这些线,报警可用可不用,看型号而定

一个关于单片机定时器的问题

定时器的初值跟设置的模式有关,就拿定时器0的模式1(即16位模式)来说 ,由于51系列单片机是8位的,所以需要2个寄存器,高8位称为TH0,低8为称为TL0。定时器的工作原理是输入一个脉冲,寄存器计数+1,等到2个寄存器计数到全部位为1(即11111111 11111111,10进制就是65536),这时,再来一个脉冲,...

51单片机定时器总是慢

把定时器设为优先。中断发生,中断响应程序不要长过定时器,或中断程序里只设一个标志就返回,在主程序里判断这个标志再执行。单片机的定时功能其实就是通过计数来实现的,当单片机每一个机器周期产生一个脉冲时,计数器就加一。

51单片机定时中断导致主程序数码管显示出问题

改善方法有3个:1,最简单的,在通信可靠的前提下尽可能提高串口波特率,同时降低发送频率(就是增大定时器中断周期),再把要发送的数据弄少点,能用缩写的就别写一大串。。2,串口发送改为中断方式,这个不细说了,网上有资料。。3,舍弃数码管扫描的软件延时,改用硬件延时(就是把数码管的位的切...

51 单片机 程序出错 不执行定时器中断1 同时delay函数也有错 求高手...

1.独立按键的判断在程序中如果没有用sbit定义过不能写为 P2^n 的形式,在程序体内这种写法表示的是异或 2.中断程序里,进入中断程序以后如果不是特殊需要,先关断自身的中断控制位,退出中断的时候再打开 3.在单片机里写程序的时候能省资源就省,52单片机是8位的,如果变量范围不超过255就不要用int...

51单片机写个程序,好像在中断里面出不来了,主程序只运行了一部分,之后...

只能做最基本的操作,比如置标志位,让一个数加一等,与延时有关的操作千万不要做!你10ms进一次中断,在里面又扫描按键,又显示液晶,这里面花的时间远远地超过10ms,它肯定死在中断里出不来啊,因为你不关闭中断的话它一直10ms进去,最好在中断里设置几个标志位,进中断就让标志位置1,然后出中断...

51单片机程序如下,问定时器为啥没工作,求改错。

判断if(TF0==1)是否满足,这里不满足(因为TF0=0),所以 IF里面所有的东西都没有执行(包括定时器的重装),所以定时器只计数了一次,然后程序结束。你这里不能吧定时器0的重装数据放在主函数里面,这个过程要放在中断函数里面取处理,因此用定时器时,要开启定时器0中断。程序应该这么 写:

51单片机 如何用一个定时器 输出两个占空比周期相同,相位可调的pwm?_百...

用一个定时器可以输出低频率的PWM波。例如定时100uS中断一次,中断4次,第一路置低,中断5次第二路置低,中断10次,两路全部置高电平,就产生了两路1KHz的PWM方波。是 4次还是5 次,在主程序里调 。PWM波的频率不能太高,例如定时器中断时间不能太短,太短的话可能中断程序都执行不完,别提干其它...

51单片机 用一个定时器实现两个功能

随便举个例子://定时器中断 10mS中断一次 void timer0_isr(void) interrupt 1 { if(flag == 0){ //这里是第一件事情 flag = 1;//在主程序处理完第一件事,将此标记清除 } if (++ucCount == 100) //累加100次达到1秒 { ucCount = 0; //复位计数 ioLED = !ioLED;//这是第...

一个小弟正在看c8051f020单片机的程序,遇到了问题。定时器中定时器寄存...

因为定时器是加1运行的,当从255变到0时表示定时时间到,所以要用负数。例如,-2就是254,当2个定时脉冲后定时时间到。

51单片机有几个定时器 单片机定时器程序 51单片机定时器原理 51单片机定时器的原理与使用 51单片机中的定时器在哪 c51单片机定时器的工作原理 51单片机定时器中断 定时器单片机 单片机定时器有什么用
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
我用银行卡网购了。怎么被注销了? 装电线的时候,不同区域该用什'么规格的电线? SY0401-98《输油输气管道线路工程施工及验收规范》废止后,用什么规范... 汇率一直变动,对中国工业品出口竞争力产生了影响,但是应该用什么... ...整个盘面流出资金大于流入资金,但是股票仍然升.. 请问股市或个股资金的流入与流出是什么意思啊? 股市之中的"资金流入"和"资金流出"分别是什么意思? 什么是股市中的资金流入和流出现象,如何理解 耕升gtx titan x 显卡怎么样 gtxtitanx是游戏显卡吗 工作上的压力压得人透不过气,我们应该如何去排解? 职场中的工作压力应该如何排解 用犀牛导入k shot 有个别零件不见了,怎么办啊,在线等 犀牛建模文件导入到keyshot出现零件流失可以将犀牛文件另存为哪种格式导入? 柠檬味的怎么样翻译成英文 方向盘半圈怎么打 你学会了吗 方向盘转半圈到底是九十度还是一百八十度? 方向盘转半圈是九十度还是一百八十度 2012贵州成人高考高升专要哪些科目 贵州成人高考高起专的话需要靠那些科目,有没有可以复习的资料? 如果芯片持续断供,华为还能撑多久?媒体爆出4项重大突破 芯片断供近8个月,华为终于开始收取5G专利费,美国苹果也不例外 女身高168标准体重是多少斤 身高155厘米体重103斤属胖吗 身高155体重110是不是太胖了 找朋友到哪个网站好 关于16岁初中生内衣问题~男勿近~如题 谢谢了 高校笫一笫二批次什么意思 笫,此字是啥意思? 猗笫是什么意思 200smart怎样用空闲线和消息定时器做发送接收程序 农历七月初九晚上十二点十九分女孩出生五行缺什么 1987年农历七月初九出生的女孩幸运数字 c#怎么实现定时发送信息写入数据库 2014年农历七月初九21时22分出生的女孩子什么命 DS1302做定时器用定时一小时向单片机发一个脉冲,怎么写程序,求大神帮帮忙 1994农历七月初九中午十二左右出生的女孩子命相 2002农历七月初九晚上十一点二十五分出生的女命怎么样? 51单片机用定时器工作方式3做波特率发生器,用中断的方式发送数据的程序 男生女生向前冲报名微信是真的吗 征信报告有未结清账户数,但逾期账户数是零,这样会影响征信吗 为什么用苹果平板电脑淘宝付不了款 MAC笔记本上浏览器在淘宝上为什么无法买东西?就出现这个提示。又下载了QQ浏览器,也是这样的提示。 我用的是苹果系统,在淘宝上无法提交订单。一点提交订单就不动了,为什么? 我在淘宝网上买的东西。但是好像只有电脑才能付款?苹果ipad好像付不了是吗? 为什么苹果电脑mac系统在淘宝买东西付款确认的时候,密码框输不进去字啊? 魔兽RPG鬼泣中专属怎么合成? 大话水浒披风怎么弄 什么是披风啊 新飞飞披风如何获得 魔兽地图鬼泣1.0专署怎么合成