- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实验一 LED控制程序设计 一、实验目的: 1.掌握单片机单片机学习板和软件的使用。 2.掌握单片机程序的调试方法。 二、实验设备: 单片机学习板、PC机 三、实验内容: 1.掌握C51程序的编辑、汇编、仿真调试的操作。 2.掌握目标程序的下载。 3.P1口输出控制LED的实验。 (1)编写控制8个LED巡回点亮的程 #includereg52.h #define uint8 unsigned char unsigned char code seg[]={0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe,0xff,0xff,0x00,0,0x55,0x55,0xaa,0xaa};void Delayms(uint8); void main() {unsigned char i;while(1){P1=0xfe;//流水灯右循环for(i=0;i8;i++){Delayms(100);P1 =1;P1 |=0x01;} } } void Delayms(uint8 Tms) {uint8 i,j;for( ; Tms 0; Tms--)for(i=5;i0;i--)for(j=98;j0;j--);}(2)改为流水灯效果或其他显示效果,说明方法; (3)修改延时时间并计算具体的时间; (4)自行设计LED点亮效果。 实验二 数码管显示程序设计 一、实验目的: 了解七段数码显示数字的原理。 掌握数码管显示程序的设计。 二、实验设备: 单片机学习板、PC机 三、实验内容: 1.在4位数码管上显示“1234”。 #includereg52.h //包含头文件,对IO进行定义,可以选中后右击,查看里面具体定义。#define uint8 unsigned charsbit dula=P2^6; //段选信号的锁存器控制 sbit wela=P2^7; //位选信号的锁存器控制 unsigned char code value[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71}; void Delayms(uint8); void main() { P0=value[1]; dula=1; dula=0; P0=0xfe;//选择第一个数码管 wela=1; wela=0; Delayms(3); P0=0xff; //消除串显 wela=1; wela=0; P0=value[2]; dula=1; dula=0; P0=0xfd;//选择第二个数码管 wela=1; wela=0; Delayms(3); P0=0xff; //消除串显 wela=1; wela=0; P0=value[3]; dula=1; dula=0; P0=0xfb;//选择第三个数码管 wela=1; wela=0; Delayms(3); P0=0xff; //消除串显 wela=1; wela=0; P0=value[4]; dula=1; dula=0; P0=0xf7; wela=1; wela=0; Delayms(3); P0=0xff;wela=1; wela=0; } void Delayms(uint8 Tms) {uint8 i,j;for( ; Tms 0; Tms--)for(i=5;i0;i--)for(j=98;j0;j--);}“12.34”。 #includereg52.h //包含头文件,对IO进行定义,可以选中后右击,查看里面具体定义。#define uint8 unsigned charsbit dula=P2^6; //段选信号的锁存器控制 sbit wela=P2^7; //位选信号的锁存器控制 unsigned char code value[]={0x3f,0x06,0xdb,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71}; void Delayms(uint8); void main() { P0=value[1];//数码管显示时十位 dula=1; dula=0; P0=0xfe;//选择第一个数码管 wela=1; wela=0; Delayms(3); P0=0xff; //消除串显 wela=1; wela=0; P0=value[2];//数码管显示时个位 dula=
文档评论(0)