/**********************************************
该函数会在单片机的P3^0口持续产生38KHZ的方波
**********************************************/
#include //包含特殊功能寄存器库
sbit P3_0=P3^0;
void main()
{
TMOD = 0x02;//TMOD是定时器方式控制寄存器,这里选用定时器0,工作在模式2
TL0 = 0xF3;//定时器初值
TH0 = 0xF3;//定时器初值
EA = 1;//开总中断
ET0 = 1;//开CPU中断和T0中断
TR0 = 1;//启动定时器
while(1);
}
void time0_int(void) interrupt 1//定时器0中断服务程序,除函数名自己取名外,其他部分要按照这样的格式写。
{
P3_0 = ~P3_0;
}
/*
******定时器初值的计算***********
如果采用的是定时器0,工作在模式1下:
(2^8 - X)*振荡周期*12 = 定时时间
这里我采用的晶振为12MHZ,即振荡周期为1/12MHZ = 1微秒.
要产生38KHZ的方波,即在1/38KHZ =26微秒,所以定时器的定时时间应该为13微秒,以保证能在P3^0口产生周期为26微秒的方波。计算可得计数初值X = 253(0xF3)
*/
/*
***************定时器模式选择*******************
定时器有四种工作模式,原则上工作在任何模式下都可以,可是工作在模式2下,更加准确,误差较小,这是因为模式2下定时器有自动重装初值的特点。
*/
/*
********中断服务程序的编写***********
void 函数名() interrupt 中断号
{
}
中断号
0 外中断0
1 定时器0
2 外中断1
3 定时器1
4 串行中断
这里我们用的是定时器0,所以中断函数写为
void void time0_int(void) interrupt 1
{}
*/
/*
********定时器的启动与停止**********
只要设置TR0 = 1,即启动定时器0,TR0 = 0,即停止定时器0
*/
关键字:单片机 IO端口 方波
引用地址:
单片机在IO端口产生38KHZ的方波
推荐阅读最新更新时间:2024-03-16 15:22
C8051F020单片机的RS485串行通信设计
l 引言 随着计算机技术和测控技术的不断发展,在以单片机为核心的数据采集系统中,需要实现单片机和计算机之间的数据交换,并以此来发挥单片机和计算机各自的长处,提升整个系统的性能价格比。 在计算机网络和工业控制系统中,经常需要采用串行通信来实现远程数据传输。目前,有多种接口标准可用于串行通信,包括RS232、RS422、RS485等。RS232是最早的串行接口标准,在短距离、较低波特率串行通信中得到了广泛应用。但是,RS232通信存在着传输速度慢、传输距离短、信号容易受到干扰等不足,其应用局限性已日益突出。而RS485通信采用差分方式来消除噪声,即信号在发送前会分解为正负2条线路,当到达接收端时将信号相减,使噪声相互抵消,
[电源管理]
基于AT89S51的垃圾称重计费控制系统
我国现有的垃圾收费标准偏低,政府每年都要投入很大一部分资金来贴补垃圾处理企业。垃圾收费制度改革后,不但可以弥补政府和企业投入,还能督促居民加强垃圾的减量和资源化意识,促进垃圾减量化、资源化、无害化。 许多发达国家已经实行了垃圾计量收费,日本、韩国以及美国的经验是按照垃圾袋计算费用,居民多扔垃圾多买袋就多花钱;另外的形式是直接按照垃圾重量计费,多倾倒一桶垃圾就多花一定的费用,可以避免按户或按人头收费的“一刀切”做法。 本文设计了一种基于单片机的垃圾称重计费控制系统。与其他控制系统相比,单片机系统具有体积小巧、成本低廉等优势。 1 系统要求和主控制器的选择 系统工作原理如下:垃圾箱由3个不同的箱体组成,分别
[单片机]
基于单片机的高精度温度测量系统设计
摘要:提出采用单总线数字式温度传感器DS18B20和单片机组成的新型高精度温度测量仪的设计。介绍了温度传感器DS18B20的结构、特点和工作原理,设计了DS18B20和AT89S52单片机的温度测量系统硬件电路和软件编程,主要包括温度采集、温度显示及报警控制等功能。整个系统具有结构简单,测量精度高,传输距离远,抗干扰能力强,温度读取方便和造价低等一系列优点,适用于生产生活及科学研究中对温度的测量,应用前景十分广阔。 关键词:温度测量;单片机;DS18B20;数码管显示 0 引言 温度是工业生产过程和实验过程中比较重要的一个参数,精确的温度测量和及时的显示温度是很重要的。目前温度测量系统种类繁多,功能参差不齐。单片机具有体积小,
[工业控制]
基于C8051F005单片机的PZT驱动电路设计
1 引言 在自适应光学合成孔径成像系统中,某个孔径通道的原始信号相位信息因大气、载体振 动等因素引起发生变化时,冗余信息就会将两两通道的变化信息反映出来,通过光学系统提 取出用于冗余间隔校正的信息,经过计算机反馈控制驱动电压鼓完成相位的实时校正。我们 在该反馈系统中引入了压电陶瓷筒PZT 进行反馈控制。在外加电场作用下,具有逆压电效 应的压电陶瓷材料(PZT)将发生形变,PZT 筒上的光纤也就会随着PZT 筒的径向位移而产 生长度的变化,从而改变光波相位。任何 PZT 的使用都离不开相应的驱动电路,PZT 能否 正常、有效的工作,取决于它的驱动电路的性能,对于PZT 进行动态反馈控制的系统而言, PZT 驱动电路能否线性
[单片机]
STM8S单片机开发的过程及方法
STM8S单片机开发环境由三大部分组成,包括PC机上的开发软件(集成开发软件、驱动程序等)、调试&编程器ST-LINK、目标单片机电路板。如下图所示: 1、PC机上开发软件 PC机上的软件包括:ST-LINK驱动程序、IAR集成开发环境、STM8S标准函数库、STVP烧录工具。 ST-LINK调试&编程器需要驱动程序 这个驱动程序不需要单独安装,安装STVP时会一起安装。 IAR集成开发环境 IAR集成开发环境是集程序编辑、编译、程序下载、调试等功能为一体的集成开发工具,它可以通过 ST-LINK调试&编程器向目标STM8S单片机下载程序,并进行在线调试(包括设置断点、单步执行、查看内单片机存数据等)。 针对ST
[单片机]
基于AVR单片机Megal6的电子时钟设计
1 引言 数字钟能长期、连续、可靠、稳定地工作;同时还具有体积小,功耗低等特点,便于携带,使用方便。数字钟是采用数字电路实现对“时、分、秒”数字显示的计时装置,广泛应用于个人家庭、车站、码头、办公室等公共场所,已成为人们日常生活中不可缺少的必需品。由于数字集成电路的发展和石英晶体振荡器的广泛应用,使得数字钟的精度远远超过老式钟表,钟表的数字化给人们生产生活带来了极大的方便,而且大大地扩展了钟表原先的报时功能。传统MCS51系列单片机的所有数据处理都基于一个累加器,因此累加器与程序存储器、数据存储器之间的数据转换就成了单片机的瓶颈;在AVR单片机中,寄存器由32个通用工作寄存器组成,并且任何一个寄存器都能充当累加器,从
[单片机]
单片机输出矩阵波实验
这个程序的本意是输出一个矩阵波,但是如果用单片机实验板来运行的话就会发现似乎P1^1(即为第二个led管一直在发光),其实并不是程序有问题使得它一直在亮,而使通段的频率对人眼睛来说太快了,根据视觉暂留,所以会觉得led一直在亮。我开始也是有此怀疑的,可以在程序里面修改使得通段的频率变低,就可以看出来其实是一直在工作的。在注释符号后面的程序就是更改后的; #include reg52.h #define uint unsigned int #define uchar unsigned char sbit D1=P1^1; //uint i=0; void main() { TMOD=0x01; TH0=(65536-
[单片机]
单片机与TA8435的步进电机细分控制
1 步进电机 步进电动机是纯粹的数字控制电动机,它将电脉冲信号转变为角位移,即给一个脉冲,步进电机就转一个角度,因此非常合适单片机控制,在非超载的情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,电机则转过一个步距角,同时步进电机只有周期性的无累积误差,精度高。 步进电动机有如下特点: 1)步进电动机的角位移与输入脉冲数严格成正比。因此,当它转一圈后,没有累计误差,具有良好的跟随性。 2)由步进电动机与驱动电路组成的开环数控系统,既简单、廉价,又非常可靠,同时,它也可以与角度反馈环节组成高性能的闭环数控系统。 3)步进电动机的动态响应快,易于启停、正反转及变速。 4)速度可在相当宽的范
[工业控制]