利用stm32单片机的休眠模式,使单片机间歇的休眠从而实现低功耗的目的。往往会出现进入休眠后无法唤醒,导致下一次程序烧不进去。通常的解决办法是:一般的开发板或单片机最小系统都会有复位键,按住复位键,点下载,然后松开复位键即可。
我遇到的问题是:误入了stm32(STM32L051C6T6)的STOP模式,又没有写入相应的唤醒方法,导致后续的程序不能下载。使用MDK5 点击load时总会出现No target connected。自己设计的最小系统又没有加入复位键。。。
有以下几种解决办法:
1、可以将单片机的NRST引脚引出来,外接复位键。(关于引脚查看可用ST官方软件STM32cubeMX,很方便)
2、通过ISP的方式下载程序,必须将boot0接高电平,boot1(PB2)接低电平,然后必须断电后重启,此时单片机会进入ISP模式,就可以通过串口1(一般单片机都是只有串口1才可下载程序)再用flymcu等软件烧入hex文件就可以了。
关于boot0和boot1,在每个stm32单片机都会有这两个引脚,这两个引脚在复位时的电平状态决定了芯片在复位后从哪个区域开始执行程序。
boot1=x boot0=0从用户闪存启动,这是正常的工作模式。
boot1=0 boot0=1从系统存储器启动(进入ISP模式)。
boot1=1 boot0=1从内置SRAM启动,这种模式可以用于调试。
如此一来,单片机无法进入正常的工作模式,就无法进行休眠,就可以通过ISP来下载程序。
3、使用STlink烧写程序,STlink至少要接4根线(SWDIO、SWCLK、GND、SW-RST),一般的下载程序只需要前三根就可以了,但是以防出现休眠无法唤醒的情况,这时有复位键就可以将SWDIO和SWCLK重置,如果板子设计没有与SW-RST相对应的,此时需要把单片机上的NRST引出来接到SW-RST上。下载程序之前boot0接高电平,boot1不用管(也需要断电后重启)。
下载配置这里按如下配置,RESET那里HW RESET和SYSRESETREQ任选一个。
配置好之后load一个空程序即可,不要再烧一个休眠的程序了,之后就可以正常烧程序了。
总结:由于板子设计等原因,使用的是第三个方法,前两个方法也都是可用的。
上一篇:stm32 驱动DS18B20温度传感器
下一篇:STM32低功耗模式之待机模式
推荐阅读
史海拾趣
随着公司规模的扩大,C&K开始在全球范围内进行布局。它在中国、法国、越南、德国和印度等地设立了生产基地,这些工厂不仅提高了生产效率,还使得C&K能够更好地服务全球客户。同时,C&K的产品线也不断扩展,覆盖了消费类、工业类和汽车类等多个领域。此外,C&K还支持定制化开发,能够满足不同客户的特殊需求。这种全球布局和业务拓展使得C&K在电子行业中获得了广泛的认可和好评。
在竞争激烈的电子行业中,DURABLE公司深知单打独斗难以取得长远发展。因此,公司积极寻求与其他行业的跨界合作机会。通过与汽车制造商、医疗设备制造商等行业的合作,DURABLE成功将自身的技术优势应用于更多领域的产品中。这种跨界合作模式不仅拓宽了公司的业务领域和收入来源,还为公司带来了更多的创新灵感和市场机遇。通过与其他行业的合作,DURABLE实现了资源共享和优势互补,实现了共赢发展。
在竞争激烈的电子行业中,DURABLE公司深知单打独斗难以取得长远发展。因此,公司积极寻求与其他行业的跨界合作机会。通过与汽车制造商、医疗设备制造商等行业的合作,DURABLE成功将自身的技术优势应用于更多领域的产品中。这种跨界合作模式不仅拓宽了公司的业务领域和收入来源,还为公司带来了更多的创新灵感和市场机遇。通过与其他行业的合作,DURABLE实现了资源共享和优势互补,实现了共赢发展。
在电子材料领域取得初步成功后,DURABLE公司意识到市场拓展的重要性。公司开始积极拓展海外市场,与全球知名电子产品制造商建立合作关系。通过深入了解不同地区的市场需求和消费者偏好,DURABLE不断调整产品策略,推出符合当地市场需求的产品。同时,公司还加强了与渠道合作伙伴的合作,通过完善的销售网络和售后服务体系,提升了产品的市场占有率和客户满意度。
我在发帖子的时候 发现有验证码,这肯定是个好事情,可以避免广告帖子 但是这样一来给其他客户带来了很多不方便 做事情的宗旨就是:宁愿自己不方便也要别人方便 这才是做事成功的本质。 希望考虑一下,谢谢!… 查看全部问答∨ |
|
看一看,一整天了,没有一个人肯发言。作为版主,稍有些失望,但又很高兴,这证明大家现在都在好好休息呢。 本来也是,辛勤工作了一整年了,大家应该彻底地放松与休息。这才是这个版块的真谛,工作时拼命工作,休息时拼命休息。 劳动人民不容易啊 ...… 查看全部问答∨ |
|
void writeb( void ) { FILE *stream; char list[30],lista[30]; int i, numread, numwritten; /* Open file in text mode: */ if( (stream = fopen( "host: ...… 查看全部问答∨ |
假设采样点数为16,滤波系数个数为17, 故FIR数字滤波后,点数应为16+17-1=32个点, 请问我要计算该波形的有效值,应采用32个点其中的哪些点?具体有何依据?(有公式吗?) 具体波形可以看附件! … 查看全部问答∨ |
Applet小程序 刷二代身份证照片显示问题 用单独启动Applet刷身份证照片可以显示 但是把Applet镶嵌到jsp里,照片有些电脑上可以显示,但有些电脑不能显示! 希望大家给点意见,帮我分析下到底是那些可能性使这个出问题了!… 查看全部问答∨ |
给位好,我想问大家一个问题就是wince4.2和5.0差别大吗?? 我现在想把一个5.0下的dll网卡驱动放到4.2的环境下面使用,不知道这样能否行得通??? 各位高手大侠请不吝赐教啊!!! 谢谢先… 查看全部问答∨ |
手册上有HSTART,HSTOP,VSTART,VSTOP等寄存器有网友说: VGA模式是结束减去开始 QVGA模式是结束/2 减去开始/2 0X12地址设置QVGA还是VGA模式!!!有程序这样配置: {0x32, 0x80},//HREF //QVGA、RGB565模式240*320 {0x17, 0x16},//HSTART&nbs ...… 查看全部问答∨ |