自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

默默奔跑

记录学习过程

  • 博客(60)
  • 资源 (8)
  • 收藏
  • 关注

原创 由前序遍历序列和中序遍历序列重建二叉树

#include "iostream"using namespace std;typedef char ELEM_TYPE;typedef unsigned char INT8U;typedef unsigned short int INT16U;typedef struct BiTNode { ELEM_TYPE data; struct BiTNode

2014-12-16 21:24:17 581

原创 二叉树的创建

二叉树的创建

2014-12-10 21:10:23 426

原创 getchar 函数浅谈

getchar()的作用就是从终端输入一个字符,

2014-08-30 14:03:02 773

原创 ATF固件生成(一)

ATF固件生成

2023-01-29 14:47:48 316 1

原创 Makefile学习笔记(一)

Makefile学习笔记(一)

2023-01-29 11:30:34 469

原创 C语言宏定义立即数后缀U的含义

C语言宏定义立即数后缀U的含义

2023-01-05 16:57:38 2518

原创 局部变量未初始化对性能的影响

局部变量未初始化对性能的影响

2023-01-04 11:57:34 151

原创 SMC详解

SMC

2022-12-30 19:32:17 1888

原创 Git冲突解决方法

Git冲突解决方法

2022-10-06 13:42:30 712

原创 Git仓库迁移后版本信息同步

Git原仓库迁移后版本信息同步问题服务器地址变化后版本信息同步问题

2022-09-11 16:47:39 219

原创 Git本地实现服务器搭建

Git本地实现服务器搭建

2022-09-10 09:41:16 3374

原创 Linux设备树学习(三)Pinctrl

Pinctrl学习

2022-08-07 23:13:43 366

原创 Linux设备树学习(二)设备树的解析

使用TDC进行设备树解析

2022-08-07 20:03:42 536

原创 Linux设备树学习(一)

Linux设备树

2022-08-02 23:23:29 157

原创 NorFlash的存储原理

NorFlash的存储原理

2022-07-31 15:55:44 2699

原创 ARM Development Studio build编译报错

使用ARM Development Studio工具编译出现下面错误process_begain:CreateProcess(NULL,echo " ", ...)failed

2022-06-23 10:36:11 270

原创 ARM Development Studio build重复编译问题

背景:导入一个工程后,即使没有修改工程文件,重新编译还是全编解决方案:所在工程不能有中文路径注:用的工具自动生成的makefile

2022-06-09 10:21:51 108

原创 S3C22440 JTAG连接不上

S3C22440 JTAG连接不上

2022-04-28 22:32:06 507

原创 GCC详解

背景在项目开发过程中,会经常用到gcc进行代码编译,但是对其了解只是停留在表面,故希望通过本文梳理,对其有更深入的了解。简介(1)全称是GNU Compiler Collection,本质上是由GNU开发的编译器。(2)可以编译多种语言,典型的如C,C++,JAVA等。其已经被大多数操作系统(linux, windows)作为标准的编译器。(3)支持多种架构芯片(Mips,ARM)等。基本语法gcc [options] [filenames]执行过程1> 预编译..

2022-04-13 23:43:17 2956

原创 一. volatile关键字的作用

Volatile意思是“易变的”,应该解释为“直接存取原始内存地址”比较合适。“易变”是因为外在因素引起的,像多线程,中断等。编译角度:防止编译器对代码优化,避免生成的机器代码少了一些指令,如果这些缺少的指令刚好是控制硬件的时序逻辑,就会出错。应用场景:(1) 硬件寄存器int32* pnGpioB= (int32*)0xf0000000;//定义一个IO端口;*pnGpioB = 0x01;*pnGpioB = 0x02;*pnGpioB = 0x04;*pnGpioB = 0x

2022-03-31 10:58:45 747

原创 嵌入式实时操作系统uc/OS-II第7章课后习题1-4

一.什么叫内存分区?什么叫内存块?内存分区和内存块之间有什么关系?二.同一个分区的内存块是按什么组织起来的?三.什么叫内存控制块?内存控制块都记录了什么信息?四.设计一个有两个任务的应用程序,其中一个任务用来进行两个加数的运算,另一个任务用来显示结果,要求把加法运算的结果存放到动态内存当中。总结

2022-03-30 13:46:08 741

原创 嵌入式实时操作系统uc/OS-II第5章课后习题5-9

五.什么叫消息邮箱六.能否用全局变量实现任务之间的通信?如果可以,他有什么缺点?七.使用消息邮箱实现任务之间通信有什么好处?八.什么是消息队列?九.在应用程序中消息队列可以做哪些工作

2022-03-05 16:59:43 464

原创 嵌入式实时操作系统uc/OS-II第5章课后习题1-4

一,叙述信号量的工作过程二,使用信号量可以在应用中完成哪些工作?三,什么叫优先级翻转现象?这种现象会在什么情况下发生?有什么危害?四,互斥信号量是如何防止优先级反转现象出现的?

2022-02-27 00:06:34 322

原创 嵌入式实时操作系统uc/OS-II第4章课后习题4-6

四. uC/OS-II的系统时钟是如何实现的?在时钟节拍服务中做了什么工作?五. 如何在中断程序中激活一个任务六.说明延时函数OSTimeDly与OSTimeDlyHMSM的区别

2022-02-26 17:36:48 585

原创 嵌入式实时操作系统uc/OS-II第4章课后习题1-3

一.简述uC/OS-II的中断响应过程二.全局变量OSIntNesting的作用是什么?三.uC/OS-II的中断服务程序何时返回被中断的任务?何时不返回被中断的任务?

2022-02-26 14:15:56 600

原创 嵌入式实时操作系统uc/OS-II第3章课后习题17

十七.编写一个有2个任务的应用程序,每一个任务每次运行显示一个字符当调度器进行了5次调度之后,这些显示的字符会在显示器上构成一个字符串"Hello, uC/OS-II!"。

2022-02-13 22:09:47 654 1

原创 嵌入式实时操作系统uc/OS-II第3章课后习题13-16

十三.编写一个有3个任务的应用程序,每个任务均会在显示器上显示一个字符,并让三个任务有不同的等待时间,观察应用程序运行中任务被调度的情况?十四.编写一个有3个任务的应用程序,每个任务均会在显示器上显示一个字符,并让一个任务查询另外两个任务的信息,并在显示器上显示出来。十五.编写一个有3个任务的应用程序,并让其中两个任务在合适的时候删除自己十六.编写一个有3个任务的应用程序,在调度器每进行一次任务切换后在显示器上显示正在运行任务的任务控制块指针

2022-02-11 23:21:56 1273

原创 嵌入式实时操作系统uc/OS-II第3章课后习题10-11

十.OSRdyGrp有什么用?十一.简述在任务就绪表中查找具有最高优先级的就绪任务的过程

2022-01-22 10:18:12 756

原创 嵌入式实时操作系统uc/OS-II第3章课后习题5-9

五. 在uC/OS-II中任务有哪五种状态六.任务控制块中记录了任务的哪些信息?七.什么是空任务控制块链表,什么是任务控制块链表?八. OSTCBTbl[] 有什么用途?九. 正在运行任务的任务控制块指针存放在哪个指针变量中?

2022-01-20 22:31:13 957

原创 嵌入式实时操作系统uc/OS-II第3章课后习题1-4

一. 什么是可剥夺性内核二.一个应用程序为什么一定要使用空闲任务三.统计任务是必须使用的吗?四.什么叫做任务的优先权?uc/OS-II是用什么来描述任务优先权的?

2022-01-12 23:05:40 699

原创 码云项目下载和上传

码云项目下载和上传

2022-01-12 21:16:08 525

原创 Git高级操作之rebase

Git高级操作之rebase

2022-01-11 23:19:43 1776

原创 Git进阶操作

介绍branch,checkout,Switch,Log ,Stash等5个进阶命令的使用

2022-01-07 00:25:13 380 2

原创 Git基本操作

git的基本操作命令

2022-01-03 12:43:10 521

原创 git安装

git下载和安装

2022-01-03 11:38:42 175

原创 git简介

git的优势

2022-01-03 10:59:17 189

原创 UCOSII cpu利用率实现原理

目的:介绍UCOSII中 cpu利用率计算方法使用方法:1:在启动任务中调用OSStatInit();2:在合适的地方打印OSCPUUsage,就可以得到当前系统cpu的利用率。要特别注意的是系统调用OSStart()后只有3个任务处于 就绪态,分别是1>启动任务2>统计任务3>空闲任务...

2019-04-05 22:30:08 1727

原创 Cotrex-M3内核之NVIC

NVIC简介:其除了是熟知的嵌套向量中断控制器外,还包括Systick定时器和MPUNVIC功能: 中断在使用前应当先对其进行分组设置(确定抢占优先级和亚优先级的位数),原则就是根据当前系统方案的实际使用情况进行设定,比如当前系统一共使用了多少中断,对其进行优先级评估。众所周知,Cortex-M3使用8位来表达优先级,分为抢占优先级和亚优先级,所以其最对支持256种不同的优先...

2019-03-11 00:09:15 546

原创 通过MDK工具确定中断或异常发生的类型

环境:STM32F103中断的确定方法:准备:先触发uart1的接收中断方法1:观察下面的窗口(这种方法适合中断和异常)Register中的ISR表示当前发生中断的编号为53,然后在NVIC窗口中查53号对应的中断类型即可方法2:观察下面的窗口(这种方法仅适合中断)IABR:某个中断发生时,其对应的bit位就自动设置为1,然后查控制器对应的中断位置,就可以确定中断触...

2019-03-03 12:46:22 670

原创 通过stm32f103往W25Q128中写数据

背景:对于嵌入式项目而言,不可避免的要往备份数据,对于小系统而言,通常将数据备份到NorFlash中,本文就对华邦W25Q128这款Flash的写操作进行梳理。本文通过Page Program (02h)命令进行写入,其标准操作流程如下:根据操作流程,操作步骤如下:1>确保将要被写入的区域被擦除2>使能状态寄存器中的WEL位3>根据PageProgram时...

2018-10-28 17:06:59 3915 2

波形.zip

波形.zip

2023-05-23

malloc实现源码

动态内存管理含有碎片收集策略,快速申请,方便移植,可以用于嵌入式系统中

2018-07-24

cortex-m3 fault问题解决方法

当cortex-m3内核发生异常时,将异常前的寄存器相关信息打印出来,方便debug

2018-06-09

在STM32上移植freertos。可以软件仿真

在MDK开发环境下,通过软件仿真的方式实现freertos在stm32f103芯片上的移植

2018-03-21

在STM32上移植UCOS。可以软件仿真

在STM32上移植UCOS。可以软件仿真,不依赖与硬件,不用依赖硬件就可以看到打印信息,比较方便学习UCOS

2017-12-09

赫夫曼编码c语言实现

模块化编程实现赫夫曼编码、其实现过程涉及链表、栈、队列、结构体等知识点

2015-01-11

Infinova2014年秋季笔试招聘题目

Infinova2014年秋季嵌入式笔试招聘题目

2014-12-31

小甲鱼赫夫曼编码C语言实现

小甲鱼赫夫曼编码C语言实现,其中编译环境是VS2008

2014-12-31

tm1628浅谈

本人利用Tm1628做过数码管驱动开发,期间遇到一些问题,通过自己的理解与大家分享下,希望共同进步

2014-09-11

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除