• Content count

  • Joined

  • Last visited

Community Reputation

0 Neutral

About sleat

  • Rank

Profile Information

  • Gender
  1. Jack, found a few more broken links under Yes, there are tutorials there, but the image content is generally missing. Seems the links are broken in the densest, most useful tutorials. Making libraries, publishing tutorials, etc. Others seem to have images just fine, but they're the rudimentary ones. Here's an example. Every image url in this page goes nowhere; Also the link at the bottom; Here's the tutorial one, also missing images; Starting from the first library tutorial, standalone schematic, which has missing images, the links to the other library tutorials, SOC Wishbone Schematic and SOC Wishbone VHDL, are also dead. I sure hope those are around somewhere Cheers, Joe
  2. Seems like a good idea. Is there a way to do it? I.e. is there a way to either have a schematic component or an external pin drive the counter in the timer? Old VLSI timers like the M6840 have external clock and gate pins for the internal timers, and are also capable of generating interrupts. I've been thinking, if one could clock one of the timers externally, and preload the internal counter with, say "1", the thing would then count down once on an external signal event and interrupt the ZPUino! Instant external ZPUino interrupt hack! Two digital birds with one stone! Also, is there any ZPUino SOC example sketch which actually uses the timers, and timer interrupts? Cheers!
  3. Hello! Reading the documentation, there's a strong implication that there is some sort of default pin-mapping for GPIO pin operations (bare papilio pins) which is not specifically related to installed Wishbone peripherals. Where is it documented for each board? The ZPUino tech manual talks about redirecting input and output from slot peripherals to GPIO pins. That's fine, but then it talks about this: [4.1.4 Software GPIO pins should be manipulated using the Arduino-like functions digitalW rite(), digitalRead() and pinMode(). Additionaly GPIO can be bound to devices using PPS (Peripheral Pin Select). You can also use the following "C" macros if needed. Each pin block is 32-bit wide: GPIODATA(x) GPIODATA for pin block x GPIOTRIS(x) GPIOTRIS for pin block x] Short of writing a sketch which "pings" all of the Papilio's Arduino-style pins from inside a sketch (1-128?) and possibly crashing something, is there any way to do this on a default "naked" ZPUino? So, the real questions is, on a pro, one, duo, etc, running a ZPUino, when I set pin X to output and do a digitalWrite() to that pin, where does it come out, and how do I find that out? I know that I can tie a <wishbone to registers x 10> library symbol to my ZPUino in ISE, connect those registers to the outside, and maybe do my own WB_digitalWrite() function for it but making the very same physical Papilio pin both an input and an output using that part would need a tristate buffer or latch hung onto the side of it, and a way to control that in code the way Arduino GPIO does. EDIT: I also see a few examples that re-map the pins, i.e. the MegaWing_Logistart example, and the Flex_Pins example, but is there a default mapping if someone simply starts bit-bashing Arduino I/O lines? EDIT: Answered my own question...They're in the ZPUino header files \\hardware\zpuino\zpu20\cores\zpuino\board_<something>.h one for each product, for anyone looking for the definitions.
  4. sleat

    Interfacing with VHDL circuit with ZPUino

    Here's an example of one of the broken URLs you asked for, Jack. If you use the formula which normally works, moving learn into the domain name, and deleting it from the path, this one still gets a 404. What happened to this tutorial? As I recall, it was good! As I mentioned, I figured out how to do it in a basic ZPUino SOC sketch without any library, so converting it to a library would make for a nice example of something substantial connected to a sketch via wishbone, in addition to your existing examples. Cheers, Joe
  5. Thanks bnusbick and Jack! Yes, I ultimately found the new "learn" website, but the problem is that a number of the old URLs in the templates and examples need to be gone through and modified, as you say. The modification should be very formulaic, provided one knows where the goods are. It's really only a problem of context. I remember that the system even a short time ago was very good, you'd open a template, or a page on the site, and useful info would pretty much jump out at you. So, basically the flow of Open Template/Example/Default sketch=>Study Code/comments=>click to learn more=>Back to sketch and make broken, but not very badly. A search/refactoring tool with string handling would sort most of this out quick, when it sees the url form<something> it could simply convert to<something> and it should be fine. These may exist in many places in your web and IDE/Template content, for example "Learn" just above in the forum tabs is the wrong url. There are content links under "blog" that are also broken, so missing some pictures. Possibly related, in the IDE, when I click New DesignLab Library - Wishbone Schematic, it throws a java null pointer exception, so I've included the call stack below. Both other menu options, standalone and wishbone vhdl, work just fine! If this is only a local problem, can I safely re-install the IDE without breaking my existing xilinx ISE setup? The xilinx side seems to be working well so I don't want to mess with it. Now for the good news! I've come up with a library-free example which completely demonstrates hooking drawn schematics (in this case a 32 bit counter with select-able clock) up to Wishbone with just inline sketch-code. By polling the counter clock set to various speeds and displaying the value, one can determine the absolute limits of the ZPUino SOC in handling realtime synchronous stuff. (My synch-serial instrument spits 32 bit fixed-point at 1khz which I need to do math on in real-time) Ideally, I could figure out how to have the ZPUino do it on interrupts so as not to block, but I don't see an easy way to do that without an interrupt on wishbone input capability. Now if only I could clock the internal ZPUino timers with a GPIO pin...that'd fix it, since they can interrupt! As soon as I can figure out how to create a new schematic wishbone library template without the menu, I can make a library version too. Can anyone identify the background magic steps that this menu option does, <Papilio=>New DesignLab Library - Wishbone Scematic> so I can do it manually? I note that File=>Examples=>Template_DesignLab_Library_Wishbone_Schematic=>edit library exists, but doesn't really work as the menu options under Papilio do. It's also not the same as the standalone or VHDL examples next to it, since it has "edit library" as a button on the right. Do these examples have any purpose? I don't get a blank sketch with the instructions and a .cpp and .h template to work with. It's simply an example sketch with nothing "behind" it. For the one under "Examples" ending in "Wishbone_VHDL" Thanks again, I guess the most burning question is "Can I fix the java exception and make a wishbone schematic library without doing it manually (and possibly missing critical steps)?". New DesignLab Library - Wishbone Schematic_java exception.txt
  6. Hi, Just getting the time to resume a 32 bit de-serializer circuit I want to make as a peripheral for the ZPUino to read a specialized instrument, and I've dead-ended trying to learn the stuff I need to build a complete project using DesignLab. I do remember making heavy use of articles under "Learn". Is there an alternative way to get to the tutorial content for building circuits, say from VHDL or schematic edits, and making them into parts that can be hung onto the wishbone bus? I'm also saddened to see that many of the formerly useful urls included in the DesignLab templates are also dead. Any alternative there? What happened to all that content? At least the YT videos are still up, but I'm having to watch each one to see whether it's helpful. Thanks in advance! Cheers, sleat
  7. Hi, Overall, I'm having a great time with the Duo and Pro and some assorted shields! Whilst working through some of the tutorials, though, I've noticed that after a short time the IDE menus begin to glitch. Specifically what happens is that the menu will jump around in strange ways, with the currently selected menu item not matching the item which was just below the mouse pointer before it was moved. This manifests itself soon after running the app, and very quickly as soon as large menus like "examples" are selected. One definite symptom is that the top of the menu gets graphically copied to the place just below the mouse, so the actual menu content below the mouse cannot properly be seen until the mouse is over it. Not a show-stopper, but annoying. Screenshots included. The main screen also fails to redraw occasionally when obscured by menus or other windows. This problem does not occur at all in large menus in the Arduino IDE 1.8.1 but DOES happen in the examples menu of Arduino IDE 1.0.3 and 1.5.2 when mousing up and down the File=>Examples sub-menu. OS is Windows 7 Pro 64 with 12GB of system RAM. No other programs seem to be doing this. Is anyone else seeing this, and is there a fix? Cheers! Joe