历史上的今天
返回首页

历史上的今天

今天是:2025年03月25日(星期二)

正在发生

2021年03月25日 | STM32项目中遇到的一些问题以及解决办法

2021-03-25 来源:eefocus

USART:


1.问题描述:使用中断接收数据时,DR中数值正确,但是RXNE始终是0,没有置位。


solution:经过半天的检查以后,发现在中断函数中使用错了一个函数,应该使用USART_GetFlagStatus(USART1, USART_IT_RXNE)来判断RXNE状态,却错使用了USART_GetITStatus函数。


2.问题描述:进入IDLE中断无法退出


solution:清除IDLE的方式不对,正确的清除方式见《stm32中文参考手册》P540


由软件序列清除该位(先读USART_SR,然后读USART_DR)


注意:IDLE位不会再次被置高直到RXNE位被置起(即又检测到一次空闲总线),初始上电后,idle位也是处在未置位的情况下。


3.问题描述:如何使用dma接收未知长度的uart数据。


solution:参考http://wenku.baidu.com/link?url=UyJuXeoTlk1NzY-Jo1vSuvz1gwT2M2tO24SBUT2qx6_Y1X01V9sSv_ITE2R0MeNqgQ1zmqV1pgISBCDZP47c35RVkD4ZbiXOWZ34lbdHvXe 和http://www.amobbs.com/thread-5486343-1-1.html使用IDLE位来判断接收结束的方式


调试:


1.问题描述:一个字符串在watch中,显示无数值


1.jpg?imageView2/2/w/550


solution:在上面右键 选择16进制方式


2.问题描述:在中断中使用了#if XYZ....#endif语句。没有报错,但是没法进入中断


solution:后来发现在该_it.c的头文件中没有包含 #define XYZ 1。包含该文件就解决了问题。


3.问题描述:发现有一段条件编译的代码无法进入执行。


solution:把#if。。。。#elseif 。。。#else。。#endif改成两端#if。。。#endif就解决了。


编程:


1.问题描述:有些对于某些寄存器写操作没有相关的函数


solution:直接寄存器操作,比如DMA1_Channel5->CNDTR = 2;


推荐阅读

史海拾趣

ETC1公司的发展小趣事

成谷科技是一家专注于ETC技术在区域市场应用的企业。公司根据不同地区的交通特点和需求,量身定制ETC解决方案,并在当地市场进行深耕细作。通过深入了解当地市场和客户需求,成谷科技成功打造了一系列具有地方特色的ETC应用案例,赢得了当地政府和客户的广泛赞誉。

飞翼科技(FEIYI)公司的发展小趣事

埃特斯是一家在ETC技术创新和市场应用方面均表现出色的企业。公司拥有一支高素质的研发团队,不断推出具有创新性的ETC产品和解决方案。同时,埃特斯还注重将创新技术应用于实际场景中,为客户提供高效、便捷的ETC服务。通过技术创新和市场应用的有机结合,埃特斯在ETC行业中树立了良好的口碑和品牌形象。

ARBOR公司的发展小趣事

随着环保意识的日益增强,ARBOR公司积极响应国家号召,致力于绿色电子产品的研发和生产。公司投入大量资金研发环保材料和技术,成功推出了一系列绿色电子产品。这些产品不仅具有优异的性能,还符合环保标准,得到了消费者的广泛认可。ARBOR公司的绿色环保理念也为整个电子行业树立了榜样。

DBLECTRO公司的发展小趣事

2010年,迪贝电子面临了一次重大的市场挑战。随着国内外竞争对手的不断涌入,气体检测及分析仪器市场的竞争日益激烈。为了应对这一挑战,迪贝电子加大了技术创新的力度,积极引进国内外最新的技术和设备,不断提升产品的性能和品质。同时,公司还加强了与客户的沟通和合作,深入了解客户需求,提供个性化的解决方案。这些努力使得迪贝电子在激烈的市场竞争中保持了领先地位。

昆泰芯微电子(CONNTEK)公司的发展小趣事

昆泰芯微电子实行立体作战的研发模式,整合了芯片设计、电子应用设计、工业设计等多家专业设计公司。这种研发模式不仅为公司带来了更多的创新机会,也为工程师们提供了更多的挑战和成长机遇。公司注重员工的培训和发展,有专员负责新人的岗前培训,进行岗位知识的输送以及疑难问题的解答。同时,公司也鼓励员工参与实际项目,由专业领域的前辈进行引领,让员工在实践中快速成长。

Califia Lighting公司的发展小趣事

在竞争激烈的电子照明市场中,Califia Lighting始终坚持以技术创新为核心竞争力。公司不断投入研发资源,推动LED照明技术的升级和突破。通过引入先进的生产工艺和设计理念,Califia Lighting成功开发出了一系列具有独特优势的产品,如高效节能、长寿命、环保等,赢得了市场的广泛认可。

问答坊 | AI 解惑

wince c# 画图问题

系统:wince 5.0 开发工具: vs C# 2008 SDK :.net compact framework 3.5 问题描述:              开始在windows xp 执行这段代码没有问题,能画图:          &nb ...…

查看全部问答>

一个划时代的伟大产品-超级硬件调试器横空出世

一个划时代的伟大产品-超级硬件调试器横空出世     程序员中多年来一直流传着一种传说,除了市面上能够见到的为数不多的几种调试软件之外,还存在着一种神秘的硬件调试器,其功能强大无比。任何调试软件调不了的程序,硬件调试器都能搞 ...…

查看全部问答>

螺旋

哪位大侠知道怎么样把一张背景图采用螺旋方式显示吗?就是顺时针扇形方式来显示 给人动态效果,而不是一次性把图片显示出来!…

查看全部问答>

PIC16单片机的C编译起哪儿下载?如何与MAPLAB一起使用?

找了很长时间,网上都没有PIC16单片机得C编译器(很多都是DEMO)。还有,如果有了这个单片机,如何在MAPLAB中使用这个编译器?…

查看全部问答>

f2812 SCI RS485 调试

1.最近我用sci调试RS485的时候遇到一个怪现象: 有时候(不是全部,重新加载程序的时候一般都是)cpu明明有数据发出来,SCIRX,SCITX波形正常,可是485驱动芯片出来的两线信号发不出来,示波器只能看到负半波.只要我把与其通信的人机界面的通讯口拔出来 ...…

查看全部问答>

有关51单片机低频频率计的问题

我想问一下低频频率计用C语言编写,一秒种是如何采集3次信号的 用测周期法测量.…

查看全部问答>

LM3S811库函数使用

IntEnable()里面的参数是什么 怎么用的   手册上好像没说…

查看全部问答>

【汇总】德仪MSP430视频

MSP430Ware 入门介绍较以往其他版本,德州仪器 IDE CCS V5.1 程序更加简练有效,运行更加快捷,开发环境也更加直观。这里将着重介绍CCS v5.1一个新的组成部份- TI资源管理器(TI Resource Explorer)。TI资源管理器向客户提供一种直接简单的途径进 ...…

查看全部问答>

STM32-FSMC-LCD详解

/*来源于网络非原创*/ STM32-FSMC-LCD详解LCD有如下控制线: CS:Chip Select 片选,低电平有效 RS:Register Select 寄存器选择 WR:Write 写信号,低电平有效 RD:Read 读信号,低电平有效 RESET:重启信号,低电平有效 DB0-DB15:数据线 ...…

查看全部问答>

关于AMC7135的12V三串纠错分享

最近车上的前阅读灯坏了,想用LED代替,又省电又明亮。 网上找了下关于AMC7135的电路,在计算供电电阻的时候发现一个小错误,分享出来免得大家碰到的时候浪费时间。 百度文库找了个文档,链接就不发了,百度一下很多的。这个是12V串三个的线路 ...…

查看全部问答>