raulcy
码龄4年
关注
提问 私信
  • 博客:78,586
    78,586
    总访问量
  • 47
    原创
  • 2,001,433
    排名
  • 140
    粉丝
  • 0
    铁粉
  • 学习成就
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:湖南省
  • 加入CSDN时间: 2020-06-09
博客简介:

raulcy的博客

查看详细资料
  • 原力等级
    成就
    当前等级
    4
    当前总分
    661
    当月
    0
个人成就
  • 获得129次点赞
  • 内容获得40次评论
  • 获得576次收藏
  • 代码片获得867次分享
创作历程
  • 1篇
    2024年
  • 13篇
    2023年
  • 17篇
    2022年
  • 16篇
    2021年
成就勋章
兴趣领域 设置
  • 人工智能
    opencv计算机视觉深度学习神经网络图像处理
创作活动更多

HarmonyOS开发者社区有奖征文来啦!

用文字记录下您与HarmonyOS的故事。参与活动,还有机会赢奖,快来加入我们吧!

0人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

Linux学习笔记9-Linux驱动【1】

Linux中一切都是文件,驱动加载成功后会在/dev生成一个相应的文件,例如/dev/DCmotor,就是直流电机的文件。Linux驱动有两种运行方式,一是将驱动编译进Linux Kernel里面,Kernel启动后会自动运行该驱动,二是将驱动编译成模块(几个函数实现打开设备,关闭设备,向设备写数据实现操作和读取设备状态等功能。写了Linux驱动后需要用应用(App)来操作内核,App属于用户态,和内核是隔绝开的。这几个函数都写进去,如果要实现具体功能,则编写相应代码,否则只需要。),用方法二比较多。
原创
发布博客 2024.01.05 ·
513 阅读 ·
6 点赞 ·
0 评论 ·
10 收藏

Linux学习笔记8-Uboot移植-网络设置和其他坑的解决

解决虚拟机和主机的网络问题
原创
发布博客 2023.12.23 ·
1348 阅读 ·
18 点赞 ·
0 评论 ·
19 收藏

Linux学习笔记7-SPI的应用和ICM-26068

即这个芯片包含了一个3轴的陀螺仪和3轴的加速度计,它支持I2C(最快400KHz)和SPI(最快8MHz)两种通信方式,内部还包含一个温度传感器(测量的是芯片内部的温度),陀螺仪和加速度计的测量范围都可通过寄存器来设置。,陀螺仪的单位是LBS/(°/s),加速度仪的单位是LBS/g,描述的都是如何把传感器输出的数字量转换为实际的角速度数值或加速度值。由于datasheet中我们需要的几个值-X/Y/Z的加速度值和陀螺仪值还有温度值,所在的寄存器是连续的从。
原创
发布博客 2023.12.06 ·
1151 阅读 ·
21 点赞 ·
0 评论 ·
14 收藏

Linux学习笔记7-IIC的应用和AP3216C

的学习,因为以后的项目中会用到这些通信方式,而且正点原子的开发板里面也有用I2C和SPI通信的传感器来做实例,分别是一个距离传感器和六轴陀螺仪,这样就可以很好的通过实例来学习了。,其实就是配置i2c_transfer结构体的各个参数,这个函数的参数是设备地址、要写入的寄存器、写入的数据,返回值可以扩展,可以是0-4,对应未写入(0),I2C1。I.MX6UL有4路I2C,正点原子写的I2C驱动包含了一系列的函数,这些函数其实就是对I2C相关的寄存器做一些置1或者0的操作,所以我们可以学习下常用的对寄存器。
原创
发布博客 2023.12.04 ·
523 阅读 ·
9 点赞 ·
0 评论 ·
9 收藏

AP3216C-datasheet

发布资源 2023.11.29 ·
pdf

Linux学习笔记6-串口应用

要注意,这个是直接打在屏幕上,而我们现在是要把可执行文件烧写到开发板上,通过开发板的串口和PC连接后发送和接收数据,不是一个层面的事情。到现在为止都是在开发板上运行的裸机程序,相当于之前学习STM32单片机时走过的路,还没有真正进入到核心的驱动开发部分,但这都是基础,所以慢慢来不着急。I.MX6UL的串口操作大同小异,和之前的GPIO类似,也是需要第三方的编写函数来操作各个串口相关的寄存器来达到想要的功能。文件夹,再使用正点原子写好的相关驱动,直接放到工程文件夹里,就可以使用串口进行数据的读写了。
原创
发布博客 2023.11.27 ·
575 阅读 ·
10 点赞 ·
0 评论 ·
8 收藏

Linux学习笔记5-GPIO(3)

使用正点原子推荐的SD卡烧写方式,插入到开发板上从SD卡启动,程序启动后LED0闪灭,按KEY0后蜂鸣器会响,再按一下会停,达到了我需要的功能,测试成功。的编写上,而且工程的结构和以后要做的大型项目也差不多,都是外设单独写源文件,所以正好也可以看看实际工程上是怎么利用Makefile来进行编译和链接的。在用于不同工程时,只需要修改TARGET的值,和头文件、源文件文件夹,其他无需修改,就可以应用了,非常方便,所以可以把这个Makefile当作万金油。复用的,所以可以利用上节定义的。函数的定义,这里不赘述。
原创
发布博客 2023.11.21 ·
284 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Linux学习笔记4-GPIO(2)

作为总结,我们可以看到I.MX6UL的GPIO使用远远比STM32不便,首先是没有更方便的库函数,需要去操作和了解寄存器,其次是IO口的复用太多,要深入了解每个复用,没有图形化的界面(怀念CubeMX)来简单操作。例如CCM_CCGR2寄存器的27-26位,对应的是GPIO3的时钟,如果要使能,将这两个位置1,可以使用。I.MX6U和STM32是类似的,每个外设的时钟都可以独立使能或禁止,好了,基本上GPIO的操作就是这些了,STM32的那4个步骤也完成了。需要使能GPIO的时钟时,需要设置。
原创
发布博客 2023.11.13 ·
292 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

Linux学习笔记3-GPIO(1)

答案是有的,NXP为这款主芯片开发了相应的库函数,可以在NXP的官网上下载SDK,有WIN版和LINUX版两种供选择,下载完之后安装,在安装文件夹下找到。以上的学习针对的都是IO口的复用和相关参数设置,但并没有涉及到GPIO的属性,例如怎么设置输入输出,怎么设置高低电平值等等,这一块是怎么设置的呢?(XX代表的是IO的号码),这是个32位寄存器,查询IMX6UL参考手册,可以看到这个寄存器的每位定义,它只有低17位有效,具体来看。,把这几个头文件复制到自己的工程文件夹里,就可以调用相关的库函数了。
原创
发布博客 2023.11.13 ·
224 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

Linux学习笔记2-Makefile

则进入gdb调试页面,使用非常多的调试语句,例如断点、逐行执行、打印某个变量的值,说白了就是IDE中提供的那些调试功能在命令行中实现,讲真还真不方便,对于我这种习惯IDE的人来说还是用VSCode提供的调试功能更现实。但如果工程文件太多(成千上万),或者编译完之后有少数几个源文件修改了,要重新编译的时候是不是得把没有修改的文件包括在一起再来一次呢?开发的多个编程语言的编译器,包含C,C++,Fortran,Objective-C等,也包含了这些语言的库。一下,可以发现只会重新编译更改的源文件,节省了时间。
原创
发布博客 2023.11.03 ·
172 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Linux学习笔记1-入门

之前的基于单片机的闭环控制步进电机项目其实已经完成了,但很多时间都花在调试和生产上,实在没时间去做总结笔记,现在又开始做新项目了,从单片机到了Linux,想用这个平台来督促自己继续学习,所以新开一章。之前的单片机项目应该还是会补全的。
原创
发布博客 2023.10.31 ·
229 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

STM32自学笔记17-步进电机驱动项目-磁编码器的正常使用

在校准过程中,可以通过采集一系列已知角度位置的数据点,并拟合出角度与编码器数据之间的关系。通过拟合,可以建立编码器输出数据与实际相位角之间的非线性转换公式,从而实现更准确的角度测量。代码是这样实现的,在步进电机旋转的每一步都计算下一步和这一步的传感器读取数值的差,如果这个差值和预期不一致,则认为发生了阶跃,同时把阶跃差值确定。在实际使用时,当有外部事件要求(例如实体按键,或者用户界面按钮),会进入中断回调函数。可以看到,进中断时的操作是走一个流程,把每个状态都走一遍,并把采集的数据记录到。
原创
发布博客 2023.07.21 ·
2315 阅读 ·
7 点赞 ·
10 评论 ·
33 收藏

STM32自学笔记16-步进电机驱动项目-磁编码器的校准

步进电机的旋转是360°一圈,磁编码器的取值也是从小到大一圈的值,所以两个点取值有可能出现的情况是:第一个点是最大值,转了一个小角度后这个值会出现跳变到最小值附近,但两个点的平均值绝对不是真实的平均值,需要进行调整。具体而言,校准的目的是。再来考虑步进电机走的步数问题,一般步进电机一圈的步数是200,即每一步走1.8°,所以也要保证算出来的步数在循环周期(即200)之内,可以简单的用。接下去进行步进电机相位角和磁编码器数据的拟合,会在下一节学习,还有最为关键的:正常工作时的编码器驱动回调函数的编写。
原创
发布博客 2023.07.13 ·
4919 阅读 ·
4 点赞 ·
1 评论 ·
54 收藏

STM32自学笔记14-步进电机驱动项目-TB67H450驱动

目前的项目是一种2相4线步进电机的闭环驱动电路,使用的电机驱动芯片是。这一节是步进电机的驱动芯片驱动研究。
原创
发布博客 2023.07.08 ·
4893 阅读 ·
8 点赞 ·
3 评论 ·
62 收藏

STM32自学笔记30-操作系统的入门

里面的代码非常少,while(1)循环不需要任何语句项目就跑起来了,这三个任务都独立运行,至于系统怎么调用,我不太关心,但是关于堆栈、task、queue的知识,我还是要继续学习。,选V2也可以,我的开发板是STM32F1的,V1完全够用了。是比较主流针对STM32的片上操作系统,学习资源较多,我也选取了FreeRTOS作为学习对象。其中第一个是FreeRTOS的初始化,就是我们在CubeMX里面的设置,另一个是os核心,是。里集成了FreeRTOS,而且正如它的名字Free,是完全免费并且开源的。
原创
发布博客 2023.06.29 ·
914 阅读 ·
1 点赞 ·
0 评论 ·
4 收藏

STM32自学笔记15-步进电机驱动项目-磁编码器MT6816驱动

基于STM32F1的MT6816驱动,包括完整的注释
原创
发布博客 2022.10.17 ·
7311 阅读 ·
9 点赞 ·
8 评论 ·
86 收藏

STM32自学笔记13-CLion IDE的使用

CLion编译STM32工程
原创
发布博客 2022.09.02 ·
870 阅读 ·
0 点赞 ·
0 评论 ·
6 收藏

STM32自学笔记-12-和迪文屏的联用

单片机和串口屏(迪文屏)的联合使用
原创
发布博客 2022.08.05 ·
2432 阅读 ·
3 点赞 ·
7 评论 ·
17 收藏

STM32自学笔记-11-RTC3-掉电后日期清零的解决

F103单片机掉电后日期清零问题
原创
发布博客 2022.06.18 ·
2752 阅读 ·
3 点赞 ·
1 评论 ·
18 收藏

STM32自学笔记-10-RTC2-掉电后时间回到初始值

STM32在掉电后RTC时间会回到初始值的解决
原创
发布博客 2022.06.13 ·
2564 阅读 ·
3 点赞 ·
0 评论 ·
18 收藏
加载更多