显示器的实验报告
void DelayMS(uint x)
{
uchar t;
for(x=0;x<1000;x++)
{
for(t=0;t<125;t++);
}
}
main()
{
uchar i;
while(1)
{
for(i=1;i<11;i++)
{
P2=pattern_P2[i];
DelayMS(150);
}
for(i=10;0<i;i--)
{
P2=pattern_P2[i];
DelayMS(150);
}
}
}
五.实验总结
1、实验过程中遇到问题和解决问题
编程过程后达不到实验要求。找不到有的元件代码。。。。。。跟组员讨论问题然后一步一步解决。
2、体会
通过本次实验。让我对单片机有更好的认识,对keil与proteus的操作进一步的加强了。与别人的合作能力得到很好的进步。也产生了碰到问题解决问题的兴趣。对单片机这门课产生浓厚的兴趣。
单片机实验报告
实验一:输出端口应用实验
实验作者:王锦锋实验成绩:
专业班级/学号:应用电子(1)班1006010141
合作者:邹凯专业班级/学号:应电(1)班1006010101
指导教师:
实验时间:2012-3-14
驱动七段LED数码管的实验
一、实验目的
1.学习Proteus软件的使用方法
2.学习Keil软件的使用方法
3.学习端口输出的使用方法
4.掌握延时程序的设计
二、实验说明
1、如下图所示,由P0驱动七段LED数码管,其中使用220欧姆电阻器作为限流电阻。
2、七段LED数码管上所显示的数字从0到9循环不停。每隔0.5s变化一次。
3、
三、硬件原理图及程序设计
(一)硬件原理图设计
(二)程序流程图设计
开始
声明驱动信号数组
声明延迟函数
顺序显示数字
(三)序设源代码
七段LED数码管从9开始显示,递减到0,再从头开始
#include <reg51.h>
#define uchar unsigned char
#define uint unsigned int
uchar code pattern_P2[]=
{
0x98,0x80,0xf8,0x83,0x92,0x99,0xb0,0xa4,0xf9,0xc0//数字9,8,7,6,5,4,3,2,1,0
};
uchar code pattern_P3[]=
{
0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7c,0x07,0x7f,0x67
};
void DelayMS(uint x)
{
uchar t;
for(x=0;x<1000;x++)
{
for(t=0;t<125;t++);
}
}
从0开始显示到9;再递减到0,然后从头开始
#include <reg51.h>
#define uchar unsigned char
#define uint unsigned int
uchar code pattern_P2[]=
{
0x00,0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x83,0xf8,0x80,0x98
};