历史上的今天
返回首页

历史上的今天

今天是:2025年08月07日(星期四)

正在发生

2019年08月07日 | 回炉重造STM32 CUBEMX之串口通讯问题四

2019-08-07 来源:eefocus

串口通讯+PWM波:STM32F103C8T6通过USART1输入相应的指令控制的TIM3四个通道生成四个占空比不同的频率为50HzPWM波来控制云台。


之前用FT232直连单片机,一切正常返回的指令无乱码正常。 


接上数传图传出现问题: 

1、连续给出高电平时间持续1.5ms的指令,电机本该静止却会往一个方向慢慢漂移。怀疑每次在发出指令单片机相应指令的过程中会导致PWM波占空比变化。 

2、接上数传后返回的指令中含有很多乱码。设备有时会莫名重启或者关闭。怀疑是发送的指令出现了偏差触发了开关机的指令。 

3、设备返回的图像黑屏 

解决方法: 

1、对于重复发出的指令,设置相应的重复处理程序。若指令相同或者相同指令持续3次则跳过该次指令返回”REPEAT COMMAND!!!”字样,直到接收到不同指令。 

2、加上校验码,采用的是求和校验的方式。 

3、重新研究了下PWM波高电平长短顺序控制设备的指令,发现之前的理解有误,重新修正了PWM波生成的顺序。 

4、图像黑屏是USB设备引起的,重启即可。


另外: 

1、校验方法可否改进。CRC校验? 

2、PWM波占空比设置方式可否改变。改为DMA直接控制,绕过CPU可否解决这个问题。



推荐阅读

史海拾趣

Hilscher Gesellschaft für Systemautomation mbH公司的发展小趣事

随着在高压电源领域的深入发展,HVPSI逐渐参与到行业标准的制定工作中。公司凭借其在技术上的深厚积累和市场经验,为行业标准的制定提供了宝贵的建议和数据支持。这些标准的出台不仅规范了市场秩序,也进一步巩固了HVPSI在行业内的领先地位。

Herth+Buss Fahrzeugteile GmbH & Co KG公司的发展小趣事
用于防止非法入侵或提醒人员注意。
Digilent公司的发展小趣事

DIALIGHT的故事始于1938年的纽约布鲁克林,当时公司专注于为飞机生产仪表板灯。随着LED技术的兴起,1971年,也就是LED推出仅一年后,DIALIGHT便推出了首款LED产品,标志着公司正式涉足LED照明领域。从此,DIALIGHT凭借其卓越的技术实力和创新能力,彻底改变了LED在交通控制、指示灯、结构塔和工业场所等领域的应用方式。

Excelight Communications Inc公司的发展小趣事

作为一家有社会责任感的企业,Excelight始终关注社会公益事业。公司积极参与各类慈善活动和社会捐赠项目,为贫困地区的教育、医疗等事业做出了贡献。

此外,Excelight还注重环保和可持续发展。公司在生产过程中严格遵守环保法规和标准,积极采用环保材料和工艺。同时,Excelight还加强了节能减排和废弃物处理工作,努力实现绿色生产和可持续发展。

Andon Electronics公司的发展小趣事

Excelight Communications Inc公司成立于XX世纪初,当时正值通信技术飞速发展的时代。创始人李明(化名)是一位电子工程专家,他对光通信技术有着浓厚的兴趣。在创办公司之前,李明曾在一家大型通信企业工作,积累了丰富的技术和管理经验。他发现市场上对于高速、高效的光通信产品有着巨大的需求,于是决定创立Excelight,专注于研发和生产光通信模块和设备。

创业初期,Excelight面临着资金、技术和市场等多方面的挑战。李明带领团队日夜兼程,不断攻克技术难关,同时积极寻找合作伙伴和投资人。经过几年的努力,Excelight逐渐在市场上崭露头角,其光通信产品因性能优越、价格合理而受到了客户的广泛好评。

ELPIDA公司的发展小趣事

在成立初期,ELPIDA凭借其强大的技术实力和规模效应,迅速在全球DRAM市场中占据了重要地位。公司不断推出创新产品,扩大市场份额,成为行业内的重要参与者。然而,随着市场竞争的加剧和技术的快速变化,ELPIDA也面临着巨大的挑战。

问答坊 | AI 解惑

C64X DSP EDMA小结及实例详解(ZZ)

C64X DSP EDMA小结 (1)EDMA概要          ①EDMA数据传输有两种发起方式:          CPU发起的EMDA数据传输(非同步方式):需要传输时,CPU设置ESR寄存器的相应位为1 ...…

查看全部问答>

C51键盘程序

各位有知道   键盘程序中  if ((P1&0xf0)!=0xf0)        ;scancode = 0xfe;                         while((scancode&0x10)!=0)  & ...…

查看全部问答>

关于串口的一个小问题

#include #define uchar unsigned  char #define uint  unsigned  int unsigned char a        ,flag,i; void init() {    TMOD=0X20;    TH1=0XFD;     ...…

查看全部问答>

关于在程序中实现GPRS猫TCPip协议

最近因为工作需要,要开发一个多口GPRS猫发送彩信的工作。 在这里请教搞过相关开发的大侠,可以考虑酬金问题邮件地址199184796@qq.com 实现内容: 在软件中实现ppp拨号连接 本人已经完成mms的内容所有主要是关于如何实现TCPIP协议…

查看全部问答>

YLP2440为何复位不了?

各位大侠,本人菜鸟一枚,我昨天烧了一个程序之后,就复位不了,原来的显示屏只亮白屏,不显示,各各位大侠,请问怎么回事啊?不能刚开始就被我弄坏了吧?…

查看全部问答>

I2C怎么连续写

 为什么连续写不进去AT2402呢?大家帮忙看看吧 !谢谢了#include<reg52.h> #include<intrins.h> sbit SCL=P3^0; sbit SDA=P3^1; char tmp,i,*ap; char code table[]={0x3f  , 0x06 , 0x5b , 0x4f , 0x6 ...…

查看全部问答>

PCIe DMA、Nand Flash、DRAM、RocketIO/SRIO、SERDES

NAND FLASH Controller IP Core标准NAND FLASH Controller标准NAND FLASH控制器 我是一位在职者(北京),专业从事FPGA接口设计,有较多的空余时间,对FPGA有比较丰富的项目经验(6年)。熟练使用Xilinx/Altera FPGA,熟悉NAND FLASH接口时序 ...…

查看全部问答>

MSP430寄存器如何记

我们知道一款功能强大的单片机会有众多的寄存器来操作这些强大的外设和内部设备,430也是如此,因为强大所以内部结构复杂,所以TI给每个外设起名字的时候已经考虑到这些问题了,实际上所有的单片机设计商都在头文件里给寄存器起了易于记忆的名字, ...…

查看全部问答>

提问+TI无线手表大家都怎么用?

TI无线手表大家都怎么用? 是不是出去运动的时候用用,还有他的时间怎么设置!现在无线智能手表越来越多,TI的这个你应用了没? …

查看全部问答>