包含头文件符号的区别

有这样的包含头文件语句

#include <reg52.h>

#include"reg52.h"

两者区别在于:

<>:编译器先进入软件安装文件目录下寻找这个头文件,如果这个目录下没有这个文件,则会报错。

"":编译器先进入当前工程文件夹目录下寻找这个头文件,如果这个目录下没有这个文件,则会进入软件安装文件目录下寻找这个头文件,若两个地方都没有这

个头文件,那么就会报错。

所以,我们经常直接去安装目录下找,直接用<>,就可以!

MCU 注释

1.//双斜杠:行注释

2./*.....*/:段注释

条件编译

(1)#ifdef  标识符

                 程序段 1

       #else

                 程序段2

       #endif

它的作用是如果所指定的标识符已经被#define 定义过,那么在程序编译阶段编译程序段1,否则编译程序段2。其中#else部分可以没有。

(2)#ifndef   标识符

                程序段  1

    #else

               程序段  2

    #endif

它的作用和第一个相反,如果所指定的标识符没有被#define 定义过,那么在程序编译阶段编译程序段1,否则编译程序段2。其中#else部分可以没有

(3)#if 表达式

         程序段  1

     #else

        程序段   2

     #endif   

这种条件编译对于提高程序的通用性很有好处!

中断源对应的中断号

函数名()interrupt 0 {} //对应外部中断0;
函数名()interrupt 1 {} //对应定时器/计数器0中断;
函数名()interrupt 2 {} //对应外部中断1;
函数名()interrupt 3 {} //对应定时器/计数器1中断;
函数名()interrupt 4 {} //对应串口中断;

            

MCU编程_基础的更多相关文章

  1. linux makefile: c++ 编程_基础入门_如何开始?

    学习android 终究还是需要研究一下其底层框架,所以,学习c++很有必要. 这篇博客,算是linux(ubuntu) 下学习 c++ 的一个入门. 刚开始学习编程语言的时候,最好还是使用命令行操作 ...

  2. 黑马程序员:Java编程_基础语法

    =========== ASP.Net+Android+IOS开发..Net培训.期待与您交流!=========== 一.数据类型 基本数据类型(简单数据类型.语言所内置的类型) 引用数据类型:(自 ...

  3. python_网络编程_基础

    基本的架构有C/S架构 和B/S架构 B/S架构优于C/S架构? 因为统一入口 , 都是从浏览器开始访问 两台电脑实现通信, 需要网卡, 网卡上有全球唯一的mac地址 ARP协议 #通过ip地址就能找 ...

  4. 【转】Android JNI编程—JNI基础

    原文网址:http://www.jianshu.com/p/aba734d5b5cd 最近看到了很多关于热补的开源项目——Depoxed(阿里).AnFix(阿里).DynamicAPK(携程)等,它 ...

  5. 第2课第3节_Java面向对象编程_继承性_P【学习笔记】

    摘要:韦东山android视频学习笔记  面向对象程序的三大特性之继承性:继承性的主要作用就是复用代码.继承性也有一定的限制,如图一 图一 1.我们在第2课第2节_Java面向对象编程_封装性_P 中 ...

  6. SSM整合_年轻人的第一个增删改查_基础环境搭建

    写在前面 SSM整合_年轻人的第一个增删改查_基础环境搭建 SSM整合_年轻人的第一个增删改查_查找 SSM整合_年轻人的第一个增删改查_新增 SSM整合_年轻人的第一个增删改查_修改 SSM整合_年 ...

  7. 现代3D图形编程学习-基础简介(2) (译)

    本书系列 现代3D图形编程学习 基础简介(2) 图形和渲染 接下去的内容对渲染的过程进行粗略介绍.遇到的部分内容不是很明白也没有关系,在接下去的章节中,会被具体阐述. 你在电脑屏幕上看到的任何东西,包 ...

  8. 现代3D图形编程学习-基础简介(1) (译)

    本书系列 现代3D图形编程学习 基础简介 并不像本书的其他章节,这章内容没有相关的源代码或是项目.本章,我们将讨论向量,图形渲染理论,以及OpenGL. 向量 在阅读这本书的时候,你需要熟悉代数和几何 ...

  9. DOM0编程与基础方法

    ## 这里记录一下DOM编程的基础与方法----### DOM 的O:对象 objectO表示Object,对象的意思.JavaScript中对象可以分为三种类型1. 用户定义对象(user-defi ...

随机推荐

  1. widget jquery 理解

    jquery ui 的所有组件都是基于一个简单,可重用的widget. 这个widget是jquery ui的核心部分,实用它能实现一致的API,创建有状态的插件,而无需关心插件的内部转换. $.wi ...

  2. mysql 5.17 的update失败问题

    在使用workbench的时候,写入update语句,会很提现失败,原因是安全模式; 可能是workbench在数据库更新的时候是有限制的,防止错误哦l 更改方法也很简单; Edit - Profer ...

  3. BZOJ 3131 [SDOI2013]淘金 - 数位DP

    传送门 Solution 这道数位$DP$看的我很懵逼啊... 首先我们肯定要先预处理出 $12$位乘起来的所有的可能情况, 记录入数组 $b$, 发现个数并不多, 仅$1e4$不到. 然后我们考虑算 ...

  4. DbUtils类的添加,修改,删除

    package cn.jy.demo; import java.sql.Connection;import java.sql.SQLException; import org.apache.commo ...

  5. sql条件查询-日期比较(取年月部分)

    查询当年当月的数据: select * from compalete_task where to_Char(create_date,'yyyyMM') = to_Char(sysdate,'yyyyM ...

  6. js之function

    function* function* 这种声明方式(function关键字后跟一个星号)会定义一个生成器函数 (generator function),它返回一个  Generator  对象. 你 ...

  7. ListView动态改变每一项的高度。

    ListView中每一项的高度默认是相同的,除非超过其预定高度值,否则需要动点手脚. VariableSizedListView 继承 ListView然后重写protected override v ...

  8. java struts2 的 文件下载

    jsp: <%@ page language="java" contentType="text/html; charset=UTF-8" pageEnco ...

  9. canvas 实现飞碟射击游戏

    var canvas = document.getElementById('canvas'); var cxt = canvas.getContext('2d'); // 射击角度 var ang = ...

  10. mysql之零碎知识

    一 视图 什么是视图:视图就是一张虚拟表.方便查看. 创建视图:create view 起名 as sql语句 #两张有关系的表 mysql> select * from course; +-- ...