2.2 关键细节的实现
(1)启用“备用中断向量表”。设置INTCON2寄存器中ALTIVT控制位的值,其值设置为“1”则启用“备用中断向量表”;设置为“0”则启用“中断向量表”。
(2)程序首址的设置。在以上流程的说明中谈到引导程序的首址为0x400,而应用程序的首址为0xc800,则设置程序的首址可通过修改链接描述文件(.gld文件)实现。以dsPIC33FJ256GP710单片机为例,将引导程序首址改为0x400,电感器有什么用其实现步骤为:打开p33FJ256GP710.gld文件,将其中的“program(xr):ORIGIN=0x200,LENGTH=0x2AA00”改为“pro-gram(xr) :ORIGIN=0x400,LENGTH=0x2A900”功率电感;将“_ _CODE_ BASE=0x200”改为“_ _CODE_BASE=0x400”。应用程序首址的修改也采用相同方法。
(3)读/写程序存储器。在参考文献中有很完整的原理说明,也有完整的源代码,可直接使用。
(4)软件复位CPU。在应用程序运行过程中发现需升级程序或在引导程序中升级程序完毕时,均需对CPU进行软件复位,这可通过dsPIC33F单片机提供的“reset”指令实现,可在程序相应位置执行“reset”指令即可。
3 实际应用中若干问题的探讨
3.1 程序升级正确性问题
上文仅重点说明了程序升级的方法,未对程序升级的正确性展开讨论,但在实际应用中,由于传输干扰的存在,接收的新程序数据可能出错,这时如果没有相应的应对措施,显然会影响到产品的正常运行。为了保证程序升级的正确性,常用的应对措施有以下几种:
(1)对每帧数据进行严格的校验(如CRC校验),校验通过后再更新相应的程序存储区;更新程序存储区后,重新读出程序存储区数据,并与接收到的数据进行比较。只有当数据比较无误后才开始接收下一帧数据。
一种新型的蓄电池充放电综合控制设备由于军事应用中一些不断电设备耗能较大,因而普遍采用串连电池组的模式避免过高的电流。串连电池组的充放电与单一电池的充放电有所不同,电池组内不同电池的差异如果不被重视就会造成电池组使用效率降低,减少蓄电池
一款四象限 DC/DC 开关稳压器的实现 引言在很多电子系统中,有必要为特定类型负载提供双极性(正和负)电压或电流。需要双极性电压/电流的负载包括FPGA体偏置应用、热电冷却器、DC电动机以及其他很多类型的应用。有很多传统方法可为负载提供双
LED技术在汽车照明系统的应用LED是英文light emittingdiode(发光二极管)的缩写,它的基本结构是一块电致发光的半导体材料,置于一个有引线的架子上,然后四周用环氧树脂密封,起到保护内部芯线的作用。另外,LED光源