2013单片机期末设计.docVIP

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
2013单片机期末设计

中山大学南方学院期末考试试卷 (2011级 电子、通信 专业2012~2013学年度 第 2学期) 课程名称 单片机实验 A 卷 考试形式 开 卷 考核类型 考查 本试卷共 一 大题,卷面满分100分。 题号 一 二 三 四 五 六 七 八 总分 复核人 得分 得分 评卷人 一、课程设计( 共100 分) 题目: 采用实验箱做一个秒表。 要求: 每组不得超过3人 秒表显示 两位整数,两位小数 整数与小数之间要有小数点 秒表控制功能 开始计时 暂停 清零 要求使用到定时中断与外部中断 完成汇编版或C语言版,每个同学必须同时参与汇编与C语言编写 18周上课时,采取现场答辩方式 提交内容: 19周前提交word文档到ftp,一人一份,包括以下内容 角色分工 总体流程图 自己编写模块的流程图 自己编写模块汇编程序段或C语言的程序段 个人心得 评分标准: 考勤:为了培养团队精神,同组中只要有一位同学缺席答辩小组成员都要扣分;(10分) 实验报告分:(40分) 现场答辩分:(50分) #includereg51.h #define uchar unsigned char #define uint unsigned int uchar xdata wei _at_ 0x8002; //位控制口 uchar xdata duan _at_ 0x8004; //段控制口 //uchar xdata key _at_ 0x8001; //暂时没用到 sbit K1=P1^2; sbit K2=P1^3; uchar code ArrayLed1[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77};//小数点长灭(不亮 ) uchar code ArrayLed2[]={0xbf,0x86,0xdb,0xcf,0xe6,0xed,0xfd,0x87,0xff,0xef,0xf7};//小数点长亮 void delay(uint z); void display(); void settime(); uint s1,s2,ms1,ms2; void main() { TMOD=0x01; // 设置定时器0 为工作方式方1 TH0=(65536-9171)/256; //假设晶振是11.0592MHZ,则计算得出的计时初值因为9174左右,9171时为9.9ms,9170时为10.12ms。 TL0=(65536-9171)%256; //计算公式为12/11.0592=1.09 10000/1.09=9174 EA=1; //开总中断 ET0=1; //开定时器T0中断 while(1) { EA=1; EX0=1; //开外部中断0 IT0=0; //低电平触发方式 display(); } } void settime() { ms2++; if(ms2==10) { ms2=0; ms1++; if(ms1==10) { ms1=0; s2++; if(s2==10) { s2=0; s1++; if(s1==6) { s1=0; } } } } } void display() { duan=ArrayLed1[ms2]; wei=0x04; delay(1); wei=0; duan=ArrayLed1[ms1]; wei=0x08; delay(1); wei=0; duan=ArrayLed2[s2]; wei=0x10; delay(1); wei=0; duan=ArrayLed1[s1]; wei=0x20; delay(1); wei=0; } void delay(uint z) { uint x,y; for(x=z;x0;x--) for(y=110;y0;y--); } void timer0() interrupt 1 { TH0=(65536-9171)/256; //假设晶振是11.0592MHZ,则计算得出的计时初值因为9174左右,9171时为9.9ms,9170时为10.12ms。 TL0=(65536-9171)%256; //计

文档评论(0)

118zhuanqian + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档