Re: EZBL ex_boot_app_blink_dual_partition read-back verification error
I received my MCP2200EV module today and tested with the Explorer 16 (original version). I still get errors when trying to load the dual partition program at 230.4K baud, but it works OK at 115.2K baud.
Then I tried the Explorer 16/32 board and had the same results, I can load at 115.2K baud but not at 230.4K. There must be more delays in the programming of a second partition than in programming one partition as the other example programs load OK at 230.4K.
I also tried using the Prolific USB to serial at 57.6K but no luck there, even though it did work with the other examples. The MCP2200 is the way to go for dual partitions.
My project's target board has a PIC24FJ1024GA610 chip and a MCP2200 on UART 3 (the example code is built for UART 2). I do have an RS232 port on UART 2, so I connected the MCP2200EV module to the board's UART 2 port and re-compiled for the GA610 part. I loaded the program with the Real ICE and it ran. Then I tried loading via the serial port at 115.2K baud and that worked OK too!
BTW: I discovered that if you open up a terminal program on the serial port 230.4K 8N1, you will see the boot up messages, showing which partition is active. However, you need to be careful to close the terminal program when tying to load new code. I use RealTerm which has a convenient Open/Close button.
My next step is to figure out how to change the bootloader's serial port to UART 3 so I can use the on-board MCP2200 USB interface. I have poked around in the code and it does appear that there is some hard coding of the UART and it's pins in the InitializeBoard() function. If anyone can help point me to the proper area of the code where I need to make changes, that would be great. I know how to setup the UARTs, pins and ISRs, but finding all of the places to change will be the challenge. I have not found the ISR code yet, it must be somewhere in the library functions.
These kind of changes would be good to add to the tutorial as I suspect that others will need to change UARTs also.
Once I get this running the next step will be to see if I can load code via Ethernet using the WIZnet chip on my board.