Uboot-guided wince and. netmicroframework dual systems

Source: Internet
Author: User

In actual projects, two systems need to be stored in one flash. You can choose to start one system. This article mainly describes how to use uboot to start the two systems, WinCE and. Net micro framework.
Because the Chinese font library, MFC, and ,. NET Compact Framework 3.5, USB device, etc. The image file is large and needs to be cropped. The flash space is 32 MB, and the MF system also needs to occupy a certain amount of space. After verification, to ensure that the MF space is sufficient and the wince system can be started normally, the initial address of the wince program is 60x00000 on fl_3. The key technical records for the solution are as follows.
Compression of Chinese character libraries
When customizing a Chinese system, NK is always about 10 MB larger than that in English. It also takes time to copy the kernel to the memory during bootloader startup, which also occupies a lot of memory, the memory left for the system and application is about 10 MB less. The following is a summary of how to reduce the font size. The core idea is to reduce the size of the selected Chinese font simsun & nsimsun (sysgen_fonts_simsun) to (sysgen_fonts_simsun_2_50.
Reduce Chinese font size
1. Open the target project file, click the "Platform" menu, and then click "Settings ...", Run "clear ",
Locales: tick "English (US)" "Chinese (China )"
Default roles are: Select "Chinese (China )"
After step 2 is completed, the default font of xinsong is used in the project.
2. Return to catalog and select "core OS"> "international"> "locale spectific support"
-> "Chinese [Simplified]"
▲Simsun & nsimsun (subset 2_50): the font size is about 3 m. It is best to select subset 2_50 for wince. Therefore, replace the original Chinese font with the (subset 2_50) Chinese font, select simsun & nsimsun (subset 2_50) and right-click the component to add it. This will replace the original font. In this way, the Chinese display has no effect and the kernel slimming effect has to be selected;
Supplement: in the absence of compressed fonts, the default font size of the New Song Dynasty is more than 10 MB, and the file is simsun. if you select subset 2_50 and the file is simsun_2_50.ttc, the font size is close to 3 MB, which is also the key to crop the wince volume.
▲Gb18030 data converter: Chinese character encoding standard set converter, required
3. re-run the sysgen command. In this way, the system can display Chinese characters normally without worrying about the huge NK volume.

Commands for starting a program in uboot include bootm and go. MF and Ce use go commands to start the system.
The following problems are encountered during the migration of two systems:
Run the program flash: The uboot conflicts with tinybooter, and tinyclr. Bin is used to solve this problem.
Ce cannot run due to dual-system switching :. the Flash space of netmicroframework should be 6 MB. The MF configuration information cannot be modified due to the use of 8 m images: On the basis of tinyclr burning, tinybooterdecompressor should be written on the 601xxxxx address. bin, run er_config (Flash version) on the address 601x0000. to modify the configuration information, start tinybooterdecompressor. bin.
Note: When you use mfdeploy to modify the configuration information, you must first disconnect mincom.
Wince System Image Generation
1. NK. Bin Image Generation
NK. Bin is an image for eboot boot (for single-system wince): Use Pb to open the EDB9315-bin.pbxml file and run sysgen to generate. NK. Bin.
2. NK. nb0 Image Generation
NK. nb0 is a dual-system image for uboot boot (wince and MF), with Pb to open the EDB9315-nk0.pbxml file, you also need to modify the following configuration file:
 
Figure 1 modify configuration
To modify romsize = 01499999 (20.6 m) in boot from Ram in the config-1x07.bib File)
 
Figure 2 comment
To modify startup. S, comment out row 115.
After completing the preceding two steps, run sysgen to generate NK. nb0.
Add USB-Device Driver
The driver directory is ep93xx \ SRC \ drivers \ usbfn,
 
Figure 3 attach a USB driver
Add USB-Device Driver
 
Figure 4 attach USB
Add three methods under USB function clients
 
Figure 5 load ActiveSync
Add support for the Connection Tool ActiveSync
 
Figure 6 modify registry information
Add the following content after if bsp_ep93xx_usb condition in the platform-1x07.reg
If bsp_ep93xx_usb_slave
; USB-ISP1582-based Slave Device Driver
[HKEY_LOCAL_MACHINE \ drivers \ builtin \ usbslave]
"Prefix" = "ufn"
"DLL" = "usbslave. dll"
; "Index" = DWORD: 1
; "Order" = DWORD: 3
"Busioctl" = DWORD: 2a0048
"Iclass" = multi_sz: "{E2BDC372-598F-4619-BC50-54B3F7848D35} = % B", "{6f40791d-300e-44e4-bc38-e0e63ca8375c} = % B"
[HKEY_LOCAL_MACHINE \ drivers \ USB \ functiondrivers]
"Defaultclientdriver" =-; erase previous default
[HKEY_LOCAL_MACHINE \ drivers \ USB \ functiondrivers]
"Defaultclientdriver" = "serial_class"
; [HKEY_LOCAL_MACHINE \ drivers \ USB \ functiondrivers]
; "Defaultclientdriver" = "mass_storage_class"
[HKEY_LOCAL_MACHINE \ drivers \ USB \ functiondrivers \ mass_storage_class]
"DLL" = "usbmsfn. dll"
"Interfacesubclass" = DWORD: 06
"Interfaceprotocol" = DWORD: 50
"Devicename" = "dsk1 :"
"Friendlyname" = "Mass Storage"
; Idvendor must be changed. 045e belongs to Microsoft and is only to be used
Prototype devices in your labs. Visit http://www.usb.org to obtain a vendor ID.
"Idvendor" = DWORD: 045e
"Manufacturer" = "NXP semi"
"Idproduct" = DWORD: FFFF
& Quot; product & quot; = & quot; pvontek PVT-805S SBC & quot"
"Bcddevice" = DWORD: 0
; [HKEY_LOCAL_MACHINE \ drivers \ USB \ functiondrivers]
; "Defaultclientdriver" = "rndis"
; Add for rndis support
[HKEY_LOCAL_MACHINE \ drivers \ USB \ functiondrivers \ rndis]
"Useactivesyncids" = DWORD: 1
[HKEY_LOCAL_MACHINE \ drivers \ USB \ functiondrivers \ rndis]
"DLL" = "rndisfn. dll"
"Friendlyname" = "rndis"
"Idvendor" = DWORD: 045e
"Manufacturer" = "generic manufacturer"
"Idproduct" = DWORD: 0301
"Product" = "generic rndis"
"Bcddevice" = DWORD: 0
[HKEY_LOCAL_MACHINE \ drivers \ USB \ functiondrivers \ serial_class \ unimodem]
"TSP" = "unimodem. dll"
"Devicetype" = DWORD: 0
"Friendlyname" = "USB serial port"
[HKEY_CURRENT_USER \ controlpanel \ comm]
"Cnct" = "usbserial"
"Autocnct" = DWORD: 1
[HKEY_CURRENT_USER \ comm \ rasbook \ usbserial]
"Entry" = HEX :\
, 40, 00, 00, 00, 00, 00, 00, 00, 00, 01 ,\
, 00, 00, 00, 00, 01, 00, 00, 00, 00 ,\
FF, 00,00, 00,00, 00,00, 00,00, 00,01, 00,00, 00,28, Ed, 04, 0C, 20,10, F2, 02,00, 00,00 ,\
, 00, 00, 00, 00, 7A, 78, EE, 04, 0C ,\
B5, 01,00, 00,00, 00,00, 00,00, 00,00, 00, 9C, Ed, 04, 0C, 00,00, 00,00, 78, EE, 04, 0C, 04 ,\
5C, F2, 02, A4, 01,00, 00, 4f, 01,00, 00, B5, 01,00, 00, 7A, 00,00, 00, BC, Ed, 04, 0C, 00,00, \
, 00, 98, EE, 04, 0C, 04, 5C, F2, 02, A4, 01,00, 00, FC, Ed, 04, 0C, D8, EE, 04, 0C, 70, 19, 0e ,\
, 00, 00, 00, FC, A3, F2, 00, 00, 00, 00, 00, AB, 00, D4, A5, F2, 02 ,\
88,00, 00,00, D8, EE, 04, 0C, FC, Ed, 04, 0C, 8C, F0, 04, 0C, D8, EE, 04, 0C, 04, 5C, f2, 02, A5 ,\
, 00, 00, 4f, 00, B4, 00, 00, 00, 00, 00, 00, 00 ,\
, 00, 00, 00, 00, 00, FF, 00, AC, 1e, 0e, 00, 00, 19, 0e ,\
, 00, 00, FC, A3, F2, 02, A0, 1e, 0e, 00, BC, EF, 04, 0C, 00, 00, 00, 00 ,\
, 72 ,\
, 65, 00, 00, 00, F0, 01, 00, 5a, 17,05, 0C, 5a, 17,05, 0C, 0f, 00 ,\
, 00, A0, 00, 6C ,\
, 70, 00, 6f, 74, 00, 90, 6C, F8, 03, C0, 70, F2, 00, 00, 00 ,\
D4, 62, F2, 00, 00, 00, A0, 1e, 0e, 00, 00, 28 ,\
F4, 04, 0C, 00,00, 00,00, 1C, F0, 04, 0C, FB, de, 00,00, 00,00, 00,00, 00,00, 00,00, 00,00 ,\
, 00, AC, 1e, 0e, 00, 00, 00, C2, 56, D7, A3, 00, EF, 04, 0C, F8, EE, 04, 0C, 18, 6d, F8 ,\
03, F0, 84, F9, 44, 59,08, 00, 00, 00, 00, 5a, 0C, 00 ,\
, 00, F4, Fe, 00, BC, EF, 04, 0C, 00, 00, 5a ,\
17,05, 0C, 00,00, 00,00, C2, 56, D7, A3, 00,00, 00,00, 44,59, 08,00, 00,00, 00,00, 60, 4f ,\
01, 7C, 01,00, 00,00, 01,00, 00,00, 0f, 00,00, 00,00, 00,00, 00,89, 01,00, 00,60, 4f, 01 ,\
7c, 00,00, 00,00, D0, 37,01, 7C, 00,00, 00,00, 5a, 17,05, 0C, 00,00, 00,00, D0, 37,01, 7C ,\
, 00, 8e, Fe, F1, E3, 20, 00, 00, 00, 00, 00, 00, 00 ,\
, 00, 00, B4, 53,01, 00, C0, A2, 00, 00, 00, 00 ,\
, 00, A0, 1e, 0e, 20, 10, F2, 00, 00, 00, 00 ,\
, 00, 00, 00, 00, 4f, 01, 7C, 00 ,\
, 00, 00, 2c, 53,01, 00, 0f, 00, 00, C8, BD, 00, 00, 00, 00 ,\
, 00, 10, F2, 02, D0, 9d, 0e, 08, F0, FF, 90, EB, 0e, 00, 5a, 17,05, 0C, 81,00 ,\
, 00, 90,27, 1a, 08, F0, EF, 04, 0C, C4, E3, 07,00, 60, 4f, 01, 7C, 89,01, 00, 00, 00 ,\
00, 5a, 17,05, 0C, 90,27, 1a, 08, 0d, 00,00, 00,81, 00,00, 00, 5a, 17,05, 0C, 5a, 17,05, 0C ,\
80, 4E, 01, 7C, 64, F1, 07,00, D2, 01,00, 00,00, 00,00, 00,00, 00,00, 00,00, 00,00, 00, AB ,\
, 00, 00, 4f, 00, 00, 00, 00, 00, D2, 00, 00, 00 ,\
, 00, AB, 00, 4f, 00, 00, 00, AB ,\
, 00, 00, 8e, Fe, F1, E3, 0d, 00, 00, 5a, 17,05, 0C, 18, 6d, F8, 75, F9, 03, \
4f, 01,00, 00, 0d, 00,00, 00,68, F9, 01,00, B4, F0, 04, 0C, B8, F0, 04, 0C, 0d, 00,00, 00,80 ,\
F0, 07,00, 0d, 00,00, 00,00, 00,00, 00, 5a, 17,05, 0C, 00,00, 00,00, 00,00, 00,00, F4, Fe ,\
, 00, B8, F0, 04, 0C, B0, F0, 04, 0C, 91,00, 00, 00, 5a, 17,05, 0C, 00, 00 ,\
00, C2, 56, D7, A3, 00,00, 00,00, 80, F0, 07,00, 00,00, 00,00, 80, 4E, 01, 7C, 5a, 17,05, 0C ,\
4f, 01,00, 00, 0f, 00,00, 00,52, 01,00, 00, 0d, 00,00, 00,80, 4E, 01, 7C, 81,00, 00,00, D0 ,\
, 01, 7C, 00, 90, 1d, 00, 00, 00, 0C, B8, 5f, EC, 83, 0f, 00, 00, 00 ,\
, 00, E4, CA, EC, 5f, CC, 83, B8, 5f, EC, 83, 0f, 38, Fe, 00 ,\
F0, 5C, F1, 04, 0C, 40, EB, 20, 80, 0f, 1d, C4, B3, 00, F0, 38, F4, 04, 0C ,\
4e, 00, F3, 04, 0C, 24, 3c, F1 ,\
EC, FF, FF
"Devcfg" = HEX :\
, 00, 00, 00, 01, 00, 00, 4B, 00, 00, 00 ,\
, 00, 00, 00, 00, 00, 00, 00, 00, 00 ,\
, 00, 00, 00, 00, 00, 00, 00, 00, 00 ,\
, 00, 00, 00, 00, 00, 00, 00, 00, 00 ,\
, 00, 00, 00, 00, 00, 00, 00, 00, 00 ,\
, 00, 00, 00, 00, 00, 00, 00, 00, 00 ,\
, 00, 00, 00, 00, 00, 00, 00, 00, 00 ,\
, 00, 00, 00, 00, 00, 00, 00, 00, 00 ,\
, 00, 00, 00, 00, 00, 00, 00, 00, 00 ,\
, 00, 00, 00, 00, 00, 00, 00, 00, 00 ,\
, 00, 00, 00, 00, 00, 00, 00, 00, 00 ,\
, 00, 00, 00, 00, 00, 00, 00, 00, 00 ,\
, 00, 00, 00, 00, 00, 00, 00, 00, 00 ,\
, 00, 00, 00, 00, 00, 00, 00, 00, 00 ,\
, 00, 00, 00, 00, 00, 00, 00, 00, 00 ,\
, 00, 00, 00, 00, 00, 00, 00, 00, 00 ,\
, 00, 00, 00, 00, 00, 00, 00, 00, 00 ,\
, 00, 00, 00, 00, 00, 00, 00, 00, 00 ,\
, 00, 00, 00, 00, 00, 00, 00, 00, 00 ,\
, 00, 00, 00, 00, 00, 00, 00, 00, 00 ,\
, 00, 00, 00, 00, 00, 00, 00, 00, 00 ,\
, 00, 00, 00, 00, 00, 00, 00, 00, 00 ,\
, 00, 00, 00, 00, 00, 00, 00, 00, 00 ,\
, 00, 00, 00, 00, 00, 00, 00, 00, 00 ,\
, 00, 00, 00, 00, 00, 00, 00, 00, 00 ,\
, 00, 00, 00, 00, 00, 00, 00, 00, 00 ,\
, 00, 00, 00, 00, 00, 00, 00, 00, 00 ,\
, 00
Endif

 

Dual-system writing and startup process:

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.