单片机实验内容及要求.doc

  1. 1、本文档共25页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
单片机实验内容及要求

实验一:熟悉开发环境和数据传送实验 实验要求: 熟练掌握Silicon Laboratories IDE的使用方法; 调试3.2.2的数据传送实验,观察实验结果 附加要求:调试3.2.1的十进制加法实验,观察实验结果 实验二:查表程序 功能要求: 程序存储器中存放有一常数表,表中的每个元素为一个字,表的内容与索引号的对应关系如下表所示。现已经将索引号放入累加器A中,试用汇编语言编写根据A的值查找表中对应元素的程序,将结果的放入外部RAM的2000H(高字节)和2001H(低字节)单元中。 0 1 2 3 4 5 6 7 8 9 8000H 8001H 8002H 8003H 8004H 8005H 8006H 8007H 8008H 8009H 提示:用MOVC A,@A+DPTR查表,查表时应将A中的索引号乘以2(可以用左移指令实现)。 附加要求:用MOVC A,@A+PC查表指令完成同样的功能。 实验三:键盘和显示实验 功能要求: 完成从键盘上输入数据并显示的功能。开始时闪烁显示“ -”(即最左边的LED闪烁显示“—”),等待用户输入数据。每输入一个数据后原数据左移一位,新输入的数据显示在右起第二位,最右边的一位仍然闪烁显示“—”,等待输入下一个数据。 下面给出部分源程序,请将缺少的程序在实验前补充完整,实验时进行调试。没有事先准备好程序的,不允许做实验。实验成绩占课程总成绩的15%。 #include c8051f020.h #include intrins.h sbit HD7279_DAT=P1^7; sbit HD7279_CLK=P1^6; #define NOSELECT7279 P5 |= 0x80 //SPICS4(P57)=1 #define SELECT7279 P5 = ~(0x80) //SPICS4(P57)=0; #define Set7279DAT HD7279_DAT=1 #define Clr7279DAT HD7279_DAT=0 #define Set7279CLK HD7279_CLK=1 #define Clr7279CLK HD7279_CLK=0 unsigned char Count1ms; void Delay1us(unsigned char us) { while (us) { _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); --us; } } void SYSCLK_Init (void) { int i; // delay counter OSCXCN = 0x67; // start external oscillator with // 18.432MHz crystal for (i=0; i 256; i++) ; // Wait for osc. to start up while (!(OSCXCN 0x80)) ; // Wait for crystal osc. to settle OSCICN = 0x88; // select external oscillator as SYSCLK // source and enable missing clock detector } #define PRT0CF P0MDOUT #define PRT1CF P1MDOUT #define PRT2CF P2MDOUT void PORT_Init (void) { XBR2 = 0x40; // Enable crossbar and weak pull-ups } void Timer0_Init (void) { CKCON|=0x8; TMOD|=0x1; //16Bit Count1ms=10; TR0 = 0; // STOP Timer0 TH0 = (-SYSCLK/1000) 8; // set Timer0 to overflow in 1ms TL0 = -SYSCLK/10

文档评论(0)

2105194781 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档