文档库 最新最全的文档下载
当前位置:文档库 › 数字日历电路地设计

数字日历电路地设计

数字日历电路地设计
数字日历电路地设计

桂林电子科技大学信息科技学院《EDA技术与应用》实训报告

学号

姓名

指导教师:

2012 年 6 月22 日

题目:数字日历电路的设计

1.系统设计

1.1设计要求

1.1.1设计任务

用EDA的方法设计一个数字日历

1.1.2性能指标

①用EDA实训仪的I/O设备和PLD芯片实现数字日历的设计。

②数字日历能够显示年、月、日、时、分、秒。

③数字日历有复位的功能,有校年、月、日和校时、分、秒的功能,通过一个开关来转换时校年、月、日还是校时、分、秒。

④此数字日历具有闹钟的功能,在6:01将开启闹钟,用一个LED灯表示,可以在任意时刻关闭闹钟。

1.2设计思路及框图

1.2.1设计思路

日历主要由年月日模块和时分秒模块组成,由分频器提供脉冲,再加上一个控制模块实现控制选择校准时分秒还是校准年月日。也可以实现时分秒和年月日的八秒自由转换。再加上一个闹钟,在6:01的时候闹钟开启,并由一个开关控制,在任意时间都可以关掉闹钟。

1.2.2总体设计框图

2各模块程序设计

2.1时分秒计时器模块:

module cnt60(clrn,clk,q,j,cont); //秒和分计时input clrn,clk,j;

output reg [7:0] q;

output reg cont;

always @(posedge clk^j or negedge clrn)

begin

if(~clrn) q=0;

else begin

if(q=='h59) q=0;

else q=q+1;

if(q[3:0]=='ha) begin q[3:0]=0;q[7:4]=q[7:4]+1;end if(q=='h59) cont=1;

else cont=0;end

end

endmodule

module cnt24(clrn,clk,q,j,cont); //小时计时input clrn,clk,j;

output reg [7:0] q;

output reg cont;

always @(posedge clk^j or negedge clrn)

begin

if(~clrn) q=0;

else begin

if(q=='h23) q=0;

else q=q+1;

if(q[3:0]=='ha) begin q[3:0]=0;q[7:4]=q[7:4]+1;end

if(q=='h23) cont=1;

else cont=0;end

end

endmodule

2.2年月日模块

module nyr2009(clrn,clk,jn,jy,jr,qn,qy,qr); //年月日模块input clrn,clk,jn,jy,jr;

output [15:0] qn;

output [7:0] qy,qr;

reg [15:0] qn;

reg [7:0] qy,qr;

reg clkn,clky;

reg [7:0] date;

reg clkn1,clkn2,clkn3;

initial begin clkn1=1;clkn2=1;clkn3=1;end

initial begin qn='h2000;qy=1;qr=1;end

always @(posedge (clk^jr) or negedge clrn) // 日计时模块begin

if (~clrn) qr=1;

else begin

if (qr==date) qr=1;

else qr=qr+1;

if (qr[3:0]=='ha) begin

qr[3:0]=0; qr[7:4]=qr[7:4]+1;end

if (qr==date) c lky = 1;

else clky = 0;end

end

always @(posedge clky^jy or negedge clrn) //月计时模块begin

if (~clrn) qy=1;

else begin

if (qy=='h12) qy=1;

else qy=qy+1;

if (qy[3:0]=='ha) begin

qy[3:0]=0;qy[7:4]=qy[7:4]+1;end

if (qy=='h12) clkn = 1;

else clkn = 0;end

end

always

begin

case (qy)

'h01: date='h31;

'h02: b egin

if ((qn%4==0)&(qn%100 != 0)|(qn%400==0)) date='h29;

else date='h28; end

'h03: date='h31;

'h04: date='h30;

'h05: date='h31;

'h06: date='h30;

'h07: date='h31;

'h08: date='h31;

'h09: date='h30;

'h10: date='h31;

'h11: date='h30;

'h12: date='h31;

default :date='h30;

endcase

end

always @(posedge (clkn^jn) or negedge clrn ) //年计时模块begin

if (~clrn) qn[3:0]=0;

else begin if(qn[3:0]==9) qn[3:0]=0;

else qn[3:0]=qn[3:0]+1;

if (qn[3:0]==9) clkn1=0;

else clkn1=1;end

end

always @(posedge clkn1 or negedge clrn )

begin

if (~clrn) qn[7:4]=0;

else begin if(qn[7:4]==9) qn[7:4]=0;

else qn[7:4]=qn[7:4]+1;

if (qn[7:4]==9) clkn2=0;

else clkn2=1;end

end

always @(posedge clkn2 or negedge clrn )

begin

if (~clrn) qn[11:8]=0;

else begin if(qn[11:8]==9) qn[11:8]=0;

else qn[11:8]=qn[11:8]+1;

if (qn[11:8]==9) clkn3=0;

else clkn3=1;end

end

always @(posedge clkn3 or negedge clrn )

begin

if (~clrn) qn[15:12]=2;

else if(qn[15:12]==9) qn[15:12]=0;

else qn[15:12]=qn[15:12]+1;

end

endmodule

2.3校时模块

module mux_4(k,jm,jf,js,jr,jy,jn,j1,j2,j3); input k,j1,j2,j3;

output reg jm,jf,js,jr,jy,jn;

always

begin

if (k==0) {jm,jf,js}={j1,j2,j3};

else {jr,jy,jn}={j1,j2,j3};

end

endmodule

2.4分频器模块

同时给时分秒和闹钟送入脉冲

module FENP(clk,newclk);

input clk;

output reg newclk;

reg[24:0] cnter;

always @(posedge clk)

begin

if(cnter<20000000) cnter=cnter+1;

else cnter=0;

if (cnter<10000000) newclk=1;

else

newclk=0;

end

endmodule

2.5控制器模块

显示年月日和显示时分秒直接的转换控制

module contr(clk,k1,k2,k);

input clk,k1,k2;

output reg k;

reg [3:0] qc;

reg rc;

always @(posedge clk)

begin qc=qc+1;

if (qc<8) rc=0;

else rc=1;

case ({k1,k2})

0:k=rc; //八秒显示年月日八秒显示时分秒的自由转换

1:k=0; //显示并且校准时分秒

2:k=1; //显示并且校准年月日

3:k=rc;

endcase

end

endmodule

2.6闹钟模块

module naozhong(qs,qf,led,zt);

input zt;

input[7:0] qs,qf;

output led;

reg led;

always

begin

if (qs=='h06&&qf=='h01) //6:01闹钟开始闪烁led=1;

else

led=0;

if(zt==1) led=0; // 在任意时刻都可以关掉闹钟

end

endmodule

2.7数码管显示模块

module mux_16(k,qm,qf,qs,qr,qy,qn,q);

input k;

input[7:0] qm,qf,qs,qr,qy;

input[15:0] qn;

output reg [31:0] q;

always

begin

if (k==0) begin

q[31:24]=0;

q[23:0]={qs,qf,qm};end

else q={qn,qy,qr};

end

endmodule

3.调试过程

在调试过程中出现很多问题,在时分秒里加入分频器可以实现计时,但是闹钟就不能实现1秒钟闪烁一次的功能,当给闹钟加上一个分频器的时候,时分秒模块也不能自动计时。首先认识到必须只能有一个分频器,而且还能同时给两个提供脉冲。所以就删除了时分秒里的分频器,在总的图中加入一个分频器,同时给两个提供脉冲,这样两个功能都可以同时实现。

4.功能测试

4.1 测试仪器与设备

电脑,EDA实训仪。

4.2 性能指标测试

S0、S1控制手动切换和自动切换,当S0、S1都往上拨或都往下拨都是自动切换,SO 上拨S1下拨是显示并可以校准时分秒的,反之是显示和校准年月日的。K8、K7、K6分别是校准年月日或时分秒的。K0是复位功能

5 实训心得体会

通过这次EDA实训,把课堂上学习的知识又巩固了一遍,也更加熟悉了对quartusII 软件的使用。这次我们小组选作数字日历这个题目,创新点在于闹钟模块,可以实现闹钟的功能。通过小组的分工合作,把大家的思路整合在一起,在一起分析程序的使用,互相学习,更加理解了程序的用法。EDA的功能很强大,去除了传统算法的复杂,是程序简单化,几个语句就可以实现想要的功能。在我们所做的日历中,分别用到计数,分频,选择器这些最基本的功能,然后加以改善和创新,实现了日历的功能。

6.参考文献:

江国强.EDA技术与应用(第三版).北京:电子工业出版社,2011

附录附录1:仿真波形图

1.分频器仿真波形图

2.时分秒仿真波形图

3.年月日仿真波形图

4.闹钟仿真波形图

附录2:程序清单:

程序1

module cnt60(clrn,clk,q,j,cont); //秒和分计时input clrn,clk,j;

output reg [7:0] q;

output reg cont;

always @(posedge clk^j or negedge clrn)

begin

if(~clrn) q=0;

else begin

if(q=='h59) q=0;

else q=q+1;

if(q[3:0]=='ha) begin q[3:0]=0;q[7:4]=q[7:4]+1;end

if(q=='h59) cont=1;

else cont=0;end

end

endmodule

程序2

module cnt24(clrn,clk,q,j,cont); //小时计时

input clrn,clk,j;

output reg [7:0] q;

output reg cont;

always @(posedge clk^j or negedge clrn)

begin

if(~clrn) q=0;

else begin

if(q=='h23) q=0;

else q=q+1;

if(q[3:0]=='ha) begin q[3:0]=0;q[7:4]=q[7:4]+1;end

if(q=='h23) cont=1;

else cont=0;end

end

endmodule

程序3

module nyr2009(clrn,clk,jn,jy,jr,qn,qy,qr); //年月日模块input clrn,clk,jn,jy,jr;

output [15:0] qn;

output [7:0] qy,qr;

reg [15:0] qn;

reg [7:0] qy,qr;

reg clkn,clky;

reg [7:0] date;

reg clkn1,clkn2,clkn3;

initial begin clkn1=1;clkn2=1;clkn3=1;end

initial begin qn='h2000;qy=1;qr=1;end

always @(posedge (clk^jr) or negedge clrn) // 日计时模块begin

if (~clrn) qr=1;

else begin

if (qr==date) qr=1;

else qr=qr+1;

if (qr[3:0]=='ha) begin

qr[3:0]=0; qr[7:4]=qr[7:4]+1;end

if (qr==date) c lky = 1;

else clky = 0;end

end

always @(posedge clky^jy or negedge clrn) //月计时模块begin

if (~clrn) qy=1;

else begin

if (qy=='h12) qy=1;

else qy=qy+1;

if (qy[3:0]=='ha) begin

qy[3:0]=0;qy[7:4]=qy[7:4]+1;end

if (qy=='h12) clkn = 1;

else clkn = 0;end

end

always

begin

case (qy)

'h01: date='h31;

'h02: b egin

if ((qn%4==0)&(qn%100 != 0)|(qn%400==0)) date='h29;

else date='h28; end

'h03: date='h31;

'h04: date='h30;

'h05: date='h31;

'h06: date='h30;

'h07: date='h31;

'h08: date='h31;

'h09: date='h30;

'h10: date='h31;

'h11: date='h30;

'h12: date='h31;

default :date='h30;

endcase

end

always @(posedge (clkn^jn) or negedge clrn ) //年计时模块begin

if (~clrn) qn[3:0]=0;

else begin if(qn[3:0]==9) qn[3:0]=0;

else qn[3:0]=qn[3:0]+1;

if (qn[3:0]==9) clkn1=0;

else clkn1=1;end

end

always @(posedge clkn1 or negedge clrn )

begin

if (~clrn) qn[7:4]=0;

else begin if(qn[7:4]==9) qn[7:4]=0;

else qn[7:4]=qn[7:4]+1;

if (qn[7:4]==9) clkn2=0;

else clkn2=1;end

end

always @(posedge clkn2 or negedge clrn )

begin

if (~clrn) qn[11:8]=0;

else begin if(qn[11:8]==9) qn[11:8]=0;

else qn[11:8]=qn[11:8]+1;

if (qn[11:8]==9) clkn3=0;

else clkn3=1;end

end

always @(posedge clkn3 or negedge clrn )

begin

if (~clrn) qn[15:12]=2;

else if(qn[15:12]==9) qn[15:12]=0;

else qn[15:12]=qn[15:12]+1;

end

endmodule

程序4

module mux_4(k,jm,jf,js,jr,jy,jn,j1,j2,j3); //校时模块input k,j1,j2,j3;

output reg jm,jf,js,jr,jy,jn;

always

begin

if (k==0) {jm,jf,js}={j1,j2,j3};

else {jr,jy,jn}={j1,j2,j3};

end

endmodule

程序5

module FENP(clk,newclk); //分频器模块input clk;

output reg newclk;

reg[24:0] cnter;

always @(posedge clk)

begin

if(cnter<20000000) cnter=cnter+1;

else cnter=0;

if (cnter<10000000) newclk=1;

else

newclk=0;

end

endmodule

程序6

module contr(clk,k1,k2,k); //控制器模块input clk,k1,k2;

output reg k;

reg [3:0] qc;

reg rc;

always @(posedge clk)

begin qc=qc+1;

if (qc<8) rc=0;

else rc=1;

case ({k1,k2})

0:k=rc; //八秒显示年月日八秒显示时分秒的自由转换

1:k=0; //显示并且校准时分秒

2:k=1; //显示并且校准年月日

3:k=rc;

endcase

end

endmodule

程序7

module naozhong(qs,qf,led,zt); //闹钟模块

input zt;

input[7:0] qs,qf;

output led;

reg led;

always

begin

if (qs=='h06&&qf=='h01) //6:01闹钟开始闪烁

led=1;

else

led=0;

if(zt==1) led=0; // 在任意时刻都可以关掉闹钟

end

endmodule

程序8

module mux_16(k,qm,qf,qs,qr,qy,qn,q); //数码管显示模块input k;

input[7:0] qm,qf,qs,qr,qy; input[15:0] qn;

output reg [31:0] q;

always

begin

if (k==0) begin

q[31:24]=0;

q[23:0]={qs,qf,qm};end

else q={qn,qy,qr};

end

endmodule

数电EDA课程设计电子日历

燕山大学 EDA课程设计报告书 电子日历 姓名:王斌 班级:05级电子信息工程3班 学号:050104020064 日期:2007/11/05——2007/11/14 一、设计题目:电子日历 二、设计要求:

1.能显示年,月,日,星期; 2.例如: 01.11.08. 6,星期日显示8; 3.年月日,星期可调; 4.不考虑闰年 三.设计思路: 为实现本电路得功能,采取模块电路设计方法,本电路系统主要包括以下三三大模块:. 1: 电子日历记数模块 2: 中间控制模块 3: 译码器显示模块 由于不同的月份,决定了不同的天数,因此须设计反馈电路,协调月日的关系,通过不同的月选择相应的天数:比如二月二十八天,十二月三十一天,……..这是利用真值表列出逻辑表达式,从而画出电路图如图1: 仿真图如下: 四、设计过程: 一、电子日历记数模块 1、实现星期计时: 为实现星期计时模块,计到星期日时,显示“8”,采用一般的计数器难以实现,

即可通过四个jk触发器设计而成。其电路图如下: 仿真图如下: 2、实现天数计时: 由于不同的月份,决定了不同的天数,因此须设计三个独立完成计数的计数器电路,如日计数器周期性的(28,30或31)向月计数器进位调月日的关系,即通过三个选择端(c28,c30,c31),同一时刻只能有一个有效,由其中的任一个有效端来控制相应日计数器。其电路原理图

3、实现月份及年份计时: 由用两个74160采用整体同步置数分别构成100进制和12进制计数器,分别完成年,月的计数功能。然后将两者依次异步连接,每隔12个月,月计数器向年计数器进一位,从而实现年月的周期性计数。 月份计数器电路原理图如下: 年份计数器电路图如下:

集成电路课程设计报告

课程设计 班级: 姓名: 学号: 成绩: 电子与信息工程学院 电子科学系

CMOS二输入与非门的设计 一、概要 随着微电子技术的快速发展,人们生活水平不断提高,使得科学技术已融入到社会生活中每一个方面。而对于现代信息产业和信息社会的基础来讲,集成电路是改造和提升传统产业的核心技术。随着全球信息化、网络化和知识经济浪潮的到来,集成电路产业的地位越来越重要,它已成为事关国民经济、国防建设、人民生活和信息安全的基础性、战略性产业。 集成电路有两种。一种是模拟集成电路。另一种是数字集成电路。本论文讲的是数字集成电路版图设计的基本知识。然而在数字集成电路中CMOS与非门的制作是非常重要的。 二、CMOS二输入与非门的设计准备工作 1.CMOS二输入与非门的基本构成电路 使用S-Edit绘制的CMOS与非门电路如图1。 图1 基本的CMOS二输入与非门电路

2.计算相关参数 所谓与非门的等效反相器设计,实际上就是根据晶体管的串并联关系,再根据等效反相器中的相应晶体管的尺寸,直接获得与非门中各晶体管的尺寸的设计方法。具体方法是:将与非门中的VT3和VT4的串联结构等效为反相器中的NMOS 晶体管,将并联的VT 1、VT 2等效PMOS 的宽长比(W/L)n 和(W/L)p 以后,考虑到VT3和VT4是串联结构,为保持下降时间不变,VT 3和VT 4的等线电阻必须减小为一半,即他们的宽长比必须为反相器中的NMOS 的宽长比增加一倍,由此得到(W/L)VT3,VT4=2(W/L)N 。 因为考虑到二输入与非门的输入端IN A 和IN B 只要有一个为低电平,与非门输出就为高电平的实际情况,为保证在这种情况下仍能获得所需的上升时间,要求VT 1和VT 2的宽长比与反相其中的PMOS 相同,即(W/L)VT1,VT2=(W/L)P 。至此,根据得到的等效反向器的晶体管尺寸,就可以直接获得与非门中各晶体管的尺寸。 如下图所示为t PHL 和t PLH ,分别为从高到低和从低到高的传输延时,通过反相器的输入和输出电压波形如图所示。给其一个阶跃输入,并在电压值50%这一点测量传输延迟时间,为了使延迟时间的计算简单,假设反相器可以等效成一个有效的导通电阻R eff ,所驱动的负载电容是C L 。 图2 反相器尺寸确定中的简单时序模型 对于上升和下降的情况,50%的电都发生在: L eff C R 69.0=τ 这两个Reff 的值分别定义成上拉和下拉情况的平均导通电阻。如果测量t PHL 和t PLH ,可以提取相等的导通电阻。 由于不知道确定的t PHL 和t PLH ,所以与非门中的NMOS 宽长比取L-Edit 软件中设计规则文件MOSIS/ORBIT 2.0U SCNA Design Rules 的最小宽长比及最小长度值。 3.分析电路性质 根据数字电路知识可得二输入与非门输出AB F =。使用W-Edit 对电路进行仿真后得到的结果如图4和图5所示。

数字电子课设:万年历的设计

编号 北京工商大学 数字电子技术基础 《万年历的设计》 姓名 学院 班级 学号 设计时间

一、设计目的 1、熟悉集成电路的引脚安排 2、掌握芯片的逻辑功能及使用方法 3、了解数字电子钟及万年历的组成及工作原理 4、熟悉数字电子钟及万年历的设计与制作 5、熟悉multisim电子电路设计及仿真软件的应用 二、设计思路 1、设计60进制秒计数器芯片 2、设计24进制时计数器芯片 3、设计31进制天计数器芯片 4、设计12机制月计数器芯片 5、设计7进制周计数器芯片 6、设计闰年平年不同月份不同进制逻辑 三、设计过程 1、Tr_min and s 60进制计数器芯片: “秒”、“分”电路都六十进制,它由一级十进制计数器和一级六进制计数器组成,六十进制计数器的设计图如下,采用四个片74ls161N串联而成,低位芯片的抚慰信号作为下级输入信号,串接起来构成“秒”、“分”计数器芯片。

2、Tr_hour24进制计数器芯片: 24进制计数器芯片的设计图如下,时计数电路由两片74ls161串联组成。当时个位计数为4,十位计数为2时,两片74ls160N复零,从而构成24进制计数。 3、Tr_day天计数器芯片: 采用两片74ls160N和一片74ls151N串联而成,天计数器的进制受到月计数器反馈M、N影响和年计数器反馈R4的影响,在M、N不收到反馈信息的时候,天计数器为28进制,电路设计图如下:

4、Tr_week周计数器芯片: 周计数器由一块74ls161N构成一个七进制计数器,原理与秒、分、时计数器相似,电路设计图如下 5、Tr_month月计数器芯片: 采用两片74160N和两片74HC151D_2V串联而成,月计数器的反馈信息M、N影响

基于单片机的电子日历时钟设计

#include #define uchar unsigned char #define uint unsigned int //----端口定义--- sbit ACC_7=ACC^7; sbit RST1=P2^5; sbit IO=P2^6; sbit SCLK=P2^7; sbit k1=P3^2; sbit k2=P3^3; sbit k3=P2^2; sbit k4=P2^3; //uchar wei[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f}; // 数码的位选,左到右 uchar tab_1302[7]={45,50,11,19,1,1,15}; uchar tab_time[8]={0,0,10,0,0,10,0,0}; //时间 uchar tab_day[8]={0,0,10,0,0,10,0,0,}; //年月日 uchar tab_num[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xbf}; //0 1 2 3 4 5 6 7 8 9 - {"0123456789-"} ////////////=============函数声明============//////////////// void display_time(); void delayms(uint); void display_day(); void ds1302(); //获取DS1302的时间 void ds1302_init(); //DS1302的初始化 void write1302(uchar,uchar); //指定地址向DS1302写数据 uchar read1302(uchar); //指定地址向DS1302读数据 void ds1302(); void int0_init(); /////////=======中断初始化=======/////////// void int0_init() { EX0=1;

电子日历时钟设计

目录 1题目设计的要求 (1) 2 系统硬件设计 (1) 2.1设计原理 (1) 2.2器件的功能与作用 (1) 2.2.1 MCS51单片机AT89C51 (1) 2.2.2 串行时钟日历片DS1302 (2) 2.2.3 液晶显示LCD1602 (3) 3 系统软件设计 (4) 3.1程序流程 (4) 3.2程序代码 (5) 4 系统仿真调试 (12) 4.1仿真原理图设计 (12) 4.2仿真运行过程 (12) 4.3仿真运行结果 (13) 5 总结 (13) 6 参考文献 (13)

1题目设计的要求 通过串行日历时钟芯片DS1302生成当前日期和是时间,通过IO口传输到AT89c52芯片中,然后再将AT89c52接收到的数据输出到LCD上。要求LCD上显示的日期和时间与当前系统时间保持一致。 2 系统硬件设计 2.1 设计原理 图3.1 电路原理图 2.2 器件的功能与作用 2.2.1 MCS51单片机AT89C51 XX AT89C51是一种带4K字节FLASH存储器(FPEROM—Flash Programmable and Erasable Read Only Memory)的低电压、高性能CMOS 8位微处理器,俗称单片机。AT89C2051是一种带2K字节闪存可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除1000次。该器件

采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。 由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器。 AT89C51单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。 2.2.2 串行时钟日历片DS1302 系统的组成与工作原理: 系统由单片机AT89C52,串行日历时钟片DS1302,液晶显示模组LCD1602。 DS1302的CLOCK与AT89C52的P1.6相连,RST与P1.5相连,IO与P1.7相连。 LCD1602的D0~D7与AT89C51的P0.0~P.7相连,并接上拉电阻,RS与P2.0相连,RW与P2.1相连,E与P2.2相连。 DS1302是DALLAS公司拖出的涓流充电时钟芯片,内含有一个实时时钟/日历和31个季节静态RAM,通过简单地串行接口与单片机进行通信,实时时钟/日历电路提供秒、分、时、日、日期、月、年的信息,每月的天数和闰年的天数可自动调整,时钟操作可通过AM/PM指示决定采用24小时或12小时格式,DS1302与单片机之间能简单地采用同步串行方式进行通信,仅需用到RES复位、I/O 数据线、SCLK串行时钟3个口线。对时钟、RAM的读/写,可以改用单字节方式或多达31个字节的字符组方式。DS1302工作时功耗很低,保持数据和时钟信息是功率小于1mW。DS1302广泛应用于电话传真、便携式仪器及电池供电的仪器仪表等产品领域中。 RT-1602 字符型液晶模块是以两行16个子的5*7点阵吐信来显示字符的液晶显示器。 DS1302有8个引脚: X1、X2:32.768kHz晶振介入引脚。 GND:地。 RST:复位引脚,低电平有效。 I/O:数据输入/输出引脚,具有三态功能。 SCLK:串行时钟输入引脚。 Vcc1:工作电源引脚。 Vcc2:备用电源引脚。 DS1302有一个控制寄存器,12个日历,时钟寄存器和31个RAM。 控制寄存器 控制寄存器用于存放DS1302的控制命令字,DS1302的RST引脚回到高电平后写入的第一个字就为控制命令。它用于对DS1302读写过程进行控制,它的格式如下:

《数字电路课程设计》

实验三旋转灯光电路与追逐闪光灯电路 一、实验目的 1.熟悉集成电路CD4029、CD4017、74LS138的逻辑功能。 2.学会用74LS04、CD4029、74LS138组装旋转灯光电路。 3. 学会用CD4069、CD4017组装追逐闪光灯电路。 二、实验电路与原理 1.旋转灯光电路: 图3-1 旋转灯光电路 将16只发光二极管排成一个圆形图案,按照顺序每次点亮一只发光二极管,形成旋转灯光。实现旋转灯光的电路如图3-1所示,图中IC1、R1、C1组成时钟脉冲发生器。IC2为16进制计数器,输出为4位二进制数,在每一个时钟脉冲作用下输出的二进制数加“1”。计数器计满后自动回“0”,重新开始计数,如此不断重复。 输入数据的低三位同时接到两个译码器的数据输入端,但是否能有译码器输出取决于使能端的状态。输入数据的第四位“D”接到IC3的低有效使能端G2和IC4的高有效使能端G1,当4位二进制数的高位D为“0”时,IC4的G1为“0”,IC4的使能端无效,IC4无译码输出,而IC3的G2为“0”,IC3使能端全部有效,低3位的CBA数据由IC3译码,输出D=0时的8个输出,即低8位输出(Y0~Y7)。当D为“1”时IC3的使能端处于无效状态,IC3无译码输出;IC4的使能端有效,低3位CBA数据由IC4译码,输出D=1时的8个输出,即高8位输出(Y8~Y15)。 由于输入二进制数不断加“1”,被点亮的发光二极管也不断地改变位置,形成灯光地“移动”。改变振荡器的振荡频率,就能改变灯光的“移动速度”。

注意:74LS138驱动灌电流的能力为8mA,只能直接驱动工作电流为5mA的超高亮发光二极管。若需驱动其他发光二极管或其他显示器件则需要增加驱动电路。 2. 追逐闪光灯电路 图 3-2 追 逐 闪 光 灯 电 路 ( 1) . CD 401 7 的 管 脚功能 CD4017集成电路是十进制计数/时序译码器,又称十进制计数/脉冲分频器。它是4000系列CMOS数字集成电路中应用最广泛的电路之一,其结构简单,造价低廉,性能稳定可靠,工艺成熟,使用方便。它与时基集成电路555一样,深受广大电子科技工作者和电子爱好者的喜爱。目前世界各大通用数字集成电路厂家都生产40171C,在国外的产品典型型号为CD4017,在我国,早期产品的型号为C217、C187、CC4017等。 (2)CD4017C管脚功能 CMOSCD40171C采用标准的双列直插式16脚塑封,它的引脚排列如图3-3(a)所示。 CC4017是国标型号,它与国外同类产品CD4017在逻辑功能、引出端和电参数等方面完全相同,可以直接互换。本书均以CD40171C为例进行介绍,其引脚功能如下: ①脚(Y5),第5输出端;②脚(Y1),第1输出端,⑧脚(Yo),第0输出端,电路清零 时,该端为高电平,④脚(Y2),第2输出端;⑤脚(Y6),第6输出端;⑥脚(Y7),第7输出端;⑦脚(Y3),第3输出端;⑧脚(Vss),电源负端;⑨脚(Y8),第8输出端,⑩脚(Y4),第4输出端;11脚(Y9),第9输出端,12脚(Qco),级联进位输出端,每输入10个时钟脉冲,就可得一个进位输出脉冲,因此进位输出信号可作为下一级计数器的时钟信号。13脚(EN),时钟输入端,脉冲下降沿有效;14脚(CP),时钟输入

电子日历单片机课程设计报告

湖南科技大学 信息与电气工程学院《单片机原理与应用课程设计报告》 题目:电子日历 专业:电子信息工程 班级: 姓名: 学号: 指导教师: 2016年 07月13日

单片机原理与应用课程设计评阅书

信息与电气工程学院 课程设计任务书 2015-2016学年第2学期 专业:电子信息工程学号:姓名: 课程设计名称: 设计题目: 完成期限:自 2016 年 7 月 4 日至 2015 年 7 月 15 日共 2 周 设计依据、要求及主要内容(可另加附页): 设计依据:STC15F2K60S2单片机的定时/计数器,74HC59芯片的串并输出,数码管显示。 实验要求: (1)、利用STC15F2K60S2单片机作为主控器组成一个电子日历和电子钟。 (2)、利用LED分别显示当前时间和日历。 (3)、利用尽可能少的开关实现:校正日历和时间 (4)、定制闹钟(时、分、表)。 主要内容: 本系统是用STC15F2K60S2单片机的T0定时器的16位自动重装来产生1ms节拍,程序运行于这个节拍下,通过计数1000次从而自动定时于1s,以实现时钟的仿真。另外通过STC15F2K60S2单片机的IO方式控制74HC595驱动8位数码管。数码管可以实时显示秒,分,小时,日期,月份和年等信息,并且实现闹铃功能时,数码管闪烁显示。矩阵式键盘采用编程扫描方式,可以实现秒,分,小时,日期,月份和年信息的校准。同时通过STC15F2K60S2单片机的外部中断INT0实现年月日与时分秒显示的切换。 指导教师(签字): 批准日期:年月日

本设计是基于51系列的单片机进行的实时日历和时钟显示设计,可以显示年月日时分秒及周信息,具有可调整日期和时间功能。在设计的同时对单片机的理论基础和外围扩展知识进行了比较全面准备。实时日历和时钟显示的设计过程在硬件与软件方面进行同步设计。硬件部分主要由STC15F2K60S2单片机,LED显示电路,以及调时按键电路等组成,系统通过74HC595驱动8位数码管现实数据,所以具有人性化的操作和直观的显示效果。软件方面主要包括时钟程序、键盘程序,显示程序等。本系统以单片机的汇编语言进行软件设计,为了便于扩展和更改,软件的设计 采用模块化结构,使程序设计的逻辑关系更加简洁明了,以便更简单地实现调整时间及日期显示功能。所有程序编写完成后,在wave软件中进行调试,确定没有问题后,在Protel99se 软件中嵌入单片机内进行仿真。 关键词:STC15F2K60S2;Protel99se;74HC595

数字电子日历

数字电子日历 学生:王晨 指导教师:廖晓伟. 淮南师范学院电气信息工程系 摘要:随着科技的飞速发展,单片机的应用正在不断地走向深入,同时带动传统控制检测日新月益更新。本次设计的题目是数字电子日历,电子日历具有性能稳定、精确度高、成本低、易于产品化,以及方便、实用等特点。适用于家庭、公司、机关等众多场所。为人们的日常生活、出行安排提供了方便,成为人们日常生活中不可缺少的一部分。本设计主要设计了一个基于AT89C51单片机的电子日历。能在数码管上进行年、月、日、星期、时、分、秒等自动显示。应用Proteus软件实现了单片机电子日历系统的设计与仿真。该方法仿真效果真实、准确,节省了硬件资源。 关键词:日历;单片机;仿真 Digital Electronic Calendar Student:Wang Chen Instructor:Liao Xiaowei Huainan Normal University Department of Electrical Engineering and Information Abstract:With the rapid development of science and technology, SCM applications are continually deepening, the traditional control test drive at the same time benefit to upgrade the new moon. The design of the subject is a digital electronic calendar, electronic calendar, with stable performance, high accuracy, low cost, easy-to-commercialization, as well as convenient and practical features. For families, companies, institutions, and many other places. For people's daily life, travel arrangement provides a convenient, daily life become an indispensable part. This design mainly designed based on AT89C51 microcontroller electronic calendar. On

数电课程设计数字日历电路

题目:数字日历电路 班级: 姓名: 数字日历电路

一、设计任务及要求: 1、用5个数码管分别显示月、日、星期; 2、月、日的计数器显示均从1开始,每月按30天算; 3、对星期的计数显示从1到6再到日(日用8代替)。 二、方案设计与论证: 日历是一种日常使用的出版物,用于记载日期等相关信息。每页显示一日信息的叫日历,每页显示一个月信息的叫月历,每页显示全年信息的叫年历。有多种形式,如挂历、座台历、年历卡等,如今又有电子日历。逢年过节,往往会送亲友日历已显亲情友情可日历在现代社会中是很重要的。而纸制日历对森林保护不利,因此设计电子日历意义重大。在设计日历倒计时器时,采用了模块化的思想,将日历分为三个部分:日期、月份及年份,使得设计简单、易懂。本设计能进行月、日、星期的的计数,在社会生活中具有实际的应用价值。下面就是我们组设计电子日历的主要思路: 本数字日历电路计数显示电路和控制电路组成,计数显示电路主要由同步十进制计数器74LS160构成日期、月份和星期计数器,然后通过译码器数码管显示出来控制调节电路则用了组合控制逻辑电路去控制日期计数器及月计数器的置数端和使能端,从而实现日期和月份的调节功能。星期显示在脉冲作用下,从星期一到星期日循环计数,从而形成星期随着日期循环显示。综上,该方案是具体可行的。 三、设计原理及框图: 本数字日历电路主要由五个加计数器160、五个48译码器、显示器、控制开关构成。它们的工作原理是:用两片十进制计数器74LS160同步预置数(高位置入0000,低位置入0001)构成日期计数器,使其每次从一开始计数,从日期计数器的输出三十这个信号使其同时给月计数器的CP端信号使其计数,最后给日计数器的低位以信号源使其计数,同时在脉冲的作用下,使星期循环计数,随着日期的变化而变化。74LS48译码器将信号传给显示器显示数据。

数电课程设计题目汇总..

数电课程设计题目选 一、设计并制作一数字式温度计 〖基本要求〗采用电桥法,利用PT~100热电阻对0~200℃测温范围进行测量并送LED 数码管显示,要求测量分辨率为0.1℃,数据测量间隔时间为5秒。 〖提高要求〗1)针对不同的铂热电阻讨论不同的温度信号测量办法 2)利用电路对测温电路进行非线性校正,提高测温精度(电路非线性校正和EPROM 查表法非线性校正两种方法) 3)讨论误差的形成因素和减少误差的措施 4)进行简单的温度开关控制 〖参考原理框图〗系统参考原理框图如下: 〖主要参考元器件〗 MCl4433(1),LM324(1),七段数码管(4),CD4511(1),MC1413(1),铂热电阻使用普通 精密电位器代替。 二、十二小时电子钟 〖基本要求〗利用基本数字电路制作小时电子钟,要求显示时分秒;并能实现校时和校分的功能。 〖提高要求〗1)针对影响电子钟走时精度的因素提出改进方案 2)增加日期显示 3)实现倒计时功能 4)整点报时(非语音报时) 5)定时功能 〖参考原理框图〗: 〖主要参考元器件〗:CD4060,74LS74,74LS161,74LS248 电桥电路 供电电路 时钟电路 放大电路 A/D 转换 显示电路 时校 分校 秒校 24进制时计数器 单次或连续的脉冲 60进制分计数器 分频器 60进制秒计数器 译码电路 晶体振荡器 显示电路 译码电路 显示电路 显示电路 译码电路

三、电平感觉检测仪 〖基本要求〗:采用光电式摇晃传感器,其检测范围为±90℃,每摇晃一度传感器就输出一个脉冲信号给计数单元,在给定时间内测量到的脉冲数目就能表明该人的电平感觉,测试时采用头戴式传感器、闭上双目,单脚立地:保持静止,开始测试。定时时间为1分钟 〖提高要求〗 〖参考原理、框图〗: 〖主要参考元器件〗CD4060,555,74LS74 四、便携式快速心律计 基本要求〗利用数字电路制作一便携式快速心律计,用于在较短时间内测量脉搏跳动速率:并使用LED 显示。 〖提高要求〗1)提高测量精度的方法 2)设计能比较准确测量1S 内心跳的电路 〖参考原理框图〗 〖主要参考元器件〗CD4060,4528,4518;4511,14526 五、数字式定时开关 〖基本要求〗设计并制作一数字式定时开关,此开关采用BCD 拨盘预置开关时间,其最大定时时间为9秒,计数时采用倒计时的方式并通过一位LED 数码管显示。此开关预置时间以后通过另一按钮控 制并进行倒计时,当时间显示为0时,开关发出开关信号,输出端呈现高电平,开关处于开态,再按按钮时,倒计时又开始。计时时间到驱动扬声器报警。 〖提高要求〗 l)输出部分加远距离(100m)继电器进行控制 2)延长定时时间 3)探讨提高定时精度的方法 〖参考原理框图〗 外部操作开关 〖主要参考元器〗:CC4511,CC14522,CD4060 传感器 基准时间产生电路 倍频器 放大与整形 控制电路 计数译码 显 示电 路 秒脉冲发生器 计时器 译码显示 控制电路 报警电路

课程设计万年历的设计52503328

课程设计万年历的设计52503328

兰州理工大学 计算机与通信学院 2014年秋季学期 面向对象课程设计 题目:万年历的设计

序言 《面向对象的程序设计》是计算机专业一门重要的专业基础课。此次课程设计的目的是以面向对象程序设计语言为基础,通过完成一些具有一定难度的课程设计题目的编写、调试、运行工作,进一步掌握面向过程和面向对象程序设计的基本方法和编程技巧,巩固所学理论知识,使理论与实际相结合。从而提高自我分析问题、解决问题的能力。通过课程设计,学生在下述各方面的能力应该得到锻炼: (1)进一步巩固、加深学生所学专业课程《C++语言程序设计》的基本理论知识,理论联系实际,进一步培养学生综合分析问题、解决问题的能力。 (2)全面考核学生所掌握的基本理论知识及其实际业务能力,从而达到提高学生素质的最终目的。 (3)利用所学知识,开发小型应用系统,掌握运用C++语言编写调试应用系统程序,训练独立开发应用系统,进行数据处理的综合能力。 (4)对于给定的设计题目,如何进行分析,理清思路,并给出相应的数学模型。 (5)掌握面向对象的程序设计方法。 (6)进一步掌握在集成环境下如何调试程序、修改程序和程序的测试。

目录 摘要 (2) 第一章系统总体设计 (3) 一.理论说明 (3) 二.流程图说明 (4) 1.总体流程说明图 (4) 2.部分流程说明图 (4) 第二章系统详细设计 (7) 一.主要组成部分 (7) 二.源程序 (9) 第三章系统测试 (34) 四软件使用说明书 (40) 一.系统运行环境 (40) 二.系统操作提示 (40) 总结 (41) 参考文献 (42) 致谢 (42)

基于51单片机电子万年历设计

基于51单片机电子万年历设计 专业:机电设备维修与管理姓名:杜洪浦指导老师: 摘要电子万年历是一种非常广泛日常计时工具,对现代社会越来越流行。它可以对年、月、日、周日、时、分和秒进行计时,还具有闰年补偿等多种功能,而且DS1302的使用寿命长,误差小。对于数字电子万年历采用直观的数字显示,可以同时显示年、月、日、周日、时、分、秒等信息,还具有时间校准等功能。该电路采用AT89S52单片机作为核心,功耗小,能在3V的低压工作,电压可选用3到5V电压供电。 万年历的设计过程在硬件与软件方面进行同步设计。硬件部分主要由AT89C52单片机,液晶显示电路,复位电路,时钟电路,稳压电路电路以及串口下载电路等组成。在单片机的选择上使用了AT89C52单片机,该单片机适合于许多较为复杂控制应用场合。显示器使用液晶LCD1602。软件方面主要包括日历程序、液晶驱动程序,显示程序等。程序采用汇编语言编写。所有程序编写完成后,在Keil C51软件中进行调试,确定没有问题后,在Proteus软件中嵌入单片机内进行仿真。 关键词时钟电钟,DS1302,液晶LCD1602,单片机 目录 1设计要求与方案论证 (2) 1.1 设计要求 (2) 1.2 系统基本方案选择和论证 (2) 1.2.1单片机芯片的选择方案和论证 (2) 1.2.2 显示模块选择方案和论证 (3) 1.2.3时钟芯片的选择方案和论证: (3) 1.3 电路设计最终方案决定 (3) 2系统的硬件设计与实现 (3) 2.1 电路设计框图 (4) 2.2 系统硬件概述 (4) 2.3 主要单元电路的设计 (4) 2.3.1单片机主控制模块的设计 (4)

数字电路课程设计 电子日历

数字电路综合设计报告 电子日历 一、 设计要求 1.能显示年、月、日,星期; 2.年月日,星期可调; 3.不考虑闰年。 二、 题目分析 题目可概括如下:通过一个时钟信号计时,电路需要按照历法规则准确计数,并将年月日星期显示出来,此外还要求可以人工调整日期。为了实现功能,主要需搭设出一个可靠的时钟信号发生器,用于计数的计数模块,用于显示计数结果的模块。 三、 设计过程 A. 设计思路 此设计主要分为三个模块:时钟信号发生模块、时分秒计数模块、年月日计数模块。其中,时钟信号发生模块通过晶振发生一定频率的时钟信号,再通过分频,将晶振发出的信号分频成1hz 的秒脉冲信号,最后将秒脉冲信号送入。时分秒计数模块。时分秒计数模块在秒脉冲信号的控制下按规则计数,在满24小时时进位,并将进位信号送入年月日计数模块。年月日模块在时分秒模块进位信号的控制下计数,每收到一个进位信号就加一,并把每一时刻的计数结果通过数码管显示出来。各模块的关系如图一所示: B. 各 框 架 设 计 a) 时钟信号发生模块 此模块采用晶振电路产生时钟信号,再通过390、161以及D 触发器分频最后得到频率为1Hz 的秒脉冲输出信号。 基本框架如下:

仿真电路如下: b) 时分秒计数模块 在此模块中,利用390、 161构成两个六十进制和一个二十四进制计数器,分别对应秒、分、时。在时钟信号发生模块的输出信号控制下进行逐级计数, 最后将二十四进制计数器的进位信号作为输出信号。 基本框架如下:

c)年月日计数模块 此模块中利用一块161、160,分别构成七进制,二十八进制、三十进制、三十一进制、十二进制、100进制计数器。为了实现大小月功能,使用了151数据选择器,将不同触发条件作为输入数据,将12进制的触发信号作为地址输入,因此可根据“月” 的状态选择“日”的清零触发条件。为了实现年月日星期设置功能,采用四个单刀双掷开关,一边连时钟模块,一边连接按键式单脉冲。当需要设置时,将开关拨去按键式单脉冲那端,利用脉冲手动调节。 基本框架如下:

集成电路课程设计(CMOS二输入及门)

) 课程设计任务书 学生姓名:王伟专业班级:电子1001班 指导教师:刘金根工作单位:信息工程学院题目: 基于CMOS的二输入与门电路 初始条件: 计算机、Cadence软件、L-Edit软件 要求完成的主要任务:(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求) & 1、课程设计工作量:2周 2、技术要求: (1)学习Cadence IC软件和L-Edit软件。 (2)设计一个基于CMOS的二输入的与门电路。 (3)利用Cadence和L-Edit软件对该电路进行系统设计、电路设计和版图设计,并进行相应的设计、模拟和仿真工作。 3、查阅至少5篇参考文献。按《武汉理工大学课程设计工作规范》要求撰写设计报告书。全文用A4纸打印,图纸应符合绘图规范。 时间安排: 布置课程设计任务、选题;讲解课程设计具体实施计划与课程设计报告格式的要求;课程设计答疑事项。 | 学习Cadence IC和L-Edit软件,查阅相关资料,复习所设计内容的基本理论知识。 对二输入与门电路进行设计仿真工作,完成课设报告的撰写。 提交课程设计报告,进行答辩。 指导教师签名:年月日系主任(或责任教师)签名:年月日

目录 # 摘要 (2) 绪论…....………………………………………….………………….. ..3 一、设计要求 (4) 二、设计原理 (4) 三、设计思路 (4) 3.1、非门电路 (4) 3.2、二输入与非门电路 (6) 、二输入与门电路 (8) } 四、二输入与门电路设计 (9) 4.1、原理图设计 (9) 4.2、仿真分析 (10) 4.3、生成网络表 (13) 五、版图设计........................ (20) 、PMOS管版图设计 (20) 、NMOS管版图设计 (22) 、与门版图设计 (23)

电子日历记事本--Java课程设计

《面向对象程序设计》课程设计报告 题目:电子日历记事本的设计 院(系):信息科学与工程学院 专业班级:计算机科学与技术1201班 学生姓名:程伟 学号: 20121183011 指导教师:吴奕 20 14 年 12 月 29 日至20 15 年 1 月 9 日 华中科技大学武昌分校制 面向对象程序设计课程设计任务书

目录 1需求与总体设计 1 1.1需求分析 1 1.2总体设计思路 1 1.2.1功能图 1 1.2.2类图 2 2详细设计 (3) 2.1 CalendarPad类说明 3 2.2 Year类说明 3 2.3 Month 类模块 4 2.4 NotePad类说明 4 3编码实现 6 3.1 CalendarPad模块 6

3.2 Year模块 11 3.3 Month 模块 14 3.4 NotePad模块 16 4系统运行与测试 23 4.1程序主界面 23 4.2日志查看——无日志 23 4.3建立日志 24 4.4日志查看——有日志 24 4.5删除日志 26 总结 27 1需求与总体设计 1.1需求分析 根据题目要求,将日历与记事本功能相结合,实现对某日期的事件进行记录的功能,设计出简洁方便美观的GUI界面。 将本程序主界面可以分为四个部分:日历日期信息展示、年份、月份、记事本内容、记事本下方的时钟,用四个类来实现其“日历”和“记事本”这两大功能。通过主类CalendarPad创建动日历记事本软件的主界面,且该类中含有main

方法,程序从该类开始执行。再用余下的year、mouth、NotePad类来显示并改变日期和实现记事本的功能。 1.2总体设计思路 1. 可以编辑日历的日期 2. 可以判断当前日期是否存在日志记录 3. 对有日志记录的日期,可以对该日期的日志记录进行修改和删除 4. 对没有日志记录的日期,可以创建并保存新建的日志记录 5. 对保存的日志加密,查看时得输入密码 1.2.1功能图

Java日历记事本课程设计报告

Java 日历记事本课程设计报告 在设计日历记事本时,需要编写6个JAVA源文件:、、、、和 效果图如下 . CalendarWindow 类 import .*; import .*; import .*; import .*; public class CalendarWindow extends JFrame implements ActionListener,MouseListener,FocusListener{ int year,month,day; CalendarMessage calendarMessage; CalendarPad calendarPad; NotePad notePad; JTextField showYear,showMonth; JTextField[] showDay; CalendarImage calendarImage;

String picturename; Clock clock; JButton nextYear,previousYear,nextMonth,previousMonth; JButton saveDailyRecord,deleteDailyRecord,readDailyRecord; JButton getPicture; File dir; Color backColor= ; public CalendarWindow(){ dir=new File("./dailyRecord"); (); showDay=new JTextField[42]; for(int i=0;i<;i++){ showDay[i]=new JTextField(); showDay[i].setBackground(backColor); showDay[i].setLayout(new GridLayout(3,3)); showDay[i].addMouseListener(this); showDay[i].addFocusListener(this); } calendarMessage=new CalendarMessage(); calendarPad=new CalendarPad(); notePad=new NotePad(); Calendar calendar=(); (new Date()); year=; month=+1; day=; (year); (month); (day);

CMOS模拟集成电路课程设计

电子科学与技术系 课程设计 中文题目:CMOS二输入与非门的设计 英文题目: The design of CMOS two input NAND gate 姓名:张德龙 学号: 1207010128 专业名称:电子科学与技术 指导教师:宋明歆 2015年7月4日

CMOS二输入与非门的设计 张德龙哈尔滨理工大学电子科学与技术系 [内容摘要]随着微电子技术的快速发展,人们生活水平不断提高,使得科学技术已融入到社会生活中每一个方面。而对于现代信息产业和信息社会的基础来讲,集成电路是改造和提升传统产业的核心技术。随着全球信息化、网络化和知识经济浪潮的到来,集成电路产业的地位越来越重要,它已成为事关国民经济、国防建设、人民生活和信息安全的基础性、战略性产业。 集成电路有两种。一种是模拟集成电路。另一种是数字集成电路。本次课程设计将要运用S-Edit、L-edit、以及T-spice等工具设计出CMOS二输入与非门电路并生成spice文件再画出电路版图。 [关键词]CMOS二输入与非门电路设计仿真

目录 1.概述 (1) 2.CMOS二输入与非门的设计准备工作 (1) 2-1 .CMOS二输入与非门的基本构成电路 (1) 2-2.计算相关参数 (2) 2-3.电路spice文件 (3) 2-4.分析电路性质 (3) 3、使用L-Edit绘制基本CMOS二输入与非门版图 (4) 3-1.CMOS二输入与非门设计的规则与布局布线 (4) 3-2.CMOS二输入与非门的版图绘制与实现 (5) 4、总结 (6) 5、参考文献 (6)

1.概述 本次课程设计将使用S-Edit画出CMOS二输入与非门电路的电路图,并用T-spice生成电路文件,然后经过一系列添加操作进行仿真模拟,计算相关参数、分析电路性质,在W-edit中使电路仿真图像,最后将电路图绘制电路版图进行对比并且做出总结。 2.CMOS二输入与非门的设计准备工作 2-1 .CMOS二输入与非门的基本构成电路 使用S-Edit绘制的CMOS与非门电路如图1。 图1 基本的CMOS二输入与非门电路 1

数字日历电路设计数字电子技术课程设计报告

数字电子技术课程设计报告设计题目:数字日历

班级:计算机1202 数字电子技术课程设计报告 课程设计任务书

I 数字电子技术课程设计报告 要摘 每页显示一日信用于记载日期等相关信息。日历是一种日常使用的出版物,有多每页显示全年信息的叫年历。息的叫日历,每页显示一个月信息的叫月历,种形式,如挂历、座台历、年历卡等,如今又有电子日历。逢年过节,往往会送亲友日历已显亲情友情可日历在现代社会中是很重要在设计日历倒计而纸制日历对森林保护不利,因此设计电子日历意义重大。的。时器时,采用了模块化的思想,使得设计简单、易懂。本设计能进行月、日、星期的的计数,在社会生活中具有实际的应用价值。 关键字:日历

II 数字电子技术课程设计报告 目录 课程设计任务书............................................................................................................. I 摘要........................................................................................................................... II 1.概述 (1) 2.课程设计任务及要求 (1) 2.1 设计任务 (1) 2.2 设计要求 (1) 3.理论设计 (1) 3.1方案论证 (2) 3.2 系统设计 (2) 3.2.1结构框图及说明 (2) 3.2.2系统原理图及工作原理 (3) 3.3 单元电路设计 (5) 3.3.1单元电路工作原理 (5) 3.3.2元件参数选择 (10) 4. 软件仿真................................................................................................................. 11 4.1 仿真电路图 (11) 4.2 仿真过程 (12) 4.3 仿真结果 (12) 5.安装调试................................................................................................................... 13 5.1安装调试过程 (13)

单片机电子万年历课程设计报告书

单片机课程设计 姓名:吕长明 学号:04040804021 专业班级:机电四班

一、单片机原理及应用简介 随着国内超大规模集成电路的出现,微处理器及其外围芯片有了迅速的发展。集成技术 的最新发展之一是将CPU和外围芯片,如程序存储器、数据存储器、并行、串行I/O口、定时/计数器、中断控制器及其他控制部件集成在一个芯片之中,制成单片计算机(Single-Chip Microcomputer)。而近年来推出的一些高档单片机还包括有许多特殊功能单元,如A/D、D/A转换器、调制解调器、通信控制器、锁相环、DMA、浮点运算单元等。因此,只要外加一些扩展电路及必要的通道接口就可以构成各种计算机应用系统,如工 业控制系统、数据采集系统、自动测试系统、万年历电子表等。 二、系统硬件设计 8052 是标准的40引脚双列直插式集成电路芯片,引脚分布请参照----单片机引脚图图1: 图1 8052引脚 P0.0~P0.7 P0口8位双向口线(在引脚的39~32号端子)。 P1.0~P1.7 P1口8位双向口线(在引脚的1~8号端子)。 P2.0~P2.7 P2口8位双向口线(在引脚的21~28号端子)。 P3.0~P3.7 P2口8位双向口线(在引脚的10~17号端子)。 8052芯片管脚说明: VCC:供电电压。 GND:接地。P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用

于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。 P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH 编程和校验时,P1口作为第八位地址接收。 P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。 P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。 P3口也可作为AT89C51的一些特殊功能口,如表1所示: 表1 特殊功能口 P3口同时为闪烁编程和编程校验接收一些控制信号。 RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。

相关文档
相关文档 最新文档