logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

ARM+Linux嵌入式开发05:【uboot-2017移植】重定位

概述上一节初始化好了串口和LED,我们可以用它们进行调试;也设置好了时钟和DRAM,为uboot的重定位做好准备。之前所做的所有工作都是在BL1中,也就是uboot的前16KB,而大部分uboot的代码还在SD卡中没有载入内存,没有载入内存的原因是之前我们使用的是内部SRAM,容量不足以放下整个uboot,而现在已经初始化好了外部DRAM,拥有了512MB内存,是完完全全够放下整个uboot,所.

#嵌入式
PX4开发(2):QGroundControl的使用及电调校准——准备起飞

1. 介绍上一节把固件烧写好了,接下来进行传感器的校准了,传感器校准要使用官方的地面站,也就是QGC(QGroundControl,官网下载点击这里)。安装好QGC后打开,然后将pixhawk使用USB线连接到电脑,QGC上就可以显示当前板子的状态。我这里是校准好了的,所以有一个绿色的小点,没有校准应该是红色的,接下来进行传感器校准,校准可以参考这个视频。因为我们已经烧写好固件

busybox移植到ARM开发板

1. 什么是busybox(1)busybox是一个C语言写出来的项目,里面包含了很多.c文件和.h文件。(2)busybox这个程序开发出来就是为了在嵌入式环境下构建根文件系统(以下简称rootfs)使用的,也就是说他就是专门开发的init进程应用程序。(3)busybox为当前系统提供了一整套的shell命令程序集。譬如vi、cd、mkdir、ls等。在桌面版的linux发行版(譬

#arm#c语言
Linux驱动开发08:【设备树】MPU6050驱动和i2c驱动

介绍上一节在nanopi设备树的I2C节点下增加了一个MPU6050的子节点,并在sysfs中查看到了该节点已经被正确解析,这一节我们来修改之前的MPU6050驱动,使之能够匹配到我们的设备树节点,然后再分析设备树节点是如何加载到i2c总线上的。MPU6050驱动的变更在之前的MPU6050驱动中,为了方便测试,我们是在模块的init函数中临时注册了一个i2c_client到i2c...

Linux驱动开发11:【设备树】nanopi的PWM驱动

介绍前两节利用设备树实现了nanopi的LED驱动和按键驱动,这一节来实现nonapi的PWM驱动。PWM驱动在内核中也有相应的实现,因此这里只是按照要求添加设备树文件即可。这一节和之前一样,首先修改设备树文件进行测试,然后分析内核相应的软件实现。添加设备树节点因为在sunxi-h3-h5.dtsi和sun8i-h3-nanopi.dtsi文件中已经定义了PWM节点// s...

Linux驱动开发05:【I2C驱动】I2C总线驱动和设备驱动

介绍这里实现一种不涉及硬件的I2C总线和设备驱动,然后分析I2C驱动在系统中的注册过程。这里实现的驱动类似于之前的FIFO字符设备驱动,与之不同的是这里使用了I2C驱动框架,设备文件写入和读取将通过i2c_client传递到指定的i2c_adaper,然后在i2c_adapter中操作一段内存。这个驱动非常简单,甚至没有使用FIFO这种硬件结构,只能进行读和写,毕竟内存的操作不是中断,重点是熟..

树莓派、51、arduino和树莓派几种常用芯片及开源硬件的比较

血统IDE语言价格硬件资源下载方式开发难度51KEILC3~10PWM/AD/SPI/UART串口简单stm32KEIL/IARC12PWM/AD/DMA/I2C/SPI/UART/CAN/USB串口/编程器较难arduinoarduino ide类C12PWM/AD/I2C/SPI/UART串口最简单树莓派li...

#51单片机#stm32
到底了