开发板日志

2014-7-14
板子焊好后,通电测试,各点电压正常。
将SWD两个端子连接到JLink的SWD端子上(7,9),下载程序无反应。
请教秦总后得知需将电源正负也接到JLink上,改为4线连接后(7,9,1,4)端后,第一次能够下载程序,接着就再也下载不了了。
查阅资料得知,MCU运行的程序会干扰SWD工作,如果不使用JLink的自动复位端的话,需要在点击下载按钮后,立刻手动复位MCU。
然而,照做后仍然无法下载程序,并且感到mcu根本没有被复位。
检查复位电路后,发现复位电路设计错误,误将到MCU的复位线接到了3V3端,造成即使按下按钮,MCU复位端仍然是高电平,MCU未被复位。将原电路板引线割断,将复位端飞线到限流电阻的接地端后,测试复位MCU有效。
重新下载程序,下载时按一下复位按钮,程序能够正常传入MCU。
将开发板的跑马灯程序传入MCU,灯不亮。检查电路后发现发光二极管正负极接反了。更改后,发现第一个灯不亮,其他灯正常。检查线路发现第一个灯的MCU输出端和旁边的管脚搭锡了,清理管脚后,4个灯正常工作。


2014-7-16
将修改好的ENC28J60驱动程序传入MCU,后发现ENC28J60无法通过初始化。
用电压表检测各个输入端的状态发现,CS端推挽输出电压无变化。查看电路图CS端被设置到了MCU的PA15脚上了,检查程序感觉PA15的设置并没有错误,但是PA15还是没有电压变化。在开发板上设置PA15推挽输出发现竟然也没有电压变化,因此推断MCU设置中存在冲突,查阅资料后发现MCU,工作在JTAG模式时PA被MCU强制分配到了下载时钟上了,可我并没有使用JTAG模式,我用的是SWD模式啊,在此查阅资料后,发现原开发板的程序部署默认是JTAG模式的,必须在程序初始化时更改这个设置,使其变成SWD模式,或者将两种模式都关闭,后才能释放PA15脚并且也释放了PB3,PB4脚。修改初始化程序,将其变为单SWD模式后,PA15脚推挽输出正常了。
可是,ENC28J60仍然无法工作,开始怀疑是晶振没有起振,更换晶振,更换匹配电容后仍然无效。


2014-7-17
思考了一晚上后,想着是不是ENC28J60这个芯片本来就坏了,今早将板子上的ENC28J60焊掉,将输入输出脚引出,接到了秦总买的ENC28J60专用板上,检查了连接顺序,通电后,程序顺利通过初始化,进入到待机监听状态。

你可能感兴趣的:(开发板日志)