历史上的今天
返回首页

历史上的今天

今天是:2025年07月06日(星期日)

2020年07月06日 | 51 单片机计数器T1计数外部脉冲

2020-07-06 来源:eefocus

/**********************************************

方法1:延时法

硬件:11.0592MHz晶振,STC89C52,RXD P1.0 TXD P1.1 T1 P3.5

波特率:9600

描述:T0用于定时,方式1,定时时间50ms,中断方式;T1用于计数,10s定时时间到后,将计数的脉冲利用模拟串口发送出去外部的脉冲是用STM8L101产生的频率为1Hz的方波。1s 来1个下降沿

**********************************************/

#include "reg52.h"

#define uchar unsigned char

 

sbit P1_0 = 0x90;

sbit P1_1 = 0x91;

sbit P1_2 = 0x92;

 

#define RXD P1_0

#define TXD P1_1

#define WRDYN 44 //写延时

#define RDDYN 43 //读延时

 

void Delay2cp(unsigned char i);

 

unsigned char num=0;

 

//往串口写一个字节

void WByte(uchar input)

{

uchar i=8;

TXD=(bit)0; //发送启始位

Delay2cp(39);

 

//发送8位数据位

while(i--)

{

TXD=(bit)(input&0x01);      //先传低位

Delay2cp(36);

input=input>>1;

}

 

//发送校验位(无)

TXD=(bit)1; //发送结束位

Delay2cp(46);

}

 

//从串口读一个字节

uchar RByte(void)

{

uchar Output=0;

uchar i=8;

uchar temp=RDDYN;

 

//发送8位数据位

Delay2cp(RDDYN*1.5); //此处注意,等过起始位

while(i--)

{

Output >>=1;

if(RXD) Output   |=0x80; //先收低位

Delay2cp(35); //(96-26)/2,循环共占用26个指令周

}

 

while(--temp) //在指定的时间内搜寻结束位。

{

Delay2cp(1);

if(RXD)break; //收到结束位便退

}

 

return Output;

}

 

//延时程序*

void Delay2cp(unsigned char i)

{

     while(--i); //刚好两个指令周期。

}

 

void TimerInit()

{

TMOD=0x41; //T1,计数模式,T0,定时模式,方式1

TH0=0x4C; //T0,50ms定时初值

TL0=0x00; //T0,50ms定时初值

TH1=0x00; //计数初值清0

TL1=0x00; //计数初值清0

 

TR0=1; //开定时器T0

TR1=1; //开计数器T1

ET0=1; //开定时器T0中断

EA=1; //开总中断

}

 

void main()

{

uchar ccc;

TimerInit();

while(1){}

}

 

void timer0(void) interrupt 1

{

TH0=0x4C; //重新设置定时初值

TL0=0x00; //重新设置定时初值

 

num++;

 

if(num==200) //数10s内数到的脉冲

{

WByte(TH1);

WByte(TL1);

 

num=0; //清0

TH1=0;

TL1=0;

}

 

TF0=0; //软件清中断标志位

}


10秒钟数到10个脉冲,1秒1个下降沿。

推荐阅读

史海拾趣

Ampex Data Systems Group公司的发展小趣事

Ampex Data Systems Group 是一家在电子行业中知名的公司,专注于提供数据存储和处理解决方案。以下是关于Ampex Data Systems Group 公司发展的五个相关故事:

  1. 创立与早期发展:Ampex Data Systems Group 公司成立于20世纪50年代,总部位于美国加利福尼亚州的雷迪伍德城。公司最初致力于开发和制造磁带录音机和磁带存储设备,为音频和视频录制领域提供解决方案。在成立初期,Ampex Data Systems Group 通过技术创新和产品质量赢得了客户的信任和市场认可。

  2. 技术创新与产品多样化:随着数据存储和处理技术的发展,Ampex Data Systems Group 不断进行技术创新,扩展产品线。公司推出了一系列新型数据存储和处理设备,包括磁带驱动器、磁盘阵列、数据记录器等。这些产品具有高性能、高可靠性和大容量的特点,适用于航空航天、国防、能源和科学研究等领域。

  3. 政府合同与军事应用:Ampex Data Systems Group 与政府机构和军事部门建立了紧密的合作关系,为其提供定制化的数据存储和处理解决方案。公司参与了许多重要的国防项目,如雷达系统、导航系统、侦察系统等。Ampex Data Systems Group 的产品被广泛应用于军事通信、情报收集和战术分析等领域,为国家安全和国防事业做出了贡献。

  4. 国际市场拓展与合作伙伴关系:除了在美国市场的成功,Ampex Data Systems Group 还积极拓展国际市场,并与全球各种行业领先企业建立了合作伙伴关系。公司在欧洲、亚洲和其他地区设立了销售办事处和合作伙伴网络,扩大了产品的市场份额和影响力。Ampex Data Systems Group 通过与国际合作伙伴的合作,共同推动了技术创新和产品发展。

  5. 持续发展与市场竞争力:Ampex Data Systems Group 持续致力于技术创新和产品研发,以保持在电子行业的竞争力。公司不断投入资金和人力资源,加强研发能力,提升产品性能和品质。同时,Ampex Data Systems Group 还注重市场营销和客户服务,与客户保持密切沟通,满足其需求,并持续改进产品和服务,以适应市场变化和客户需求。

这些故事展示了Ampex Data Systems Group 从成立初期到如今在技术创新、产品多样化、政府合同与军事应用、国际市场拓展与合作伙伴关系以及持续发展与市场竞争力等方面取得的重要进展。

Cyrustek公司的发展小趣事

Cyrustek公司自创立之初,就注重技术研发和创新。在电子行业的激烈竞争中,Cyrustek凭借其独特的芯片设计理念和先进的生产工艺,成功推出了一系列高性能、低功耗的芯片产品。这些产品不仅满足了市场对于高品质电子产品的需求,也帮助Cyrustek在市场上建立了良好的口碑。随着技术的不断进步和产品的不断升级,Cyrustek逐渐在电子行业中崭露头角。

FCI connector [富加宜连接器]公司的发展小趣事

在大中华区市场,FCI展现出了强劲的增长势头。公司积极布局中国市场,特别是在3G产业领域,FCI投入大量人力资源研发相关产品,为通信设备厂商提供优异的连接器解决方案。随着中国3G牌照的发放,FCI的业绩得到了强劲增长。几乎所有的12.5GHz局端通信设备制造商都采用了FCI的连接器解决方案,这使得FCI在大中华区的市场份额不断攀升。

American Custom Components公司的发展小趣事

近年来,电子行业面临着原材料价格上涨、市场竞争激烈等挑战。American Custom Components公司也不例外,面临着成本压力和市场份额的下降。为了应对这些挑战,公司采取了一系列措施,包括优化生产流程、降低生产成本、加强研发创新等。同时,公司还积极拓展新的应用领域和市场,寻找新的增长点。这些努力使得公司在行业竞争中保持了一定的优势。

CoolerMaster公司的发展小趣事

1992年,台北的一间出租屋内,林仁政凭借对电脑硬件的深厚理解与直觉,创立了讯凯国际股份有限公司,即现今广为人知的Cooler Master。初期,公司以生产个人电脑用散热器起家,目标明确——提供业界最好的散热方案。在没有资金、没有支持的情况下,林仁政独自完成了品牌的创建、日常事务的处理以及工作进程的管理。他的坚持与努力,使得Cooler Master逐渐在市场中站稳脚跟,开启了其在散热领域的传奇之旅。

Chiefdom Electronic Co Ltd公司的发展小趣事

随着全球化的深入发展,Chiefdom Electronic Co Ltd意识到国际化布局对于提升竞争力的重要性。公司开始积极拓展海外市场,设立海外研发中心和销售网络,以便更好地了解当地市场需求和文化特点。通过本地化运营和定制化服务,公司成功打入多个国际市场,并获得了良好的业绩回报。这些国际化布局不仅提升了公司的整体竞争力,还为其在全球电子行业中占据了更加重要的地位。

问答坊 | AI 解惑

红外报警

本帖最后由 paulhyde 于 2014-9-15 09:00 编辑 希望对大家应该有用吧。。。  …

查看全部问答>

PB中release目录下postproc子目录的意义?

请问谁知道PBWorkspaces的工程目录下,release\\postproc子目录的含义?为什么包含和上一级目录同样的.bib,.reg配置文件?…

查看全部问答>

给点初学者的建议

有个pidgin的开源软件,linux下开发的. 现在老总让我移植到CE环境下工作,大家有什么移植的好建议没有. 以前从来没做过这个方面. 畅所欲言,大家. 谢谢. 哦,,还有个问题,有没有WINCE下的开源QQ..谢谢…

查看全部问答>

请教:

各路高手:     微软说CETK命令行测试,编辑命令 + “-x “参数\" ”  如:tux -o -d fsdtst -x5022,5027,     表示只测试5022和5027这两个case     我现在弄不明白“5022”和“5027”分别指的是什么 ...…

查看全部问答>

请教专家:如何在.net2003种的C#里调用WinCE生成的DLL,谢谢!

我用的S3C2440开发板,在WinCE5.0中编译了成功,并且导出了针对S3C2440的SDK,该SDK安装成功后,在.net2003的模拟 工具-〉选项-〉设备工具-〉设备 中看不见S3C2440设备,请问是什么原因; 另外,我在C#中调用WinCE编译生成的DLL,在模拟器上运行时 ...…

查看全部问答>

413控制485

谁有413的TIMER-A控制485的例程。…

查看全部问答>

新人求助,关于中断及串口的问题

最近在做一个红外解码的程序,要求解码红外并将解码结果通过串口输出,初步构思是先不管红外的标准,直接将接收到的高低电平状态及持续时间输出,当接收到红外时,触发外部中断0,中断函数如下:void to() interrupt 0//解码输出 外部中断0{ uch ...…

查看全部问答>

定时器和中断怎么关不掉啊

请问各位前辈       我想产生两相相位差90度的PWM,在中断中关掉定时器    我用了CCIE=0 ,TACCTL0 &= ~CCIE; 也不起作用 输出的波形 是同相位的 不知道为什么 请各位前辈指教     &nb ...…

查看全部问答>

【设计工具】Xilinx FPGA的Fast Startup

Xilinx FPGA的Fast Startup 在众多当代应用中,嵌入式系统必须满足极其苛刻的时序要求。其中之一就是启动时间——即上电后电子系统进入可操作状态所需要的时间。PCI Express®产品或汽车应用中基于CAN的电子控制单元(ECU)就是具有 ...…

查看全部问答>

电阻温漂问题

电阻的温度系数 ppm/℃   百万分之一,  也就是每摄氏度变化百万分之几,比如:20ppm/℃  就是当温度 变化1摄氏度时,阻值变化为原阻值乘以百万分之20 。 网上资料如下: 电阻温度系数(TCR)表示电阻当温度改变1 ...…

查看全部问答>