ICode9

精准搜索请尝试: 精确搜索
  • 算法刷题--位运算2021-09-21 11:32:03

    Code 1 : Power of Two Given an integer n, return true if it is a power of two. Otherwise, return false. An integer n is a power of two, if there exists an integer x such that n == 2x. Example 1 Input: n = 1 Output: true Explanation: 2^0 = 1 Example 2 In

  • 【STM32CUBE+IAR+IAP升级】2021-09-19 19:00:54

    STM32CUBE+IAR+IAP升级 案例应用:利用IAR+串口调试助手对STM32F411VET6进行简单的IAP实现,(代码分为两部分:BootLoader+APP翻转LED) 1.工具: IARSTM32CUBEMX串口调试助手IAP预备知识参考:STM32CubeIDE IAP原理讲解,及UART双APP迭代升级IAP实现声明下:本文章参考[sudaroot]的文章STM32C

  • 【网络仿真】ns3-gym/rl-tcp2021-09-19 13:58:27

    运行 # Terminal 1 # ./waf --run "rl-tcp --transport_prot=TcpNewReno" ./waf --run "rl-tcp --transport_prot=TcpRl" # Terminal 2 cd ./scratch/rl-tcp ./test_tcp.py --start=0 基本接口 例如在Python脚本中,这样写。(注:gym.make('ns3-v0')启动当前工作目录中的n

  • 基于STM32L4的NVIC中断系统2021-09-15 13:33:29

    STM32L4中断系统          STM32L4基于Cortex-M4架构,内部有一个嵌套中断向量控制器(NVIC)来管理异常,并将优先级最高的异常提交给CPU处理。异常的编号范围是1~255,其中编号1~15被归为系统异常(如NMI、SYSTICK等),编号16~255被归为外部异常(也称外部中断,如UART、EXTI等),各个异常源

  • 【笔记】对golang的大量小对象的管理真的是无语了……2021-09-11 20:00:22

    业务中有这样一个struct: type bizData struct{ A uint64 B uint64 C int32 D uint32 } 虽然没有实测,但我猜测这样的对齐方式,这个struct占24字节。 业务中用一个map指向这些对象: map[uint64]*bizData 这样的存储对象,一个容器开启10GB内存,最多存储60万左右的对象,容器内

  • python实现tea/xtea/xxtea加密算法2021-09-05 20:33:52

    tea/xtea/xxtea加密算法 概述teaxteaxxtea总结 概述   这里记录一下采用python实现三种加密算法的方式,话不多说,直接上代码。 tea from ctypes import * def encrypt(v, k): v0, v1 = c_uint32(v[0]), c_uint32(v[1]) delta = 0x9e3779b9 k0, k1, k2, k3

  • Endian2021-09-02 13:02:42

    Endian 寻址 多字节对象被存储为连续的字节序列,对象的地址为所使用字节中最小的地址。 例如,假设一个类型为 int 的变量 a 的地址为 0x100,也就是说,地址表达式 &a 的值为 0x100。那么,(假设数据类型 int 为32位表示) a 的 4 个字节将被存储在内存的 0x100、0x101、0x102 和 0x103 位置

  • golang获取ntp服务器时间2021-08-29 18:01:36

    package main import (     "encoding/binary"     "flag"     "fmt"     "log"     "net"     "time" ) const ntpEpochOffset = 2208988800 type packet struct {     Settings       uint8     Stratum   

  • uart write example2021-08-29 08:33:07

    static void uart_loopback_test(){ uint8_t tx_data[8] = {0x00,0x00,0x04,0x00,0x00,0x00,0x00,0x00}; uint8_t tx_dataRelease[8] = {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}; // uint8_t *pData = (uint8_t)&tx_data; // Start sending one byte and s

  • 强制类型转换和sizeof2021-08-27 16:31:38

    最近在debug时候遇到一个非常有趣的语法bug。 #define REG_ADDR(x)  ((volatile uint32_t *)(uintptr_t)(HU + OFFSET) i = i =0x4; READ(REG + i); //我的本意是想在OFFSET的基础再加 i,这样来读取想要的数值。 但实际结果确实: printf("OFFSET + i =%x\n", READ(REG + i)); 10...

  • LeetCode 算法 191:位1的个数2021-08-03 21:58:14

    编写一个函数,输入是一个无符号整数(以二进制串的形式),返回其二进制表达式中数字位数为 ‘1’ 的个数(也被称为汉明重量)。 直接mod2看最后一位是不是1,然后再进行向右移位操作 class Solution { public: int hammingWeight(uint32_t n) { int c=0; while(n)

  • 基于STM32单片机驱动HX711的代码分享,仅供参考2021-08-03 15:02:24

    最近在搞一个需要加入称重模块的项目,在调试的时候也是遇到了很够狗血的问题,也参考了别的工程师的设计。所以,闲话少叙,上代码 /************************************ HX711_Dout----------PB9 HX711_SCK-----------PB8 **************************************/ #include "hx71

  • STM32内部Flash读写操作2021-08-02 02:00:06

    STM32内部Flash读写操作 硬件平台:以STM32F103C8T6为例 固件库SDK版本:HAL V1.8.3 目录STM32内部Flash读写操作1、内存映射介绍2、Flash分布介绍3、读写flash操作流程4、代码实现 1、内存映射介绍 (1)stm32的flash地址起始于0x0800 0000,结束地址是0x0800 0000加上芯片实际的flash大

  • 《操作系统真象还原》第十一章 ---- 实现用户进程 欺骗CPU通彻进程原理 眺望终点到达还需砥砺前行2021-08-01 12:06:04

    文章目录 相关查阅博客链接本书中错误勘误定义并初始化TSS修改后的global.h编写后的tss.c编写后的tss.h修改后的init.c修改后的MakeFilemake all 验证成果 实现用户进程进程相关的内存分配理解进程相关的创建进程理解修改后的thread.h修改后的global.h修改后的memory.c修改

  • 结构体变量的首地址获取注意事项2021-07-30 14:31:47

    1.结构体变量的地址就是结构体的首地址 2.结构体第一个成员的地址就是结构体的首地址 要获取结构体变量的首地址,就是要获取结构体变量第一个元素的地址。 例如: typedef struct {     uint16 Kp;     uint16 Ki;     uint16 Kd; } spidPID;                   

  • CCS编译 报警#190-D enumerated type mixed with another type2021-07-30 13:59:05

    引用函数extern Fapi_StatusType Fapi_doMarginRead(                                         uint32 *pu32StartAddress,                                         uint32 *pu32ReadBuffer,                        

  • 鸿蒙轻内核定时器Swtmr:不受硬件和数量限制,满足用户需求2021-07-29 12:02:09

    摘要:本文通过分析鸿蒙轻内核定时器模块的源码,掌握定时器使用上的差异。 本文分享自华为云社区《鸿蒙轻内核M核源码分析系列十四 软件定时器Swtmr》,作者:zhushy 。 软件定时器(Software Timer)是基于系统Tick时钟中断且由软件来模拟的定时器。当经过设定的Tick数后,会触发用户自定义的

  • 【ThreadX全家桶】GuiX移植之LTDC2021-07-28 10:04:51

    【ThreadX全家桶】GuiX移植之LTDC 一、LTDC配置1、使用STM32CubeMX配置并生成LTDC工程。2、时钟配置界面配置符合需求的LTDC时钟。3、LTDC基础配置4、LTDC层配置5、LTDC IO设置 二、测试LTDC 一、LTDC配置 1、使用STM32CubeMX配置并生成LTDC工程。 2、时钟配置界面配置

  • 一个RingBuffer(C语言)2021-07-26 19:31:41

    也是用于STM32平台下. 通常用于串口通讯缓存. 之前看到一些其他项目写的Buffer缓存. 实在是太不简洁了, 而且还可能有bug. 例如   当处理数据不够快时, 缓存会直接被覆盖, 而不产生任何提示.   每次Update都判断 read指针 是否等于 write指针, 是的话又重新将 read和write指针

  • STM32-GPIO 8种工作模式2021-07-11 11:32:19

    前言:对于初学者,刚开始学习GPIO的工作模式时,可能会发现一个问题,官方给的关于8种工作模式的枚举定义里面,有出现诸如“0x28”、"0x48"、“0x14”、“0x1C”等等数值,与官方给的端口配置低/高寄存器(GPIOx_CRL)或(GPIOx_CRH)比较之后发现对应不上,因此产生许多不理解,此文粗鄙说明一下

  • dpdk-rte_mbuf数据结构学习2021-07-11 09:55:35

    搞网络不知道dpdk。。。不合适。。。 搞dpdk不知道rte_mbuf。。。不合适。。。 所以,搞搞搞。。。 上源码!!! //关于dpdk rte_mbuf数据结构的学习 /* define a set of marker types that can be used to refer to set points in the * mbuf */ /* 定义一组可用于引用 mbuf 中的设置点

  • 互斥锁Mutex:鸿蒙轻内核中处理临界资源独占的“法官”2021-07-09 11:02:14

    摘要:本文带领大家一起剖析鸿蒙轻内核的互斥锁模块的源代码,包含互斥锁的结构体、互斥锁池初始化、互斥锁创建删除、申请释放等。 本文分享自华为云社区《鸿蒙轻内核M核源码分析系列十 互斥锁Mutex》,原文作者:zhushy 。 多任务环境下会存在多个任务访问同一公共资源的场景,而有些公共

  • 1.7 深入理解Audio系统2021-07-08 00:00:11

    第7章 深入理解Audio系统 7.1 概述 Audio系统是Android平台的重要组成部分,它主要包括三方面的内容: AudioRcorder和AudioTrack:这两个类属于Audio系统对外提供的API类,通过它们可以完成Android平台上音频数据的采集和输出任务。AudioFlinger:它是Audio系统的工作引擎,管理

  • 操作系统真象还原实验记录之实验十九:实现用户进程2021-07-06 14:01:39

    操作系统真象还原实验记录之实验十九:实现用户进程 1.相关基础知识 1.1 特权级(书P229) cs寄存器的最后两位就是CPL,表示了cpu当前特权级。 对于访问数据段(type含有X可执行属性) CPL和RPL<=DPL 对于访问非一致性代码段(type不含有X可执行属性) 只能平级,如果想执行跟高级的代码段

  • ios-如何将UIColor RGB颜色转换为uint32_t值2021-07-06 10:02:21

    本文来自 codeday ,作者 codeday 如何将UIColor对象转换为uint32_t值.请让我知道是否有人知道吗? 这是代码: const CGFloat *components = CGColorGetComponents([UIColor redColor].CGColor); CGFloat r = components[0]; CGFloat g = components[1]; CGFloat b = compon

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有