CN110888656A - Multifunctional programming device and programming method - Google Patents

Multifunctional programming device and programming method Download PDF

Info

Publication number
CN110888656A
CN110888656A CN201911174944.XA CN201911174944A CN110888656A CN 110888656 A CN110888656 A CN 110888656A CN 201911174944 A CN201911174944 A CN 201911174944A CN 110888656 A CN110888656 A CN 110888656A
Authority
CN
China
Prior art keywords
programming
file
target
writer
interface
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201911174944.XA
Other languages
Chinese (zh)
Other versions
CN110888656B (en
Inventor
潘雷
丁辉
刘辉
倪亚玲
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Casco Signal Ltd
Original Assignee
Casco Signal Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Casco Signal Ltd filed Critical Casco Signal Ltd
Priority to CN201911174944.XA priority Critical patent/CN110888656B/en
Publication of CN110888656A publication Critical patent/CN110888656A/en
Application granted granted Critical
Publication of CN110888656B publication Critical patent/CN110888656B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • G06F8/63Image based installation; Cloning; Build to order

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

The invention discloses a multifunctional programming device and a programming method, comprising the following steps: running a main system of a first operating system, and programming a first target programming file to a first group of target storage equipment of the universal interface; and operating an auxiliary system of a second operating system, and programming a second target programming file to a second group of target storage equipment with a file system format suitable for the set operating system, wherein the second operating system is the same as the set operating system. The burning file can be flexibly modified according to the requirements of users, and a plurality of files can be burned at one time; the writer with the touch screen function greatly improves the convenience of field project implementation, avoids carrying a computer and various writers, realizes one-key programming by adopting a visual touch screen interface, and simplifies the operation steps.

Description

Multifunctional programming device and programming method
Technical Field
The invention relates to the field of computer programming, in particular to a multifunctional programming device and a programming method.
Background
Nowadays, embedded single-board computers are increasingly powerful, and various types of storage devices such as FLASH, EEPROM, and industrial usb disks are generally integrated. When these single board computers are used for system integration, application programs or data configuration files are often required to be burned into various types of storage devices on the board card, and since there may be a plurality of embedded single boards in the system, the interfaces of the storage devices on each single board are different, and various types of burning devices and cables are required during burning, which is very inconvenient to implement and carry.
At present, the invention patent application (application number: CN201410222377.1, invention name: a programming device for automobile electric control unit program and its implementation method) discloses a hand-held programming device for automobile electric control unit program and its implementation method, which can overcome the problem of low working efficiency caused by the inconvenience and limitation that the current automobile calibration engineer can only use computer programming software outdoors, and improve the working efficiency, but the patent application only aims at the programming of the automobile electric control unit program and has no universality.
The invention patent application (application number: CN201811283235.0, invention name: a clamp for various universal automatic programming instrument program parameters) discloses a clamp for automatically programming instrument program parameters, which has the characteristics of simple structure and convenient operation, can improve the production efficiency and replace manual programming instrument program parameters, but the patent application only aims at the instrument parameters in the production process of automobile instruments and has no universality.
In addition, the invention patent application (application number: CN201710017471.7, name of the invention: a handheld instrument and a method for automatically updating an embedded system program on line) discloses a handheld instrument and a method for automatically updating an embedded system program on line, which have the advantages of high automation program, small volume and low power consumption, and meet the high-efficiency production requirement of modern production enterprises, but the handheld instrument and the method of the patent application are only used for updating a FLASH chip and do not have the function of a plurality of functional interfaces.
For the above reasons, it is necessary to develop a multifunctional writer with versatility and realizing multifunctional interface and a method thereof.
Disclosure of Invention
The invention aims to provide a multifunctional programming device with a touch screen and a programming method, wherein a framework that double CPUs operate double operating systems is adopted, an ARM main controller operates a linux system and a man-machine interaction interface program, is responsible for programming a storage device of a general interface, is responsible for man-machine interaction display, supports mouse keyboard, touch screen and other operations, and simultaneously, a coprocessor operates an embedded real-time operating system and is responsible for programming a storage device with a file system format for a specific operating system; the burning file can be flexibly modified according to the requirements of users, and a plurality of files can be burned at one time; the writer with the touch screen function greatly improves the convenience of field project implementation, avoids carrying a computer and various writers, realizes one-key writing by adopting a visual touch screen interface, and simplifies the operation steps.
In order to achieve the purpose, the invention is realized by the following technical scheme:
a multifunction writer, comprising:
running a main system of a first operating system, and programming a first target programming file to a first group of target storage equipment of the universal interface;
and operating an auxiliary system of a second operating system, and programming a second target programming file to a second group of target storage devices with a file system format suitable for a set operating system, wherein the second operating system is the same as the set operating system.
Preferably, the host system includes at least one host controller, and the host controller is provided with a first peripheral interface module for connecting with the first group of target storage devices; and/or the auxiliary system comprises at least one coprocessor, and the coprocessor is provided with a second peripheral interface module used for being connected with the second group of target storage devices.
Preferably, the main controller and the coprocessor are both connected to a power supply.
Preferably, the main controller runs the first operating system, and the first operating system is a linux system; and/or the coprocessor runs the second operating system, and the second operating system is a QNX system or a VxWorks system.
Preferably, the main controller is an ARM main controller, the first peripheral interface module is one or more of an SPI interface, an IIC interface, and a USB interface, and the first group of target storage devices is one or more of FLASH devices of the SPI interface, EEPROM devices of the IIC interface, and a USB storage device.
Preferably, the second peripheral interface module comprises a parallel interface, and the second set of target storage devices comprises parallel FLASH devices; the parallel FLASH equipment is FLASH equipment with a TFFS format file system for a VxWorks system, or FLASH equipment with an FF3S format file system for a QNX system.
Preferably, the auxiliary system is in communication connection with the main system, and receives the second target programming file transmitted by the main system.
Preferably, the main system is in communication connection with the auxiliary system through a network port or a high-speed serial port.
Preferably, the first target programming file and/or the second target programming file are/is transmitted to the main system in a network input mode and/or an external storage medium import mode; and/or the second target programming file is transmitted to the auxiliary system in a network input mode.
Preferably, the external storage medium is imported by a usb disk.
Preferably, the main controller is connected with a touch display device for man-machine interaction display and touch operation, and is used for selecting a target programming file and executing programming operation.
Preferably, the touch display device provides an operation interface on which:
the local file list function key is used for selecting files in the local file list as a first target programming file and/or a second target programming file;
the USB flash disk file list function key is used for selecting files in the USB flash disk file list as a first target programming file and/or a second target programming file;
and the programming function key is used for respectively programming the first target programming file and/or the second target programming file to the first group of target storage equipment and/or the second group of target storage equipment.
Preferably, a programming progress bar is displayed on the operation interface, and a programming result is displayed after programming is finished.
Preferably, the multifunctional writer further comprises an MD5 verification module, which is used for performing MD5 verification on the read and write-back of the target write file by calculating the MD5 value of the target write file and comparing it with the corresponding MD5 value in the setting file; the MD5check codes of all the target programming files are recorded in the setting file, the setting file is imported into the main system when the target programming files are imported into the main system, and all the target programming files and the corresponding MD5check codes are listed in the setting file.
The invention also provides a programming method based on the multifunctional programmer, which comprises the following processes: the main system runs a first operating system and writes a first target programming file to a first group of target storage equipment of the universal interface; the auxiliary system runs a second operating system and writes a second target programming file to a second group of target storage devices with a file system format suitable for the set operating system; the second operating system is the same as the setting operating system.
Preferably, before programming, all target storage devices to be programmed are installed on the programming device, and the programming device is powered on;
the auxiliary system is in communication connection with the main system, a first target programming file to be programmed is imported into the main system, and the main system transmits a second target programming file to the auxiliary system;
the touch display screen of the writer displays an operation interface;
and selecting a target programming file, clicking a key on the operation interface according to the type of the target storage equipment to execute programming operation, and programming the target programming file to the corresponding target storage equipment.
Preferably, before the target storage device is burned, the main system of the burner reads the target burning file to be burned from the hard disk to the memory and performs MD5 verification, and/or the main system of the burner transmits the target burning file to be burned to the auxiliary system and performs MD5 verification: if the MD5 verification fails, the programming fails; if the MD5 is verified successfully, the file is read correctly, and subsequent programming operation is continued;
and/or after the programming is finished, the main system of the programming device reads the programmed first target programming file from the first group of target storage devices and performs MD5 verification and/or the auxiliary system of the programming device reads the programmed second target programming file from the second group of target storage devices and performs MD5 verification: and if the MD5 verification fails, the programming fails, and if the MD5 verification succeeds, the programming succeeds.
Preferably, the MD5check codes of all the target programming files are recorded in a setting file, the setting file is imported to the host system together when the target programming files are imported to the host system, and all the target programming files and the corresponding MD5check codes are listed in the setting file;
the MD5 proofreading process comprises the following steps: and calculating the MD5 value of the target programming file and comparing the MD5 value with the corresponding MD5 value in the set file so as to ensure that the target programming file is read by the programmer and is burnt by the programmer correctly.
Preferably, before burning the target storage device, a backup operation is performed on original data in the target storage device, so that the target storage device needs to be restored to a state before burning after the subsequent burning is completed.
Preferably, before burning the target storage device, a clearing operation is performed on the target storage device, including formatting the device, writing 0 to all addresses of the device, and performing an operation of deleting all files.
Preferably, the programming of the first set of target storage devices and/or the second set of target storage devices supports single file programming or multiple file batch programming.
Preferably, the target programming file is transmitted to the host system by a network input mode and/or an external storage medium import mode.
Preferably, the first group of target storage devices is one or more of FLASH devices of SPI interfaces, EEPROM devices of IIC interfaces, and USB storage devices; the USB storage equipment in the first group of target storage equipment supports hot plug; the FLASH device of the SPI interface and/or the EEPROM device of the IIC interface in the first group of target storage devices do not support hot plug, and four bytes are added to the top of a binary data file to be programmed into the FLASH device and/or the EEPROM device of the SPI interface and/or the EEPROM device of the IIC interface for specifying an offset address to be programmed into the corresponding target storage device.
Compared with the prior art, the invention has the beneficial effects that: (1) the invention uses ARM main controller and coprocessor to realize the multi-functional writer, adopt the double CPU to run the framework of the dual operating system (linux system and QNX system/VxWorks system), have solved in the prior art mostly run QNX system or apparatus of VxWorks system have FLASH file system and the format of this FLASH file system and FLASH file system format incompatible question under linux system; (2) the invention integrates various storage device interfaces, and the burning of various storage devices can be completed by using a portable burner without carrying a large number of burners and power supply devices; (3) the invention uses the visual touch screen interface to operate, the user can complete the burning of various different storage devices by one key, the operation is simple and convenient, the error is not easy to occur, and the complicated operation steps of the traditional burner are simplified; (4) the target equipment programming file can be flexibly modified according to the requirements of a user, various file input modes are provided, and the user can complete programming on the target equipment without depending on a PC (personal computer); (5) the writer needs to carry out MD5 verification on the burning file during file reading and file burning, ensures the correctness of the burning file through double insurance, and avoids serious consequences caused by burning errors; (6) the invention can save cost, is easy to expand and is convenient to realize customization.
Drawings
FIG. 1 is a diagram of the hardware architecture of the multifunction writer of the present invention;
FIG. 2 is a diagram of the software architecture of the multifunction writer of the present invention;
FIG. 3 is a schematic diagram of a main operation interface of the multifunctional writer according to the present invention;
4-5 are schematic diagrams of copying a target file to a specified directory of a writer host system in accordance with the present invention;
fig. 6 is a schematic format diagram of an md5check. ini file according to the present invention;
FIG. 7 is a flowchart of a method for programming a target device by the multifunctional writer of the present invention.
Detailed Description
In order to make the objects, technical solutions and advantages of the embodiments of the present invention clearer, the technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are only a part of the embodiments of the present invention, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
Referring to fig. 1, a hardware architecture diagram of the multifunctional writer of the present invention is shown, and the hardware portion of the multifunctional writer of the present invention includes at least one ARM main controller 11 and at least one coprocessor 12. The ARM main controller 11 and the coprocessor 12 are respectively provided with an ARM main controller peripheral interface module and a coprocessor peripheral interface module, and are used for being connected with corresponding hardware devices, and the ARM main controller 11 and the coprocessor 12 are both connected with the power supply 10.
The ARM main controller 11 is connected with the touch display screen 13 and used for achieving man-machine interaction and touch operation. The ARM main controller 11 is connected to a serial FLASH socket 14 (or a serial EEPROM socket) through an SPI interface (also called a serial interface), and is connected to an EEPROM socket 15 through an IIC interface, and is respectively used to implement connection with a FLASH device (or an EEPROM device of the SPI interface) of the SPI interface to be programmed, and an EEPROM device of the IIC interface. The ARM host controller 11 is provided with a USB interface 16 for inserting a USB storage device to be programmed. The ARM main controller 11 is provided with an RJ45 network port 18 for importing various images, data, configuration files and the like to be programmed into the ARM main controller 11 through a network.
The coprocessor 12 is connected with a corresponding parallel FLASH socket 17 through a parallel interface to realize the connection with the parallel FLASH equipment to be programmed. The ARM main controller 11 and the coprocessor 12 are also in communication connection through a serial port and/or a network port. The coprocessor 12 can also directly transfer a target file to be programmed through the network port 19, that is, the network port 19 is used to debug and upload a file to the coprocessor through telnet protocol and FTP protocol, and the network port 19 is a standby interface. The ARM main controller 11 and the coprocessor 12 of this embodiment are respectively provided with a debugging serial port.
Referring to fig. 2, a software architecture diagram of the multifunctional writer of the present invention is shown, and the software portion of the multifunctional writer of the present invention includes a display and interactive interface module 21, a main writing system module 22 (such as linux system), an auxiliary writing system module 23 (such as QNX system or VxWorks system), a communication module 24 (communication protocol) of the main system and the auxiliary system, and a file writing and checking module 25.
The invention is that ARM main controller 11 runs linux system and man-machine interactive interface program, the linux system and man-machine interactive interface program, ARM main controller 11 and its peripheral hardware circuit make up the main system of the writer together, the main system of the writer is responsible for the man-machine interactive display, support mouse keyboard and touch screen operation, and support RJ45 net mouth and USB interface, the subsystem that the main system runs on the coprocessor 12 (namely the subsequent auxiliary write system, such as the embedded real-time operating system of the customization) through the internal network or high-speed serial port at the same time. The main system of the programming device is responsible for programming the storage device of the general interface, including the EEPROM of the IIC interface, the EEPROM of the SPI interface or the FLASH (such as binary format) of the SPI interface, and the USB storage device.
Meanwhile, the invention runs a customizable embedded real-time operating system on the coprocessor 12, the customizable embedded real-time operating system keeps the same with the system running on the embedded single-board computer to be burned, such as QNX system or VxWorks system, and the embedded real-time operating system, the coprocessor 12 and the peripheral hardware circuit thereof form an auxiliary system of the writer, and support RJ45 network port and serial port. The auxiliary system of the writer is responsible for writing storage devices with a file system format which can only be used for a specific operating system, including FLASH devices with a file system with a TFFS format for a VxWorks system and FLASH devices with a file system with an FF3S format for a QNX system.
The user and the main system of the programming device carry out man-machine interaction through an interface of the touch display screen, and various images, data, configuration files and the like which need to be programmed are imported into the main system through a network input and/or USB flash disk import mode. In addition, the main system of the writer controls the power-on of the auxiliary system, communicates with the auxiliary system through a network or a high-speed serial port, transmits the write file specified by the user to the auxiliary system, then writes the write file and reads back the write state.
It should be noted that, when the present invention inputs the target programming file to the programmer host system only through a network, the USB interface 16 of the ARM host controller 11 in fig. 1 is used to plug in a USB storage device to be programmed. When the present invention inputs the target programming file to the programming device main system by using the USB disk import method, the ARM main controller 11 includes not only the first USB interface for inserting the USB storage device to be programmed, but also the second USB interface for inserting the USB disk storing the programming target file, and the first USB interface and the second USB interface may be the same USB interface, that is, the USB storage device to be programmed and the USB disk storing the target programming file are the same USB device, or the first USB interface and the second USB interface may also be different USB interfaces, which is not limited in this respect.
Based on the above, the invention adopts the framework that double CPUs run double operating systems (linux system and QNX system or VxWorks system) and integrates the storage device interfaces with rich types to realize the writer with complete functions and simple operation.
The basic working principle of the multifunctional writer of the invention is as follows:
the writer-writer provides a main operation interface for a user:
because target devices such as FLASH and EEPROM do not support hot plugging, the target devices need to be completely installed on the programming device before programming, and then the programming device needs to be powered on.
When the burner is started after being powered on, the touch display screen of the burner displays the main operation interface shown in fig. 3. As shown in FIG. 3, the files under the local file list are all files under the local file system directory under the writer host system. The local file list is also a function key, and the local file list can be refreshed by pressing the key after the network update file is downloaded into the directory (the local file list can be refreshed automatically when the network update file is started for the first time). The files in the U disk file list refer to all files in the U disk (the U disk which is connected with the ARM main controller and is used for importing the programming target files into a local directory of a main system of the programming device). The U disk file list is also a function key, and the file list in the U disk directory can be refreshed by clicking (the U disk directory file can be refreshed automatically every time the U disk is inserted).
When a programming function key is clicked, programming the target file to the specified target equipment; the target file depends on whether the file selected by the user when clicking to write is in the left or right window of the main interface in fig. 3: selecting the left window means directly writing the file in the local file directory of the main system of the writer to the target device, and selecting the right window means directly writing the file in the file directory of the input U disk to the target device.
Exemplarily, there are two ways for a user to import a target file to be programmed into a writer host system: a network input mode and a USB flash disk input mode. In addition, the target file which needs to be burned by the auxiliary system is transferred to the auxiliary system through the main system and then burned.
The network input mode is operated as follows: after inputting the IP address, the user name and the password of the writer, the SSH SecureFile Transfer software is used on a PC running the windows system, the computer is connected to the writer, and then the target file of the write is copied to the specified directory of the host system of the writer, as shown in FIG. 4 and FIG. 5.
The operation of the USB flash disk input mode is as follows: the programmed target file is stored in the specified directory of the U disk, then the U disk is inserted into the USB interface of the ARM main controller of the programming device, and the USB disk directory storing the programmed target file is identified and displayed on the right side of the main operation interface after the programming device is powered on, as shown in FIG. 3.
(II) target file format and definition
The name of the write file can only be English capital and small characters and underlines as well as short horizontal lines and ". multidot." characters in ASCII code characters, and no other characters can appear. The written file name can be in the form of a file name plus an extension, or only the file name without the extension.
The programming device needs to perform MD5 verification on the programming files, MD5 verification codes of all the programming files are recorded in a file named md5check.ini, the md5check.ini file is imported together through a network or a U disk when a user imports the programming target file, all the files needing to be programmed and the MD5 verification codes corresponding to the files are listed in the md5check.ini file, and the format of the md5check.ini file is shown in FIG. 6. After reading the burning file, the writer needs to calculate the MD5 value of the file and compare the value with the MD5 value of the corresponding file in md5check. After the writer finishes the writing of the file, the written data needs to be read back from the target device (the ARM main controller 11 reads back the written data in the target device corresponding to the ARM main controller, and the coprocessor 12 reads back the written data in the target device corresponding to the coprocessor), the MD5 value is calculated and compared with the MD5 value of the corresponding file in md5check.ini, and the writing of the file is ensured to be correct; while the result of the check by the MD5 of the coprocessor 12 needs to be notified to the main controller 11. In addition, when the main system transfers the target programming file to the auxiliary system, MD5 verification is also required to ensure the file is correct.
(III) burning of target files
(1) Programming of FLASH equipment of the SPI interface: the programming of the FLASH device of the SPI interface is completed by the programming main system, the FLASH device of the SPI interface does not support hot plug, and the binary data file of the FLASH device programmed to the SPI interface must add 4 bytes at the forefront of the file for specifying the offset address of the FLASH device programmed to the SPI interface. The programming of the FLASH equipment with the SPI interface can support batch programming of a plurality of files, a programming progress bar is displayed on a human-computer interaction interface in the programming process, and a programming result is displayed after the programming is finished. Similarly, the programming process of the EEPROM device of the SPI interface is consistent with the programming process of the FLASH device of the SPI interface, which is not described herein again.
(2) And (3) programming of the EEPROM equipment of the IIC interface: the programming of the EEPROM equipment of the IIC interface is completed by the main system of the programming device, the EEPROM equipment does not support hot plug, and the binary data file programmed to the EEPROM equipment must be added with 4 bytes at the top of the file for designating the offset address programmed to the EEPROM equipment of the IIC interface. The programming of the EEPROM equipment of the IIC interface can support batch programming of a plurality of files, a programming progress bar is displayed on a human-computer interaction interface in the programming process, and a programming result is displayed after the programming is finished.
(3) Programming of the UDOC (referring to the above USB storage device to be programmed): the programming of the UDOC is completed by a writer main system, and the UDOC supports hot plug. The programming of the UDOC can support batch programming of a plurality of files, a programming progress bar is displayed on a human-computer interaction interface in the programming process, and a programming result is displayed after the programming is finished.
(4) Programming a FLASH device with a file system format: FLASH devices with file system formats are commonly used for specified embedded operating systems such as QNX or VxWorks, whose programming is done by a writer-assisted system. The operating system running in the auxiliary system is consistent with a target embedded single board computer (target board for short), so that the FLASH equipment with the specified file system format on the target board can be identified, and the file is burnt into the FLASH equipment. The burning file is firstly input into the main system of the burner through a network or a U disk, so the main system and the auxiliary system need to communicate through the network or a high-speed serial port, the main system transmits the burning file appointed by a user to the auxiliary system, and the auxiliary system carries out burning. During the file transfer process, MD5check is also needed to ensure the correctness of the file transfer. Optionally, all the target programming files of the present invention can be imported from the outside for the first time, and can be stored in the main system after being imported once, and if the same target file is to be programmed next time, the target file in the main system can be directly called without being imported again; when a new target file needs to be written, the new target file needs to be imported from the outside again. In another example, the target programming file of the auxiliary system in the present invention can also be directly transferred through the network port 19 of the auxiliary system and the programming is completed, but this function can only be operated through the command line, and cannot be operated through the touch screen interface, and this operation will not be able to perform MD5 verification.
As shown in fig. 7, the present invention further provides a method for programming a target device by using a multifunctional writer with a touch screen, where the method includes the following steps:
step S1, before programming, all target devices to be programmed are installed on the programming device, and then the programming device is electrified;
step S2, after the power-on start of the writer is completed, the touch display screen displays the operation interface shown in fig. 3, and at this time, the target write file to be written can be selected to be imported through a network or a usb disk;
step S3, before burning the target device, the main controller of the writer reads the target file to be written from the hard disk into the memory, at this time, MD5 verification is performed once, if MD5 verification fails, the writing fails, if MD5 verification succeeds, the file reading is correct, and the subsequent steps are continued;
step S4, before burning the target device, executing backup operation on the original data in the target device, wherein the backup operation is used for restoring the target device to the state before burning after the subsequent burning is finished;
step S5, performing an emptying operation on the target device, for example, formatting the FLASH device, writing 0 to all addresses of the EEPROM device, and performing an operation of deleting all files on the UDOC; the sequence of the steps S3, S4 and S5 is merely an illustration, and the present invention is not limited to the sequence of the steps.
And step S6, selecting a target programming file to be programmed, clicking a button on the operation interface according to the type of the target equipment to execute programming operation, and displaying the programming progress on the human-computer interface in the programming operation executing process. Single file or multiple file batch burn-in is supported for all target devices. The programming of the EEPROM equipment of the IIC interface, the programming of the FLASH equipment of the SPI interface (or the EEPROM equipment of the SPI interface) and the programming of the UDOC are all completed by the main system of the programmer. In addition, the programming process of the parallel port FLASH device is as follows: the main system of the programming device is used for transmitting the target file to be programmed to the auxiliary system through a communication protocol, then the auxiliary system executes the programming operation, and the communication protocol between the main system and the auxiliary system is realized by software.
Step S7, after the programming is completed, the programmer reads the programmed target programming file from the target device and performs MD5 verification again, for example, the ARM main controller 11 performs read-back verification on the data programmed in the target device corresponding thereto and the coprocessor 12 performs read-back verification on the data programmed in the target device corresponding thereto: and if the MD5 verification fails, the programming fails, and if the MD5 verification succeeds, the programming succeeds.
In the invention, no matter the programming is successful or failed, the interface popup window of the main system displays the programming result to prompt the user. If the programming fails, the user may attempt to re-perform the programming or abort the programming.
And step S8, after the user confirms that all the programming is finished, powering down the programming device and unplugging the target device.
In summary, in the writer provided by the present invention, the writing file can be imported into the local storage medium of the writer through the usb disk or the network, so that the writing file can be flexibly modified according to the user requirement, and multiple files can be written at one time; the programming device with the touch screen function greatly improves the convenience of field project implementation, avoids carrying a computer and various programming devices, realizes one-key programming by adopting a visual touch screen interface, and simplifies the operation steps.
While the present invention has been described in detail with reference to the preferred embodiments, it should be understood that the above description should not be taken as limiting the invention. Various modifications and alterations to this invention will become apparent to those skilled in the art upon reading the foregoing description. Accordingly, the scope of the invention should be determined from the following claims.

Claims (23)

1. A multi-functional writer, comprising:
running a main system of a first operating system, and programming a first target programming file to a first group of target storage equipment of the universal interface;
and operating an auxiliary system of a second operating system, and programming a second target programming file to a second group of target storage devices with a file system format suitable for a set operating system, wherein the second operating system is the same as the set operating system.
2. The multifunction writer of claim 1 wherein,
the main system comprises at least one main controller, and the main controller is provided with a first peripheral interface module used for being connected with the first group of target storage equipment;
and/or the auxiliary system comprises at least one coprocessor, and the coprocessor is provided with a second peripheral interface module used for being connected with the second group of target storage devices.
3. The multifunction writer of claim 2 wherein,
the main controller and the coprocessor are both connected with a power supply.
4. The multifunction writer of claim 2 wherein,
the main controller runs the first operating system, and the first operating system is a linux system;
and/or the coprocessor runs the second operating system, and the second operating system is a QNX system or a VxWorks system.
5. The multifunction writer of claim 2 or 3 wherein,
the main controller is an ARM main controller, the first peripheral interface module is one or more of an SPI interface, an IIC interface and a USB interface, and the first group of target storage equipment is one or more of FLASH equipment of the SPI interface, EEPROM equipment of the IIC interface and USB storage equipment.
6. The multifunction writer of claim 4 wherein,
the second peripheral interface module comprises a parallel interface, and the second group of target storage equipment comprises parallel FLASH equipment;
the parallel FLASH equipment is FLASH equipment with a TFFS format file system for a VxWorks system, or FLASH equipment with an FF3S format file system for a QNX system.
7. The multifunction writer of claim 1 wherein,
and the auxiliary system is in communication connection with the main system and receives the second target programming file transmitted by the main system.
8. The multifunction writer of claim 7 wherein,
and the main system is in communication connection with the auxiliary system through a network port or a high-speed serial port.
9. The multifunction writer of claim 1 or 7 or 8 wherein,
the first target programming file and/or the second target programming file are/is transmitted to the main system in a network input mode and/or an external storage medium import mode;
and/or the second target programming file is transmitted to the auxiliary system in a network input mode.
10. The multifunction writer of claim 9 wherein,
the external storage medium is imported in a USB flash disk mode.
11. The multifunction writer of claim 2 wherein,
the main controller is connected with a touch display device for man-machine interaction display and touch operation and is used for selecting a target programming file and executing programming operation.
12. The multifunction writer of claim 11 wherein,
the touch display device provides an operation interface, and the operation interface displays:
the local file list function key is used for selecting files in the local file list as a first target programming file and/or a second target programming file;
the USB flash disk file list function key is used for selecting files in the USB flash disk file list as a first target programming file and/or a second target programming file;
and the programming function key is used for respectively programming the first target programming file and/or the second target programming file to the first group of target storage equipment and/or the second group of target storage equipment.
13. The multifunction writer of claim 12 wherein,
and displaying a programming progress bar on the operation interface, and displaying a programming result after programming is finished.
14. The multifunction writer of claim 1 or 7 wherein,
the system further comprises an MD5 verification module, wherein the MD5 value of the target programming file is calculated and compared with the corresponding MD5 value in the set file, so that the MD5 verification is performed on the reading and programming read-back of the target programming file;
the MD5check codes of all the target programming files are recorded in the setting file, the setting file is imported into the main system when the target programming files are imported into the main system, and all the target programming files and the corresponding MD5check codes are listed in the setting file.
15. A method for programming based on the multifunctional writer according to any one of claims 1 to 14, characterized in that the method comprises the following steps:
the main system runs a first operating system and writes a first target programming file to a first group of target storage equipment of the universal interface;
the auxiliary system runs a second operating system and writes a second target programming file to a second group of target storage devices with a file system format suitable for the set operating system; the second operating system is the same as the setting operating system.
16. The method of claim 15, wherein the programming is performed by a multi-function programmer,
before programming, all target storage equipment to be programmed is installed on a programming device, and the programming device is electrified;
the auxiliary system is in communication connection with the main system, a first target programming file to be programmed is imported into the main system, and the main system transmits a second target programming file to the auxiliary system;
the touch display screen of the writer displays an operation interface;
and selecting a target programming file, clicking a key on the operation interface according to the type of the target storage equipment to execute programming operation, and programming the target programming file to the corresponding target storage equipment.
17. The method of claim 15 or 16,
before burning the target storage device, the main system of the writer reads a target writing file to be written from the hard disk to the memory and performs MD5 verification and/or the main system of the writer transmits the target writing file to be written to the auxiliary system and performs MD5 verification: if the MD5 verification fails, the programming fails; if the MD5 is verified successfully, the file is read correctly, and subsequent programming operation is continued; and/or after the programming is finished, the main system of the programming device reads the programmed first target programming file from the first group of target storage devices and performs MD5 verification and/or the auxiliary system of the programming device reads the programmed second target programming file from the second group of target storage devices and performs MD5 verification: and if the MD5 verification fails, the programming fails, and if the MD5 verification succeeds, the programming succeeds.
18. The method of claim 17, wherein the programming is performed by a multi-function programmer,
the MD5check codes of all the target programming files are recorded in a setting file, the setting file is imported into a main system when the target programming files are imported into the main system, and all the target programming files and the corresponding MD5check codes are listed in the setting file;
the MD5 proofreading process comprises the following steps: and calculating the MD5 value of the target programming file and comparing the MD5 value with the corresponding MD5 value in the set file so as to ensure that the target programming file is read by the programmer and is burnt by the programmer correctly.
19. The method of claim 15, wherein the programming is performed by a multi-function programmer,
before burning the target storage device, backup operation is performed on original data in the target storage device, and the backup operation is used for restoring the target storage device to a state before burning after subsequent burning is completed.
20. The method of claim 15, wherein the programming is performed by a multi-function programmer,
before burning the target storage device, performing an emptying operation on the target storage device, including formatting the device, writing 0 to all addresses of the device, and performing an operation of deleting all files.
21. The method of claim 15, wherein the programming is performed by a multi-function programmer,
and the programming of the first group of target storage devices and/or the second group of target storage devices supports single file programming or batch programming of a plurality of files.
22. The method of claim 16, wherein the programming is performed by a multi-function programmer,
and the target programming file is transmitted to the main system in a network input mode and/or an external storage medium import mode.
23. The multifunction writer of claim 15 wherein,
the first group of target storage equipment is one or more of FLASH equipment of an SPI interface, EEPROM equipment of the SPI interface, EEPROM equipment of an IIC interface and USB storage equipment;
the USB storage equipment in the first group of target storage equipment supports hot plug;
the FLASH device of the SPI interface and/or the EEPROM device of the IIC interface in the first group of target storage devices do not support hot plug, and four bytes are added to the top of a binary data file to be programmed into the FLASH device and/or the EEPROM device of the SPI interface and/or the EEPROM device of the IIC interface for specifying an offset address to be programmed into the corresponding target storage device.
CN201911174944.XA 2019-11-26 2019-11-26 Multifunctional programming device and programming method Active CN110888656B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911174944.XA CN110888656B (en) 2019-11-26 2019-11-26 Multifunctional programming device and programming method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911174944.XA CN110888656B (en) 2019-11-26 2019-11-26 Multifunctional programming device and programming method

Publications (2)

Publication Number Publication Date
CN110888656A true CN110888656A (en) 2020-03-17
CN110888656B CN110888656B (en) 2022-07-26

Family

ID=69748809

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911174944.XA Active CN110888656B (en) 2019-11-26 2019-11-26 Multifunctional programming device and programming method

Country Status (1)

Country Link
CN (1) CN110888656B (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113138777A (en) * 2021-04-09 2021-07-20 长芯盛(武汉)科技有限公司 Low-cost universal multi-path programming device and programming method suitable for various programming protocols
CN115543361A (en) * 2022-11-30 2022-12-30 北京志翔科技股份有限公司 File burning method and device, electronic equipment and storage medium
CN115543361B (en) * 2022-11-30 2024-06-04 北京志翔科技股份有限公司 File burning method, device, electronic equipment and storage medium

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6727918B1 (en) * 2000-02-18 2004-04-27 Xsides Corporation Method and system for controlling a complementary user interface on a display surface
CN101527161A (en) * 2009-04-23 2009-09-09 浙江正原电气股份有限公司 Method for fast programming NAND flash and device thereof
US20110221765A1 (en) * 2000-02-18 2011-09-15 Xsides Corporation Method and system for controlling a complementary user interface on a display surface
CA2783285A1 (en) * 2011-07-21 2013-01-21 Nuovo Pignone S.P.A. System and method for auto-tuning a combustion system of a gas turbine
CN202796079U (en) * 2012-09-17 2013-03-13 山东神戎电子股份有限公司 Portable program burner
CN105068860A (en) * 2015-09-08 2015-11-18 中国矿业大学(北京) Linux coal cutter management host system based on ARM
CN107908507A (en) * 2017-10-10 2018-04-13 芯海科技(深圳)股份有限公司 A kind of dual processors multichannel FT volume productions test system and method
CN109117151A (en) * 2018-07-18 2019-01-01 珠海市杰理科技股份有限公司 Fever writes and program burn writing method, apparatus, computer equipment and storage medium
CN109521357A (en) * 2018-12-27 2019-03-26 南京中港电力股份有限公司 A kind of single board testing system integrating program burn writing, circuit functionality test
WO2019134113A1 (en) * 2018-01-05 2019-07-11 深圳市汇顶科技股份有限公司 Automated test method and system

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6727918B1 (en) * 2000-02-18 2004-04-27 Xsides Corporation Method and system for controlling a complementary user interface on a display surface
US20110221765A1 (en) * 2000-02-18 2011-09-15 Xsides Corporation Method and system for controlling a complementary user interface on a display surface
CN101527161A (en) * 2009-04-23 2009-09-09 浙江正原电气股份有限公司 Method for fast programming NAND flash and device thereof
CA2783285A1 (en) * 2011-07-21 2013-01-21 Nuovo Pignone S.P.A. System and method for auto-tuning a combustion system of a gas turbine
CN202796079U (en) * 2012-09-17 2013-03-13 山东神戎电子股份有限公司 Portable program burner
CN105068860A (en) * 2015-09-08 2015-11-18 中国矿业大学(北京) Linux coal cutter management host system based on ARM
CN107908507A (en) * 2017-10-10 2018-04-13 芯海科技(深圳)股份有限公司 A kind of dual processors multichannel FT volume productions test system and method
WO2019134113A1 (en) * 2018-01-05 2019-07-11 深圳市汇顶科技股份有限公司 Automated test method and system
CN109117151A (en) * 2018-07-18 2019-01-01 珠海市杰理科技股份有限公司 Fever writes and program burn writing method, apparatus, computer equipment and storage medium
CN109521357A (en) * 2018-12-27 2019-03-26 南京中港电力股份有限公司 A kind of single board testing system integrating program burn writing, circuit functionality test

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
LI QANG ET AL: "ARM9-based embedded controller of the boiler combustion", 《2011 INTERNATIONAL CONFERENCE ON ELECTRIC INFORMATION AND CONTROL ENGINEERING》 *
刘辉: "智能卡信息存储系统的研究与实现", 《中国优秀硕士学位论文全文数据库 (信息科技辑)》 *
张佃青等: "SD卡启动的PowerPC NOR Flash自动烧写方法", 《单片机与嵌入式系统应用》 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113138777A (en) * 2021-04-09 2021-07-20 长芯盛(武汉)科技有限公司 Low-cost universal multi-path programming device and programming method suitable for various programming protocols
CN113138777B (en) * 2021-04-09 2022-02-01 长芯盛(武汉)科技有限公司 Low-cost universal multi-path programming device and programming method suitable for various programming protocols
CN115543361A (en) * 2022-11-30 2022-12-30 北京志翔科技股份有限公司 File burning method and device, electronic equipment and storage medium
CN115543361B (en) * 2022-11-30 2024-06-04 北京志翔科技股份有限公司 File burning method, device, electronic equipment and storage medium

Also Published As

Publication number Publication date
CN110888656B (en) 2022-07-26

Similar Documents

Publication Publication Date Title
CN105573743B (en) Chip burning system and method and electronic equipment
CN101452745B (en) Programmer and programming method thereof
CN101673202B (en) Program writing method and system, pre-writing device and writing device
US9804832B2 (en) Method, apparatus, and communication device for updating firmware
JP5039428B2 (en) Programmable controller and PLC system
CN111008033A (en) Universal DSP (digital signal processor) online upgrading system and upgrading method based on serial port
US7480905B2 (en) Interface device, and method and computer readable product for updating firmware in the interface device
CN112000351B (en) Updating method, updating device, updating equipment and storage medium of BMC (baseboard management controller) firmware
CN102693144B (en) A kind of method of capacitance plate firmware upgrade of Android mobile terminal
CN104077166B (en) EPCS and EPCQ memory online upgrading methods based on IP kernel in FPGA
CN108073738B (en) GPIO (general purpose input/output) verification system and method
US20060026462A1 (en) Apparatus for recovering BIOS in computer system
CN110780908A (en) Screen display program upgrading method and system and terminal equipment
CN110888656B (en) Multifunctional programming device and programming method
TW594474B (en) Upgrade method of BIOS in notebook computer
CN100416512C (en) Embedded apparatus debugging method and debugging tool therefor
CN112445670B (en) eMMC test method and device
CN111459468A (en) DSP program on-line upgrading system and method for high-reliability serial port communication
CN110795112A (en) Multi-channel IC burning method, device and system
CN116662050A (en) Error injection support function verification method, device, terminal and medium
CN110703948A (en) Touch screen operation recording and broadcasting system and method
CN114637669A (en) Device management method, device and storage medium
CN110737483B (en) Signaling and data transmission method based on Windows USB MassStorage class
CN117827230A (en) Storage device writer and writing method
CN111966385A (en) Flat panel detector online upgrading method, flat panel detector and upper computer

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant