近年来,飞思卡尔半导体新推出的高性能、低功耗的MC9S12系列单片机得到普及与广泛应用。为了解决工程生产中程序更新、升级的问题,使工程师更方便地使用MC9S12系列单片机进行应用的研究与开发,本文深入研究了其背景调试模式(Background Debug Mode简称BDM),详细分析了在系统编程(In System Programming简称ISP)的工作原理,制定了适用于MC9S12系列单片机的程序下载系统的开发方案,并从整体设计、硬件设计和软件设计三个方面详细描述了该系统的设计与实现。通过编写监控程序和上位机软件,成功地实现了上位机对单片机的程序升级与调试,同时在深入剖析了BDM模块工作原理的基础上,使用了通信函数簇来解决主MCU与多总线频率目标MCU的BDM通信问题,并结合Flash的各种机制,对普通模式和保护模式下的Flash实现在系统编程。