物联网嵌入式

day01笔记

 国产:

龙芯  飞腾 兆芯  神威  海光  华为

mips  ARM  精简指令集

x86              复杂指令集

系统软件  BIOS:basic input  output  system 基础输入输出系统

kernel开发

编译原理:

hello.c ------>hello.i--------> heelo.s------->hello.o-------->a.out

c源文件      c源文件          汇编文件       可重定位文件   可执行文件

一、编译过程:

1、预处理:

        gcc -E hello .c  -o  hello.i

        -E:给预处理器下的命令

        -o:是给将要生成的目标文件的名字

        预处理:仅仅是文件内容的替换,和注释的去除,并不实际参与编译过程

2、编译:

        gcc -S  hello.c -o hello.s

        -S:是给编译器下的命令

3、汇编

        gcc -c hello.c -o hello.o

        -c:是给汇编器下的命令

4、链接

        gcc  hello.s  -o hello.o

        链接:将目标文件与静态库或动态库进行链接生成可执行文件  hello

二、keil安装

注意:如果之前安装过keil的开发环境, 请先卸载干净
        从百度网盘中下载资料包,下载完之后解压到桌面中
        注意:一定要解压缩,否则有些文件加载不出来
        首先大家需要把windows环境下的文件扩展名显示出来
        1.安装KEIL开发环境
            1>打开<STM32RBT6\开发工具\MDK520>目录,双击<MDK520.exe>
            2>安装时基本上直接下一步下一步即可
            3>注意
                1)有一步需要选择安装路径,安装路径一定不要有中文
                2)有一步需要大家填写姓 名 公司名称 邮箱,都写数字1即可
                3)有一步会弹出小的对话框提示是否安装ULINK驱动,选择安装
                4)安装结束后会弹出网页,关闭网页
                5)安装结束后会弹出自动更新补丁的对话框,关闭更新补丁的对话框
            4>安装完KEIL之后,在<STM32RBT6\开发工具\MDK520>目录中
            有5个以.pack结尾的文件,安装从上往下的顺序,依次双击安装即可

        2.安装仿真器驱动
            打开目录<STM32RBT6\开发工具\STLink V2驱动\STLINK_V2_USBDriver>中
            如果是64bit操作系统安装<dpinst_amd64.exe>
            如果是32bit操作系统安装<dpinst_x86.exe>
            
        3. 测试搭建的环境是否正常 
            打开 《STM32RBT6/01test》 ---> project目录下 ---》 双击项目工程文件
            ---》默认打开keil -----> 点击第二行菜单栏 ---》 save all ---> 点击第三行菜单栏的rebuild
            ---》 如果出现“0 errors 0 warnings” ---> 恭喜恭喜, 上位机的环境搭建完毕!

三、嵌入式开发模式

1、什么是嵌入式

        嵌入式是以计算机技术为基础,以应用为中心,软硬件可裁剪,适应应用系统对功能、体积、功耗、成本、可靠性的转专用计算机系统。

为什么操作系统内核都是以c语言实现的呢?因为c语言的执行效率是其他任何语言都无法比拟的。

2、嵌入式开发模式

        host<--------------------------------------------->target 

        上位机 (编辑、编译代码)                 下位机(执行)

   链接方式:usb   网线   jtag    串口

3、嵌入式的开发难度

        c语言基本功

        能够读懂电路原理图

        能欧读懂英文的数据手册

        掌握基本的硬件接口:gpio  1-wire(一线式)  uart   iic  spi  can  pci  pcie  usb.........

4、嵌入式的系统构成

        1、最小硬件系统

                CPU 中央处理器:ARM  c51  stm32  mips  ppc   x86   x64  LA  飞腾  鲲鹏

                电源电路:3.3V  5V  12V

                时钟电路:提供时钟频率

                存储电路:

                ram        掉电丢失

                rom        掉电不丢失

                 prom        可编程只读存储器

                 eprom        可擦除(一次性)的可编程只读存储器

                 eeprom        电可擦除的可编程只读存储器

                flash        闪存  电可擦除  掉电不丢失

                norflash        读写速度快   掉电不丢失

                nandflash        容量更大 读写速度快  掉电不丢失

                mmc                可反复擦写

                emmc                接口简单  读写速度相对较快

2、软件最小系统

        应用程序:

                c语言   UC   c++/qt    java  python  c#   php

        驱动程序:

                裸板驱动程序:MCU(micro   controller   unit)单片机

                        int main(void)

                        {

                                //硬件初始化

                                while(1)

                                {

                                //业务逻辑

                                }

                        }

                Linux驱动程序:SOC(system   on  a  chip)片上系统

                        跑os   freeRTOS   vxworks   linux    windows   ucos-ii

                        非实时操作系统:Linux,基于优先级的抢占式内核,基于时间片轮询。

                        实时操作系统:freeRTOS   vxworks   在给定的输入时间之后,在严格要求的时间内必须执行完毕。

                        Linux内核开发基础、字符设备的办成框架、中断子系统、iic子系统、platform机制

四、物联网的层次划分

        应用程:手机APP  web  APP

        平台层:小米  小米IOT、百度  天工、阿里云  AIOT、华为   ocean  connect、东方瑞通    ES-link、移动  Onenet

        负责存储数据、分析数据,还可与应用层交互数据

        网络层:基站 手机热点  路由器

        负责传输数据

        感知层:开发板(stm32f103RBT6)+传感器  负责采集数据

世界上4套主流架构:ARM    ppc    mips    :risc  简单指令集            x86 :cisc   复杂指令集

                

                              

        

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值