- 1、本文档共12页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实验一 单片机开发环境的熟悉实验
一、实验目的
认识单片机开发的软硬件工具,了解单片机开发的一般流程,为以后的实验和开发奠定基础。
二、实验设备
1. 单片机仿真器MICETEK EASYPROBE 8052F及单片机集成开发软件CodeCruiser for 51
2. 51单片机核心卡
3. 发光二极管阵列模块
三、实验要求
将单片机核心卡的P0口和一列发光二极管阵列相连接,使得8个发光二极管依次被点亮并且不断循环
四、实验步骤
1.实验连线示例如下图:
2.连接仿真头和8051单片机核心卡,注意仿真头的方向要和芯片座一致。
3.打开MC1000的电源,运行Startup Configuration for 51,初始设置仿真器。各种设置如下图示例,请注意目标CPU为80c52 P0,P2 as IO,并注意左下角的提示信息。如果显示连接硬件失败,请检查仿真器的连接。如需要改变仿真器设置,请参看其使用手册。
4.启动CodeCruiser for 51,通过菜单[选项/路径设置/编译器]设置编译器的路径,请指向您选用的编译器路径。
5.通过菜单[文件/新建]新建一个源文件,如下图
6.编写好程序后,通过[菜单项目/编译]点击下图中鼠标所指按钮编译/连接写好的程序。
7.如果没有语法错误,可以点击下图鼠标所指的按钮用来启动测试器。
8.然后点击下图中鼠标所指按钮将编译连接生成的文件下载到仿真器。
9.点击下图鼠标所指的按钮。仿真运行,观察结果,看程序的功能是否和预想的相同。
如果发现程序的功能不对,就需要对程序进行除错,可以自己仔细分析;也可以借助CodeCruiser for 51的单步、寄存器观察、变量观察、断点等功能协助分析,有关这些功能的使用,请参看仿真器使用手册。
五、实验程序
#includereg52.h
#includeintrins.h
#define int8u unsigned char
#define int16u unsigned int
void Delayms(int16u ms);
void main(void)
{
P1=0xfe;
while(1)
{
P1=_crol_(P1,1);
Delayms(500);
}
}
void Delayms(int16u ms)
{
int8u i,j;
for(i=ms;i0;i--)
for(j=112;j0;j--);
}
六、思考题
1. 若让流水灯反向循环,如何修改程序?
2. 如何改变流水灯的速度?
3.如果去掉程序中的延时,结果如何?
实验二 数码管静态显示实验
一、实验目的
1.学习静态显示的工作原理;
2.学习静态显示的电路接口设计及程序设计。
二、实验设备
1.仿真器
2.单片机核心卡
3.数码管静态显示模块
三、实验要求
要求在2位数码管中显示“1、2”两个字符。
四、实验原理
数码管的静态输入在很多的仪表中经常见到,因为仪表用于显示的位数一般在两到三位,再加上静态显示的高亮度,因此它在现实中同样得到了很多的应用。
由于静态输入,数码管的每个段都占用了一根控制线,因此,单片机不必进行不间断的扫描,就能实现数码管的稳定显示,从而减轻了CPU的工作负担。因为单片机的输出驱动电流不大,为增加数码管的亮度,在单片机输出口和数码管之间常常使用接口芯片驱动。
数码管中的每一段相当于一个发光二极管,8段数码管则具有8个发光二极管。对于“共阴极”的数码管,内部每个发光二极管的阴极被接在一起,成为该各段的公共端,在静态显示中,公共端是常通的;发光二极管的阳极则成为段选线。对于“共阳极”数码管,则正好相反,内部发光二极管的阳极接在一起,阴极成为段选线。这两种数码管的驱动方式是不同的。
数码管的段位顺序如图所示:
如果P0口由从低位到高位的顺序连接abcdefg dp,要在一个“共阴极”数码管上要显示“1”,则b、c段需被点亮,因此在段选线中写入06H。
相反地,如果P0口由从高位到低位的顺序连接abcdefg dp,要在一个“共阴极”数码管上要显示“1”,则b、c段需被点亮,因此在段选线中写入60H。
五、实验步骤
1.用导线把数码管静态显示模块和单片机的系统核心卡的某个端口连接。例如下图:
2.编制程序,该程序比较简单,只需要将希望显示的数字相应段选码送到指定端口即可。
3.将程序调入仿真器进行调试,直至达到实验要求。
六、实验程序
#include reg52.h
#include stdio.h
#include string.h
unsigned char code shnum[]=
{0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x0
文档评论(0)