摘要: 前言 复位之后,CPU首先根据boot引脚选择存储器重映射区域,该区域的地址重映射为地址偏移量为0; pc指针从地址偏移量为0的地址处开始执行;该地址烧录的代码是xx.s启动文件,也称bootloader; 启动文件主要分配了堆栈和向量表,然后跳转到SystemInit函数配置系统时钟,然后通过__ 阅读全文
posted @ 2020-09-19 14:06 rls_v 阅读(1496) 评论(0) 推荐(0) 编辑
摘要: 1 架构 芯片架构是以指令集架构和存储架构为基础,加上各种功能单元搭建而成的交互接口标准; ARM(Advanced RISC Machine)高级 精简指令集 处理器,简称ARM架构;是嵌入式微处理器的主流芯片架构; 1.1 主流芯片架构 CPU架构 代表芯片 指令集架构 功能 ARM ARM R 阅读全文
posted @ 2020-09-16 10:32 rls_v 阅读(3858) 评论(0) 推荐(0) 编辑
摘要: 前言:FMC(Flexible Memory Controller) 灵活存储控制器,是STM32针对各种存储器外设,所推出的一种总线控制器;可以配置多种存储器接口用来通信; 那么FMC和FSMC有什么区别呢?FMC是在FSMC(Flexible Static Memory Controller)的 阅读全文
posted @ 2020-08-29 15:49 rls_v 阅读(5089) 评论(0) 推荐(0) 编辑
摘要: IP核是面向可编程逻辑门阵列(FPGA)芯片优化的,实现电子设计中常用功能的封装模块;包括固化在芯片内部的硬IP核,以及可编程调用的软IP核; IP核通过 菜单栏Tools >>MegaWizard Plug-In Manager 来创建或修改;也可以这样查看各种IP核,以及芯片支持的IP核种类; 阅读全文
posted @ 2020-08-24 21:00 rls_v 阅读(1197) 评论(0) 推荐(0) 编辑
摘要: 1 增益dB AD8369和AD9203都是高速器件,对模拟信号的处理通常需要进行万倍单位的放大;为了处理方便通常使用增益来表示放大倍数; 为什么对数叫对数呢?以lg(1000)为例,底数10不变,对数(即指数)为3,用于对应表示自然数里的1000; 这个对数(即指数)和所表示的极大值自然数是成对出 阅读全文
posted @ 2020-08-24 20:41 rls_v 阅读(1613) 评论(0) 推荐(0) 编辑
摘要: 前言:linux是gnu系统的内核;ubuntu系统是一个linux内核的桌面系统;再详细我也不会了,就这样吧,先定个义; 1 对于单片机而言,代码可以随便访问单片机的各种外设和资源,效率极高; 但是对于Linux系统而言,如果所有的程序都可以访问和更改寄存器和CPU的各种参数,系统就会不稳定;所以 阅读全文
posted @ 2020-08-01 17:52 rls_v 阅读(214) 评论(0) 推荐(0) 编辑
摘要: FPGA(Field Programmable Gate Array)现场 可编程 逻辑门 阵列; 是主要使用逻辑门(LE)和查找表(LUT)来生成逻辑电路的器件,还包含可编程逻辑,互连线,寄存器等资源; veilog HDL(hardware description language)硬件描述语言 阅读全文
posted @ 2020-08-01 16:43 rls_v 阅读(1198) 评论(0) 推荐(0) 编辑
摘要: 1 SPI协议 SPI全称serial peripheral interface,串行外设接口;为串行通讯接口协议; spi接口通过NSS、SCK、MISO、MOSI四线同其他设备相连,每个slave都需要一条独立的NSS,SCK总是由master提供; spi接口作为常用的板间通信协议,常用在AD 阅读全文
posted @ 2020-07-03 19:56 rls_v 阅读(2712) 评论(0) 推荐(0) 编辑
摘要: 1 前言 串口,即数据按位串行发送的通信接口协议,比如usart串行通讯协议; usart全称universal synchronous asynchronous receiver transmitter通用同步异步接收发送器; usart接口通过RX,TX,GND同其他设备相连;速率最高约4.5M 阅读全文
posted @ 2020-06-11 20:15 rls_v 阅读(4713) 评论(0) 推荐(0) 编辑
摘要: 1 二叉树 二叉树的每个节点都包含一个项用来存储数据,以及两个指向其他子节点的指针用来链接结构;是一种二分查找的树形结构; 当数据按顺序排列时,使用二叉树从中间的节点开始查找,每次都能排除一半的数据量,效率较高;只是编程较为复杂。 不过当二叉树子树的排列不平衡时,查找效率挺低的;可能还不如链表实用; 阅读全文
posted @ 2020-06-09 19:49 rls_v 阅读(384) 评论(0) 推荐(0) 编辑
摘要: 1 DEVSTAT寄存器 1.1 DSP上电复位后,DEVSTAT寄存器自动锁存16个GPIO的值、PACLKSEL引脚值、PCIESSEN引脚值到寄存器内,直到下次上电复位前均保持不变; DEVSTAT寄存器由硬件设置,辅助Rom Bootloader初始化配置; 1.2 DEVSTAT寄存器逻辑 阅读全文
posted @ 2020-06-08 18:09 rls_v 阅读(1531) 评论(0) 推荐(0) 编辑
摘要: 1 抽象数据类型 抽象数据类型ADT abstract data type; 抽象数据类型由基本数据结构封装而成,链表,队列,二叉树等都属于有基本数据结构封装而成的抽象数据类型; 2 链表 链表作用:统一管理和存储实时分配的动态内存;而在rtos系统中用链表来管理各类节点的优先级非常优美; 1.1 阅读全文
posted @ 2020-06-04 18:09 rls_v 阅读(912) 评论(0) 推荐(0) 编辑
摘要: 1 GPIO引脚电路 IO_port输入输出模式的配置 等于 对IO_port电路连接方式的配置; IO_port的弱上下拉电阻默认30-50kΩ;单个GPIO的电流最大值为20mA;全部IO的电流总值约120mA;具体见数据手册; 1.1 输入模式 上拉输入:使能弱上拉电阻的连接,断开下拉电阻的连 阅读全文
posted @ 2020-05-16 17:55 rls_v 阅读(3476) 评论(0) 推荐(0) 编辑
摘要: 1 RCC RCC全称 reset clock controller 复位和时钟控制器 作用是控制芯片的复位信号,内核及外设的时钟;由于芯片的外设时钟较多,参考手册对其进行了树形图整理; 外设在使用前都需要先配置该外设的时钟、该外设所在IO_port的时钟使能,每个时钟源都可以单独开关来优化功耗; 阅读全文
posted @ 2020-05-13 23:59 rls_v 阅读(1256) 评论(0) 推荐(1) 编辑
摘要: 1 code磁盘结构 先在磁盘上把自己的代码目录结构搭好,然后再去keil中新建project工程; 1.1 code目录 1.1.1 .gitignore: *.crf >> #*.icf>>*.d>>*.o>>*.dep>>*.htm>>*.lnp>>*.lst>>*.sct>>*.dbgcon 阅读全文
posted @ 2020-05-13 20:40 rls_v 阅读(788) 评论(3) 推荐(0) 编辑
摘要: 使用gcc编译的时候每次都会重新编译,对于较大的linux文件而言每次都重新编译较为繁琐; 所以引入makefile,只编译修改的文件,提高效率,方便编译; 1 makefile实例 1.1 makefile格式 #makefile格式: 目标文件 :依赖文件集合 shell命令 其他目标文件1 : 阅读全文
posted @ 2020-04-09 09:35 rls_v 阅读(464) 评论(0) 推荐(0) 编辑
摘要: 1 tar 压缩打包 1.1 使用gzip、 bzip2、 zip和unzip命令、可以对多个文档所在的文件夹进行压缩; linux下常用压缩格式为.bz2 和.gz格式,但是gzip和bzip2命令都只对单个文档进行压缩,并且不对多个文档所在的文件夹进行归档打包成一个压缩文档; #格式: gzip 阅读全文
posted @ 2020-04-03 19:56 rls_v 阅读(704) 评论(0) 推荐(0) 编辑
摘要: 1 文件操作 linux的命令是在终端窗口中执行的,这些在终端中执行的命令被称之为shell命令,将多个shell命令按照一定的格式放入文本中被称之为shell脚本; 1.1 查看当前目录的文件:ls # 格式:ls -[参数] # 作用:list,列出当前目录的所有文件,按照参数的格式; ls - 阅读全文
posted @ 2020-04-02 20:25 rls_v 阅读(318) 评论(0) 推荐(0) 编辑
摘要: 1 SPI协议 SPI全称为serial peripheral interface串行外围接口协议,一般为四线,也可以省略为三线或两线; 支持全双工,在主设备发送数据的时候同时从从设备接收数据;此时的从设备接收到主设备的时钟信号和数据的第一位,将准备好的数据发送给主设备; 支持半双工,要么发送数据, 阅读全文
posted @ 2020-03-28 20:16 rls_v 阅读(1545) 评论(0) 推荐(0) 编辑
摘要: 1 git版本管理软件 1.1 git和gitee git是代码版本管理软件,用于记录代码版本的更新迭代;可用于服务器上管理linux内核代码,也可用于windows上管理sdk版本; gitee是托管代码的平台,只支持git的格式,给个人管理自己的代码;相当于只安装了git并且存储空间超大的免费服 阅读全文
posted @ 2020-03-05 19:33 rls_v 阅读(200) 评论(0) 推荐(0) 编辑
摘要: 1 集成开发环境 keil-MDK是集成开发环境,集成了C编译器、宏汇编、链接器、库管理和仿真调试器等在内的完整开发方案; 1.1 预处理器:处理注释和预处理指令;生成.i文件; 1.2 编译器:对预处理器处理之后的文件进行语法分析编译,生成.s文件; 1.3 汇编器:对编译器处理之后的文件进行翻译 阅读全文
posted @ 2020-02-28 23:09 rls_v 阅读(430) 评论(0) 推荐(0) 编辑
摘要: 1 对象:从硬件角度看,每个数据值都需要占用物理内存,这个物理内存在C语言中称之为对象; 对象:可以存储一个或多个值的物理内存; 对象使用"存储期"描述物理内存属性,"作用域"和"链接"来描述使用属性; int i = 3; /*该声明创建了标识符 i ,也就是存储着数据3的对象 i ;*//*程序 阅读全文
posted @ 2020-02-23 16:55 rls_v 阅读(638) 评论(1) 推荐(0) 编辑
摘要: 1、将eclipse工程导入到android studio后的配置。 Error: Your project contains C++ files but it is not using a supported native build system. 在app模块的build.grade中的Bui 阅读全文
posted @ 2019-11-22 09:57 rls_v 阅读(293) 评论(0) 推荐(0) 编辑
摘要: 1,下面附上参考源码,来源慕课;原来的爬虫是爬淘宝首页商品,不过现在淘宝首页要登录验证,不能直接爬取;但是具有参考价值; 阅读全文
posted @ 2018-12-04 22:56 rls_v 阅读(1671) 评论(0) 推荐(0) 编辑
摘要: 前言:数组只能存储相同类型的数据,使用构造类型可以在一个结构中存储不同类型的数据还保持了数据的独立性;提高了信息处理的能力; 1 结构体 struct 1.1 基本结构体 1.1.1 结构体声明 struct Book{ char title[100]; float price; }; /*结构体定 阅读全文
posted @ 2018-10-18 14:16 rls_v 阅读(2839) 评论(0) 推荐(0) 编辑
摘要: 1 C语言 什么是C语言呢? C语言是面向过程编程的高级语言;既可以像高级语言那样使用逻辑算法来编程,也具备低级语言面向计算机硬件编程; C语言啥都可以干呢棒棒哒;既可以自己写逻辑算法、数据结构,然后封装成接口给别人调;也可以代码直接操作寄存器和外设; 那么平常吹水时老听水牛们说的面向对象编程又是啥 阅读全文
posted @ 2018-10-16 22:18 rls_v 阅读(792) 评论(0) 推荐(1) 编辑
摘要: 1 import random 2 import time 3 from tkinter import * 4 5 6 #下面定义一个球的类,有canvas和color两个对象 7 class Ball: #定义一个Ball类的函数 8 def __init__(self,canvas,paddle 阅读全文
posted @ 2018-04-20 19:11 rls_v 阅读(2728) 评论(0) 推荐(0) 编辑
点击右上角即可分享
微信分享提示