News:

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

Main Menu

Proteus and ISIS primer.

Started by david, Sep 25, 2023, 08:59 PM

Previous topic - Next topic

david

Hello All,
I see folks sharing their Proteus/ISIS simulation files and I'm ashamed to admit I have never tried it and have no idea where to start.
What do I need to purchase, download or install to start and learn about this?   What are the main benefits of using this tool?

Cheers,
David

TimB

#1
Proteus/ISIS is as I'm sure you will be aware a program that can emulate many processors both the hardware and software side.

Cost It starts at around £325 for a lot of Pic 16F devices and goes on up
The fee covers one year of updates, every year I think it is around £150 upwards depending on the package you are using.
If you do not update the program keeps on working. You do not have to keep paying out each year.

What it can do
It will simulate and enable you to emulate a lot of circuits. It has models for many devices including displays etc. Where you need some bespoke interaction with a device not supported you for instance as I do emulate the device using another Pic.
Example I developed an i2c device and now wanted to Sim another pic using the device. So I added that pic running that code to enable the device to run.
It will simulate analogue circuits as well.

Issues you will have
Its not perfect you have to work with it and around it. Over all it is still a real time saver if you need to get work done and make sure your code works as you want. So many times I have spotted bugs that I would never do just reading and running my code.
I work on the basis of developing my code in a SIM than just proving it works in the device. If I have an issue in the device I go back to the VSM to find and fix it.

Some important notes
DO NOT mix digital and analogue on the same board unless you really need it like as an input to a ADC or Comparator. If you do it will make it run very SLOOOWWWW.
I have seem people put a 10k pull-up on the MCLR line. There is no need to, just wire it to VDD. It's not going to blow up. If you need a pull-up on say a button use a Digital Pullup.

It's a very big subject but overall I will say this
If you have the money and value your time then it's well worth it. Just remember it's not perfect you will have to learn its quirks. The Labcenter team do work hard to fix bugs if you very carefully show the problem with an example. You will though have to wait for the next update to get that fix.


david

Tim,
Many thanks for that comprehensive run down on the costs and benefits of Proteus/ISIS.   I do have an analog/digital circuit emulator but of course it doesn't model processors off a software file. Much as it would be a great feature to have, I can't really justify that sort of cost when I'm basically playing with mainly older hobby grade PICs.  I can understand that for commercial applications the package may pay for itself quickly.
It would seem there are a few users of it on this forum but looking at the cost it makes you realise what a real bargain the Positron compiler is.
Thanks again,
David 

See_Mos

David, If you can find an old copy of Proton it came with a cut down version of Proteus which might suit you as you are experimenting with older devices. It has several quite complex virtual hardware boards but you have to use them as they are as they cannot be modified unless you have purchased a Proteus license.

I was lucky to have a license paid for by the company that I worked for at the time, unfortunately the anual update was stopped just when version 8 beta was released. Pepe has posted several projects on the forum but they will not run on my version so I assume that he has a newer one.

As Tim pointed out it is not perfect and I have wasted many hours trying to find a fault in my code only to find out that the real cause was a simulation error and the code worked perfectly on real hardware. But it has also helped me develop some really complex projects and while I had a current license Ettore was always quick to update any simulation errors that I reported.

I did approach him a couple of years ago to see if I could rejoin the anual update scheme but he declined and said that I would have to buy a full package so I am stuck with version 8 as I am retired and cannot justify the full price.

david

Thank you See_Mos.
That has triggered my (fading) memory.  I vaguely recalled bringing up a Proteus schematic at some stage but that must have been on my old version of the compiler.  I updated to Positron about January this year after finding the old security dongle wasn't happy with Windows 11 unless I disabled some of its new security features.  That's making more sense now.
So those using the package either have a corporate backing or a thriving business where time is money.  Like you I'm retired so it's easier to throw time at a problem than spend money on a solution.
I appreciate both you and TimB for taking time out to explain the package in depth.

Cheers,
David

top204

#5
Alternatively, you can look on the internet for more affordable versions of programs. For example here:

Sanet

It is a good site with lots of good content and saves a bloody fortune from the rip-off merchants. :-)

david

Hello Les,
I'm aware the web is full of dodgy sites but I'm always very apprehensive about downloading files from them for fear of malware being introduced to my machine.
I can live without Proteus/ISIS (but not Positron) but I had just wondered if there may have been a crippled version with a limited range of micros that was free to use.
Thanks for the link- I'll think on it....

Cheers,
David

top204

#7
Install a virtual machine on your computer and use that for third party applications. With VMware, you can also make a copy of your machine within it, so it takes no extra installing of operating systems. The compiler will happily work within a virtual machine, so install a version of it in there as well.

I have several virtual machines on my computer so I can run the older software that does not run on the dreadful later Windows versions. But remember, when installing the virtual machine, make sure to disable the net protocols to the main machine from it and then it is totally isolated from the machine it is sitting on, apart for external drives and USB access.

david

Sounds like the way to go but it's a bit beyond my skill set.  I know my son would happily arrange this but he lives in Berlin so I would need to set up a remote desktop for him first.
As I said - I can live without Proteus, just not Positron, and I can debug the same way as I have for the last 20 years - adding status LEDs, adding a serial port to output register values and reducing code down to the minimum problem area.
Thanks for the ideas and support.

Best regards,
David