EDK problem!

Please does anyone have experience with EDK 3.2 for embedded design? I am trying to make my microblaze processor to be interrupted when I push a certain input button. I can make Timer-interrupt work, but I cant make and outside stimuli to interrupt the processor. Anyone know how to do this? I have added a interrupt-controller to the opb bus, and set its irq to the same net as the Microblaze Interrupt.

John

Reply to
John T.
Loading thread data ...

simple external ints should work as well (as timer ints), well connecting a push-button directly to int net probably isnt the best idea, there will always be some bouncing :(

just a note: if you have multiple interrupt sources then you have to assign to them all different names and write those names with "&" concatenated in the edit core dialog - this was something that did take long time for me to understand (until I found that is in the IP core manual, not INTC pdf but general IP cores document).

just check that the int lines are connected in the system.vhd file and that the interrupt handler procedures are assigned correctly, then when you enable int it should come?

antti

formatting link

Reply to
Antti Lukats

"Antti Lukats" skrev i en meddelelse news: snipped-for-privacy@posting.google.com...

push a

and

the

Thanx for the reply. My question is more likely: Where, in what menu do you set an external input to be an interrupt source??? Where do you declare the name of the interrupt function??? With a timer you can do that by right-clicking the timer and chose a name for the "timer interrupt handler function".

Beset Regards John

Reply to
John T.

In XPS you can open the system port properties dialog (rightclick on the system overview and select Object properties). In this dialog you can specify the class of an input signal I/O (empty), Clock or Interrupt. When you select interrupt, you can add it to the Intr port of the interrupt controller.

If you want to debounce the switch first, you probably have to write your own peripheral. In that case you can indicate that the output port of this peripheral is of Interrupt type.

Regards,

Rienk

Reply to
Rienk van der Scheer

uups, I didnt think "I usually don't (think), and my wife says its total disaster when I do" ;)

I am afraid to get the int line out you need to define a real dummy peripheral that simple routes the pin to interrupt controller. then add this peripheral component, place the ports and connect. in the vhdl of the component you only have one wire-connection

I should think sometimes sorry, you are right if there is no component driving interrupt you can not assign int handler either

antti

Reply to
Antti Lukats

Hi, To set an external interrupt to be an interrupt source, there is no mechanism available in the GUI currently. But, you could add the following line to the MSS file after the version is declared :

PARAMETER VERSION = 2.0.0 PARAMETER HW_SPEC_FILE = system.mhs PARAMETER INT_HANDLER = myint_handler, INT_PORT = myint_pin

This will configure microblaze to call "myint_handler" whenever the external interrupt "myint_pin" interrupts microblaze. Also, this is assuming that "myint_pin" is directly connected to the interrupt port of microblaze without an interrupt controller.

Hope this helps Sathya

Reply to
Sathya Thammanur

do you

declare the

handler

Thank you all. That helped me some, but I am still getting CRAZY!!! Whenever I change something and tries to redraw the PBD window it just change my changes back to the original and nothing happens!!! Could I somehow switch this feature off in the EDK?

John

Reply to
John T.
[snip] > Thank you all. That helped me some, but I am still getting CRAZY!!! > Whenever I change something and tries to redraw the PBD window it just > change my changes back to the original and nothing happens!!! Could I > somehow switch this feature off in the EDK? >

John,

If you've got EDK 3.2 sp2 then you can turn this feature off by going to "Options -> Preferences" then selecting the top button "Redraw schematic layout to synchronize changes." The .pbd will still come up when you open the project but I typically just close it and don't save changes.

Best regards, Ryan Laity Xilinx Applications

Reply to
user

I found the PBD 200% useless, so doing all modifications in add/edit cores dialog. After closing it I always say 'regenerate' it will redraw PBD then I close PBD and say overwrite MHS

it works that way but agree is ANNOYING, no idea how to disable that PBD update ...

antti http:/

formatting link

Reply to
Antti Lukats

EDK 3.2 did have synchronization problems. They have been solved in the EDK 6.1i release which should be out in about a month.

Steve

Antti Lukats wrote:

Reply to
Steve Lass

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.