• Increase font size
  • Default font size
  • Decrease font size

gpsim tutorial

To build a robot it is often neccesery to create also a hardware. PIC programming is one of many possible options. I have chosen this way several times and hence know a good PIC simulator is very handy. I have found difficult to find any gpsim tutorial aimed on windows version of the gpsim out there. Therefor you may find one here:

Basics

This chapter will lead you in a very fast way to run your first gpsim simulation by running a .hex file.

1. gpsim download page can be found here. if you want to download a windows installer use this link instead.

2. install the gpsim. in my case into following directory: "c:\Program Files (x86)\gpsim\"

3. to run your code (as a hex file) in simulator (gpsim) the fastest way is this:
- open command prompt
- execute following command  (correct path if neccesery).

 "c:\Program Files (x86)\gpsim\bin\gpsim.exe" 

it will start up the gpsim and at least 1 new window should be displayed - main GUI. You should stay in your command prompt window though. You may notice that command prompt has changed a little bit. Something like "**gpsim>" should be displayed at the beginning of the command prompt which tells you that gpsim is running and ready to accept your commands.

- now execute following command:

 processor list 

the list of all supported PIC processors is displayed. choose the one you will use for the simulation. Let's say "pic16f84".

- quit the gpsim by issuing following command:

 quit 

you may notice that the beginning of the new line on command prompt has returned to its standard form - "C:\Users\Jon.Doe>" in my case.

- now you are finally able to run a simulation. To do this execute following command (correct path if neccesery):

"c:\Program Files (x86)\gpsim\bin\gpsim.exe" -pp16f84 c:\_cc5x\_Projects\Clock_generator\clock_generator_v01.hex

it will run "gpsim.exe" with parameter "-pp16f84" (this tells to gpsim that your processor is pic16f84) and then follows path to your .hex file - in my case "clock_generator_v01.hex".

Breadboard

This chapter will show you a basic usage of the breadboard functionality which I found the most important during the simulation. We will connect a PORTB0 port of the PIC to the LED module.

1. open Breadboard window by clicking: "Windows/Breadboard"

2. click "Add library" button and enter following text into the displayed input window: "libgpsim_modules.dll" and click "OK".

3. click "Add module" button. New window is displayed. The window contains list of many different modules, eg. switch, led, etc.

4. let's choose "led" as our new module. Click on it and enter its name afterward "led1".

* if mouse is not working for the window use keyboard instead - tab to navigate from input box to OK button.

5. a picture of the let module is now displayed in the breadboard window. click on a "+" sign of the led1 element in the upper left corner to display its ports. following situation should be shown:

- led1
- led1.in

- by clicking on "led1" you display properties of the module.

- by clicking on "led1.in" in the lower left part you display nodes/stimulus that are connected to the input port (since its name is led1.in) of this module. since we have not made any connection yet following situation should be shown:

Stimulus led1.in

Not connected

6. to create a node push "Add node" button and enter its name, for instance "node_led1".

7. now we are finally able to connect a PIC output port to the led1 module. the "node_led1" node serves for this purpous.
- click on "led1.in" and pusth the "Connect stimulus to node" button. double click on "node_led1" item in the displayed window.
- click on "+" sign of the p16f84 processor. list of all its ports is displayed. select "portb0" and pusth the "Connect stimulus to node" button. now select the same node as in the previous step - "node_led1".
- to check the new connection click on "+" sign of the nodes and select "node_led1" node. in the lower left part of the window both ports led1.in and portb0 should be displayed.

STC file

Maybe more convienient way to set up whole simulatin in breadboard is to code it. If this is your case you may use .stc files.

1. in the same directory as your .hex file create a new text file called for instance clock_generator_v01.stc

2. put following code into the file:

processor pic16f84
 
 load clock_generator_v01.hex
 frequency 32768
 
 # Processor position:
 p16f84.xpos = 50
 p16f84.ypos = 50
 
 # Modules:
 module library libgpsim_modules.dll
 
 module load led led1
 led1.color = green
 led1.xpos = 100
 led1.ypos = 350
 
 module load led led2
 led2.color = green
 led2.xpos = 100
 led2.ypos = 400
 
 # Connections:
 node n_led1
 attach n_led1 portb0 led1.in
 
 node n_led2
 attach n_led2 portb1 led2.in

 #scope.ch0 = "portb0"
 #scope.ch1 = "portb1"
 #scope.ch2 = "portb2"

 #break at interruption
 #break e 0x0004

 #break at specific instruction execution
 #break e 0x003f

 #break on write to 0x1A
 break w 0x1A
 

3. now you can run the simulation simply by calling:

"c:\Program Files (x86)\gpsim\bin\gpsim.exe" -c c:\_cc5x\_Projects\Clock_generator\clock_generator_v02.stc

 

Comments  

 
0 #33 EdnaJuicy 2018-09-04 10:31
Hi. I see that you don't update your website too often. I know that writing posts is boring and time
consuming. But did you know that there is a tool that allows you to create new posts using
existing content (from article directories or other pages from your niche)?
And it does it very well. The new posts are high quality and pass the copyscape test.
Search in google and try: miftolo's tools
Quote
 
 
0 #32 JeanetteJuicy 2018-07-30 16:26
Hello. I see that you don't update your page too often. I
know that writing content is time consuming and boring. But
did you know that there is a tool that allows you to create new articles using existing content
(from article directories or other pages from your niche)?
And it does it very well. The new articles are high quality and pass the copyscape test.
You should try miftolo's tools
Quote
 
 
0 #31 Vol en simulateur 2018-07-15 14:52
Wow, incredible blog layout! How long have you been blogging
for? you made blogging look easy. The overall look of your web site is magnificent, let alone the content!
Quote
 
 
0 #30 Ruthie 2018-06-04 19:21
It is really a nice and helpful piece of info.
I am glad that you just shared this helpful info with us.
Please stay us informed like this. Thank you for sharing.
Quote
 
 
0 #29 Elijah 2018-05-31 05:53
I'm not sure where you're getting your information, but
great topic. I needs to spend some time learning much more or understanding more.
Thanks for great information I was looking for this info for my mission.
Quote
 
 
0 #28 OrvalBold 2018-05-20 20:22
I have checked your blog and i have found some duplicate content, that's why you don't rank high in google, but there is a tool that can help you to create 100% unique content,
search for: SSundee advices unlimited content for your blog
Quote
 
 
0 #27 Kristy 2018-05-08 20:44
This website was... how do you say it? Relevant!!
Finally I've found something which helped me. Kudos!
Quote
 
 
0 #26 CarmaChief 2018-03-20 19:17
I have checked your site and i have found some duplicate content,
that's why you don't rank high in google's search results,
but there is a tool that can help you to create 100% unique content, search
for; boorfe's tips unlimited content
Quote
 
 
0 #25 SEO 2017-12-04 13:49
” But what about terms like email marketing software”?
Quote
 
 
0 #24 ArethaSmall 2017-11-22 22:55
I have checked your blog and i've found some duplicate content, that's why you don't rank high in google, but there is
a tool that can help you to create 100% unique content, search for;
Boorfe's tips unlimited content
Quote
 

Add comment

No bad words.


Security code
Refresh


Design by i-cons.ch / etosha-namibia.ch