Home  |  Contents 

Microcontroller and PC projects
  Forum Index : Microcontroller and PC projects         Section
Subject Topic: uM2(+): data logging - cheap fast & easy Post ReplyPost New Topic
<< Prev Page of 9 Next >>
Author
Message << Prev Topic | Next Topic >>
MicroBlocks
Guru
Guru
Avatar

Joined: 12 May 2012
Location: Thailand
Online Status: Offline
Posts: 2192
Posted: 28 April 2016 at 2:07pm | IP Logged Quote MicroBlocks

Yeah those are a great find.
I was looking but somehow my google fu is letting me down a bit this week.

Not only a great space saver but also when placing it, it is much more easy and less time consuming. One placement instead of four.

My concern now is that i planned on those parts to be optional.
The memory chips are soic's so still not to difficult to add later. I am not sure about the resistor array, although it looks like the spacing is about 0.5mm which is not too bad.

edit: I did get those two extra resistor squeezed in, but now i am intrigued by those resistor arrays as they can be a real timesaver.



__________________
Microblocks. Build with logic.


Back to Top View MicroBlocks's Profile Search for other posts by MicroBlocks
 
Grogster
Guru
Guru
Avatar

Joined: 31 December 2012
Location: New Zealand
Online Status: Offline
Posts: 6306
Posted: 28 April 2016 at 3:27pm | IP Logged Quote Grogster

@ matherp - If I wanted to use your code as a method to store my database for a system I have, but NOT use it as a logger per-se, can I just use the raw Cfunctions?

I don't care about wasted or unused space on any one page, and every single entry in the database would have it's own page. As the chip has 4096 pages, there are plenty of pages for my purposes without caring at all about wasted space on any one page.

So, essentially, just pagewriting and page reading to strings.

With that in mind, and if the answer to that is 'Yes', the other thing I want to know is that does the Cfunction 'Erasechip' format and write the indexes, or are the indexes handled by the rest of the BASIC code? I think it is the latter, based on a quick look.

I don't even need indexes, as the pages would be memory-mapped, and certain data would be stored on certain pages and would never change as far as addressing is concerned.

I am going to have a play with this tomorrow with any luck, but while I sleep, you might be able to answer if I can pervert your concept to use it like this or not.

__________________
Smoke makes things work. When the smoke gets out, it stops!
Back to Top View Grogster's Profile Search for other posts by Grogster Visit Grogster's Homepage
 
piclover
Senior Member
Senior Member


Joined: 14 June 2015
Location: France
Online Status: Offline
Posts: 133
Posted: 28 April 2016 at 3:41pm | IP Logged Quote piclover

MicroBlocks wrote:
There is one hint in the datasheet:
WARNING: if the /WP or /HOLD pins are tied directly to the power supply or ground during standard SPI or DUAL SPI operation, the QE bit should never be set to a 1.
The QE bit stands for 'Quad Enable'.
If that bit is set then the /WP and /HOLD pin will be IO pins that can cause a short.

Nice find !... On the data sheet I found (http://www.farnell.com/datasheets/1674439.pdf), there is not even a "warning" word used (CTRL F + "warning" -> no result)... Plus, on page 12, figure 5 (block diagram), both W# (=WP) and H# (=HOLD) are clearly represented as inputs only, while DQ0/DQ1 are indeed represented as I/O...

Go figure !
Back to Top View piclover's Profile Search for other posts by piclover
 
matherp
Guru
Guru


Joined: 11 December 2012
Location: United Kingdom
Online Status: Offline
Posts: 2497
Posted: 28 April 2016 at 4:02pm | IP Logged Quote matherp

Quote:
If I wanted to use your code as a method to store my database for a system I have, but NOT use it as a logger per-se, can I just use the raw Cfunctions?


Yes: the usage should be obvious from the Basic code. You can use a string variable as the buffer but it must be length 255

Quote:
the other thing I want to know is that does the Cfunction 'Erasechip' format and write the indexes, or are the indexes handled by the rest of the BASIC code? I think it is the latter, based on a quick look.


The latter, erasechip just erases and checks that the erase has worked (all bytes =&HFF)
Back to Top View matherp's Profile Search for other posts by matherp
 
Zonker
Guru
Guru
Avatar

Joined: 18 August 2012
Location: United States
Online Status: Offline
Posts: 702
Posted: 28 April 2016 at 10:16pm | IP Logged Quote Zonker

Is there a way to use these chips to store pictures of other types of data that could be used as resource data for the LCD displays..?
Back to Top View Zonker's Profile Search for other posts by Zonker
 
Grogster
Guru
Guru
Avatar

Joined: 31 December 2012
Location: New Zealand
Online Status: Offline
Posts: 6306
Posted: 29 April 2016 at 1:51am | IP Logged Quote Grogster

@ matherp - Great, thanks. I hope to get a chip wired up this weekend and play about with it.

__________________
Smoke makes things work. When the smoke gets out, it stops!
Back to Top View Grogster's Profile Search for other posts by Grogster Visit Grogster's Homepage
 
Grogster
Guru
Guru
Avatar

Joined: 31 December 2012
Location: New Zealand
Online Status: Offline
Posts: 6306
Posted: 29 April 2016 at 12:56pm | IP Logged Quote Grogster

I can't get the test code(matherp's MM+ code) to respond past this point:





You have to press hardware-reset to recover - CTRL+C does not work.
My instinct is telling me that the JDEC ID being FFFFFF means perhaps no response from the SPI chip?

EDIT: Also, this chip(W25Q80BV) should be getting ID'd as 8Mbit, not 16Mbit....

CS pin is correct - 14 in this case, and yes, changed line 4 to reflect that.

I have fitted a chip to a 5" LCD module, in the spare footprint, and connected F_CS to pin14 of the MM+.

The problem might be that F_CS is connected to 3v3 at the moment, so I knew that pulling CS low would short out the power supply via the MM when pin14 goes low, so I have a 4k7 in series with pin14. However, this is probably where the root of my problem is, yes?

The MM+ cannot pull the CS line low enough, with a direct connection to 3v3 on the CS pin, and 4k7 to pin14 on the MM+, correct?

F_CS is on an internal layer of the controller PCB which is four-layer, so cutting the direct connection to 3v3 on F_CS is difficult - hence the 4k7 in the pin14 side of things, but I think this is making the SPI chip deaf as a post to the MM+ trying to pull CS low, personally.

Any comments, suggestions, confirmation of my thoughts etc welcomed.



Edited by Grogster on 29 April 2016 at 12:58pm


__________________
Smoke makes things work. When the smoke gets out, it stops!
Back to Top View Grogster's Profile Search for other posts by Grogster Visit Grogster's Homepage
 
matherp
Guru
Guru


Joined: 11 December 2012
Location: United Kingdom
Online Status: Offline
Posts: 2497
Posted: 29 April 2016 at 2:49pm | IP Logged Quote matherp

Quote:
The problem might be that F_CS is connected to 3v3 at the moment


????? Not on any display I've tried (3.2", 4.3", 5", 7")
Back to Top View matherp's Profile Search for other posts by matherp
 
Grogster
Guru
Guru
Avatar

Joined: 31 December 2012
Location: New Zealand
Online Status: Offline
Posts: 6306
Posted: 29 April 2016 at 3:45pm | IP Logged Quote Grogster

Sorry if my post was confusing. The controller board that the LCD plugs into, is a four-layer board, and one of the internal layers of that board, connect F_CS to 3v3.

I have run out of brain-power tonight, as it is 3:45AM, but tomorrow, I will hook up an Explore64 module to the LCD with jumper wires, which will allow me to get access to the SPI memory chip without the other controller board with the internal layer connection, which I am pretty sure must be what is stuffing things up.

I was just hoping to use a board I already had made, but that is not going to be the case. No biggie - will post another update tomorrow.

__________________
Smoke makes things work. When the smoke gets out, it stops!
Back to Top View Grogster's Profile Search for other posts by Grogster Visit Grogster's Homepage
 
MicroBlocks
Guru
Guru
Avatar

Joined: 12 May 2012
Location: Thailand
Online Status: Offline
Posts: 2192
Posted: 29 April 2016 at 4:57pm | IP Logged Quote MicroBlocks

Could you maybe unsolder the CS pin and bent it up slightly so that it does not connect to the pcb anymore and a wire directly to the uMite pin?
Maybe put some foil under the pin to prevent contact?
A 'hack' but easy enough to try.



__________________
Microblocks. Build with logic.
Back to Top View MicroBlocks's Profile Search for other posts by MicroBlocks
 
panky
Guru
Guru
Avatar

Joined: 02 October 2012
Location: Australia
Online Status: Offline
Posts: 570
Posted: 30 April 2016 at 3:23am | IP Logged Quote panky

G,

If the CS pin is tied directly to 3.3V then a 4k7 resistor to the MM pin won't be any good whatsoever as all you will do is drop 3.3V across the resistor when the MM pulls the line low - CS will still have 3.3V on it!

panky


__________________
DonTSM1,Duinomite,CGCMM1,CGCMM2,2xDimitech,3xWWuMites,MicksMuP,Grogster1A,4xPeterMuM+,Zonker DIP-600,3xCGuKits,CGuBoard2,SnadPic100,SCBP64 & Exp100,PMMZ144,PMMZ100 .. and loving it![:D
Back to Top View panky's Profile Search for other posts by panky
 
Grogster
Guru
Guru
Avatar

Joined: 31 December 2012
Location: New Zealand
Online Status: Offline
Posts: 6306
Posted: 30 April 2016 at 7:29am | IP Logged Quote Grogster

Yeah, pretty much what I was thinking too.

No matter WHAT you do, with CS tied directly high, you can't ever pull it low enough to make it respond, so it stays deaf to commands forever.

I hope to do a quick wire-up without the 4-layer board tonight.
Just the LCD module, and wired to an Explore64 module.

__________________
Smoke makes things work. When the smoke gets out, it stops!
Back to Top View Grogster's Profile Search for other posts by Grogster Visit Grogster's Homepage
 


<< Prev Page of 9 Next >>
In the news...
 
Post ReplyPost New Topic
Printable version Printable version
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot delete your posts in this forum
You cannot edit your posts in this forum
You cannot create polls in this forum
You cannot vote in polls in this forum

Powered by Web Wiz Forums version 7.8
Copyright ©2001-2004 Web Wiz Guide

This page was generated in 0.1094 seconds.
Privacy Policy     Process times : 0, 0, 0, 0.11