Memory map and acces in Microblaze

I create with "Pheripheral wizard" (EDK) perephiral module, using provided templates (slave OPB). Create one register based at BASEADDR. After using this code: Xuint32 pointer=USE_ADDRES; for(x=0;x

Reply to
3.14
Loading thread data ...

With 'pointer' being an integer type rather than a pointer type, you should not expect your program to behave the way you think it should. Fix the declaration for 'pointer' and try again.

--
Dan Henry
Reply to
Dan Henry

Sorry, error in listing, "pointer" declared at "Xuint32 *pointer"

Reply to
3.14

What do you mean by "one register"? Your program is incrementing addresses as if multiple registers or memory exists. If you have created only one register location, could it be that there isn't anything at addresses 0x83000004, 0x8300000C, 0x83000014, etc. and that addresses 0x83000008, 0x83000010, 0x83000018, etc. are aliases for the single register at 0x83000000?

--
Dan H.
Reply to
Dan Henry

Write to register true at all address range 0x83000000 0x830000FF (latch to register with write strobe, no analysis address range). When reading, in the same way not analysing address. Therefore, read must be equal write. Hm-m, need check acknowledgement logic, tomorrow.

Reply to
3.14

What are you talking about? You need to include adequate context, without which your article is useless. Don't assume the reader has access to anything that has gone before. See my sig. if you must use the foul google interface to usenet.

--
"If you want to post a followup via groups.google.com, don't use
 the broken "Reply" link at the bottom of the article.  Click on 
 Click to see the full signature
Reply to
CBFalconer

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.