AD717X 驱动框架,连续读双通道ADC数据;AD7172等 验证方案时用到了AD7172芯片,24位AD,分辨率是真的高,无敌。但是前级放大电路不给力,所以放弃这版方案了。为了更好的移植性,以及复用代码。先写框架,然后通过注册函数的方式实例化对象,通过对象调用设备(简单说就是结构体,函数指针)。如果你使用的是STM32 HAL库,基本上不需要改变。、和MCU相关的文件、移植只需要重写这个文件】.....手册是中文的自己看吧,配合代码不难。PS:整体代码是根据ADI给的代码改写的。【AD7172的寄存器定义文件】
NUC972 Linux学习 NAND FLASH 制作系统 如果一直挂载不上的同学可以试试把这个功能取消,然后到上面两个方式中去配置。2.1、分区可以从以下几个地方开始:Kernel->arch->arm->boot->dts中找到板卡的设备树。其中三个分区,分别为mtdblock0,mtdblock1,mtdblock2。2.2、uboot->include->config中找到板卡的.h文件。刚刚学习挂载.dtb设备树文件,一直没有更新rootfs所以导致报错,重新编译下载rootfs解决。2、如果没有上述的log输出,就是说根本没有进行分区,分区失败了。
spi个人笔记 spi是全双工通讯,收发同时进行。这句话怎么理解?如上图所示:主机产生一组时钟信号,并通过mosi输出8位数据。这个时候,虽然从机没有返回数据(持续低电平),但是因为是 收发同步,所以此时主机已经采集了此次的miso数据。就是说,无论你的目的是发送还是接受,每产生一组时钟信号,就会发送一组数据同时接受一组数据。时钟信号由主机产生,从机回复数据需要通过主机发送数据产生的时钟信号。所以,如上图所示,共两组数据。从机回复数据时,可以通过主机随便发一个无效的数据过来。st
浅析Betaflight中的OSD叠加程序【MAX7456&AT7456】 前言:想要对OSD下手已经不是头一次了,前几次都浅尝辄止。一个是能力不够,BetaFlight的代码体系太庞大了,看不懂也摘不出来。这次要做一款带osd功能的接收机(用在遥控车上),所以又来打飞控程序主意。参考代码:betaflight V4.2.10OSD叠加芯片:AT7456E 【可以在立创商城中搜索PDF的文档】Betaflight中有关于常用飞控型号的图片,经过查看可以知道大多数飞控使用的OSD芯片为AT7456E。解析过程:按照目录结构可以找到关于OSD功能..
LVGL入门 常用的几个命令(个人笔记) 前言:学习LVGL的过程中,常常知道有这个命令,也知道大概怎么用。但总想不起来命令叫什么,在整个库中找也显得麻烦,搞得每次写程序还要翻之前的Demo所以在这里将学习过程中用到的命令 存放在这里,方便再使用的时候方便的找到命令名字。
将STM32 Flash的一部分虚拟为大容量存储设备 USB_Device 因为103VET6的flash块大小为2K,所以要判断blk_addr在那个Flash块中,然后将整个Flash块读出来重新写入。如下图所示:将APP2所用的区域作为 大容量存储设备使用的内存,其中就包括升级需要的bin文件。写入:buf为要写入数据的指针、blk_addr为要写入的块的index、blk_len为要写入几个块(一般为1)大容量存储设备 起始地址为0x0804B000, 在固件之前的内容为FAT系统的其他数据。和bin文件是一样的。
使用python serial 库发送16进制数据 如果data为字符串 要通过bytes.fromhex(data) 转换为ascii码 发送。# 可以直接将10进制的数组 或者 16进制数组给串口发送。这个函数实际传入的data类型可以很多种。注意下面问题即可发送。
C语言常用的注册手段----个人笔记 【动作单元】*n = 【动作】 【动作】*n = 【动作组】接下来我们要将 gClear11111,gClear22222两个【动作】,或者更多【动作】组合成一个【动作组】。为了方便快速调整/新建【动作组】,可以新建一个结构体,结构体存放这些【动作】。为了方便快速新建【动作】,可以新建一个结构体,结构体里面存放这些【动作单元】为了快速组合【动作单元】为【动作】,我们再建立一个结构体。有一系列的【动作】需要排列,成为【动作组】。