1 / 18
文档名称:

单片机实验报告.docx

格式:docx   大小:214KB   页数:18页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

单片机实验报告.docx

上传人:pppccc8 2020/9/22 文件大小:214 KB

下载得到文件列表

单片机实验报告.docx

相关文档

文档介绍

文档介绍:单片机实验报告题S:指导老师:班级:姓名:学号:数字时钟的设计I、硬件部分:Vccabfhce<d_1ITHTUUUU-o乂lkQpg一、实验目的通过实践设计出能准确显示时、分、秒的时钟,并可以调吋、定时,包括蜂鸣器的整点报时与闹钟功能。二、实验要求基本功能:准确计时,以数字形式显示时间,24时制;具备时、分调整和整点报时功能。扩展功能:定时与闹钟功能三、设计方案及论证1、时钟显示用七段LED数码管來实现,采用共阳管和PNP驱动方式。PNP工作丁•刃咲状态,基极通过1K的电阻连到单片机的P2口。为节省P口,将六位数码管的8段段选端分別并接并加上470Q的限流电阻,由P0口控制,给低电平的段会被点亮。因为六位管的段被并接只能通过动态扫描的方式來显示,即利用管子的余晖和人眼的视觉残留实现六位管子在“同一吋间”显示不同的值,而扫描这是靠位选的轮流有效实现。如左图。VCC2、整点报时和闹钟铃此部分用一个5V有源蜂鸣器来做,同样用PNP作为开关来控制,此外为防止其可能的方向电压尖峰在蜂鸣器两端反接一个IN4148-极管來保护。如右图。3、校时、定时此部分由4个按键控制,如下图,keyl和key3用来选定要调校的时、分的位,被选中的为将闪烁;key2用来是选中的为按相应的进制增1变化;key4是进入定时模式,定时的时数改变与调时方法相同。、单片机最小系统本实验采用STC89C52RC单片机,指令系统完全与51兼容。其最小系统包含电源电路、晶振电路、复位电路。本实验才用STC单片机的典型系统,齐模块参数配置如图:其中晶振频率为12MIIz,震荡部分电容为30pF的瓷片电容。复位电路采用图示的兼有上电复位和按键复位功能的方式,其中的电容为10uF电解电容。VOC40T3938~37~36~35~34~33~32~亍3029~28~27~26~25~24~23~22~21~5、硬件系统全电路图♦5VU15777■P0DP01P02P03P04監P07盂雷P26説SP21P20P10P11P12P13PMPISP16P17KTP30AXDP3irrxDP324H1DP33rt»mP34TTOmmP36WRP37/RD470QX8325T12OHDSTCWCaDffMO丄E20丄8T_II、软件部分软件部分主耍有两大块:一是上电后程序靠定时器T1产生的屮断而实现的常规时钟显示,这里而就是耍处理时、分、秒的六位数字的循环和进位问题。按照24时制的规则,其进位逻辑为:秒的个位为十进制(0~9)满10向秒的十位进1,而秒的十位为六进制(0~5)满6向分的个位进1,分与秒相似,时的个位在时的十位为0、1的时候也是10进制,而在时的十位为2的时候则只是0到4就进位了。但时的十位是3进制的(0~2)。m0++;if(m0==10){ m0=0;ml++;if(ml==6){ml二0;f0++;if(f0==10){f0=0;fl++;if(f1=6){fl二0;h0++;if(h0==10){h0=0;hl卄;}}}}}二是程序监控4个按键的状态并进行相应处理。木实验中我们并未利用外中断来监控键盘,只是在主函数中用一个函数key_scan()来不停地扫4个键的状态并进行相应处理,这一部分的程序中主耍的问题是按键抖动的去除,试验中,我们用的是软件延时的办法。U!心得体会通过本次课程役计,我学****到了很多,也收获了很多。总结如下;一、 我对单片机的理论知识有了进一步的拿握,对单片机的原理和卖际应用有了更多地理解和拿握。二、 我对单片机的c语言编程有了更深刻的认识和更扎实的拿握,我们不断修改,不斯壹趺,对源代码各个模块的因数都有了一个非常嫌入的事握。三、 理论与卖戏相结合才能Jt好的理解和事握所学的知识。五、附件(程序源代码)#include<>sbitkl二P「4;sbitk2二P「5;sbitk3=Pl6;sbitk4二P「7;sbitvoice二P3"6;//蜂鸣器使能端unsignedcharcodeduan[]={0xc0,0xf9,0xa4,OxbO,0x99,0x92,0x82,0xf8,0x80,0x90,Oxff);//段的共阳编码:0、1、2、3、4、5、6、7、8、9、灭灯unsignedcharcodewei[]={0x00,0x01,0x02,0x03,0x04,0x05,0x06,0x07};//共阳位选编码:第0位、第1位、第2位、第3位、第4位、第5位、第6位、第7位unsignedcharm0=0,ml=0,f0=0,fl二0,h0=0,hl=0,num=0,con=0://正常时钟模式unsignedchard_fO=O,d_fl=O,d_hO=O,d_hl