1. 基于单片机电子时钟设计的开题报告怎样写
电动智能小车(完整论文) 电子时钟 电气工程系06届毕业设计开题报告 自动加料机控制系统 门控自动照明电路 电子设计大赛点阵电子显示屏(A题) 目录.txt
http://www..com/s?cl=3&wd=33%B8%F6%B5%A5%C6%AC%BB%FA%C9%E8%BC%C6%20%20%CB%D1%CB%F7
2. 跪求!基于单片机的数字时钟设计
#include<reg52.h>
#include<absacc.h>
#include<intrins.h>
#define unit unsigned int
#define uchar unsigned char
//#define HZ 12
sbit key0=P0^0; // 分钟调整
sbit key1=P0^1; // 小时调整
sbit P2_0=P2^7; //秒 指示灯
sbit MN_RXD=P3^6;
sbit MN_TXD=P3^7;
uchar data CLOCK[4]={0,0,0,12};//存放时钟时间(百分秒,秒,分,和时位)
//数码管显示表0-f 灭
uchar code TABLE[]={0xBE,0x06,0xEA,0x6E,0x56,0x7C,0xFC,0x0E,0xFE,0x7E,0x00};
//**********************************
//模拟串口发送一个字节数据 函数
//**********************************
void SendData(unsigned char senddata)
{
unsigned char i;
for(i=0;i<8;i++)
{
if((senddata&0x01)==0)
MN_RXD=0;
else
MN_RXD=1;
_nop_();
MN_TXD=0;
_nop_();
MN_TXD=1;
senddata=senddata>>1;
}
}
//**********************************
//显示程序函数
//**********************************
void display(void)
{
// unsigned int n;
uchar temp;
temp=CLOCK[1]; temp=temp%10; SendData(TABLE[temp]);
temp=CLOCK[1]; temp=temp/10; SendData(TABLE[temp]);
temp=CLOCK[2]; temp=temp%10; SendData(TABLE[temp]);
temp=CLOCK[2]; temp=temp/10; SendData(TABLE[temp]);
temp=CLOCK[3]; temp=temp%10; SendData(TABLE[temp]);
temp=CLOCK[3]; temp=temp/10; SendData(TABLE[temp]);
/*
for(n=0;n<5000;n++);
for(n=0;n<6;n++)
{
SendData(TABLE[10]);
}
*/
}
//**********************************
//按键控制函数
//**********************************
void keycan()
{
unsigned int n;
EA=0;
if(key0==0) // 分钟调整
{
for(n=0;n<10000;n++); //延时去抖动
while(key0==0);
CLOCK[2]=CLOCK[2]+1;
if(CLOCK[2]==60) //到一时
{
CLOCK[2]=0;
}
display();
}
if(key1==0) // 小时调整
{
for(n=0;n<10000;n++); //延时去抖动
while(key1==0);
CLOCK[3]=CLOCK[3]+1;
if(CLOCK[3]==24)
{
CLOCK[3]=0;
}
display();
}
EA=1;
}
//**********************************
//T0中断服务函数
//**********************************
void time0() interrupt 1 //using 1
{
TH0=0xD8; TL0=0xF0; //重置初值
// TH0=0xB1; TL0=0xE0;
//时钟处理
CLOCK[0]=CLOCK[0]+1;
}
//**********************************
//主函数
//**********************************
void main()
{
EA=1;
ET0=1;
TMOD=0x01; //T0方式1定时
TH0=0xD8; TL0=0xF0; //D8F0 定时10ms
// TH0=0xB1; TL0=0xE0; //定时 20ms
TR0=1;
for(;;)
{
if(CLOCK[0]==100) //到一秒 10ms*100
{
CLOCK[0]=0;
P2_0=~P2_0;
CLOCK[1]=CLOCK[1]+1;
if(CLOCK[1]==60) //到一分
{
CLOCK[1]=0;
CLOCK[2]=CLOCK[2]+1;
if(CLOCK[2]==60) //到一时
{
CLOCK[2]=0;
CLOCK[3]=CLOCK[3]+1;
if(CLOCK[3]==24)
{
CLOCK[3]=0;
}
}
}
display();
}
keycan();
}
}
3. 多功能数字钟电路设计
数字钟的VHDL设计
1、设计任务及要求:
设计任务:设计一台能显示时、分、秒的数字钟。具体要求如下:
由实验箱上的时钟信号经分频产生秒脉冲;
计时计数器用24进制计时电路;
可手动校时,能分别进行时、分的校正;
整点报时;
2 程序代码及相应波形
Second1(秒计数 6进制和10进制)
Library ieee;
Use ieee.std_logic_1164.all;
Use ieee.std_logic_unsigned.all;
Entity second1 is
Port( clks,clr:in std_logic;
Secs,Secg: out std_logic_vector(3 downto 0);
cout1:out std_logic);
End second1;
Architecture a of second1 is
Begin
Process(clks,clr)
variable ss,sg: std_logic_vector(3 downto 0);
variable co: std_logic;
Begin
If clr='1' then ss:="0000"; sg:="0000";
Elsif clks'event and clks='1' then
if ss="0101" and sg="1001" then ss:="0000"; sg:="0000";co:='1';
elsif sg<"1001" then sg:=sg+1;co:='0';
elsif sg="1001" then sg:="0000";ss:=ss+1;co:='0';
end if;
end if;
cout1<=co;
Secs<=ss;
Secg<=sg;
end process;
End a;
Min1(分计数器 6进制和10进制 alm实现整点报时)
Library ieee;
Use ieee.std_logic_1164.all;
Use ieee.std_logic_unsigned.all;
Entity min1 is
Port(clkm,clr:in std_logic;
mins,ming:buffer std_logic_vector(3 downto 0);
enmin,alarm: out std_logic);
End;
Architecture a of min1 is
Begin
Process(clkm,clr)
variable ms,mg :std_logic_vector(3 downto 0);
variable so,alm :std_logic;
Begin
If clr='1' then ms:="0000"; mg:="0000";
Elsif clkm'event and clkm='1' then
if ms="0101" and mg="1001" then ms:="0000";mg:="0000"; so :='1'; alm:='1';
elsif mg<"1001" then mg:=mg+1; so :='0';alm:='0';
elsif mg="1001" then mg:="0000";ms:=ms+1; so :='0';alm:='0';
end if;
end if;
alarm<=alm;
enmin<= so;
mins<=ms;
ming<=mg;
End process;
End a;
Hour1(时计数器 4进制与2进制)
Library ieee;
Use ieee.std_logic_1164.all;
Use ieee.std_logic_unsigned.all;
Entity hour1 is
Port(clkh,clr:in std_logic;
hours,hourg:out std_logic_vector(3 downto 0));
End;
Architecture a of hour1 is
Begin
Process(clkh,clr)
variable hs,hg :std_logic_vector(3 downto 0);
Begin
If clr='1' then hs:="0000"; hg:="0000";
Elsif clkh'event and clkh='1' then
if hs="0010"and hg="0011" then hs:="0000";hg:="0000";
elsif hg<"1001" then hg:=hg+1;
elsif hg="1001" then hg:="0000";hs:=hs+1; end if;
end if;
hours<=hs;
hourg<=hg;
End process;
End;
Madapt(校分)
Library ieee;
Use ieee.std_logic_1164.all;
Use ieee.std_logic_unsigned.all;
Entity madapt is
Port(en,clk,secin,m1:in std_logic;
minset:out std_logic);
End;
Architecture a of madapt is
Begin
Process(en,m1)
Begin
if en='1' then
if m1='1' then minset<=clk;
else minset<=secin; end if;
else minset<=secin ;
end if;
End process;
end;
Hadapt (校时)
Library ieee;
Use ieee.std_logic_1164.all;
Use ieee.std_logic_unsigned.all;
Entity hadapt is
Port(en,clk,minin,h1:in std_logic;
hourset:out std_logic);
End;
Architecture a of hadapt is
Begin
Process(en,h1)
Begin
if en='1' then
if h1='1' then hourset<=clk;
else hourset<=minin; end if;
else hourset<=minin;
end if;
End process;
end;
Topclock(元件例化 顶层文件)
Library ieee;
Use ieee.std_logic_1164.all;
Use ieee.std_logic_arith.all;
Use ieee.std_logic_unsigned.all;
Entity topclock is
Port(clk,clr,en,m1,h1:in std_logic;
alarm:out std_logic;
secs,secg,mins,ming,hours,hourg:buffer std_logic_vector(3 downto 0));
End;
Architecture one of topclock is
Component second1
Port( clks,clr:in std_logic;
secs,secg: buffer std_logic_vector(3 downto 0);
cout1: out std_logic);
End Component;
Component min1
Port(clkm,clr:in std_logic;
mins,ming:buffer std_logic_vector(3 downto 0);
enmin,alarm: out std_logic);
End Component;
Component hour1
Port(clkh,clr:in std_logic;
hours,hourg:buffer std_logic_vector(3 downto 0));
End Component;
Component madapt
Port(en,m1,clk,secin:in std_logic;
minset:out std_logic);
End Component;
Component hadapt
Port(en,h1,clk,minin:in std_logic;
hourset:out std_logic);
End Component;
signal a,b,c,d: std_logic;
begin
u1:second1 port map(clr=>clr,
secs=>secs,secg=>secg,clks=>clk, cout1=>a);
u2:min1 port map(clr=>clr,alarm=>alarm,
mins=>mins,ming=>ming,clkm=>b,enmin=>c);
u3:hour1 port map(clr=>clr,
hours=>hours,hourg=>hourg,clkh=>d);
u4:madapt port map(en=>en,m1=>m1,clk=>clk,secin=>a,minset=>b);
u5:hadapt port map(en=>en,h1=>h1,clk=>clk,minin=>c,hourset=>d);
end;
3 电路图
4 实验心得
程序全部都给你写好了啊,只 要你自己仿真,再下载到实验箱就OK了啦
4. 关于毕设无线低功耗数字钟的开题报告
开题报告写作格式
第一步、论文拟研究解决的问题
内容要求:
明确提出论文所要解决的具体学术问题,也就是论文拟定的创新点。
明确指出国内外文献就这一问题已经提出的观点、结论、解决方法、阶段性成果……
评述上述文献研究成果的不足。
提出你的论文准备论证的观点或解决方法,简述初步理由。
撰写方法:
你的观点或方法正是需要通过论文研究撰写所要论证的核心内容,提出和论证它是论文的目的和任务,因而并不是定论,研究中可能推翻,也可能得不出结果。开题报告的目的就是要请专家帮助判断你所提出的问题是否值得研究,你准备论证的观点方法是否能够研究出来。
一般提出3或4个问题,可以是一个大问题下的几个子问题,也可以是几个并行的相关问题。
第二步、国内外研究现状
内容要求:列举与论文拟研究解决的问题密切相关的前沿文献。基于“论文拟研究解决的问题”提出,允许有部分内容重复。
撰写方法:只简单评述与论文拟研究解决的问题密切相关的前沿文献,其他相关文献评述则在文献综述中评述。
第三步、论文研究的目的与意义
内容要求:
简介论文所研究问题的基本概念和背景。
简单明了地指出论文所要研究解决的具体问题。
简单阐述如果解决上述问题在学术上的推进或作用。
基于“论文拟研究解决的问题”提出,允许有所重复。
第四步、论文研究主要内容
容要求:初步提出整个论文的写作大纲或内容结构。由此更能理解“论文拟研究解决的问题”不同于论文主要内容,而是论文的目的与核心。
5. 毕业论文开题报告--------------急
1. 基于FX2N-48MRPLC的交通灯控制
2. 西门子PLC控制的四层电梯毕业设计论文
3. PLC电梯控制毕业论文
4. 基于plc的五层电梯控制
5. 松下PLC控制的五层电梯设计
6. 基于PLC控制的立体车库系统设计
7. PLC控制的花样喷泉
8. 三菱PLC控制的花样喷泉系统
9. PLC控制的抢答器设计
10. 世纪星组态 PLC控制的交通灯系统
11. X62W型卧式万能铣床设计
12. 四路抢答器PLC控制
13. PLC控制类毕业设计论文
14. 铁路与公路交叉口护栏自动控制系统
15. 基于PLC的机械手自动操作系统
16. 三相异步电动机正反转控制
17. 基于机械手分选大小球的自动控制
18. 基于PLC控制的作息时间控制系统
19. 变频恒压供水控制系统
20. PLC在电网备用自动投入中的应用
21. PLC在变电站变压器自动化中的应用
22. FX2系列PCL五层电梯控制系统
23. PLC控制的自动售货机毕业设计论文
24. 双恒压供水西门子PLC毕业设计
25. 交流变频调速PLC控制电梯系统设计毕业论文
26. 基于PLC的三层电梯控制系统设计
27. PLC控制自动门的课程设计
28. PLC控制锅炉输煤系统
29. PLC控制变频调速五层电梯系统设计
30. 机械手PLC控制设计
31. 基于PLC的组合机床控制系统设计
32. PLC在改造z-3040型摇臂钻床中的应用
33. 超高压水射流机器人切割系统电气控制设计
34. PLC在数控技术中进给系统的开发中的应用
35. PLC在船用牵引控制系统开发中的应用
36. 智能组合秤控制系统设计
37. S7-200PLC在数控车床控制系统中的应用
38. 自动送料装车系统PLC控制设计
39. 三菱PLC在五层电梯控制中的应用
40. PLC在交流双速电梯控制系统中的应用
41. PLC电梯控制毕业论文
42. 基于PLC的电机故障诊断系统设计
43. 欧姆龙PLC控制交通灯系统毕业论文
44. PLC在配料生产线上的应用毕业论文
45. 三菱PLC控制的四层电梯毕业设计论文
46. 全自动洗衣机PLC控制毕业设计论文
47. 工业洗衣机的PLC控制毕业论文
48. 《双恒压无塔供水的PLC电气控制》
49. 基于三菱PLC设计的四层电梯控制系统
50. 西门子PLC交通灯毕业设计
51. 自动铣床PLC控制系统毕业设计
52. PLC变频调速恒压供水系统
53. PLC控制的行车自动化控制系统
54. 基于PLC的自动售货机的设计
55. 基于PLC的气动机械手控制系统
56. PLC在电梯自动化控制中的应用
57. 组态控制交通灯
58. PLC控制的升降横移式自动化立体车库
59. PLC在电动单梁天车中的应用
60. PLC在液体混合控制系统中的应用
61. 基于西门子PLC控制的全自动洗衣机仿真设计
62. 基于三菱PLC控制的全自动洗衣机
63. 基于plc的污水处理系统
64. 恒压供水系统的PLC控制设计
65. 基于欧姆龙PLC的变频恒压供水系统设计
66. 西门子PLC编写的花样喷泉控制程序
67. 欧姆龙PLC编写的全自动洗衣机控制程序
68 景观温室控制系统的设计
69. 贮丝生产线PLC控制的系统
70. 基于PLC的霓虹灯控制系统
71. PLC在砂光机控制系统上的应用
72. 磨石粉生产线控制系统的设计
73. 自动药片装瓶机PLC控制设计
74. 装卸料小车多方式运行的PLC控制系统设计
75. PLC控制的自动罐装机系统
76. 基于CPLD的可控硅中频电源
77. 西门子PLC编写的花样喷泉控制程序
78. 欧姆龙PLC编写的全自动洗衣机控制程序
79. PLC在板式过滤器中的应用
80. PLC在粮食存储物流控制系统设计中的应用
81. 变频调速式疲劳试验装置控制系统设计
82. 基于PLC的贮料罐控制系统
83. 基于PLC的智能交通灯监控系统设计
1.基于labVIEW虚拟滤波器的设计与实现
2.双闭环直流调速系统设计
3.单片机脉搏测量仪
4.单片机控制的全自动洗衣机毕业设计论文
5.FPGA电梯控制的设计与实现
6.恒温箱单片机控制
7.基于单片机的数字电压表
8.单片机控制步进电机毕业设计论文
9.函数信号发生器设计论文
10.110KV变电所一次系统设计
11.报警门铃设计论文
12.51单片机交通灯控制
13.单片机温度控制系统
14.CDMA通信系统中的接入信道部分进行仿真与分析
15.仓库温湿度的监测系统
16.基于单片机的电子密码锁
17.单片机控制交通灯系统设计
18.基于DSP的IIR数字低通滤波器的设计与实现
19.智能抢答器设计
20.基于LabVIEW的PC机与单片机串口通信
21.DSP设计的IIR数字高通滤波器
22.单片机数字钟设计
23.自动起闭光控窗帘毕业设计论文
24.三容液位远程测控系统毕业论文
25.基于Matlab的PWM波形仿真与分析
26.集成功率放大电路的设计
27.波形发生器、频率计和数字电压表设计
28.水位遥测自控系统 毕业论文
29.宽带视频放大电路的设计 毕业设计
30.简易数字存储示波器设计毕业论文
31.球赛计时计分器 毕业设计论文
32.IIR数字滤波器的设计毕业论文
33.PC机与单片机串行通信毕业论文
34.基于CPLD的低频信号发生器设计毕业论文
35.110kV变电站电气主接线设计
36.m序列在扩频通信中的应用
37.正弦信号发生器
38.红外报警器设计与实现
39.开关稳压电源设计
40.基于MCS51单片机温度控制毕业设计论文
41.步进电动机竹竿舞健身娱乐器材
42.单片机控制步进电机 毕业设计论文
43.单片机汽车倒车测距仪
44.基于单片机的自行车测速系统设计
45.水电站电气一次及发电机保护
46.基于单片机的数字显示温度系统毕业设计论文
47.语音电子门锁设计与实现
48.工厂总降压变电所设计-毕业论文
49.单片机无线抢答器设计
50.基于单片机控制直流电机调速系统毕业设计论文
51.单片机串行通信发射部分毕业设计论文
52.基于VHDL语言PLD设计的出租车计费系统毕业设计论文
53.超声波测距仪毕业设计论文
54.单片机控制的数控电流源毕业设计论文
55.声控报警器毕业设计论文
56.基于单片机的锁相频率合成器毕业设计论文
57.基于Multism/protel的数字抢答器
58.单片机智能火灾报警器毕业设计论
59.无线多路遥控发射接收系统设计毕业论文
60.单片机对玩具小车的智能控制毕业设计论文
61.数字频率计毕业设计论文
62.基于单片机控制的电机交流调速毕业设计论文
63.楼宇自动化--毕业设计论文
64.车辆牌照图像识别算法的实现--毕业设计
65.超声波测距仪--毕业设计
66.工厂变电所一次侧电气设计
67.电子测频仪--毕业设计
68.点阵电子显示屏--毕业设计
69.电子电路的电子仿真实验研究
70.基于51单片机的多路温度采集控制系统
71.基于单片机的数字钟设计
72.小功率不间断电源(UPS)中变换器的原理与设计
73.自动存包柜的设计
74.空调器微电脑控制系统
75.全自动洗衣机控制器
76.电力线载波调制解调器毕业设计论文
77.图书馆照明控制系统设计
78.基于AC3的虚拟环绕声实现
79.电视伴音红外转发器的设计
80.多传感器障碍物检测系统的软件设计
81.基于单片机的电器遥控器设计
82.基于单片机的数码录音与播放系统
83.单片机控制的霓虹灯控制器
84.电阻炉温度控制系统
85.智能温度巡检仪的研制
86.保险箱遥控密码锁 毕业设计
87.10KV变电所的电气部分及继电保护
88.年产26000吨乙醇精馏装置设计
89.卷扬机自动控制限位控制系统
90.铁矿综合自动化调度系统
91.磁敏传感器水位控制系统
92.继电器控制两段传输带机电系统
93.广告灯自动控制系统
94.基于CFA的二阶滤波器设计
95.霍尔传感器水位控制系统
96.全自动车载饮水机
97.浮球液位传感器水位控制系统
98.干簧继电器水位控制系统
99.电接点压力表水位控制系统
100.低成本智能住宅监控系统的设计
101.大型发电厂的继电保护配置
102.直流操作电源监控系统的研究
103.悬挂运动控制系统
104.气体泄漏超声检测系统的设计
105.电压无功补偿综合控制装置
106.FC-TCR型无功补偿装置控制器的设计
107.DSP电机调速
108.150MHz频段窄带调频无线接收机
109.电子体温计
110.基于单片机的病床呼叫控制系统
111.红外测温仪
112.基于单片微型计算机的测距仪
113.智能数字频率计
114.基于单片微型计算机的多路室内火灾报警器
115.信号发生器
116.基于单片微型计算机的语音播出的作息时间控制器
117.交通信号灯控制电路的设计
118.基于单片机步进电机控制系统设计
119.多路数据采集系统的设计
120.电子万年历
121.遥控式数控电源设计
122.110kV降压变电所一次系统设计
123.220kv变电站一次系统设计
124.智能数字频率计
125.信号发生器
126.基于虚拟仪器的电网主要电气参数测试设计
127.基于FPGA的电网基本电量数字测量系统的设计
128.风力发电电能变换装置的研究与设计
129.电流继电器设计
130.大功率电器智能识别与用电安全控制器的设计
131.交流电机型式试验及计算机软件的研究
132.单片机交通灯控制系统的设计
133.智能立体仓库系统的设计
134.智能火灾报警监测系统
135.基于单片机的多点温度检测系统
136.单片机定时闹钟设计
137.湿度传感器单片机检测电路制作
138.智能小车自动寻址设计--小车悬挂运动控制系统
139.探讨未来通信技术的发展趋势
140.音频多重混响设计
141.单片机呼叫系统的设计
142.基于FPGA和锁相环4046实现波形发生器
143.基于FPGA的数字通信系统
144.基于单片机的带智能自动化的红外遥控小车
145.基于单片机AT89C51的语音温度计的设计
146.智能楼宇设计
147.移动电话接收机功能电路
148.单片机演奏音乐歌曲装置的设计
149.单片机电铃系统设计
150.智能电子密码锁设计
151.八路智能抢答器设计
152.组态控制抢答器系统设计
153.组态控制皮带运输机系统设计
154..基于单片机控制音乐门铃
155.基于单片机控制文字的显示
156.基于单片机控制发生的数字音乐盒
157.基于单片机控制动态扫描文字显示系统的设计
158.基于LMS自适应滤波器的MATLAB实现
159.D功率放大器毕业论文
160.无线射频识别系统发射接收硬件电路的设计
161.基于单片机PIC16F877的环境监测系统的设计
162.基于ADE7758的电能监测系统的设计
163.智能电话报警器
164.数字频率计 课程设计
165.多功能数字钟电路设计 课程设计
166.基于VHDL数字频率计的设计与仿真
167.基于单片机控制的电子秤
168.基于单片机的智能电子负载系统设计
169.电压比较器的模拟与仿真
170.脉冲变压器设计
171.MATLAB仿真技术及应用
172.基于单片机的水温控制系统
173.基于FPGA和单片机的多功能等精度频率计
174.发电机-变压器组中微型机保护系统
175.基于单片机的鸡雏恒温孵化器的设计
176.数字温度计的设计
177.生产流水线产品产量统计显示系统
178.水位报警显时控制系统的设计
179.红外遥控电子密码锁的设计
180.基于MCU温控智能风扇控制系统的设计
181.数字电容测量仪的设计
182.基于单片机的遥控器的设计
183.200电话卡代拨器的设计
184.数字式心电信号发生器硬件设计及波形输出实现
185.电压稳定毕业设计论文
186.基于DSP的短波通信系统设计(IIR设计)
187.一氧化碳报警器
188.网络视频监控系统的设计
189.全氢罩式退火炉温度控制系统
190.通用串行总线数据采集卡的设计
191.单片机控制单闭环直流电动机的调速控制系统
192.单片机电加热炉温度控制系统
193.单片机大型建筑火灾监控系统
194.USB接口设备驱动程序的框架设计
195.基于Matlab的多频率FMICW的信号分离及时延信息提取
196.正弦信号发生器
197.小功率UPS系统设计
198.全数字控制SPWM单相变频器
199.点阵式汉字电子显示屏的设计与制作
200.基于AT89C51的路灯控制系统设计
200.基于AT89C51的路灯控制系统设计
201.基于AT89C51的宽范围高精度的电机转速测量系统
202.开关电源设计
203.基于PDIUSBD12和K9F2808简易USB闪存设计
204.微型机控制一体化监控系统
205.直流电机试验自动采集与控制系统的设计
206.新型自动装弹机控制系统的研究与开发
207.交流异步电机试验自动采集与控制系统的设计
208.转速闭环控制的直流调速系统的仿真与设计
209.基于单片机的数字直流调速系统设计
210.多功能频率计的设计
211.18信息移频信号的频谱分析和识别
212.集散管理系统—终端设计
213.基于MATLAB的数字滤波器优化设计
214.基于AT89C51SND1C的MP3播放器
215.基于光纤的汽车CAN总线研究
216.汽车倒车雷达
217.基于DSP的电机控制
218.超媒体技术
219.数字电子钟的设计与制作
220.温度报警器的电路设计与制作
221.数字电子钟的电路设计
222.鸡舍电子智能补光器的设计
223.高精度超声波传感器信号调理电路的设计
224.电子密码锁的电路设计与制作
225.单片机控制电梯系统的设计
226.常用电器维修方法综述
227.控制式智能计热表的设计
228.电子指南针设计
229.汽车防撞主控系统设计
230.单片机的智能电源管理系统
231.电力电子技术在绿色照明电路中的应用
232.电气火灾自动保护型断路器的设计
233.基于单片机的多功能智能小车设计
234.对漏电保护器安全性能的剖析
235.解析民用建筑的应急照明
236.电力拖动控制系统设计
237.低频功率放大器设计
238.银行自动报警系统
6. 哪位有基于单片机的数字钟的设计开题报告
相关资料:
多功能数字钟设计
一 简介
时钟, 自从它发明的那天起,就成为人类的朋友,但随着时间的推移,人们对它的功能又提出了新的要求,怎样让时钟更好的为人民服务,怎样让我们的老朋友焕发青春呢?这就要求人们不断设计出新型时钟。本方案设计的多功能电子钟除了传统的显示时间功能之外还可以测试温度、电网频率、电压、并提供了过压报警、非接触止闹等功能。其中温度采用AD590温度传感器电路测得,非接触止闹则采用红外控制技术实现。
二 方案论证
时钟模块方案
方案一 基本门电路搭建 用基本门电路来实现数字钟,电路结构复杂,故障系数大,不易调试。
方案二 单片机编程 用单片机设计电路,由于使用软硬件结合的方式,所以电路结构简单、调试也相对方便。与第一种方案比较优点是非常明显的。我们选择了第二种方案
测温模块方案
方案一 热电阻测温 热电阻测量温度,精度和灵敏度都可以,但是它的电阻值与温度的线性关系不好.不便用数字的方法处理。
方案二 热电偶测温 热电偶是温度测量中应用最广泛的一种传感器 .在一般的测量和控制中,常用于中高温的温度检测.在 测量中需要温度的冷端补偿,在数字电子中实现不方便
方案三 AD590加运算放大器 二端式半导体温度传感器 AD590的工作电压要求不高,测温的范围比较宽最重要的是它的输出电流是紧随温度变化的电流源,所以它的线性非常好.我们选择了这种方案。
测电压模块方案
方案一 取样测试。用高速的取样电压取样,可得电压的峰值与主频率,并根据其电压大小进行相应的报警操作。此方案功能实现复杂,造价相对较高,不适合一般的家用。
方案二 测得电压有效值 测电压的有效值的方法比较简单,可以把一段时间内的电压的整体情况反映出来 ,但不能测出电压的瞬时变化的情况,对电网的突然冲击不能测出.
方案三 测得峰值推得有效值。交流电经过整流滤波后得到直流电压大小就是交流电的峰值,分压测出此电压大小,后根据交流电有效值和峰值的关系可推得有效值。这种方案采用的电路简单,实现方便,易于调试,精度较高, 为我们的设计采用。
非接触止闹模块方案
方案一 声音止闹
声音代替肢体给人带来了很大便利,但是要采用声控装置不得不考虑外界噪声对正常声音信号带来的干扰,而这一点又很难控制,因此虽然声控方便,但在这里不太适用所以割舍。
方案二 红外止闹
红外控制技术现在已被广泛地应用到各个领域,此技术有其独特的特点,首先操作方便抗干扰性好、探测灵敏度高、工作湿度范围宽设计电路有不太复杂,造价也不高,由于这些特点我们选用了红外遥控来止闹。
显示模块方案
方案一 段码显示。段码显示需要专门的驱动,增大了硬件电路,调试不易。而且用段码表示不够直观,因此不采用这种方案
方案二 单片机控制液晶显示。控制部分集成在单片机内软件调试,硬件集成度大,为本方案所采用。
综上所述得到以下方块图:
三 各模块功能
单片机控制显示部分:液晶显示片上显示时间、电压、温度,键盘控制,键盘如下图所示:
调节 ↑
闹铃 ↓
闹铃键用来设置闹铃,闹铃响时按下闹铃键可用来止闹,平时闹铃键可用来设置闹铃的开关,闹铃关时按下此键闹铃功能将被打开,反之闹铃功能将被关闭。需要调节时间时,按动调节按钮,显示片上需要设置的时间值以闪烁的方式出现,以示区别,表示当前调节内容,再次按动,跳至下个需要设置的时间值,我们可以通过切换选择我们需要调整的时间部分,然后按“上”“下”按钮进行设定。其中时钟部分以二十四或十二小时(AM/PM)制显示。
此外单片机还控制温度和电压的测量,通过测温端和测电压端输出的电压,由相应的函数关系求得被测端的被测参数,然后显示在液晶显示屏上.
测温部分
原理方块图:
温度检测电路的设计,电路图如下:
测温元件使用温度传感器AD590。A/D590在0℃时输出的电流I=273 uA,温度T每增加1℃,I增加1u A。输出的电压变化为:
Δv=1uA×R2
系统要求电压变化范围在0—5伏,可解得R2<62.5K,设计中R2采用了52K的电阻。
当温度为-10摄氏度时,要求输出电压尽量接近于0 V,
U0=(It-Vcc/R1) ×R2=0
由上述公式,得R1约为56k,本设计中取R1=56.3
3.A/D转换及显示电路的设计。本设计中所采用的单片机内置十位A/D转换器,显示电路也是通过编程单片机控制,控制程序见附录。
电压测量及欠压过压报警
电压测试电路如下:
交流电经变压器后,经半波整流后分压测得电压。电路图如下:
在变压器的中线上引出15v的交流电压,经过二极管以后相当滤掉了 负向电压。当电压从峰值下降到一定程度时,电容C1开始放电。取R3*C1>60ns,电阻上得到约等于交流电峰值的直流电压,分压后测得输出电压,有电路连接和交流电峰值、有效值的关系,
把三极管的基极接到单片机的一个控制口上,控制电容放电,保证每次的采样结果的正确性,也可以防止放电电流对电源的影响。由于我们已经知道现在用的是标准的电源,所以我们可以用电源的有效值计算出电压的最大值用于电压的上下限的报警。
我们用计数器接在J2 J3两端,通过每分钟计的的高电平或低电平个数就可以得出电网的频率。
非接触止闹:我们用红外控制技术控制闹钟的关闭。发射电路如下图
其中38khz方波发生电路由555接成,经74ls08后由三极管驱动两个发光二极管,当按钮按下时,发出控制光线。
接收电路如下图所示:
当接收到红外信号时,OUT端产生低电平信号,传到控制端,实现止闹功能。
单片机控制系统原理图如下:
控制系统主要由单片机应用电路、存储器接口电路、LCD显示接口电路、键盘电路、模拟量输入输出接口电路、供电电路及程序下载和调试接口电路组成。其中单片机应用电路是系统工作的核心,它主要负责控制各个部分协调工作.由于系统构成接口较多,为了更好的组织各个功能部件正常工作,我们选用功能强大的AVR单片机作为主控CPU.它集各种存储器(FLASH,RAM,EEPROM)、模拟器件(A/D转换器,模拟比较器)于一体,同时还集成了各种总线控制器等数字通信器件,是真正的片上系统(SOC).由于本系统涉及各种数字和模拟电子器件的应用,因此使用此单片机作为本系统的主控CPU,使开发速度大大提高。
四 系统调试过程与测试结果
本实验需要调试的主要有两部分:温度测试部分的调试和电压测试部分的调试
温度测试部分
实验数据如下
温度T(℃) 理论AD590输出电流(uA) 理论电压值Ut (V) 实际电压值Uo (V)
0 273 0.416 0.640
10 283 0.930 0.790
20 293 1.444 1.568
26.4 299.4 1.795 2.07
27.5 3090.5 1.852 2.10
30 303 1.985 2.35
40 313 2.471 3.130
50 323 2.985 3.312
60 333 3.499 3.845
70 343 4.013 4.378
100 373 5.62 5.98
表中AD590输出理论电流值由AD590本身的性质决定,理论电压输出则由仿真软件仿真计算得到。可以看出,理论电压和实际电压有明显的差别,实际输出电压高于理论算得的电压值,经不断分析测试可作如下总结:由于系统本身工作产生热量,使得AD590所测温度高于环境温度,但可以看出,实际电压值与温度依然呈线性关系变化,于是对测得数据进行一元线性回归处理,用最小二乘法求得此线性关系的斜率和初象,得到输出电压与温度变化之间的函数变化关系如下:
T=(100Uo-64)/5.34
在所得式中代入测得数据计算,其误差都不超过1摄氏度,可验证所得式的正确性。将此公式写入单片机控制程序中,就可以根据输入的电压变化得到相应的温度值。
电压调试部分:
测输入交流电压和输出交流电压的值,调10K电位器,市的交流输入为15是电压在2.5V到3V之间。保持电位器不变化,测得输入输出电压关系,得出相应函数关系。输入电压为十五伏时一边调电位器,一边观察输出电压。接入输出电压的电阻为2.17时输出电压在要求范围。这时测输入电压输出电压值如下表:
输入经变压器后的交流电压Ui’ (v) 输出直流电压Uo (v)
19.7 3.64
16.3 3
15 2.71
11.7 2.12
7.1 1.25
由表中数据可得以下结论:输入和输出约成正比变化,而经变压器后的电流是原电流的3/22,在由上述关系可得
Vi=Vo*80.2
测试过程中,经变压器后的交流电压和输出的直流电压线性关系符合得很好,上式作为最后的结果被写在程序中.
五 结束语
这款多功能计数器采用了现在广泛使用用的单片机技术为核心,软硬件结合,使硬件部分大为简化,提高了系统稳定性,并采用大屏幕液晶显示、红外遥控装置和电压报警装置使人机交互简便易行,较为有效地完成了题目的要求。
其他相关:
http://www.bysj120.cn/lunwen/jsj/3151.html
仅供参考,请自借鉴
希望对您有帮助
7. 基于单片机的数字时钟设计开题报告
//我这里有一个定时的闹钟,你把蜂鸣器的中断改为LED就行了,可以通过P2^0--P2^3实现秒表的显示和以及调时调分和调节闹钟以及闹钟的开关,有问题可以给我留言QQ834589429
#include<reg52.h>//包含头文件,一般情况不需要改动,头文件包含特殊功能寄存器的定义
codeunsignedchartab[]=
{0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
//共阴数码管0-9
sbitA1=P2^0;
sbitA2=P2^1;
sbitA3=P2^2;
sbitA4=P2^3;
sbitbeep=P1^4;
unsignedcharShiwan;
unsignedcharWanwei;
unsignedcharQianwei;
unsignedcharBaiwei;
unsignedcharShiwei;//定义十位
unsignedcharGewei,Naoling1,Naoling2,Naoling3,Naoling4;//定义个位
staticunsignedcharhour=12,minute=30,second=0,count=0;
staticunsignedcharalarmhour=12,alarmminute=29,i=0,j=0,k;
/******************************************************************/
/*延时函数*/
/******************************************************************/
voiddelay(unsignedintcnt)
{
while(--cnt);
}
voidxianshi(void)
{
Gewei=tab[second%10];//个位显示处理
Shiwei=tab[second/10];//十位显示值处理
if(second%2==0)
{
Baiwei=tab[minute%10];
Qianwei=tab[minute/10];//千位
}
else
{
Baiwei=(tab[minute%10]|0x80);//百位显示处理:加点的字码
Qianwei=(tab[minute/10]|0x80);
}
if(second%2!=0)
{
Wanwei=tab[hour%10];
Shiwan=tab[hour/10];
}
else
{
Wanwei=(tab[hour%10]|0x80);
Shiwan=(tab[hour/10]|0x80);
}
Naoling1=~tab[alarmhour%10];
Naoling2=~tab[alarmhour/10];
Naoling3=~tab[alarmminute%10];
Naoling4=~tab[alarmminute/10];
}
voidtimer0()interrupt3using1
{
TH1=0x3c;//中断设置初始化
TL1=0xb0;
if(alarmhour==hour&&alarmminute==minute&&j==1)
{
beep=0;
}
}
/******************************************************************/
/*定时器中断函数*/
/******************************************************************/
voidtimer1()interrupt1using0
{
TH0=0xd8;//重新赋值
TL0=0xf0;
count++;
xianshi();
if(count==99)//100x10ms=1S,大致延时时间
{
count=0;
second++;//秒加1
if(second==60)
minute++;
{
if(second==60)
second=0;
{
if(minute==60)
hour++;
{
if(minute==60)
minute=0;
{
if(hour==24)
hour=0;
}
}
}
}
}
}
/******************************************************************/
/*主函数*/
/******************************************************************/
voidmain()
{
TMOD|=0x01;//定时器设置10msin12Mcrystal,工作在模式1,16位定时
TH0=0xd8;
TL0=0xf0;
IE=0x82;//打开中断
TR0=1;//打开定时开关
xianshi();
EA=1;ET0=1;TMOD|=0x21;TR0=1;//开中断总开关,计数器0允许中断,设置中断模式,启动计数器0
ET1=1;TR1=1;
while(1)
{
{
if(!A3)
{
delay(10000);
if(!A3)
{
i++;if(i==7)i=0;
xianshi();
}
}
}
{
if(!A4)
{
delay(10000);
if(!A4)
{
i--;if(i==255)i=6;
xianshi();
}
}
}
switch(i)
{
case0://正常显示控制
{
P1=0x1e;//片选个位
P0=~Baiwei;//显示个位
delay(300);//短暂延时
P1=0x1d;//片选十位
P0=~Qianwei;//显示十位
delay(300);//短暂延时
P1=0x1b;//片选百位
P0=~Wanwei;//显示百位
delay(300);//短暂延时
P1=0x17;//片选千位
P0=~Shiwan;//显示千位
delay(300);//短暂延时
P1=0x1f;
P0=0xff;
delay(300);
};break;
case1://调分控制
{
if(second%2!=0)
{
P1=0x1e;//片选个位
P0=~Baiwei;//显示个位
delay(300);//短暂延时
P1=0x1d;//片选十位
P0=~Qianwei;//显示十位
delay(300);//短暂延时
P1=0x1f;
P0=0xff;
delay(300);
}
else
delay(300);
delay(300);
{
if(!A1)
{
delay(10000);//消抖
if(!A1)
{
minute++;if(minute==61)minute=0;
xianshi();
}
}//按键处理
}
{
if(!A2)
{
delay(10000);//消抖
if(!A2)
{
minute--;if(minute==255)minute=59;
xianshi();
}
}
}
};break;
case2://调时控制
{
if(second%2==0)
{
P1=0x1b;//片选百位
P0=~Wanwei;//显示百位
delay(300);//短暂延时
P1=0x17;//片选千位
P0=~Shiwan;//显示千位
delay(300);//短暂延时
P1=0x1f;
P0=0xff;
delay(300);
}
else
delay(300);
delay(300);
{
if(!A1)
{
delay(10000);//消抖
if(!A1)
{
hour++;if(hour==24)hour=0;
xianshi();
}
}//按键处理
}
{
if(!A2)
{
delay(10000);//消抖
if(!A2)
{
hour--;if(hour==255)hour=23;
xianshi();
}
}
}
};break;
case3://秒显示控制
{
P1=0x1e;//片选个位
P0=~Gewei;//显示个位
delay(300);//短暂延时
P1=0x1d;//片选十位
P0=~Shiwei;//显示十位
delay(300);//短暂延时
P1=0x1f;
P0=0xff;
delay(300);
delay(300);
delay(300);
};break;
case4://闹钟控制
{
if((!A1)||(!A2))
{
delay(10000);
if((!A1)||(!A2))j++;
if(j==2)
j=0;
}
switch(j)
{
case0:{
P1=0x1e;//片选个位
P0=~0x71;//显示个位
delay(300);//短暂延时
P1=0x1d;//片选十位
P0=~0x71;//显示十位
delay(300);//短暂延时
P1=0x1b;//片选百位
P0=~0x3f;//显示百位
delay(300);//短暂延时
P1=0x17;//片选千位
P0=~0x40;//显示千位
delay(300);//短暂延时
delay(300);
};break;
case1:{
P1=0x1e;//片选个位
P0=~0x37;//显示个位
delay(300);//短暂延时
P1=0x1d;//片选十位
P0=~0x3f;//显示十位
delay(300);//短暂延时
P1=0x1b;//片选百位
P0=0xff;//显示百位
delay(300);//短暂延时
P1=0x17;//片选千位
P0=~0x40;//显示千位
delay(300);//短暂延时
delay(300);
}
}
};break;
case5://闹铃分钟调整
{
{
P1=0x1e;
P0=Naoling3;
delay(300);
P1=0x1d;
P0=Naoling4;
delay(300);
P1=0x1f;
P0=0xff;
delay(300);
delay(300);
delay(300);
}
{
if(!A1)
{
delay(10000);//消抖
if(!A1)
{
alarmminute++;if(alarmminute==61)alarmminute=0;
}
}//按键处理
}
{
if(!A2)
{
delay(10000);//消抖
if(!A2)
{
alarmminute--;if(alarmminute==255)alarmminute=59;
}
}
}
};break;
case6://闹铃小时调整
{
{
P1=0x1b;
P0=Naoling1;
delay(300);
P1=0x17;
P0=Naoling2;
delay(300);
P1=0x1f;
P0=0xff;
delay(300);
delay(300);
delay(300);
}
{
if(!A1)
{
delay(10000);//消抖
if(!A1)
{
alarmhour++;if(alarmhour==24)alarmhour=0;
}
}//按键处理
}
{
if(!A2)
{
delay(10000);//消抖
if(!A2)
{
alarmhour--;if(alarmhour==255)alarmhour=23;
}
}
};break;
default:break;
}
}
}
}
8. 求基于8051单片机的数字钟设计的论文及开题报告。。
望采纳
还有一些,如果想要留个邮箱
9. 急需一份《基于单片机数据显示电路设计》的开题报告。1000字
我有这个论文。
摘 要:由于普通LED点阵显示屏动态显示通常采用硬件扫描驱动,这在一些需要特殊显示的场合显得不够灵活。文中提出了一种利用PC机和单片机的通讯来实现显示屏灵活的动态显示和远程监控的设计方法,同时该方法还可以将显示内容在PC机上进行预览。 关键词:LED;动态显示;远程控制;显示预览
1引言 LED 点阵电子显示屏是集微电子技术、计算机技术、信息处理技术于一体的大型显示屏系统。它以其色彩鲜艳,动态范围广,亮度高,寿命长,工作稳定可靠等优点而成为众多显示媒体以及户外作业显示的理想选择。同时也可广泛应用到军事、车站、宾馆、体育、新闻、金融、证券、广告以及交通运输等许多行业。 目前大多数的LED点阵显示系统自带字库。其显示和动态效果(主要是显示内容的滚动)的实现主要依靠硬件扫描驱动,该方法虽然比较方便,但显示只能按照预先的设计进行。而实际上经常会遇到一些特殊要求的动态显示,比如电梯运行中指示箭头的上下移动、某些智能仪表幅值的条形显示、广告中厂家的商标显示等。这时一般的显示系统就很难达到要求。另外,由于受到存储器本身的局限,其特殊字符或图案也往往难以显示,同时显示内容也不能随意更改。本文提出一种利用PC机和单片机控制的LED显示系统通讯方法。该方法可以对显示内容(包括汉字和特殊图符)进行实时控制,从而实现诸如闪动、滚动、打字等多种动态显示效果。该方法同时还可以调节动态显示的速度,同时用户也可以在PC机上进行显示效果的预览,显示内容亦可以即时修改。另外,通过标准的RS232/485 转换模块还可以实现对显示系统的远程控制。2系统硬件设计 本 系统主要的硬件设计是下位机单片机的显示 控制部分。而上位机(PC机)与单片机显示控制部分的接口为标准RS232通讯方式。若需实现远程监控,只需增加RS232/485转换模块即可,该部分已有成熟的电路设计,故不再详细叙述。
太多了字数限制了 要我给你发过去
10. 哪位有基于单片机的多功能数字电子钟的开题报告
源程序如下:ORG0000H;程序开始入口LJMPSTARTORG0003H;外中断0中断程序入口RETIORG000BH;定时器T0中断程序入口LJMPINTT0;跳至INTTO执行ORG0013H;外中断1中断程序入口RETIORG001BH;定时器T1中断程序入口LJMPINTT1ORG0023H;串行中断程序入口地址RETI;---------------主程序----------------------;START:MOVR0,#70H;70给R0,清70-7FH显示内存MOVR7,#0FHCLEARDISP:MOV@R0,#00H;0给R0中的数为地址的内存中存放(70H)INCR0DJNZR7,CLEARDISPMOV78H,#2;默认时间为12:00,闹钟5:00MOV79H,#1MOV74H,#2;防止上电时数码管显示00小时MOV75H,#1MOV66H,#1;中断退出时66H为1时,分、时计时单元数据移入显存标志MOV68H,#1;上电默认闹钟开状态MOV7DH,#6;闹钟时十位MOV7CH,#3MOV69H,#0MOV7AH,#0AH;放入"熄灭符"数据MOVTMOD,#11H;设T0、T1为16位定时器MOVTL0,#0B0H;50MS定时初值(T0计时用)MOVTH0,#3CHSETBEA;总中断开放SETBET0;允许T0中断SETBTR0;T0定时器开始计时MOVR4,#14H;1秒定时用初值(50MS×20)START1:LCALLDISPLAY;显示子程序LCALLBEEP;闹钟查询JNBP1.7,SETTIME;P1.7口为0时转时间调整程序JMPSTART1;P1.7口为1时跳回START1;-----------------------时间闹钟调整系统--------------------------;NFLAG:MOVA,68H;设置闹钟开关状态CJNEA,#1,BEE68MOV68H,#0JMPE6BEE68:MOV68H,#1E6:MOV66H,#8;中断退出66H不为1时分、时计时单元数据移入显存标志MOV72H,7BHMOV73H,7CHMOV74H,7DHMOV75H,7EHLCALLDDLLCALLDDLMOV72H,68HMOV73H,69HMOV74H,7AHMOV75H,7AHLCALLDDLLCALLDDLMOV66H,#1LJMPSTART1SETTIME:LCALLDDLJBP1.7,NFLAG;键按下时间小于1秒,设置闹钟开关状态并查看闹钟时间,不关走时,确保准确,大于1秒调时MOVTL1,#0B0H;T1闪烁定时初值MOVTH1,#3CHMOVR2,#06H;进入调时状态,赋闪烁定时初值MOV66H,#8;调闹钟时保持走时,关闭时钟显示数据SETBET1;允许T1中断SETBTR1;开启定时器T1SET1:LCALLDISPLAY;调用显示,防止键按下无显示JNBP1.7,SET1;P1.7口为0等待键释放MOVR5,#00H;清设置类型闪烁标志SETN1:INCR5;闹钟分调整SET5:LCALLDISPLAYJBP1.7,SET5SEETN1:LCALLDDL;有键按下大于1秒分时间连续加(0.5秒加1),小于1秒转调时状态JBP1.7,SET6;键释放查询,键释放自动转调时MOVR0,#7CHLCALLADD1MOVA,R3CLRCCJNEA,#60H,HHN1HHN1::INCR5;闹钟时调整SEET6:LCALLDISPLAYJBP1.7,SEET6SEETNH1:LCALLDDLJBP1.7,SETFMOVR0,#7EHLCALLADD1MOVA,R3CLRCCJNEA,#24H,HOUU1HOUU1::LCALLDISPLAYJBP1.7,SETFLCALLDDLJNBP1.7,SETOUT;短按调时,长按退出CLRET0CLRTR0MOV70H,#00H;设定后的时间从00秒开始走时MOV71H,#00HINCR5SET3:LCALLDISPLAYJBP1.7,SET3SETMM:LCALLDDLJBP1.7,SET4MOVR0,#77HLCALLADD1MOVA,R3CLRCCJNEA,#60H,MMHMMH:JCSETMMLCALLCLR0AJMPSETMMSET4:INCR5SEET4:LCALLDISPLAYJBP1.7,SEET4SETHH:LCALLDDLJBP1.7,SETOUT1MOVR0,#79HLCALLADD1MOVA,R3CLRCCJNEA,#24H,HOUUHOUU::SETBET0SETBTR0;计时开始SETOUT:MOVR5,#00H;清设置类型闪烁标志CLRTR1;关闭T1CLRET1;关T1中断MOV66H,#1SETOUT2:LCALLDISPLAYJNBP1.7,SETOUT2LJMPSTART1;--------------------------延时1秒钟-----------------------;DDL:MOV18H,#36DDL0:MOV17H,#239DDL1:LCALLDISPLAYDJNZ17H,DDL1DJNZ18H,DDL0RET;----------------------------T0中断程序------------------------;INTT0:PUSHACC;打包PUSHPSWCLRET0CLRTR0MOVA,#0B7HADDA,TL0MOVTL0,AMOVA,#3CHADDCA,TH0MOVTH0,ASETBTR0DJNZR4,OUTT0;20次中断未到中断退出ADDSS:MOVR4,#14H;20次中断到(1秒)重赋初值MOVR0,#71H;指向秒计时单元(70-71H)ACALLADD1;调用加1程序(加1秒操作)MOVA,R3;秒数据放入A(R3为2位十进制数组合)CLRC;清进位标志CJNEA,#60H,ADDMMADDMM:JCOUTT01;小于60秒退出ACALLCLR0;等于或大于60秒清0MOVR0,#77H;指向分计时单元(76H-77H)ACALLADD1MOVA,R3CLRCCJNEA,#60H,ADDHHADDHH:JCOUTT0ACALLCLR0MOVR0,#79H;指向小时计时单元(78H-79H)ACALLADD1MOVA,R3CLRCCJNEA,#24H,HOURHOUR:JCOUTT0ACALLCLR0OUTT0:MOVA,66H;查询标志CJNEA,#1,OUTT01MOV72H,76H;中断退出时将分、时计时单元数据移入对应显示单元MOV73H,77HMOV74H,78HMOV75H,79HOUTT01:POPPSW;出栈POPACCSETBET0;开放T0RETI;中断返回;---------------------------加1程序--------------------------;ADD1:MOVA,@R0;取当前计时单元数据到ADECR0;指向前一地址SWAPA;A中数据高四位与低四位交换ORLA,@R0;前一地址中数据放入A中低四位ADDA,#01H;A加1操作DAA;十进制调整MOVR3,A;移入R3寄存器ANLA,#0FH;高四位变0MOV@R0,A;放回前一地址单元MOVA,R3;取回R3中暂存数据INCR0;指向当前地址单元SWAPA;A中数据高四位与低四位交换ANLA,#0FH;高四位变0MOV@R0,A;数据放入当削地址单元中RETCLR0:CLRCCLRA;清累加器MOV@R0,A;清当前地址单元DECR0;指向前一地址MOV@R0,A;前一地址单元清0RET;子程序返回;-------------------------调时闪烁程序----------------------;INTT1:PUSHACCPUSHPSWMOVTL1,#0B0HMOVTH1,#3CHDJNZR2,INTT1OUT;0.3秒未到退出中断(50MS中断6次)MOVR2,#06H;重装0.3秒定时用初值CPL02H;0.3秒定时到对闪烁标志取反JB02H,FLASH1;02H位为1时显示单元"熄灭"MOVA,R5CJNEA,#01H,NLJMPNNN1NL:CJNEA,#02H,NL1LJMPNNN1NL1:CJNEA,#03H,NL2LJMPNLLNL2:CJNEA,#04H,INTT1OUTLJMPNLLNLL:MOV72H,76HMOV73H,77HMOV74H,78HMOV75H,79HAJMPINTT1OUTNNN1:MOV72H,7BHMOV73H,7CHMOV74H,7DHMOV75H,7EHINTT1OUT:POPPSW;恢复现场POPACCRETI;中断退出FLASH1:MOVA,R5CJNEA,#01H,MLLJMPMNN1ML:CJNEA,#02H,ML1LJMPMNN2ML1:CJNEA,#03H,MNLJMPMLLMN:CJNEA,#04H,INTT1OUTLJMPMHLMLL:MOV72H,7AHMOV73H,7AH;显示单元(72-73H),将不显示分数据MOV74H,78HMOV75H,79HAJMPINTT1OUTMHL:MOV72H,76HMOV73H,77HMOV74H,7AH;显示单元(74-75H),小时数据将不显示MOV75H,7AHAJMPINTT1OUTMNN1:MOV72H,7AHMOV73H,7AH;显示单元(72-73H),将不显示闹钟分数据MOV74H,7DHMOV75H,7EHAJMPINTT1OUTMNN2:MOV72H,7BHMOV73H,7CHMOV74H,7AHMOV75H,7AH;显示单元(74-75H),闹钟小时数据将不显示AJMPINTT1OUT;-------------------------显示-------------------------------;DISPLAY:MOVDPTR,#DISDATAMOVA,70HMOVCA,@A+DPTRMOVP3,ACLRP1.0NOPNOPNOPSETBP1.0MOVA,71HMOVCA,@A+DPTRMOVP3,ACLRP1.1NOPNOPNOPSETBP1.1MOVA,72HMOVCA,@A+DPTRMOVP3,ACLRP1.2NOPNOPNOPSETBP1.2MOVA,73HMOVCA,@A+DPTRMOVP3,ACLRP1.3NOPNOPNOPSETBP1.3MOVA,74HMOVCA,@A+DPTRMOVP3,ACLRP1.4NOPNOPNOPSETBP1.4MOVA,75HMOVCA,@A+DPTRMOVP3,ACLRP1.5NOPNOPNOPSETBP1.5RETBEEP:MOVA,68H;查询标志CJNEA,#1,BEEREMOVA,78H;查询闹钟时个位CJNEA,7DH,BEEREMOVA,79H;查询闹钟时十位CJNEA,7EH,BEEREMOVA,76H;查询闹钟分个位CJNEA,7BH,BEEREMOVA,77H;查询闹钟分十位CJNEA,7CH,BEEREBB:CLRP1.6LCALLDDLSETBP1.6LCALLDDLJNBP1.7,BEERRBEERE:RETBEERR:SETBP1.6MOV68H,#0LCALLDISPLAYJNBP1.7,BEERRJMPBEEREDISDATA:DB0C0H,0F9H,64H,70H,59H,52H,42H,0F8H,40H,50H,0FFH;0123456789空白END