day01 开始

2023-05-16

一、介绍

        夏培肃 造计算机第一代

        李国杰  黄令仪 

        胡伟武 

        刘阳  

        底层         应用层   APP

        金庸:内练一口气  外练筋骨皮
        内功    外功

        操作系统       BIOS     3w     
        操作系统原理   计算机原理      

        STM32    

        100 

        30   70  

        上午:上课时间 9:00 ~10:30     11:00~ 12:00 
        下午: 上课时间 2:00 ~3:30      4:00  ~   5:00 

        ARM:  A    R    M

        STM32  CORTEX-A53

        M: 应用于嵌入式工控领域,以单片机的价格实现32bit的性能
        A:应用在高大上的领域, 性能强悍。音视频的处理,AI。
        R:应用在实时性较强的领域。

        物联网   IoT  嵌入式  of 

        嵌入式开发模式:
            编辑    在PC机上编辑程序

            交叉编译

            编译结果放在开发板上执行
            HOST ---->  TARGET
                usb
                RS232 
                Network 

        嵌入式开发的难度:
            1. C语言基本功
            2. 嵌入式环境的搭建
            3. 软硬件相结合的:
                a)  能够看懂电路原理图
                b)  读懂数据手册(英文) 
                c)  接口 GPIO  IIC  UART  SPI USB.....


二、C语言    

1 编写头文件
    
    头文件卫士 ---》 防止文件的重复包含
     #ifndef 宏
     #define 宏
     文件的包含
     结构体
     函数的声明
     变量的声明
     宏定义
     类型的定义 (结构体  联合  枚举)
     #endif
    
    变量 的声明和定义的区别?
    变量的声明 ---》 变量作用域的扩充,变量的声明不会分配空间
    变量的定义是要为变量分配空间的!内存

    int  var = 300; //定义
    extern  int var; //声明
    
    数据类型的定义:
    什么是数据类型?
    void  int char short float double long bool struct union  *   ..... 
    其实,计算机中没有数据类型,说白了,就是访问内存和这种规则的相关操作!
    注意: void 和无类型是两种概念。无类型只关注地址。

    指针就是地址,地址就是编号

    数组也是一种数据类型 int arr[3];
    函数也是一种数据类型 int add (int x, int y);     

    为数据类型起别名:
    1.  声明类型的变量
     int count_t;
    2. 在第一步的基础上,前边加上typedef,原来的变量或常量就是原来数据类型的别名
    typedef int count_t;
    3. 使用类型的别名去命名新变量
    count_t var; var 是count_t, 是int类型。
    
    int arr_t [3];
    arr_t 是常量     int [3] 是类型
    typedef  int arr_t[3];

    arr_t a = {1,2,3}; === int a[3] = {1,2,3};
    arr_t b[2];   b 是二维数组
    
    b[0] ----> b[1] 
    b + 1    ---> 看b的数据类型, 加了12个字节
    
    b[0][0] ---> b[0][1] 
     b[0] +1  --->  加了4个字节

    char * str_t;
    typedef char *str_t;
    str_t a,b;  ==== char *a,b;
    
    int fun_t (int x, int y);
    typedef int fun_t (int x, int y);
    fun_t *p;
    
    int (* func_t) (int x, int y);
    typdef int (* func_t) (int x, int y);
    func_t p;   //和上面的p是等价的
    
    struct node {
        int data;
        struct node next;
        struct node *next;
    };


三、搭建开发环境

    参见 百度网盘

四、物联网的智能设备

    4.1 物联网框架
    IoT 
    嵌入式:
        嵌入式系统是以应用为中心,以计算机技术为基础,
        软硬件可剪裁,适应应用系统对功能,功耗,体积,
        成本严格要求的专用计算机系统。
        
    嵌入式是物联网的保障和基座,
    物联网是基于嵌入式系统的应用程序的处理和分析。
    
    物联网层次
    参见图 物联网层次图
    

五、介绍开发板

     了解芯片  SOC(高端芯片) MCU(单片机芯片),
     都可以组成自己的微型计算机
     STM32F103RBT6  = CPU + 内存 + 硬盘 + 外设
     内存 用来支持运行程序
     硬盘 存储烧写的程序
     外设 程序员通用外设来操作芯片

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

day01 开始 的相关文章

随机推荐

  • 【MySQL | 基础篇】02、MySQL 函数详解

    目录 一 字符串函数 1 1 concat 字符串拼接 1 2 lower 全部转小写 1 3 upper 全部转大写 1 4 lpad 左填充 1 5 rpad 右填充 1 6 trim 去除空格 1 7 substring 截取子字符串
  • 【MySQL | 基础篇】03、MySQL 约束

    目录 一 概述 二 约束演示 三 外键约束 3 1 介绍 3 2 语法 3 3 删除 更新行为 一 概述 概念 约束是作用于表中字段上的规则 xff0c 用于限制存储在表中的数据 目的 xff1a 保证数据库中数据的正确 有效性和完整性 分
  • 【MySQL | 基础篇】04、MySQL 多表查询

    目录 一 多表关系 1 1 一对多 1 2 多对多 1 3 一对一 二 多表查询概述 2 1 数据准备 2 2 概述 2 3 分类 三 内连接 3 1 案例 四 外连接 4 1 案例 五 自连接 5 1 自连接查询 5 2 联合查询 六 子
  • 【MySQL | 基础篇】05、MySQL 事务详解

    目录 一 事务简介 二 事务操作 2 1 未控制事务 2 2 控制事务一 2 3 控制事务二 三 事务四大特性 四 并发事务问题 五 事务隔离级别 六 并发事务演示 6 1 脏读演示 6 2 不可重复读演示 6 3 幻读演示 一 事务简介
  • 【MySQL | 进阶篇】05、MySQL 视图、触发器讲解

    目录 一 视图 1 1 介绍 1 2 语法 1 2 1 演示示例 1 3 检查选项 1 3 1 CASCADED 级联 1 3 2 LOCAL 本地 1 3 3 示例演示 1 4 视图的更新 1 4 1 示例演示 1 5 视图作用 1 6
  • python 字典dict常用操作总结

    目录 1 创建字典 2 添加 修改 删除字典元素 3 访问元素 4 计算键的个数 5 其他常用操作 字典是一个包含了键 值对数据的集合 1 创建字典 可以直接使用一对花括号或者 dict 创建一个字典类型的数据 a 61 a 61 dict
  • 【MySQL | 进阶篇】08、InnoDB 引擎架构、事务原理及 MVCC 讲解

    目录 一 逻辑存储结构 二 架构 2 1 概述 2 2 内存结构 2 2 1 Buffer Pool 2 2 2 Change Buffer 2 2 3 Adaptive Hash Index 2 2 4 Log Buffer 2 3 磁盘
  • K8s 生产环境问题汇总及解决方案(持续更新 ing)

    目录 一 前端页面显示 503 Service Temporarily Unavailable 问题背景 解决方案 原理 二 Dockfile 构建镜像失败 xff1a When using COPY with more than one
  • 【MySQL | 进阶篇】09、MySQL 管理及常用工具(mysqladmin、mysqlbinlog、mysqldump 等)的使用

    目录 一 系统数据库 二 常用工具 2 1 mysql 示例 2 2 mysqladmin 示例 2 3 mysqlbinlog 示例 2 4 mysqlshow 示例 2 5 mysqldump xff08 数据备份 xff09 示例 2
  • 【Python | 基础语法篇】01、字面量、注释、变量、数据类型及转换

    目录 一 字面量 1 1 什么是字面量 1 2 常用的值类型 1 3 字符串 1 4 如何在代码中写它们 1 5 总结 二 注释 2 1 注释的作用 2 2 注释的分类 2 3 注释实战 2 4 总结 2 5 思考 三 变量 3 1 什么是
  • 【Python | 基础语法篇】02、标识符、运算符、字符串扩展及数据输入

    目录 一 标识符 1 1 什么是标识符 1 2 标识符命名规则 1 2 1 标识符命名规则 内容限定 1 2 2 标识符命名规则 大小写敏感 1 2 3 标识符命名规则 不可使用关键字 1 3 案例演示 1 4 变量命名规范 1 4 1 变
  • 【2023 阿里云云计算工程师 ACP 认证练习题库】01、VPC 专有网络题库

    目录 一 多选题 1 1 答案与解析 2 2 答案与解析 3 3 答案与解析 辑 4 4 答案与解析 5 5 答案与解析 6 6 答案与解析 7 7 答案与解析 8 8 答案与解析 9 9 答案与解析 10 10 答案与解析 11 11 答
  • 1.9模块

    第一关 模块的定义 任务描述 在Python程序的开发过程中 xff0c 为了代码维护的方便 xff0c 我们可以把函数进行分组 xff0c 分别放到不同的 py文件里 xff0c 这样 xff0c 每个文件包含的代码就相对较少 xff0c
  • 2.2 分布式文件系统HDFS

    编程要求 1 在HDFS中创建 usr output 文件夹 xff1b 2 在本地创建hello txt文件并添加内容 xff1a HDFS的块比磁盘的块大 xff0c 其目的是为了最小化寻址开销 xff1b 3 将hello txt上传
  • 3.2 电信数据清洗

    任务描述 对数据按照一定规则进行清洗 清洗规则 xff1a 处理数据中的时间戳 xff08 秒级 xff09 将其转化为 34 年 月 日 时 分 秒 34 这种格式 xff1b 处理数据中的省份编码 xff0c 结合mysql的表数据对应
  • 4.1 Hbase的安装与简单操作

    第一关 Hbase数据库的安装 1 首先要在官网下载好Hbase的安装包 xff08 educoder已装到 opt目录下 xff09 2 将安装包解压到 app目录下 mkdir app cd opt ulimit f 1000000 t
  • numpy 多级排序 :lexsort 函数详解

    目录 1 lexsort 排的是个啥 2 举个例子 1 lexsort 排的是个啥 lexsort 函数的定义如下 xff1a def lexsort keys axis 61 None lexsort是一种多级排序方法 作用为对给定的 k
  • 5.1 Spark的安装与使用

    第一关 Scala语言开发环境的部署 1 下载解压 在Scala官网根据平台选择下载Scala的安装包scala 2 17 7 tgz 解压到 app目录下 xff1a mkdir app 创建 app 目录 cd opt tar zxvf
  • 5.7 Spark简单算子案例(Python版)

    第一关 WordCount 词频统计 编程要求 对文本文件内的每个单词都统计出其出现的次数 按照每个单词出现次数的数量 xff0c 降序排序 文本文件内容如下 xff08 单词与单词之间以空格进行分割 xff09 xff1a hello j
  • day01 开始

    一 介绍 夏培肃 造计算机第一代 李国杰 黄令仪 胡伟武 刘阳 底层 应用层 APP 金庸 xff1a 内练一口气 外练筋骨皮 内功 外功 操作系统 BIOS 3w 操作系统原理 计算机原理 STM32 100 30 70 上午 xff1a