当前位置:主页 > 新闻中心 >

单片机小白学习之路(十八)---定时器中断实现le

作者:巴登赌场 发布时间:2020-12-28 12:23

  static u16 i;////static静态变量,保存i;若不加static,一旦子函数 退出后,该变量将丢失,加了,就会保持住,下次回来的时候,这个值依然存在。

  1、只能进行一次初始化,也就是说 “static int p”这句话,只在第一次进来的时候执行,以后都是通过赋值语句(比如上面i++)修改该值;

  2、该变量只在 本子函数 内 修改有效,其他函数 无法 调用、修改 该 变量。

  3.static函数在内存中只有一份,普通函数在每个被调用中维持一份拷贝

  2,表示该变量是内部连接 (这种情况是指该变量不在任何{}之内,就象全局变量那样,这时候加上static) ,也就是说在其它的.cpp文件中,该变量是不可见的(你不能用).

  1、static全局变量与普通的全局变量有什么区别?static局部变量和普通局部变量有什么区别?static函数与普通函数有什么区别?

  答:全局变量(外部变量)的说明之前再冠以static 就构成了静态的全局变量。全局变量本身就是静态存储方式, 静态全局变量当然也是静态存储方式。 这两者在存储方式上并无不同。这两者的区别虽在于非静态全局变量的作用域是整个源程序,当一个源程序由多个源文件组成时,非静态的全局变量在各个源文件中都是有效的。 而静态全局变量则限制了其作用域, 即只在定义该变量的源文件内有效, 在同一源程序的其它源文件中不能使用它。由于静态全局变量的作用域局限于一个源文件内,只能为该源文件内的函数公用, 因此可以避免在其它源文件中引起错误。

  从以上分析可以看出, 把局部变量改变为静态变量后是改变了它的存储方式即改变了它的生存期。把全局变量改变为静态变量后是改变了它的作用域, 限制了它的使用范围。

  static函数与普通函数作用域不同。static函数仅在本文件中使用。只在当前源文件中使用的函数应该说明为内部函数(static),内部函数应该在当前源文件中说明和定义。对于可在当前源文件以外使用的函数,应该在一个头文件中说明,要使用这些函数的源文件要包含这个头文件

  static全局变量与普通的全局变量有什么区别:static全局变量只初使化一次,防止在其他文件单元中被引用;

  static局部变量和普通局部变量有什么区别:static局部变量只被初始化一次,下一次依据上一次结果值;

  static函数与普通函数有什么区别:static函数在内存中只有一份,普通函数在每个被调用中维持一份拷贝

  可以用引用头文件的方式,也可以用extern关键字,如果用引用头文件方式来引用某个在头文件中声明的全局变理,假定你将那个变写错了,那么在编译期间 会报错,如果你用extern方式引用时,假定你犯了同样的错误,那么在编译期间不会报错,而在连接期间报错。

  可以在不同的C文件中声明同名的全局变量,前提是其中只能有一个C文件中对此变量赋初值,此时连接不会出错。

  STC15单片机实验名称:使用NTC电阻测量温度实验内容: 使用NTC电阻测量温度并显示在数码管上 读取DS18B20模块测量温度作为参考实验器材: STC15W408AS_DIP16 x1 DS18B20x1 TM1637数码管 x1

  学习实践:用NTC电阻测温并显示在TM1637数码管 /

  /*一款电子钟程序,此电子钟是四位电子钟数码管组成的,功能分别有走时、响闹、走时间调整、闹钟时间调整等功能!调整部分分别由三个按键实现,一个功能键,一个+(加)键,另一个为-(减)键,其它功能键是复用功能!*/硬键介绍:数码管个位.十位.百位.千位.小数点分别接P0.0 P0.1 P0.2 P0.3 P0.4。蜂鸣器接P3.5脚,功能按键接P3.2 加按键接P3.3 减按键接P3.4以下是两张图片!!!#include reg52.h//头文件#define uchar unsigned char//宏定义#define uint unsigned int//宏定义uchar shi,fen,nshi,nfen,ma

  电子钟制作(C语言) /

  51单片机做的温度显示,温度显示在LCD1602液晶屏上。然后按键可以调整温度阈值,温度高于或低于所设温度,蜂鸣器就会响……单片机源程序如下:/*************************************************************************************** 基于单片机的实时温度报警系统设计

  +1602+DS18B20的温度报警程序 /

  当电机较大时,启动是个必须注意的问题。比较简单且用的很多的是星三角启动,这里写出了星三角启动的核心部分。每一个IO口接上继电器,再控制交流接触器,就OK了。但,要注意,星、角交流接触器一定要互锁,否则一旦某个交流接触器粘连,就造成短路了。#include reg51.hsbit K1=P3^1; //按键1,控制第1个继电器启动sbit K2=P3^2; //按键2,控制第2个继电器启动sbit J1=P1^5; //星接继电器sbit J2=P1^6; //星点继电器sbit J3=P1^7; //角继电器void Delay_1ms(unsigned i

  、技术性能稳定等特点而受到广大用户和专业人士的欢迎。而本设计的电路包括硬件和软件两个部分。硬件部分包括红外感应部分与单片机控制部分。整个系统电路可划分为:电源部分、传感器模块部分、单片机控制电路,而单片机控制由最小系统和指示灯电路、报警电路等子模块组成。主要工作由热释电红外感应器完成信息采集、处理、数据传送经过单片机功能设定到达报警模块这一过程。就此设计的核心模块来说,单片机就是设计的中心单元。单片机应用系统也是由硬件和软件组成。硬件包括单片机、输入/输出设备、以及外围应用电路等组成的系统,软件是主要是工作的程序通过编写程序来控制输入的信号。二、设计任务分析1.该设计包括硬件和软件设计两个部分。模块划分为数据采集、按键设定、报警

  设计 /

  用一个按键控制四个继电器循环导通,程序由51单片机的程序改到STC15F104W上,第一次按键,第一个继电器吸合,第二次按键,第二个继电器吸合,第一个继电器释放,以此类推。最初的想法就是实现电风扇,三档开关,程序里面可以修改端口。#includereg52.hsbit key = P3^4; //定义按键void delayms(void); //延时void led_refresh(unsigned char

  数字滤波器的MATLAB与FPGA实现 第2版 [杜勇 编著] 2014年版

  nanoPower技术:延长电池寿命,提升传感器性能 2021年1月20日 上午10:00在线研讨会

  STM32H7x3/x5,Cortex®-M7内核,高性能单片机的性价比之王

  51单片机PIC单片机AVR单片机ARM单片机嵌入式系统汽车电子消费电子数据处理视频教程电子百科其他技术STM32MSP430单片机资源下载单片机习题与教程词云:


巴登赌场
上一篇:详细解析单片机 PMW 控制基本原理   下一篇:使用ATmega8L-8PU 在面包板上搭建自己的Arduino 并闪