2. 同样的单片机程序在有的板子上不能调试
同样的单片机程序在有的板子上不能调试的原因有:
1、看硬件上是否有问题。
2、看单片机是否有毛病。
3、看串口线是否有问题。
4、看串口是否正常。
3. 单片机调试过程中遇到的问题及解决方法
先检查硬件是否正常,包括电源、晶振、IO口等
再检查程序,将程序功能分开一项一项检查。
4. 单片机有了硬件如何进行程序调试
调试程序都要使用仿真器或者调试器,如果你的单片机支持在线调试,买一个或者制作一个在线调试器就可以了,仿真器更专业一些,不过价格很贵的。
如果你使用51系列的单片机,当然有很大的用途了,不过新学的话,最好要熟悉一下汇编的调试,KEIL 可以调试汇编和C。
5. 求 51单片机与 NRF2401的调试 过程(心得)
无线收发芯片nRF2401调试心得
我个人认为调试射频对于我们这代单片机开发人员来说真的是件头痛的事情,当然也不乏高手存在。前段时间调试工作在2.4G的无线收发芯片nRF2401,在没有DEMO板,仅一个数字示波器的条件下折磨了几个星期也没完全搞定,最终只能完成近距离收发,且空中的速率只能达到250Kbps(nRF2401 内部可设置成250Kbps或1Mbps两种速度)。最终公司综合多种因素考虑不得不暂停该方案。本来也没什么,但大家都知道,对于我们做技术的,当出现一个问题,而没有将它解决掉,心里总不是滋味!况且已经在上面花了很多的时间与精力,因此在这发此帖,牢骚一下!也希望能给没有无线调试经验(和我类似情况的)且正想要选择无线收发方案的朋友一些借鉴或我的教训!!!下面就是让我感触很深的,也很菜的几点,可能不对, 恳请指证与讨论。
1、速度。当初为什么要选择nRF2401呢?因为推广商堪称它的速率能达到1Mbps,且外围器件很少。实践上1Mbps,只是空中的速度,真正的传输速度还要取决于收发双方的MCU与nRF2401之间的SPI接口速率及其它因素,最理想情况下估计也只能有400Kbps。
2、外围电路。nRF2401的外围器件真的是很少,但高频就是高频,我认为没有调试好的最大原因应该出现在外围器件与电路上,可能是PCB没有做好,也可能是元件参数不精确等。因为系统已经可以通信了,只是速度上不去,和距离不够。所以不要认为它的外围器件与电路很简单而小看它,如果没有经验与设备,最好是买个DEMO板且要找个好的技术支持方。
3、技术支持。起初从深圳的一家公司买了10片样片,后来在调试过程中出现问题想请他们技术支持,但他们居然说自己没有技术支持人员。
4、51单片机的硬件SPI接口时序问题。由于希望能让通信的速率更高,故选择带硬件SPI接口的单片机。最初选择了STC89LV516RD,但在测试时发现SPI的时序有点问题(在发送的最后一位总是提前半个波头就结束了)。原本以为是STC的单片机质量有问题,后来就买了PHILIPS的 P89LV51RD2,专门对它的SPI进行了测试,结果出现同样的问题。这时如果再认为是单片机本身的问题,那还不如认为是自己使用的问题!于是就请教了ZLG的技术支持,经他们进行测试后,所得结果与我所反映的一致。当ZLG向PHILIPS那边说明该问题时,PHILIPS的回答是这个时序就是这样的。当时我就很是吃惊!因此找了SST89V554和PIC16F877对它们进行测试,SST的还是出现上述问题,但PIC16F877则没有该问题。如果各位有空且有好奇心,可以对上述提到的单片机进行测试一下。
5、硬件焊接。因为它的体积很小,所以很不好焊。起初自己拿烙铁焊了几个都不能用,后来拿到工厂去焊了,结果好点。
6、调试(非常的土,可能不对哦!)。当焊完硬件后,第一步,用示波器测晶振是否起振,如果起振且在1V左右,则说明其各种电源与振荡电路都已经无误。另外当芯片处于关机模式(PWR_UP=0)时,振荡器也会停振。第二步,将芯片配置成发送模式,测量ANT2、ANT1、VDD_PA是否有幅值在 1.9V左右的方波输出,而且是每发送一包就会有一个方波。如果没有方波输出,一方面请检查IREF的方波是否正常,该端的22K电阻是否有虚焊等。另一方面则是软件配置的问题,当CE=1,CS=0为收发模式,然后将CE拉低则激活发射。第三步,将另一个板子配置成接收状态,用示波器测DR端,当一方发射数据时,接收方如果有数据收到,DR端就会产生方波。我一般都用示波器的一路接发射方的ANT端,另一路接接收方的DR端来判断发射与接收是否正常,当然这可能会对高频部分引起干扰。
一个不懂高频,且刚步入工作岗位的单片机爱好者在调试无线收发模块失败后的胡言乱语,不对也请不要抛砖!!!谢谢!
6. 单片机的调试与烧写问题
烧写只是将程序生成的HEX文件烧写到单片机的程序存储器中;调试分为硬件调试和软件调试,硬件调试是将程序烧写到单片机内后,然后用Keil设置断点,可以让程序一步一步的走,想让它走就走,想让它停就停,还可以跳过一些语句执行;软件调试是没有进行硬件连接,让它在编程器自带的软件中运行程序;一般在有问题时调试很容易找出问题的说在;在线调试的时候断电了是要重新开始,把程序烧写进去后提供电源就可以直接工作的。好好学吧,单片机还是很好玩的。
7. 单片机编程 如何调试 如何观察实验现象
先确认应急没用问题。
程序的话先要编的不会提示错误。自己一步一步的分析 思想按照正常的路子走。如果感觉没问题了就可以验证了。用kiel 或weifu都是可以的。 开始学的话可以从点亮一个led开始。这样程序简单。自己按照想法去编。 之后自己分析多了就一看就明白了。 都是手能生巧的。
硬件要看你的基础了。开始学的话按照别人组过的电路验证下效果就行。 也可以到protus上去仿真下。 protus可以和keil 连到一起使用的。
8. 单片机常见故障及处理
一些单片机常见问题的解决办法
工作和生活中会遇到许许多多的问题,可能让你一时陷于其中,但是总有解决的办法。随时记下遇到的问题,并做好总结,一方面有助于积累,另一方面也避免同一次错误再犯。
1.PIC12F629仅有一个中断入口,要避免多个中断引发的冲突。
2.引脚电平变化触发中断,和外部INT中断,在总中断GIE清零的时候,不会进入中断程序执行。
3.单片机进入休眠时,要唤醒,常常使用引脚电平变化中断或者外部INT中断。若是前者,按键按下时会唤醒,按键抬起时也会唤醒。如果这个时候还有别的中断,如初始化了定时器,GIE置位了,两种中断就会冲突
4.如果PIC单片机的I/O口作为输入引脚使用,初始化时必须要关比较器,否则,不会响应。
5.看门狗溢出会导致单片机从休眠中醒来。
6.使用PT2262和单片机做发射端时,如果用电池,要做到最省电。正常时,单片机休眠,PTT2262不上电,可以用三极管控制PTT2262的电源端,仅在发射时上电一次。
7.315MHZ的调幅电路中,选频电感可以使用模压电感,也可以自己绕,当然最好使用一端环形PCB铜线。
8.315Mhz的收发天线长度计算公式:L=1/4波长;而波长=3.0*10^8/315Mhz 算出 最佳匹配天线约25cm,可以使用拉杆天线,当然在PCB上用一段长的粗线也可以。
9.接收端使用的是超再生接收电路,网络上普遍流传的那张图纸被人原搬下来后,可以使用,我也剽窃了一次,希望也可以。要想看懂,真不容易。
10.P沟道的MOS管能不用就不用,价格昂贵不说,导通电阻大,功耗大,单片机输出0时很容易打开,但是输出1时,如果MOS管源极接的是高于单片机高电平的电压,是关不断的,需要借助三接管关断。
10.把过孔设成外径0.4mm,孔径0.2mm理论上可以,但是有人告诉我PCB加工厂可能做不出来,但我觉的问题不大
11.调试时一定要有耐心。沉住气,多反思,没有谁一下子就会成功,之前都会失败很多次。想不通时把问题说出来,旁观者清,别人可以给你启示。
9. 硬件调试的基本步骤是什么
检查电路
通电观察
静态调试
动态调试
指标测试
10. 单片机项目中使用新IC芯片调试方法
前两天,一位小伙伴咨询我一款新IC芯片怎么使用,借此机会我顺便把我日常工作中经常用到的一种调试方法介绍给小伙伴们,希望对对大家有所帮助。准备仓促,文中难免有技术性错误,欢迎大家给予指正,并给出好的建议...🤝🤝
我们在单片机的项目开发过程中经常会遇到使用新IC芯片的情况,某宝卖家有个时候也提供不了对应开发程序,到网上找资料也找不到;很多初学者面对这样的问题往往束手无策,这里我给大家介绍我经常用的其中一种新IC调试的方法。
因为这个芯片比较简单我这里采用下面步骤进行:
第一步: 先用arino+面包板快速搭建电路验证芯片功能
第二步: 使用STM32CubeIDE快速搭建工程验证在STM32上工作是否正常
Tips: 由于我手头没有 万用表 ,这里我使用 arino的模拟电压采集 功能通过串口打印出来作为电位计的 电压监控 用。
芯片模块的快速制作
在芯片商城上买了两片回来调试,芯片购买的费用小伙伴给付了
准备好芯片+转接板
焊接两块是为了防止在使用过程中意外弄坏另一块可以立马补上,确保调试正常进行而不耽误太多时间
这样我们的模块就制作完成了
说明: STM32使用的供电电压和数字电位计参考电压都是3V3,相应的输出结果也是在0~3V3范围
1、这里介绍了众多新IC芯片调试方式中的一种,后期有机会再陆续介绍其他IC或新模块的调试方法。
2、文中只是简单的对芯片进行功能测试,实际项目中还会有移植、驱动的可靠性、稳定性等测试工作 。
3、我们要善于运用手头的工具、arino等快速验证开发环境;模块的快速验证,特别是在项目开发过程中,时间就是金钱,对每一种工具的熟练掌握也是单片机开发过程中不可或缺的重要技能。
4、硬件调试与软件调试有很大的区别,很多时候是一次性,不可逆转的,不像软件Ctl+Z可以撤销;硬件在使用过程中出现意外损坏情况很正常:焊接不当、意外插错,静电防护不到位等等;我们要善于运用一些项目技巧,权衡时间或花费;这里之所以选择焊接两个芯片模块也是为了防止这种意外的发生而对调试造成不必要的时间耽搁。