- 博客(25)
- 资源 (4)
- 收藏
- 关注
原创 rk3568创建基于Ubuntu18.04交叉编译遇到的坑
因为前边安装了 gcc-aarch64-linux-gnu,g+±aarch64-linux-gnu,运行aarch64-linux-gnu-g++ -v aarch64-linux-gnu-gcc -v也是可以查到的。而后,查看aarch64-rockchip-linux-gnu-gcc -v,aarch64-rockchip-linux-gnu-g++ -v 编译器版本,查到即成功。然后,出现了这个错误,明明serialport,serialbus在源码里都有,但是还是有问题。
2024-10-19 14:47:40
1116
原创 ADS7828的配置
如果Ref in/Ref out 接3.3V电压,则Command Byte中PD1、PD0要选择0、1,即 Internal Reference OFF and Converter ON。如果按图1接法,则Command Byte中PD1、PD0要选择1、1,即 Internal Reference ON and Converter ON。在ADS7828的PDF文档中有一个原理图,Ref in/Ref out 的接法如图所示。如果A1 A0,为00,则地址为0x90,取R/W=0。
2024-09-11 09:13:06
455
1
原创 LM2094的替代品
LM741: LM741是一种通用型单运算放大器,虽然它只有一个放大器,但在某些应用中可以替代LM2904,尤其是当只需要一个放大器时。TL072: TL072是双JFET输入运算放大器,也是LM2904的一种替代品,它在某些特定应用中可能表现更好。然而,在一些低功耗应用或成本敏感型应用中,LM2904可能更适用,因为它通常比LM358更具有竞争力的价格。LM358: LM358是另一种双运算放大器,与LM2904相似,但具有更高的增益带宽积和更快的响应时间。
2024-05-31 09:42:36
1364
原创 I2C多路复用器TCA9548A的介绍
通过这些引脚的状态设置TCA9548A的I2C地址。它允许将多个相同或不同的I2C设备连接到同一总线,并通过选择通道来控制与哪个设备通信。通过设置相应的通道选择引脚,您可以选择要与主控制器通信的设备。通过控制通道选择引脚,TCA9548A允许您动态地选择与哪个I2C设备通信。这使得通过单一I2C总线连接多个设备成为可能,并且可以根据需要切换通信通道,而无需重新连接硬件。这些引脚连接到对应通道上的I2C设备的SDA线。TCA9548A是一个I2C多路复用器,具有8个通道,用于扩展单一I2C总线上的设备数量。
2024-05-31 08:21:14
1009
1
原创 MAX11614没有ADS7828E的A0,A1,COM,怎么将2个MAX11614连接到stm32 上?
TCA9548A有8个通道,每个通道可以连接到一个具有相同I2C地址的设备,通过控制多路复用器选择相应的通道。MAX11614的I2C地址是固定的,无法通过引脚来更改地址,因此在同一I2C总线上使用两个具有相同地址的MAX11614有一定的挑战。如果您的STM32支持多个I2C总线,可以将每个MAX11614连接到不同的I2C总线上。将第一个MAX11614的SDA和SCL引脚连接到STM32的I2C1总线。将TCA9548A的SDA和SCL引脚连接到STM32的I2C总线。方法二:使用多个I2C总线。
2024-05-31 08:17:38
513
原创 ADS7828E的替代品,并以MAX11612为例进行系统设计,仅供参考
以MAX11612为例,MAX11612 是 Maxim Integrated 生产的一款具有 I²C 接口的 12 位、8 通道模数转换器 (ADC)。I²C 通信开始时,主设备将 SDA 线拉低(在 SCL 线保持高电平时),产生一个起始条件 (Start Condition)。为 1,则表示读操作。将 STM32 的 I²C 时钟线 (SCL) 连接到两片 MAX11612 的 SCL 引脚。将 STM32 的 I²C 数据线 (SDA) 连接到两片 MAX11612 的 SDA 引脚。
2024-05-30 23:50:23
970
原创 直流无刷电机采用stm32 作为控制器
2.在使用STM32微控制器生成互补PWM信号并驱动带有霍尔传感器的无刷直流电机(BLDC)时,需要设置定时器TIM1来生成PWM信号,并处理霍尔传感器的反馈信号以实现闭环控制。以下是一个简单的示例程序,演示如何配置STM32的TIM1生成互补PWM信号,并处理霍尔传感器输入信号来驱动BLDC电机。初始化TIM1生成互补PWM信号:配置TIM1的三个通道(CH1、CH1N,CH2、CH2N,CH3、CH3N)生成互补PWM信号,并设置死区时间。PWM信号:确认控制器接收到正确的PWM信号。
2024-05-30 21:14:28
2143
原创 两个74HC595级联,stm32 怎么写程序?
使用STM32与两个级联的74HC595进行通信,可以通过SPI接口来实现。在这个例子中,data是16位的,表示两个74HC595的级联输入。第一个74HC595将接收低8位(0x34),第二个74HC595将接收高8位(0x12)。连接STM32的SPI接口到第一个74HC595的输入引脚(SER, SRCLK, RCLK)。将第一个74HC595的串行输出(Q7’)连接到第二个74HC595的串行输入(SER)。在上面的代码中,我们通过SPI接口发送数据到74HC595。拉低RCLK,准备传输数据。
2024-05-30 20:57:59
765
原创 两片ADS7828与stm32连接, A0,A1怎么配置
ADS7828 是一款8通道的12位模数转换器(ADC),它通过I2C总线与微控制器(如STM32)进行通信。在连接两片ADS7828到同一I2C总线时,需要确保它们的I2C地址不同,以便STM32能够区分它们。ADS7828的I2C地址由A0和A1引脚决定,通过不同的电平配置可以设定不同的地址。通过这样的配置和程序,你可以在STM32上同时使用两片ADS7828,读取它们的多个通道数据。A1 和 A0 是可配置的地址位,通过连接到VCC(高电平)或GND(低电平)来设置。1001 是固定的地址前缀。
2024-05-29 21:01:44
738
原创 T1用于波特率发生器的一个小测试
方式3:只能用于定时/计数器T0,T0工作在方式3时,T1不要使用在有中断的场合。TH0也是8位定时/计数器,但由于TL0占用了TF0和TR0,因此TH0占用定时器TF1和TR1(所以T1不能用)以下代码可以发送数据到串口,同时,也可以让P2.0输出一个脉冲,使与其连接的LED闪烁。TL0为正常的8位定时/计数器,计数器溢出后置位TF0,申请中断,之后重装初值。只要T0不是工作在方式3,T1在用于波特率发生器是,仍然具有中断功能。T0可分成2个独立的8位定时器,而定时器1则不能;
2023-11-13 19:21:33
747
原创 Stm32f103单片机多串口打印程序
串口3使用了全映射,并连接一个串口触摸屏,采集的ad的数据显示在串口屏上。以STM32F1x系列单片机为例,主要介绍了串口1与3的初始化。stm32实现串口打印输出。
2023-09-24 20:57:24
471
1
原创 串口发送QString buff=“81 20 33 0A 0d“,如何接收 “Q 3” 并换行回车,
QString buff="81 20 33 0A 0d";,发送“Q 3 ”回车换行
2022-11-08 20:13:40
589
原创 RK3399 ,64位,Ubuntu16.04系统安装ROS-kinetic方法总结
RK3399 ,64位,Ubuntu16.04系统安装ROS-kinetic方法总结
2022-10-21 00:00:26
836
原创 模仿标准库函数,利用UART_IT_RXNE和UART_IT_IDLE两个标志,写了一个hal库串口接收的程序,只用到在中断写
模仿标准库函数,利用UART_IT_RXNE和UART_IT_IDLE两个标志,写了一个hal库串口接收的程序,只用到在中断写就可
2022-08-25 17:42:04
1766
原创 RK3288和RK3399下添加OpenCV的lib文件出现的小意外
最近在RK3288和RK3399下编译安装了OpenCV,然后编写了Qt的程序,在Pro中添加了库文件。LIBS += /usr/local/arm64/lib/libopencv_core.soLIBS += /usr/local/arm64/lib/libopencv_highgui.soLIBS += /usr/local/arm64/lib/libopencv_core.soLIBS += /usr/local/arm64/lib/libopencv_highgui.soLIBS += /
2021-11-28 11:27:40
2416
原创 Ubuntu16.04下配置rk3288的qt编译环境
一.准备文件:a)QT5源码:qt-everywhere-opensource-src-5.12.2.tar.gzhttp://download.qt.io/archive/qt/5.12/5.12.2/single/b)Arm交叉编译工具:gcc_for_rk3288_kernel.tgz,来自于sdk文档c)qtcreator环境下载:qt-opensource-linux-x64-5.12.2.runhttps://download.qt.io/archive/qt/5.12/5.12.2/
2021-11-26 18:10:32
2625
2
原创 这个error: could not convert ‘cv::Scalar_((double)qBlue()(rgb)怎么解决
x11/4.1.15-2.1.0/sysroots/cortexa7hf-neon-poky-linux-gnueabi/usr/lib/qt5/mkspecs/linux-oe-g++ -o processImage.o processImage.cppprocessImage.cpp: In member function 'IplImage ProcessImage::QImageToIplImageRGB(const QImage)’:processImage.cpp:284:87: error
2021-11-23 09:23:53
2713
2
原创 正点原子Imx6ULL+LCD屏,竖屏使用时如何修改开机进度条
正点原子给出的修改开机进度条,在使用时LCD是基于横版情况设定的,那对于像手机一样竖屏时,会发现不合适,因此对此进行了研究。首先准备图片,将logo-alientek.png、logo-psplash-bar.png文件旋转90度,旋转后如图所示。接下来,修改psplash.c文件中的源代码。主要修改以下几处:(1)修改logo-psplash-bar-img.h中的宏定义因为旋转了,需要把width和height这两个换一下。(2)logo-psplash-bar-img.h,同样也要换一下
2021-11-20 17:32:29
1298
原创 OpenCV在Ubuntu16.04环境下编译安装PC和arm版本
OpenCV在Ubuntu环境下编译安装PC和arm版本在PC端和32位arm上安装OpenCV走了很多弯路,查了很多博客,同时也记录下来整个过程,希望可以有帮助!!!文件准备**1.opencv-3.4.10.zip2. opencv_contrib-3.4.10.zip源码可以通过gitee快速下载方法git clone -b 3.4.10 https://gitee.com/mirrors/opencv.gitgit clone -b 3.4.10 https://gitee.com/
2021-11-15 23:31:18
2452
模仿标准库函数,利用UART_IT_RXNE和UART_IT_IDLE两个标志,写了一个hal库串口接收的程序,只用到在中断中
2022-08-25
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人