点点滴滴

不积跬步,无以至千里;不积小流,无以成江海。

储备列表

  • microlib

    1

    1.选上”Use MicroLIB”这是KEIL自带的一个简易的库2.microlib 是缺省 C 库的备选库。它用于必须在极少量内存环境下运行的深层嵌入式应用程序,并进行了高度优化以使代码变得很小。它的功能比缺省C库少,并且根本不具备某些 ISO C 特性。某些库函数的运行速度也比较慢,例如memcpy()。3.1) 使用C++,不能再使用MicroLIB,MicroLIB不支持C++,会报错;2) 使用MicroLIB,会自动关闭半

    soskp-yoours2021-07-13 21:45:37

    阅读更多
  • java网络客户端与设备通讯 - SocketChannel

    2

    一、来源使用java实现原c++编写的设备sdk网络部分,其他部分如协议解析等直接改写成java代码。二、java网络实现package com.yoours.berryz2007.api;import java.io.IOException;import java.net.InetSocketAddress;import java.nio.ByteBuffer;import java.nio.channels.SocketChanne

    soskp-yoours2021-07-03 15:36:00

    阅读更多
  • 创建并调用Jar包

    3

    一、创建java应用程序二、选择带有主函数三、创建名称四、编写jar中被调用的接口五、主函数中编写调用接口(生成jar包需要至少调用一个即可)六、设置编译jar包方法七、设置主函数类(也叫测试类)<img src="http://images.soskp.com/

    soskp-yoours2021-07-01 22:47:32

    阅读更多
  • springboot跨域访问

    4

    一、跨域访问        只实现了cookie跨域访问二、拦截器public class CorsInterceptor implements HandlerInterceptor {    public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object han

    soskp-yoours2021-07-01 21:57:17

    阅读更多
  • 创建调用动态库的Jni接口文件

    5

    一、创建java应用程序二、编写java接口文件例如:package com.yoours.berryz2007.jni;public class ReaderJni {    public static native int openReader(String ip, String port);    public static native void closeReader(int hRead

    soskp-yoours2021-06-30 19:58:29

    阅读更多
  • STM32启动文件

    6

    1. 启动文件简介启动文件由汇编语言编写,是系统上电复位后第一个执行的第一段程序。主要做了以下工作:初始化堆栈指针 SP = _initial_sp初始化PC指针 = Reset_Handler初始化中断向量表配置系统时钟调用C库函数_main初始化用户堆栈,从而最终调用main函数。2. 汇编LDR 从存储器中加载字到一个寄存器中BL  跳转到由寄存器/标号给出的地址,并把跳转前的下条指令地址保存到LRBLX 跳转到由寄存器

    soskp-yoours2021-06-19 12:07:23

    阅读更多
  • 基于STM32F207ZGT6移植UCOS2(版本2.93.01)方法

    7

    1. 使用 STM32CubeMX 创建STM32基础工程2. 下载ucos2源代码        https://github.com/weston-embedded/uC-OS2/archive/refs/tags/v2.93.01.zip 3. 移植ucos源文件   将图1中文件拷贝至工程文件夹中4. 移植cpu相关文件

    soskp-yoours2021-06-19 10:52:25

    阅读更多
  • STM32特殊功能寄存器PRIMASK、FAULTMASK、BASEPRI

    8

    一、PRIMASK和FAULTMASK寄存器通过MRS/MSR方式或CPS指令访问。PRIMASK:        置1时,通过把当前优先级改为0(可编程优先级中的最高优先级),来除能NMI和硬fault之外的所有异常。通过PRIMASK来实现开中断、关中断功能。FAULTMASK:      &n

    soskp-yoours2021-06-19 10:13:23

    阅读更多
  • STM32优先级、分组、子优先级

    9

    一、分组寄存器AIRCR二、分组优先级每一个中断都有4bit优先级设置寄存器(SHP、NVIC_IP),通过分组将优先级分为抢占式优先级和子优先级两部分,优先级范围由组设置决定。Group priorities 抢占式优先级Sub priorities 子优先级分组解释如下:在中断发生时:    如果只有一个中断发生则中断当前程序执行中断程序;    如果有一个中断正在执行,又有一个中断发生:&n

    soskp-yoours2021-06-19 09:59:49

    阅读更多
  • ARM架构

    10

    ARM Contex系列处理器是基于ARMv7架构的,分为Cortex-M、Cortex-R和Cortex-A三类。STM32F2:ARM® 32-bit Cortex®-M3STM32F4:ARM® 32-bit Cortex®-M4均属于ARMv7M系列架构

    soskp-yoours2021-06-19 08:19:18

    阅读更多