if(USART_RX_STA&0x8000) { len=USART_RX_STA&0x3fff;//得到此次接收到的数据长度 printf("\r\n您发送的消息为:\r\n"); for(t=0;t<len;t++) { USART1->DR=USART_RX_BUF[t]; while((USART1->SR&0X40)==0);//等待发送结束 } led0pwmval=(USART_RX_BUF[t]-48)*3; if(led0pwmval>300)dir=0; if(led0pwmval==0)dir=1; TIM_SetCompare1(TIM1,led0pwmval); printf("\r\n\r\n");//插入换行 USART_RX_STA=0; }else { times++; if(times%200==0)printf("请输入数据,以回车键结束\r\n"); delay_ms(10); } 求指导 |
你uart传输过来的应该是些指令,这取决于你的约定。大致思路应该是,结合UART传输过来的数据指令来修改PWM输出的频率及占空比来调节灯的亮度。 |
就这个就可以啊,首先你要单独把PWM调接LED亮度的程序调通,再把通讯调好,通讯的接收与发送要做到你想要的想要的结果,这样就完成了 |
STM32WB55如何把stack和FUS和APP应用程序,合并成一个文件同时烧录呢。
STM32WB55进入shutdown
STM32MP157内核移植问题
matlab工具箱需要下载STM32F4DISCOVERY boardfirmware package,但在st官网显示不可下载
cubeIDE在运行时显示Failed to execute MI command是什么问题呢?
请问一下,我的nucleo板子连接usb线,找不到target,一直无法下载程序怎么回事呢?
SPC5Studio如何配置不生成ram数据到mot文件中?
【STM32C0评测】1.开箱点亮小灯
STM32硬件IIC
L9663驱动开发