本文目录一览

1,单片机C编程时钟温度湿度主程序问题急急急

1,先测试下温度和湿度子程序运行完成需要多长时间,如果太长了,肯定出现你上面说的问题;2,在运行温度和湿度子程序时,开启时钟中断,这样就不会出现时间不走的问题;3,如果你没有使用时钟中断,你要在运行温度和湿度子程序的延进程序里加入读时钟程序,才能相对准一点。
在单片机利用中,常常需要丈量温度、湿度、流量、速度、 液位、压力等多种摹拟量,... 生产进程nmos cmos 双 极性两线――串行数据sda 和串行时钟scl 线 在连接到总线... 第8章 单片

单片机C编程时钟温度湿度主程序问题急急急

2,在焊接的时候多大的温度能把单片机烧坏

看你的焊接设备咯。要是普通的烙铁一个脚焊接4-5秒都是正常的,要是用恒温台的话调到370,焊接时间还是要自己控制,温度不一样焊接每个点的时间也是不一样的。一般上焊接都不会导致芯片挂掉的。
没测试过啊!不过不建议直接把单片机焊上啊;给个单片机的套就方便多啦,做完一个作品后,那单片机还可以做另外的作品。循环利用啊
65w的就不错,不过一定要把电烙铁接地,否则很大概率烧坏芯片,再有就是选择平头的 方便刮焊
这个没有测试过,但是最好是焊接时候,两秒钟离开元件应该没有问题如果没有特殊说明的话~!

在焊接的时候多大的温度能把单片机烧坏

3,嘿嘿单片机实训内容不晓得用数码管显示摄氏度的具体内容高手

要看你用的是什么温度传感器的,如果你用的是DS18B20这个传感器的话就比较好办了,因为它是数字的,在里面有一点存储器,只需将转化好的温度值读出来就行了,这个程序在网上是很多的,至于用数码管显示数字的程序,我想你应该会吧。时间部分,就是用定时器产生1s定时,然后再设几个变量,你应该明白了吧。
等我做出来 我给你答案啊!
你好!首先得有数码管,如果不用锁存器的话得用到动态扫描..其次温度检测,要么找相关模块,要么用热敏电阻搭个电容充放电来计算温度..然后按键调节这个么就比较简单不用说了吧如有疑问,请追问。
温度传感器 DS18B20单片机 STC89C52时钟芯片DS1302这仨会用就行了,
时间和日期你要从时间存储器上读。温度从温度传感器采集吧。自己设定多久才一次数据,也就是你的数据的更新速率。

嘿嘿单片机实训内容不晓得用数码管显示摄氏度的具体内容高手

4,单片机控制温度

#define KP 3.0 //比例系数 #define KI 0.3 //积分系数 #define KD 200.0 //微分系数 #define KC 0.1 //维持功率系数 #define T_c 16 //采样周期(单位:秒) sbit pid_port=P3^5; //控制输出端口 float T_target=0; //目标温度 float T_real=0; //当前温度 float PWM=0; //输出控制量 bit read_AD_enable=0; //PID运算允许标志位 //T0定时器初始化 void Timer0_Init() { TMOD|=0x01; TF0 =0; TR0 =1; IE |=0x02; } //读取AD 转换值并刻度 void read_AD(void) { int delta_ad; unsigned char ad[3]; ad[0]=ADRESH; ad[1]=ADRESM; ad[2]=ADRESL; delta_ad=ad[0]*0x100+ad[1]-0x23cb; if(delta_ad<=0)delta_ad=0; T_real=(float)delta_ad/70; } //*--------PID运算函数 void pid(void) { static float diff[20]={0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}; static float sum_diff=0; //Σ(diff) static int curr_=0; float p_out,i_out,d_out,temp; float pwm_0; temp=diff[curr_]; if(curr_+1>=20)curr_=0; else curr_+=1; sum_diff-=diff[curr_]; diff[curr_]=T_target-T_real; sum_diff+=diff[curr_]; p_out=KP*diff[curr_]; //比例项输出 i_out=KI*sum_diff; //积分项输出 d_out=KD*(diff[curr_]-temp); //微分项输出 pwm_0=KC*T_target; //维持功率项 if(i_out>100)i_out=100; //积分分离 if(i_out<-100)i_out=-100; PWM=p_out+i_out+d_out+pwm_0; //总输出量 if(PWM<0)PWM=0; else if(PWM>=100)PWM=100; } // 输出函数 void PWM_OUT(float PWM) { static unsigned char t=1; //t=(1--100)周期为4秒 unsigned char limit; //pid_value输出百分比 limit=(unsigned char)PWM; if(t<=limit)pid_port=0; //加热 else pid_port=1; //停止加热 t++; if(t>100)t=1; } /**************************************************/ //T0中断服务程序 void Timer0_ISR() interrupt 1 using 1 { static unsigned int x=0; TH0=(28672)>>8; // 11.0592MHz,interval 40mS TL0=(28672+20)&0xff; // +20 compensate TF0=0; if((x++)>(T_c*25)) { x=0; read_AD_enable=1; } PWM_OUT(PWM); //可控硅输出 } /**************************************************** 主程序 ----------------------------------------------------*/ void main (void) { //-------程序初始化(略) while (1) { if(read_AD_enable==1) { read_AD_enable=0; read_AD(); pid(); } } } 大致的参考程序就是这样了 具体的话需要你自己看了
说难不难,就是没人会花那么多时间帮你做........
18B20测温,加热用SSR,单片机编一个简单的PID,定值若要改变再加个数据输入接口。

5,单片机问题

10个财富值你问这么多问题!!!!!!!!!!!!!!!1、如果单片机的时钟频率为12MHz 要求定时器T0工作方式在0,分别实现50ms,10ms,5ms的定时时间,那该怎样设置TH0及TL0?#include "reg51.h"unsigned int YSJS=0;unsigned int TIME;void Timer0Init(void) //5毫秒@12.000MHz TMOD &= 0xF0; //设置定时器模式 TL0 = 0xC0; //设置定时初值 TH0 = 0x63; //设置定时初值 TF0 = 0; //清除TF0标志 TR0 = 1; //定时器0开始计时 EA =1; //开总中断}void main(void) TIME=1;//TIME=1定时5mS,TIME=2定时10mS,TIME=10定时50mS Timer0Init() while(1) }}void TIMER0(void) interrupt 1 //定时器0中断函数使用默认寄存器组 YSJS++; if(YSJS==TIME)YSJS=0;}2、如果单片机的时钟频率为12MHz 试用单片机定时方式产生频率为50KHz的等宽矩形方波,怎样编程?#include "reg51.h"sbit OUT=P1^0;void Timer0Init(void) //10uS@12.000MHz TMOD &= 0xF0; //设置定时器模式 TMOD |= 0x02; //设置定时器模式 TL0 = 0xEC; //设置定时初值 TH0 = 0xEC; //设置定时初值 TF0 = 0; //清除TF0标志 TR0 = 1; //定时器0开始计时 EA =1; //开总中断}void main(void) Timer0Init() while(1) }}void TIMER0(void) interrupt 1 //定时器0中断函数使用默认寄存器组 OUT=!OUT;}3、假定A、B两机以方式1进行串行数据通信,其波特串为1200,系统主频为12MHz,编写程序将A机片外RAM 1000H~10FFH单元数据块通过行口传送到B机片外RAM 2000H~20FFH单元中去这个太麻烦了,不玩了。
单片机到底是什么呢?就是一个电脑,只不过是微型的,麻雀虽小,五脏俱全:它内部也用和电脑功能类似的模块,比如cpu,内存,并行总线,还有和硬盘作用相同的存储器件,不同的是它的这些部件性能都相对我们的家用电脑弱很多,不过价钱也是低的,一般不超过10元即可...用它来做一些控制电器一类不是很复杂的工作足矣了。我们现在用的全自动滚筒洗衣机,排烟罩vcd等等的家电里面都可以看到它的身影!..它主要是作为控制部分的核心部件。 它是一种在线式实时控制计算机,在线式就是现场控制,需要的是有较强的抗干扰能力,较低的成本,这也是和离线式计算机的(比如家用pc)的主要区别。 单片机是靠程序的,并且可以修改。通过不同的程序实现不同的功能,尤其是特殊的独特的一些功能,这是别的器件需要费很大力气才能做到的,有些则是花大力气也很难做到的。一个不是很复杂的功能要是用美国50年代开发的74系列,或者60年代的cd4000系列这些纯硬件来搞定的话,电路一定是一块大pcb板!但是如果要是用美国70年代成功投放市场的系列单片机,结果就会有天壤之别!只因为单片机的通过你编写的程序可以实现高智能,高效率,以及高可靠性! 由于单片机对成本是敏感的,所以目前占统治地位的软件还是最低级汇编语言,它是除了二进制机器码以上最低级的语言了,既然这么低级为什么还要用呢?很多高级的语言已经达到了可视化编程的水平为什么不用呢?原因很简单,就是单片机没有家用计算机那样的cpu,也没有像硬盘那样的海量存储设备。一个可视化高级语言编写的小程序里面即使只有一个按钮,也会达到几十k的尺寸!对于家用pc的硬盘来讲没什么,可是对于单片机来讲是不能接受的。 单片机在硬件资源方面的利用率必须很高才行,所以汇编虽然原始却还是在大量使用。一样的道理,如果把巨型计算机上的操作系统和应用软件拿到家用pc上来运行,家用pc的也是承受不了的。 单片机的应用领域 单片机广泛应用于仪器仪表、家用电器、医用设备、航空航天、专用设备的智能化管理及过程控制等领域,大致可分如下几个范畴: 1.在智能仪器仪表上的应用 单片机具有体积小、功耗低、控制功能强、扩展灵活、微型化和使用方便等优点,广泛应用于仪器仪表中,结合不同类型的传感器,可实现诸如电压、功率、频率、湿度、温度、流量、速度、厚度、角度、长度、硬度、元素、压力等物理量的测量。采用单片机控制使得仪器仪表数字化、智能化、微型化,且功能比起采用电子或数字电路更加强大。例如精密的测量设备(功率计,示波器,各种分析仪)。 2.在工业控制中的应用 用单片机可以构成形式多样的控制系统、数据采集系统。例如工厂流水线的智能化管理,电梯智能化控制、各种报警系统,与计算机联网构成二级控制系统等。 3.在家用电器中的应用 可以这样说,现在的家用电器基本上都采用了单片机控制,从电饭褒、洗衣机、电冰箱、空调机、彩电、其他音响视频器材、再到电子秤量设备,五花八门,无所不在。 4.在计算机网络和通信领域中的应用 现代的单片机普遍具备通信接口,可以很方便地与计算机进行数据通信,为在计算机网络和通信设备间的应用提供了极好的物质条件,现在的通信设备基本上都实现了单片机智能控制,从手机,电话机、小型程控交换机、楼宇自动通信呼叫系统、列车无线通信、再到日常工作中随处可见的移动电话,集群移动通信,无线电对讲机等。 5.单片机在医用设备领域中的应用 单片机在医用设备中的用途亦相当广泛,例如医用呼吸机,各种分析仪,监护仪,超声诊断设备及病床呼叫系统等等。 此外,单片机在工商,金融,科研、教育,国防航空航天等领域都有着十分广泛的用途

文章TAG:单片机温度时间是多少时间是多少单片机  温度  时间  
下一篇