• NUCLEO-F746ZG UART3

    我正在尝试在带有TrueStudio的NUCLEO-F746ZG中使用UART3。 USART3连接到ST-LINK以支持虚拟COM端口,但现在无法使用。我没有示波器,我真的想像超级用户一样通过超级终端查看打印消息。 我搜索了此问题,发现许多用户都很难过。 最后,我从以下网站找到了STM32CubMX中的UART示例解决方案。如果我复制syscall.c,则在UART示例中工作正常。 https://community.st.com/s/question/0D50X00009XkXDcSAN/problem...
  • FreeRTOS卡在prvCheckTasksWaitingTermination

    我正在使用Nucleo-STm32F767,并且已经使用CubeMX生成了包含FreeRTOS 9的代码。 我的代码有5个任务,每个任务都有一个循环,该任务在每次迭代时都挂起。 while( 1 ) { //Do something osDelay(TASK_MAIN_DELAY_MS); } 至此,我的系统运行良好。 现在,我添加了一个任务,该任务处理与SPI网络控制器的通信。网络控制器具有用C编写的自己的中间件。 现在,每次我尝试挂起一个任务(带有“延迟”)时,我的...
  • STM32无法使用HAL_UART_Recceive_IT接收数据

    我是STM32的初学者,我有一个项目,需要从arduino等其他设备接收数据,现在我尝试从UART 3传输数据,并通过UART 1接收数据,但是我无法获取任何数据。我将TX uart 3连接到RX uart 1,将TX uart 1连接到RX uart 3。 /* USER CODE BEGIN PV */ int i = 0; char bufferReceive[6], bufferTransmit[10]; /* USER CODE END PV */ /* USER CODE BEGIN 0 *...
  • 在作为主节点的树莓派和作为从属节点的stm32之间的i2c通信中,stm32中出现了硬故障错误

    我正在使用cubemx对stm32f103c8tx进行编码,当我使用中断启用地址侦听模式时,当主设备(raspberry pi)发送启动条件并且每次都不会发生这些情况时,代码将卡在硬故障中断处理程序中,此问题随机发生。我还在运行6 kHZ定时器中断,以控制从stm32生​​成的pwm脉冲 我有没有中断的代码,然后它陷入了等待单元标志超时循环中。并且,如果有人已经在i2c和raspberry pi之间进行过i2c通信,您可以共享为i2c配置stm32的方法吗? void SystemClock_Config(...
  • 如何验证Quectel M66是否可以识别STM32通过UART发送的命令?

    我正在使用STM32F103C8开发板和CubeMX创建代码。我已将M66连接至STM32至UART2端口。我尝试通过STM32的UART端口向Quectel M66发送一些命令。它接收命令,但会抛出一些垃圾字符。我已将所有UART端口的波特率设置为9600。这是我的代码 void M66_Check() { char *buffer = "ATI\r\n"; char *rec_buffer = NULL; rec_buffer = (char*)malloc(200 * sizeof...
  • STM32半回调未调用

    我试图以DMA模式实现DFSDM,所以我使用了CubeMX生成代码,并且以循环模式配置了DFSDM DMA。 每当我在调试模式下运行代码时,我都会在DMA IRQ处理程序中看到它调用CpltCallback而不是HalfCpltCallback。 我的问题是为什么它调用CpltCallback而不是HalfCpltCallback?我应该如何处理呢? int main(void) { /* USER CODE BEGIN 1 */ /* USER CODE END 1 */ /* MCU...
  • 错误I2C通信B-L072Z-LRWAN(Master)和Arduino(Slave)

    我正在尝试在B-L072Z-LRWAN(Master)和Arduino(Slave)之间进行I2C通信。 我成功通过以下代码将数据从主机发送到从机: B-L072Z-LRWAN代码: #include "main.h" I2C_HandleTypeDef hi2c1; uint8_t i2cData[2]; uint8_t rec_data[1]; int main(void) { //I do not copy all the lines of code if(HAL_I2C_IsDe...
  • 如何使用HAL_UART_Receive()从stm32中的quectel L89 GPS模块读取数据?

    我正在使用STM32F103C8T6开发板和CubeMX生成代码。我需要从UART2端口接收来自Quectel L89模块的GPS数据。当我尝试仅获取一些垃圾值时...我正在使用HAL_UART_Receive接收数据并将其打印在腻子控制台中。任何帮助将不胜感激。 这是我的代码。 void task1(void) { char *buffer = NULL; buffer = (char*)malloc(400 * sizeof(char)); while(1) { HAL_UART_R...
  • stm32H474I无法调试

    我刚得到一个STM32H747I-DISCO板。当我尝试对其进行调试并使用其内部ST-Link和STM32Cube IDE将代码加载到其中时。它说 : 在没有可用的调试信息的情况下或在程序代码外部,在地址“ 0xa05f0000”处中断。 当出现一个小选项(查看反汇编)时,我会得到一些汇编代码。我该如何解决?我只是想使简单的LED闪烁。老实说,我不知道如何使用该板。这是我第一次使用它,也许我正在尝试将代码编写到错误的内核?也许问题出在调试属性中。我坚持下去。我该如何解决? 编辑:好的,所以我发现它还给出了“...
  • char C ++ STM32中数组uint_t8的转换

    我使用STM32L151CB我有一个函数,该函数在ttl上获取数据uint8_t rxb [32],然后我希望将其转换为十六进制uint8_t AppDate [0] = rxb [0],AppDate必须为十六进制(0x13)。我下面有两个文件uart_board.c,但是文件main.c中有AppDate。我必须如何在函数中使用return uart_board.c int32_t resDateLidar(void){ uint8_t rxb[32]; uint8_t* lidar[10]; ...
  • 使用待机模式后无法刷新代码。初始化ST-LINK设备时出错。原因:(4)在目标上找不到设备

    我正在尝试待机模式。 IDE是STM32CubeIDE,mcu stm32f407vgt9。因此,我在数据表中读到,如果满足以下条件之一,则mcu会退出待机模式: WKUP引脚上升沿,RTC警报(警报A和警报B),RTC唤醒,   篡改事件,时间戳事件,NRST引脚中的外部复位,IWDG复位。 如果我很了解,MCU通过此函数HAL_PWR_EnterSTANDBYMode()进入待机模式。我这样做,并且我希望如果MCU在WKUP引脚(PA0)上电平变高,它将退出待机模式。我想要这个简单的代码。 whil...
  • stm32 USB接收超过1个字节

    我正在尝试在PC和STM32 MCU之间建立USB通信。我想从PC接收一个整数。 (整数范围在0到20.000之间)。我添加了以下几行: 到usb_cdc_if.h: _weak void CDC_ReceiveCallBack(uint8_t *buf, uint32_t len); 到usb_cdc_if.c static int8_t CDC_Receive_FS(uint8_t* Buf, uint32_t *Len) { /* USER CODE BEGIN 6 */ USBD_CDC_...
  • GCC和STM32的堆栈框架不正确

    尝试在GNU GCC(不是ARM GCC)中创建简单的SVC处理程序。如果调用了SVC服务,它将正确进入SVC处理程序,但是当我尝试查找用于调用SVC处理程序的SVC号时,将得到值248而不是1。我正在使用CubeMX IDE和Nucleo-F401RE板。 码: void SVC_Handler(void) { asm volatile ( "TST lr, #4\t\n" "ITE EQ\t\n" "MRSEQ r0, m...
  • STM32F03和ESP-8266-01之间的UART通信

    我正在尝试使智能手机应用程序与MCU(STM32F030R8)进行通信。我目前正在执行的步骤是使WiFi模块与MCU通讯。使用Arduino Uno / PC终端时,我可以使用AT固件配置ESP,但实际上希望通过STM板执行相同的操作。 当我将代码加载到STM并使用Tera Term将数据发送到STM时,它应该能够将AT命令发送到ESP,但它不起作用。现在,我不知道为什么它不起作用。我正在寻找我可能会错过的代码或我忽略/不知道的其他原则的指针。 在过去的几天里,我在互联网上进行了搜索,但是没有提供太多帮助。...
  • 是否可以优化此嵌套循环?

    我正在一个项目中,我想将给定的视频输入流转换为块部分(以便可以由硬件编解码器使用)。该项目在运行200Mhz时钟的STM32微控制器上运行。 收到的输入是YCbCr 4:2:2渐进流,这基本上意味着每行的输入流如下所示: Size: 32 bit word 32 bit word 32 bit word ... Component: Cr Y1 Cb Y0 Cr Y1 Cb Y0 Cr Y1 Cb Y0 ... Bits: 8 8 8 8 ...
  • 在STM32传输结束时,存储器外围的DMA会如何表现?

    我想问一下,在以下情况下,STM32中的DMA SPI rx将如何运行。 我有一个称为A的指定(例如)96字节数组,该数组用于存储从SPI接收的数据。我打开在每个字节上运行的循环SPI DMA,将其配置为96字节。 是否有可能,当DMA填充我的96字节数组时,传输完成中断将消失,以快速将96字节数组复制到另一个-B,然后循环DMA将开始写入A(并销毁保存在B中的数据) ? 我想(每次从B中的A获得新数据时)通过USB快速将数据从B传输到PC。 我只是在想如何将STM32上的连续数据流SPI通过USB传输到P...
  • 当您写入具有相同配置的寄存器时会发生什么?

    我正在使用STM32L432KC,并且对嵌入式世界来说还比较陌生。如果我写入配置寄存器,等待一段时间,然后再次使用相同的配置写入寄存器,会发生什么情况。这有什么影响吗? 作为参考,我使用的是STM32L432KC微控制器。有问题的寄存器是复位和时钟控制(RCC),AHB2外设时钟使能寄存器(RCC_AHB2ENR)。我有一个功能,可以通过进行“或”运算来启用GPIO端口的时钟。我想知道在引脚处于活动状态时调用该函数是否会产生任何效果。
公告

欢迎访问 码农俱乐部  点击这里设置您的邮箱  可以接收站内跟帖、回复邮件提醒,不错过任何一条消息。

关注公众号订阅更多技术干货! 码农俱乐部