![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
嵌入式
Evan_Wang1
从事嵌入式软件开发,开发中用到STM32,hi3536等芯片;热衷于嵌入式linux技术
展开
-
RTT实现串口打印
在做一个关于STM32项目时候发现串口资源缺少,就发现了通过Jlink工具里面自带的RTT可以实现串口输出打印,实现调试的功能,节约一个串口资源。1.在J-falsh安装的目录下面有关于RTT的文件(源文件和头文件)2.把源文件加入自己的工程中。3.在要用的文件中包含RTT的头文件。就可以调用RTT的printf函数就行数据的输出。4.打开Jlink_Reviewer的软件,就可以看见打印的信息,...原创 2021-11-10 14:25:15 · 8195 阅读 · 0 评论 -
BootLoader(U-Boot)启动过程记录
BootLoader(U-Boot)启动过程记录 定义 Bootloader终极目的是引导内核,加载内核到内存然后跳转到内核的地方执行,在加载之前也会做一些硬件的初始化等等操作。启动模式分为两种:启动加载模式(产品形式,自启动),下载模式(开发模式,适用于开发人员调试使用);以下记录都是以U-Boot为例。 源码下载地址 ftp://ftp.denx.de/pub/u-boot/ 启动分析 本次记录是以hi3536启动流程为例进行的。 概述 U-Boot启动分析我大致分为两个阶段:汇编代码阶段,C语言阶段原创 2021-11-10 14:22:12 · 5119 阅读 · 0 评论 -
Linux串口特殊字符处理问题
一、问题描述 在嵌入式linux系统中通过串口收发数据,特殊字符如0x03,0x00等导致接收数据截断等现象。 二、原因分析 1、在对串口进行配置的时候 struct termios 结构体参数设置问题,特殊字符在串口驱动内部做了处理,导致应用层接收不到数据 2、或则是在应用层接收数据后,数据拷贝出现的问题,如果使用C++语言,通过赋值拷贝遇到结束符(0x00)结束拷贝,导致数据截断 三、解决方法 1、修改文件描述符fd相关的结构体struct term...原创 2021-05-06 11:42:05 · 5193 阅读 · 0 评论 -
A40i nfs挂载问题
背景: 使用A40i的过程中,使用全志提供的源码没有办法挂载nfs(network file system),对开发效率有影响。 原因: 1、内核不支持nfs 2、在编译buildroot的时候没有工具支持nfs 3、挂载的网络目录必须有相应的权限 以上的几点需要同时支持才能通过mount挂载nfs。 注:保证开发板与要挂载的服务器网络的通畅,如果有问题需要配置网络。 解决方案: kernel添加nfs支持,编译到内核中 进入kernel源码,执行make menconfig命.原创 2020-11-11 11:37:44 · 3460 阅读 · 0 评论