一般网站版式有哪几种,安卓是哪里开发的,品牌形象策划设计公司,wordpress手机验证码注册目录
一#xff0c;软件下载 二#xff0c;单片机概述
1#xff0c;单片机内部资源
1#xff09;flash
2#xff09;ram
3#xff09;sfr
2#xff0c;51单片机
3#xff0c;单片机最小系统 三#xff0c;点亮最右边的小灯
1#xff0c;指出满足小灯点亮的有…目录
一软件下载 二单片机概述
1单片机内部资源
1flash
2ram
3sfr
251单片机
3单片机最小系统 三点亮最右边的小灯
1指出满足小灯点亮的有关网络标号的电平要求 1addr2 addr1 addr0110
2led0
3addr 31 及 enled0
4编写代码
5 运行结果
四实验-点亮LED小灯
1、实验的背景和意义
2、实验目的
3、实验任务及要求
4、实验仪器
5、实验步骤
6、实验报告撰写要求
☀ 1按照学号末位和小灯编号相对应进行操作
①确定需要亮的led ②预打开三极管开关 ③译码器使能并打开开关
④指出满足小灯点亮的有关网络标号的电平要求
⑤实现效果
⑥代码 2实现闪烁LED小灯的实验
①效果
②撰写本实验的完整c语言代码。 一软件下载
俗话说“工欲善其事必先利其器”。我先把需要用到的软件下载安装上相关的软件都放到了网盘中可通过链接下载 链接https://pan.baidu.com/s/1QEDpuNhcYVB6lmxFNW2z4Q?pwd6666 提取码6666 --来自百度网盘超级会员V1的分享 下载后会有如下文件 单片机开发需要两个软件编程软件Keil uVision4和下载软件STC_ISP_V480 。
还有一个开发板串口驱动CH341SER下载安装好就行后期不需要手动打开该驱动默认就有) Keil uVision4软件界面 STC_ISP_V480软件界面 二单片机概述
1单片机内部资源
这里的单片机内部资源指的是单片机能够提供给读者可使用的东西。
单片机主要有三大类资源flashram及sfr。
1flash
flash资源是程序的存储空间。其优点在于可重复擦写容量大成本低等。flash最大的意义就是断电后数据不会丢失类似于电脑的硬盘把电脑关机后所有保存过的文件都在。
早期的单片机是otprom一次可编只读存储器one time programmable read-only memory来存储单片机的程序程序只能写入一次如果写错了只能换一片重新写入。
2ram
ram全称为random access memory随机存取存储器也称为主存是单片机的数据存储空间用来存储程序运行过程中产生的和需要的数据类似于电脑的的内存最典型的应用就是计算器一旦关机数据不复存在。
ram的优点读写速度快理论上可以无限次写入即寿命无限不管程序怎么运行和怎么读写它都不会坏。
3sfr
sfr全称为special function register特殊功能寄存器。
单片机有很多功能每个功能都会对应一个或多个sfr用户就是通过对sfr的读写来实现单片机的多种多样的功能。
251单片机
我们通常所说的51单片机指的都是兼容了Intel mcs-51体系架构的一系列单片机。而51是它的一个通俗的简称。
在接下来的单片机航行中我选择的是宏晶科技的STC89C52单片机来进行学习。它是一款51内核的单片机具有标准的51体系结构和功能程序下载方式简单方便学习。
它的资源情况
flash程序空间是8k字节1k10241字节8位ram数据空间是512字节sfr后面会逐一用到并补充
3单片机最小系统
单片机最小系统也称为单片机最小应用系统是指用最少的原件组成可以工作的单片机系统。
单片机最小系统主要有三要素电源晶振和复位电路。如下图所示 【图片取自《手把手教你学51单片机-C语言版》p12有兴趣的可以去网盘下载电子板书本来看】 链接https://pan.baidu.com/s/1QEDpuNhcYVB6lmxFNW2z4Q?pwd6666 提取码6666 --来自百度网盘超级会员V1的分享 如果想要详细了解其他的知识如电源晶振复位电路和led小灯的介绍的可下载网盘中的电子书自行阅读接下来单片机的学习我将不再详细地把其他知识写到博客里面因为没必要做一个木得感情的打字机器最主要的还是代码编写的思路效果的呈现。
更多资源可转到金沙滩官网查看。
青岛金思特电子有限公司 (qdkingst.com) 三点亮最右边的小灯 最右边的小灯所对应的网络标号为db0。那么就可以沿着相同的网络标号来找到其在单片机上所对应的端口并给其相应的电平使小灯能够点亮。
1指出满足小灯点亮的有关网络标号的电平要求 1addr2 addr1 addr0110
按照下图的三步走让二极管正极有电压即使三极管作为开关打开。如下 110为二级制显示换算成十进制为6为138译码器输出的y6译码器的y6进而可控制基极的电平因为译码器上的y6和三极管基极中的电平两者的网络编号都是leds6因此y6可以和基极相连并可以控制基极的电平。138译码器有一个特点就是输入只能指定对应的输出端为低电平其他输出端口为高电平即只有一个低电平输出。因此当 a2 a1 a0110时就表示了y6为低电平。
知道了addr2 addr1addr0这三个译码器上的网络标号我就可以通过【显示译码与步进电机的选择跳线】区域的图纸来一一对应到单片机上:
addr2P1.2;addr1P1.1;addr0P1.0
在编写代码时需要在main方法之前进行定义如下
sbit addr0P1^0;
sbit addr1P1^1;
sbit addr2P1^2;
因为在单片机的编码中没有P1.x这种描述无法识别一般将P1.x写为P1^x。 写多了就行
2led0
要让最右边的led灯点亮需要二极管的阴极为低电平。
二极管有一竖的位置为阴极阴极的电平要比阳极低二极管才能够导通通过下图我们可以看到二极管的阳极通过三极管开关接了5v的电压一般而言5v可以视为高电平因此我们需要将二极管的阴极接入低电平。
“沿着”电路元件的网络标号来最终找到单片机电路上 由图可以看到我们需要将P0.0输入低电平因为P0.0在程序中使用led来代表所以我们给led这个位赋值为0。 因此led0。
需要在main方法前声明让led代表P0^0如下
sbit ledP0^0;
3addr 31 及 enled0
要使138译码器能够工作就需要让它使能而138有三个使能端e1e2e3如下图 因此e31。
由于e20e10且e2与e1连一起了两个的与为0所以enled0。
依旧需要沿着网络标号找到单片机电路上所对应的端口如下 并在main方法前面进行声明如下
sbit addr3P1^3;
sbit enledP1^4;
4编写代码
如上所有的都分析完了之后我开始写代码编写代码如下
#include reg52.h // 头文件包含有众多寄存器的地址
sbit ledP0^0;
sbit addr0P1^0;
sbit addr1P1^1;
sbit addr2P1^2;
sbit addr3P1^3;
sbit enledP1^4;
void main(){
enled0;
addr31;
addr21;
addr11;
addr00;
led0; // led代表一个发光二极管。阴极输入低电平发光二极管导通 小灯点亮while(1); // 小灯常亮
}
5 运行结果 值得注意的是当我在同一个工程里面有多个c文件时如果不修改每一次create生成的hex文件的文件名那么该文件会指向哪个c文件我就会无迹可寻。因此当每次使用rebuild来编译不同的c文件时都建议将对象文件的名字进行修改如下当然如果文件不多的话也可以不用改。 也可以将编译好的对象文件专门放到一个目录里面如下 四实验-点亮LED小灯
1、实验的背景和意义 单片机全称叫单片微型计算机是一种集成在电路芯片采用大规模集成电路技术把CPU、随机存储器RAM 、只读存储器ROM、多种输入输出口、定时器/ 计时器等功能集成到一块硅片上构成的一个小而完善的计算机系统。 目前单片机渗透到我们生活的各个领域几乎很难找到哪个领域没有单片机的应用。大致可以分为以下几个范畴 1、在智能仪器仪表上的应用例如精确的测量设备 2、在工业控制中的应用例如用单片机可以构成形式多样的控制系统与计算机互联网构成二级控制系统等 3、在家用电器中的应用可以从手机、电话机、小型程控交换机、楼宇自动通信呼叫系统、列车无线通信、再到日常工作中随处可见的移动电话、集群移动通信、无线电话对讲机等 4、在医用设备中的应用例如医用呼叫机、各种分析仪、超声诊断设备及病床呼叫系统等等 5、在各种大型电器中的模块化作用如音乐集成单片机看似简单的功能微缩在电子芯片中就需要复杂的类似于计算机的原理。 本实验着重在于分析计算机软件和开发过程中的环节和步骤并从实践经验出发做了详细的分析和研究。本实验就是充分利用了8051 芯片的I/O 引脚实际采用STC89C52RC单片机为中心器件来实现点亮LED小灯和进行小灯闪烁实验。
2、实验目的 1、学习基本理论在实践中综合运用的初步经验掌握电路设计的基本方法、设计步骤培养综合设计与调试能力。 2、掌握c 语言程序设计方法。 3、培养实践技能提高分析和解决实际问题的能力。
3、实验任务及要求 1、用发光二极管作为显示电路KST-51开发板中的小灯从左到右分别为LED9、LED8、LED7、LED6、LED5、LED4、LED3、LED2共计8只小灯。按照学号末位和小灯编号相对应进行操作如学号2132331217的同学完成对LED7小灯的操作另外学号末位为0和1的同学分别完成对小灯LED9和LED8的操作。具体操作见本实验的后续要求。 2、实现点亮LED小灯的实验编写完整代码。 3、实现闪烁LED小灯的实验只编写和任务2中不同部分的代码。
4、实验仪器 计算机1台、KST-51开发板1套。 5、实验步骤 1、建立文件夹按照三大步完成项目和文件的建立及关联。 第一步建立一个项目 第二步新建一个文件加上 .c采用软件Keil uVision4等进行代码编写。 第三步添加文件到项目中去。 2、编译生成 ***.hex 文件。 3、连接KST-51开发板利用软件STC-ISP-v4.80等完成单片机程序“烧写”。 4、观察实验现象进行有关记录。 6、实验报告撰写要求 1、认真研读教材附录D的KST-51开发板原理图指出满足小灯点亮的有关网络标号的电平要求写在实验报告中。
开发板原理图可在网盘中下载 链接https://pan.baidu.com/s/1QEDpuNhcYVB6lmxFNW2z4Q?pwd6666 提取码6666 --来自百度网盘超级会员V1的分享 1按照学号末位和小灯编号相对应进行操作
如学号2132331217的同学完成对LED7小灯的操作另外学号末位为0和1的同学分别完成对小灯LED9和LED8的操作。
①确定需要亮的led
例如我学号末尾是4因此我需要点亮led4看图 元件标号为led4的发光二极管的网络标号为db2。 之后开始沿着网络标号找到单片机 之后写上代码 ②预打开三极管开关
打开三极管开关相关的电平在点亮最右边的小灯中已经分析过了并且打开开关的代码不变写下来如下 因为此时还没有让译码器使能138译码器并没有开始工作开关没有真正的打开。接下来我让译码器使能开始工作。 ③译码器使能并打开开关 最后再加上
while(1); 使灯长亮。
④指出满足小灯点亮的有关网络标号的电平要求 led0; // 低电平 addr21; // 高电平 addr11; addr00; enled0; addr31;
⑤实现效果 如下led4从右数第三个点亮 ⑥代码
#includereg52.h
sbit ledP0^2; // 二极管阴极所接的端口
sbit addr0P1^0; // 138译码器低位输入
sbit addr1P1^1; // 138译码器中位输入
sbit addr2P1^2;// 138译码器高位输入
sbit addr3P1^3; // 使能端es
sbit enledP1^4; // 使能端 e1和e2
void main(){led0; // 二极管阴极需要低电平addr21;addr11;addr00;enled0;addr31;while(1);
} 2实现闪烁LED小灯的实验
之前我在main方法中的最后一行写了while1;一个死循环让灯长亮。如果想要在灯能够一直一亮一灭的话需要在while(1)死循环内加入两个for循环来控制led一个for循环用于让灯亮一段时间另一个for循环用于让灯灭一段时间之后一直重复再重复的一亮一灭。效果如下
①效果 闪烁一个小灯 ②撰写本实验的完整c语言代码。
#includereg52.h
sbit ledP0^2; // 二极管阴极所接的端口
sbit addr0P1^0; // 138译码器低位输入
sbit addr1P1^1; // 138译码器中位输入
sbit addr2P1^2;// 138译码器高位输入
sbit addr3P1^3; // 使能端es
sbit enledP1^4; // 使能端 e1和e2
void main(){unsigned int i0;addr21;addr11;addr00;enled0;addr31; while(1){led0; // 灯亮for(i0;i50000;i); // 灯亮一段时间led1; // 灯灭for(i0;i50000;i);}
}
如果文章哪里有错误请在评论区留言或者是私信我一定知错就改。
如果文章哪里有不懂请在评论区留言或者是私信我一定倾囊相助。