News:

Let's find out together what makes a PIC Tick!

Main Menu

What dev board are people using?

Started by TimB, Mar 20, 2021, 07:34 PM

Previous topic - Next topic

top204

#20
I did a lot of development work on the Amicus18 board, and even more on the Amicus24 board and they both worked like a charm.

There would be some difference with a new Amicus18 board, if I did one, in the Voltage hotswap part of it, and a 3 pin SIL header to choose between 3.3V and 5V, and remove the 2mm 3 pin SIL that connects to PORTB.0 because it is not needed, and was placed there to make compatability with Arduino shields that use that pin for GND, but pulling PORTB.0 to low would do the same job. I'd also use a mini USB socket, as I did with Amicus24, and a CH340G or CH340E for the USB to serial chip. Then make the bootloader auto find the board by sending its init value out on each valid virtual serial port, and see which one responds with the correct value back from the bootloader in the PIC.

TimB


Well it turns out as Tumbleweed said it made no difference.

There seems to be no LV programming option with that device (pic18f26k22)

Shame I was hoping to get the 2 boards going again.

Les

Yes the apart from me never getting the bootloader to work the Amicus is working well. I might retry the bootloader actually.

Tim


tumbleweed

QuoteThere seems to be no LV programming option with that device (pic18f26k22)
There should be, Tim. What programmer/software are you using?

You have to use a blank chip or one that has its LVP config bit enabled (which can only be changed using HVP once it's been programmed).

You are using the Firewing18 board, right?

TimB


I'm using the latest version of PICKIT2Plus on my Pickit2

The pic is already programmed, No idea how I would make it LV capable.

Tim

top204

#24
You will need to program the device with a conventional programming method first, and set the LVP config fuse to On. Then that device will always program with a low voltage. I'm not sure if the default is LVP with a new device, but I never trust default settings. From then on, always make sure the LVP config fuse is On, otherwise, the device will revert to standard programming.

The older devices had a PGM pin, which was normally PORTB.5, and this was a pain in the backside, and what stopped LVP becoming the better way, because it had to be pulled low when Low Voltage Programming was performed, so it stopped it being used in a circut if "In Circuit Programming" was being implemented.

As George stated, the newer devices do not need the PGM pin anymore, and that is how it should have always been. Just like all other flash memory chips. i.e. EEPROM, MMC cards, SD cards etc, they should have had the internal voltage boost for the flash memory from the very first of the flash PIC devices, just as Atmel did at the same time, instead of the silly 12 Volts required on the MCLR pin.

I will be implementing LVP in any future projects, and maybe make a small programmer board that will do the job smoothly. I've just finished a standalone bootloader using a single 18F device that reads the firmware to upload from an SD card, then uploads the firmware and EEPROM to the slave unit. I have created a FAT16/32 read/write library for 8-bit devices in Proton8, so I will either make it an article or a Project eBook, because it is extremely fast and even reading and writing audio on it is fast. And reading a .bmp file from the SD card onto a colour graphic LCD is always a boost to confidence, when it works. :-)


Dompie

Quote from: top204 on Mar 25, 2021, 08:52 AM....... I have created a FAT16/32 read/write library for 8-bit devices in Proton8, so I will either make it an article or a Project eBook, because it is extremely fast and even reading and writing audio on it is fast. And reading a .bmp file from the SD card onto a colour graphic LCD is always a boost to confidence, when it works. :-)

Oh yes Les, I am very interested in this FAT16/32 library for my CH376S devices. It would be great if I could use these devices. I never got it working properly.

Johan

tumbleweed

The LVP bit is set to '1' (LVP = ON) in the factory, and there's no way to set it to '0' (LVP = OFF) without applying high voltage on MCLR.
As Les said, once you've programmed LVP=OFF, you need to use HVP to set it ON again so you can use LVP (or just erase the chip).

The Firewing18 board is really designed for use with a bootloader, or ICSP with LVP.
With HVP, some PIC18 devices require up to 13V on the MCLR pin and that can upset the circuitry on the FW18 board.
The purpose of the diode on the MCLR pin is to block that high-voltage from backfeeding onto the VDD rail (Vsupply).

But, there is another path for that voltage, and that's through the MCLR RESET connection from the USB PIC18F14K50 (U5).
The 100R R5 limits the current somewhat, but it can still feed back onto Vsupply through the protection diodes on U5-13.
You can't easily block that voltage, but increasing R5 to 1K will help. While you're there, increasing R2 to 1K will
make it easier to share the uart serial RXD (USB uart PTX) with other devices.

Here are some other tips:
1). Cut the 3V3 track on the Vsupply 3V3/5V selector and install a 3-pin header w/jumper to select VDD = 3V or 5V
Some devices will require VDD=5V to perform a Bulk Erase.

2). If using ICSP, power the device externally (or from the USB) and not from the ICSP tool.

With the PICkit2+/PICkit3+, disable the auto device detect (uncheck 'Programmer | Auto-detect on Start') and set it to manual ('Programmer | Manual Device Select').
Pick your device from the drop-down box and that should enable you to select 'Tools | Use LVP Program Entry'

John Lawton


OG

Quote from: top204 on Mar 25, 2021, 08:52 AMI will be implementing LVP in any future projects, and maybe make a small programmer board that will do the job smoothly. I've just finished a standalone bootloader using a single 18F device that reads the firmware to upload from an SD card, then uploads the firmware and EEPROM to the slave unit. I have created a FAT16/32 read/write library for 8-bit devices in Proton8, so I will either make it an article or a Project eBook, because it is extremely fast and even reading and writing audio on it is fast. And reading a .bmp file from the SD card onto a colour graphic LCD is always a boost to confidence, when it works. :-)
Excellent.
Does this work all the way to OTA (Over The Air)? :)

pjdenyer

I have been using the SnadPic Board with the 24EP512GU810 installed as I have been working with TFT displays, bought of Ebay, but not longer available, however, I am temped to produce my own board - 24Pic & 33Pic compatible, is there any interest.

Samir sayyed

Hi
Any success story canbus
 I am use 18f452 and mcp2515 spi but not proper intlize please share mcp2515.inc file

glenlivet

I have the EasyPIC v7 for the 8-biters and the Fusion v7 for the dsPIC33, PIC24 and PIC32's. I also have the microBASIC Pro for PIC, microBASIC Pro for dsPIC32/PIC24,microBASIC Pro for PIC32 and microBASIC for ARM. I love the dev boards HATE the compilers. The compilers were mostly purchased as a result of a project sponsor specifying a specific ME smart display (along with EasyTFT) to base a custom one-off project on. The dev boards on the other hand are great if you want to lash something together quickly to try something out. Like that new temperature, baro-pressure, %RH chip you couldn't wait to get you hands on. I generally find myself going back to Proton/Positron to do the SW and write it to the dev board using the microPROG utility.