本发明专利技术公开了一种基于stm32CPU下载PIC单片机程序的方法及系统,包括,检测模块检查编程电压、解锁序列是否正常,利用控制模块保障所述编程电压、所述解锁序列全部呈正确状态,触发PIC端模块进入编程模式;所述PIC端模块读取编程指令,将DAT引脚上的数据写入Program Memory内,并执行相对应的所述编程指令操作;所述PIC端模块的内部地址读取写入所述Program Memory的所述数据,依次写入ID和配置字并增加到下一个地址,直至烧写结束;监视模块监测所述烧写结束,通知所述控制模块控制所述编程电压时序保持所述正确状态,所述PIC端模块退出所述编程模式。本发明专利技术能够提高下载效率,增加了芯片烧写的稳定性。
A method and system of downloading PIC MCU program based on stm32cpu
【技术实现步骤摘要】
一种基于stm32CPU下载PIC单片机程序的方法及系统
本专利技术涉及嵌入式开发
,尤其涉及一种基于stm32CPU下载PIC单片机程序的方法及系统。
技术介绍
单片机也被称为单片微控器,属于一种集成式电路芯片。在单片机中主要包含CPU、只读存储器ROM和随机存储器RAM等,多样化数据采集与控制系统能够让单片机完成各项复杂的运算,无论是对运算符号进行控制,还是对系统下达运算指令都能通过单片机完成。由此可见,单片机凭借着强大的数据处理技术和计算功能可以在智能电子设备中充分应用。简单地说,单片机就是一块芯片,这块芯片组成了一个系统,通过集成电路技术的应用,将数据运算与处理能力集成到芯片中,实现对数据的高速化处理。PIC单片机以它低功耗,低价格,高性能等优点近年来应用广泛,在对PIC单片机下载程序的过程中,传统的下载方式需要借助PC端实现,使用效率低,并且不实用于在大批量生产PIC单片机时的批量程序下载。
技术实现思路
本部分的目的在于概述本专利技术的实施例的一些方面以及简要介绍一些较佳实施例。在本部分以及本申请的说明书摘要和专利技术名称中可能会做些简化或省略以避免使本部分、说明书摘要和专利技术名称的目的模糊,而这种简化或省略不能用于限制本专利技术的范围。鉴于上述现有存在的问题,提出了本专利技术。因此,本专利技术提供了一种基于stm32CPU下载PIC单片机程序的方法,能够实现STM32对多片PIC单片机同时离线下载的功能,提高批量生产效率。为解决上述技术问题,本专利技术提供如下技术方案:包括,检测模块检查编程电压、解锁序列是否正常,利用控制模块保障所述编程电压、所述解锁序列全部呈正确状态,触发PIC端模块进入编程模式;所述PIC端模块读取编程指令,将DAT引脚上的数据写入ProgramMemory内,并执行相对应的所述编程指令操作;所述PIC端模块的内部地址读取写入所述ProgramMemory的所述数据,依次写入ID和配置字并增加到下一个地址,直至烧写结束;监视模块监测所述烧写结束,通知所述控制模块控制所述编程电压时序保持所述正确状态,所述PIC端模块退出所述编程模式。作为本专利技术所述的一种基于stm32CPU下载PIC单片机程序的方法的一种优选方案,其中:若所述编程电压、所述解锁序列未呈现所述正确状态,则通知所述控制模块进行整改,调控状态为所述正确状态。作为本专利技术所述的一种基于stm32CPU下载PIC单片机程序的方法的一种优选方案,其中:进行所述烧写之前还包括,将HEX烧写程序文件装入STM32端模块内;所述STM32端模块利用ICSP协议接口与所述PIC端模块连接;所述检测模块读取所述HEX文件校验下载完整性,同时检测所述编程电压时序及所述解锁序列是否正确。作为本专利技术所述的一种基于stm32CPU下载PIC单片机程序的方法的一种优选方案,其中:所述PIC端模块需在所述电压时序、所述解锁序列正确状态下才能进入所述编程模式,包括,将芯片VDD管脚上电,设置最小阈值2.85V;利用Tents对VPP管脚电平进行拉低,收到正确的所述编程电压序列;所述PIC端模块在CLK引脚脉冲驱动下采用低位先传策略,向DAT引脚传输正确的所述编程电压序列;所述解锁序列利用32位二进制数正确进入所述编程模式。作为本专利技术所述的一种基于stm32CPU下载PIC单片机程序的方法的一种优选方案,其中:所述PIC端模块进入所述编程模式后,包括,所述PIC端模块读取所述编程指令,根据一组不同的命令采取不同的操作;所述PIC端模块将所述HEX烧写程序传输至内部地址空间,传输完成后执行内部所述编程指令,将所述DAT引脚上的所述数据写入所述ProgramMemory内。作为本专利技术所述的一种基于stm32CPU下载PIC单片机程序的方法的一种优选方案,其中:写入所述ProgramMemory包括,所述数据单字循环写入所述ProgramMemory内,并再次调用所述数据对写入所述PIC端模块的所述数据进行回读;若写入的所述数据无误,则执行增加地址命令进行下一个所述地址的写入,若写入的所述数据有误,则在所述STM32端模块内返回下载失败的错误报告,所述STM32端模块产生一个退出所述编程模式的所述电压序列,正确退出所述编程模式,不损伤芯片。作为本专利技术所述的一种基于stm32CPU下载PIC单片机程序的方法的一种优选方案,其中:写入所述ID、所述配置字包括,所述ProgramMemory写入完成,通知所述PIC端模块开始写入所述ID;所述PIC端模块从所述ProgramMemory读取所述数据,并查看所述数据是否正确,若不正确,则生成所述错误报告,若正确,则增加到下一个所述地址;若增加的下一个所述地址等于8004h时,则所述地址再次增加到8007h,写入所述配置字;若增加的下一个所述地址不等于8004h时,则所述PIC端模块重新写入所述ID。作为本专利技术所述的一种基于stm32CPU下载PIC单片机程序的方法的一种优选方案,其中:写入所述配置字具体包括,当增加的所述地址达到8007h时,所述PIC端模块写入所述配置字的ConfigWord;读取写入所述ProgramMemory内的所述数据,并判断读取的所述数据是否正确,若为否,则在内部生成所述错误报告,若正确,则增加到下一个所述地址;依次增加,直至所述配置字全部写入完成,所述烧写成功并退出所述编程模式。作为本专利技术所述的一种基于stm32CPU下载PIC单片机程序的系统的一种优选方案,其中:检测模块,用于检查所述编程电压和所述解锁序列是否正确;控制模块,用于调整所述编程电压和所述解锁序列呈正确状态;PIC端模块,用于烧写所述HEX文件内的下载程序;监视模块,用于监测所述PIC端模块是否完成烧写;STM32端模块,用于装载所述HEX文件,连接所述PIC端模块。本专利技术的有益效果:本专利技术通过提前装入HEX文件,利用STM32F407单片机通过ICSP协议接口对PIC单片机实现离线下载,提高下载效率,本专利技术在每次下载结束后加入编程退出电压时序,确保烧写结束正确退出编程模式,增加了芯片烧写的稳定性。附图说明为了更清楚地说明本专利技术实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其它的附图。其中:图1为本专利技术第一个实施例所述的基于stm32CPU下载PIC单片机程序的方法的流程示意图;图2为本专利技术第一个实施例所述的基于stm32CPU下载PIC单片机程序的方法的写入ProgramMemory流程示意图;图3为本专利技术第一个实施例所述的基于stm32CPU下载PIC单片机程序的方法的写入配置字流程示意图;图4为本专利技术第一个实施例所述的基于stm32CPU下载PIC单片机程序的方法的STM32F407与PIC单片机连接示意图;图5为本专利技术第一个实施例所述的本文档来自技高网...
【技术保护点】
1.一种基于stm32CPU下载PIC单片机程序的方法,其特征在于:包括,/n检测模块(100)检查编程电压、解锁序列是否正常,利用控制模块(200)保障所述编程电压、所述解锁序列全部呈正确状态,触发PIC端模块(300)进入编程模式;/n所述PIC端模块(300)读取编程指令,将DAT引脚上的数据写入Program Memory内,并执行相对应的所述编程指令操作;/n所述PIC端模块(300)的内部地址读取写入所述Program Memory的所述数据,依次写入ID和配置字并增加到下一个地址,直至烧写结束;/n监视模块(400)监测所述烧写结束,通知所述控制模块(200)控制所述编程电压时序保持所述正确状态,所述PIC端模块(300)退出所述编程模式。/n
【技术特征摘要】
1.一种基于stm32CPU下载PIC单片机程序的方法,其特征在于:包括,
检测模块(100)检查编程电压、解锁序列是否正常,利用控制模块(200)保障所述编程电压、所述解锁序列全部呈正确状态,触发PIC端模块(300)进入编程模式;
所述PIC端模块(300)读取编程指令,将DAT引脚上的数据写入ProgramMemory内,并执行相对应的所述编程指令操作;
所述PIC端模块(300)的内部地址读取写入所述ProgramMemory的所述数据,依次写入ID和配置字并增加到下一个地址,直至烧写结束;
监视模块(400)监测所述烧写结束,通知所述控制模块(200)控制所述编程电压时序保持所述正确状态,所述PIC端模块(300)退出所述编程模式。
2.如权利要求1所述的基于stm32CPU下载PIC单片机程序的方法,其特征在于:包括,
若所述编程电压、所述解锁序列未呈现所述正确状态,则通知所述控制模块(200)进行整改,调控状态为所述正确状态。
3.如权利要求1或2所述的基于stm32CPU下载PIC单片机程序的方法,其特征在于:进行所述烧写之前还包括,
将HEX烧写程序文件装入STM32端模块(500)内;
所述STM32端模块(500)利用ICSP协议接口与所述PIC端模块(300)连接;
所述检测模块(100)读取所述HEX文件校验下载完整性,同时检测所述编程电压时序及所述解锁序列是否正确。
4.如权利要求3所述的基于stm32CPU下载PIC单片机程序的方法,其特征在于:所述PIC端模块(300)需在所述电压时序、所述解锁序列正确状态下才能进入所述编程模式,包括,
将芯片VDD管脚上电,设置最小阈值2.85V;
利用Tents对VPP管脚电平进行拉低,收到正确的所述编程电压序列;
所述PIC端模块(300)在CLK引脚脉冲驱动下采用低位先传策略,向DAT引脚传输正确的所述编程电压序列;
所述解锁序列利用32位二进制数正确进入所述编程模式。
5.如权利要求1或4所述的基于stm32CPU下载PIC单片机程序的方法,其特征在于:所述PIC端模块(300)进入所述编程模式后,包括,
所述PIC端模块(300)读取所述编程指令,根据一组不同的命令采取不同的操作;
所述PIC端模块(300)将所述HEX烧写程序传输至内部地址空间,传输完成后执行内部所述...
【专利技术属性】
技术研发人员:袁三男,赵金川,王鹏,刘雨豪,
申请(专利权)人:上海电力大学,
类型:发明
国别省市:上海;31
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。