![](https://img-blog.csdnimg.cn/20190927151043371.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
物联网
文章平均质量分 81
读书心得
zacch66
这个作者很懒,什么都没留下…
展开
-
STM32开发笔记04---配置系统时间
架构图思考重点本文的目的是使用HSE外部晶振来配置系统时钟参考手册中的时钟树如何理解理解开发版初始化过程中对系统时钟的操作如何自行变更系统时钟配置时钟源在开发版STM32F429,以HSE, HSI, PLL作为主要的系统时钟的信号来源,并拥有LSI, LSE低速内外部信号时钟源,两者频率分别为32, 32.768kHz时钟源相当于节拍器的功能,藉由稳定的信号源输出,可以有效配置出单位时间内系统的运算次数。下面探讨三个主要的系统时钟来源的功能与特色:HSE高速外部时钟信号可由原创 2022-01-22 21:06:47 · 2798 阅读 · 0 评论 -
git不再支援帐号密码验证
git在8/12停止了使用帐号密码作为资料上传的验证,改为较为安全的ssh,所以假如你使用帐号密码作为验证会得到缺乏权限的http 403 error解决方法是在本机端建立私钥,在github端要使用本地端生成的公钥,使双方进行同步加解密机制首先需要在本地端生成金钥存储key的位置不用改动,直接enter就好,接下来会要求设置密码,一样可以直接enter到底完成密码设定以后,公钥与私钥式存放在/home/zach/.ssh 中,我们cd到这个资料夹底下就可以看到id_rsa:私有金钥,与id_rs原创 2022-01-16 14:58:12 · 333 阅读 · 0 评论 -
STM32开发笔记03---Bit-Banding
架构图带位操作原理以往我们在使用暂存器时,都是在操作该暂存器32bits(4bytes)的储存地址,要对其中单一bit进行操作,可以仰赖bit operation来完成。而bit-banding(位带操作)的目的就是实现直接操作单一比特位为了达成这个目的首先我们有必要理解STM32的特殊存储区段位带区与位带别名区。下图中的红色方框代表位带区的范围,可以看到SRAM中位带区佔有1MB,外设区段部分,1MB的储存范围刚好涵盖了AHB, APB1, APB2,可以说我们使用的大部分外设,例如GPIO,原创 2022-01-08 21:46:05 · 1061 阅读 · 0 评论 -
Modbus RTU简介(上)
1 前言1.1 什麽是ModbusModbus是一种用于工业控制的标准通信协议,它定义了装置之间在应用层的消息封装模式、沟通方法、沟通顺序。Modbus的优势 :Modbus协议是开源免费的Modbus支援多种常见工控接口(RS232, RS485, TCP/IP etc.),且可以各种物理层装置上传输(双绞线、光纤、无线等)Modbus格式简单易于开发Modbus能够将众多设备连接到DCS, PLC系统上,再利用服务器(云、中央计算机)进行监控与下达指令,以便于集中式控制。原创 2021-10-26 16:20:41 · 15644 阅读 · 0 评论 -
STM32开发笔记02---新建库函数工程
架构图创建工程首先我们先创建一个资料夹example,路径最好配置为全英文,然后分别在example资料夹内再创建6个资料夹,分别是:DocLibrariesListingOutputProjectUser然后开启keil,选择Project → New uVision Project新建一个工程位置选择我们刚刚创建的example资料夹下的Project资料夹,命名后按下确定新增专案接着选单会要求你选择开发版的型号,查看开发版资讯然后依序找到对应版本,如图我的开发板使用的是S原创 2021-12-25 09:47:26 · 629 阅读 · 2 评论 -
STM32开发笔记01---暂存器简介
架构图前言在进行底层开发时,尤其是C语言,我们时常与暂存器打交道,不过到底暂存器的确切定义是甚麽?有时很难确切定义有些书将暂存器想像成一排书柜中的特定一格,对这些特殊抽屉,可以将抽屉打开拿取裡面的纸条,也可以把新的纸条放进去。我个人蛮喜欢这个比喻法,但也让我思考,到底能不能用更精准的方式去定义暂存器呢思考重点暂存器与记忆体映射之间的关联暂存器存在的意义如何查找数据手册编写一个点灯案例暂存器概念为了釐清暂存器的概念,我特地找了一块32bits的STM32F4型开发版,核心使用STM4原创 2021-12-05 22:27:21 · 1339 阅读 · 0 评论 -
Keil error: #101: “name“ has already been declared in the current scope解决方法
keil编译发生错误#include <stdio.h>#include <stdlib.h>... // 标头档#define Result_TIMOUT 3#define Result_INTIAL 0#define Result_ERROR 1... // 预处理typedef enum{ MD_INIT, HARDWARE_CHECK, F.原创 2021-10-25 16:17:09 · 4463 阅读 · 1 评论 -
浮点数的二进位表达方法
浮点数的二进位表达方法浮点运算知识点小数二进制表达与整数的二进制表达相同我们可以假设任意小数的二进制为 1011.0011也就是说,按照跟整数转换相同的思路我们可以换算出 1*2^(3) + 0*2^(2) + 1*2^(1) +1*2^(0) + 0*2^(-1) + 0*2^(-2) + 1*2^(-3) + 1*2^(4) = 11.1875不过像1011.0011这种表达式是给人看得,真正在计算机内传输,是运用更高效率的科学记号方式,更进一步说是运用了正则表达式与ECXESS系统,毕原创 2021-09-24 11:05:18 · 325 阅读 · 0 评论