DIY Compact Flash Devices and WindowsCE Mobile? - Page 1
Forum section: electronics / projects

author: rwgast_lowlevellogicdesin
author_rank: Frequent Contributor
timestamp: November 06, 2016, 02:00:03 am
content: I have a couple old windowsCE 5 and 6 PDAs sitting in a drawer collecting dust, and I started thinking it would be cool if I could put them to use controlling hardware. Granted there totally obselete these days but they have wifi, bluetooh, and a nice screen. So I have some non storage compact flash based devices like ethernet cards, VGA out, etc. Obviously a CF port can handle some moderately speedy and complex devices.My first question is, does anyone know how to build compact flash devices? I have been Googling Compact Flash for about an hour and haven't found a thing except projects reading storage cards. I think I read somewhere that a CF card is just a 16bit pmcia card, but im not sure?Also does anyone know how to get started with programming windowsCE? Can you just use the newest version of VC++ with some API or something, is there some tutorials out there showing how to make a basic window with a button and maybe interact with the CF slot? I think it would be really cool to add a DDS based quadrature oscillator along with a dac and a logging system.

author: ericloewe
author_rank: Unknown
timestamp: November 06, 2016, 01:02:15 pm
content: Compact Flash, when used for storage, is literally just a PATA (IDE, ATA, whatever you want to call it) interface with power added. You can even use a passive adapter to connect it to a PATA controller in a PC. It's also electrically compatible with 16-bit PCMCIA.Both of these interfaces are heavily-based on the 16-bit ISA bus. I think they added some PCI-like configuration stuff that was never popular on ISA.As for programming for Windows CE, I think you'll be looking at older tools, for CE5 and CE6. APIs are vaguely similar to Win32, but incompatible.

author: rwgast_lowlevellogicdesin
author_rank: Frequent Contributor
timestamp: November 07, 2016, 05:12:36 am
content: Ok thanks a lot that run down of CF is exactly what I needed. Is there any stuff online about writing drivers for a CF device, it doesnt matter to me if it's linux, winCE, or even Palm based I just want to see to set up the device and communicate with it. Are you saying that CF is 100% ISA compatible, like any documentation on the ISA bus is 100% relevant to CF, if so that would make finding examples and docs a whole lot easier, I think it is kind of nuts that after hours of Googling I haven't found anything about CF drivers or any CF based projects that is very helpful I would have thought someone has slapped an AVR or FTDI chip on proto board with a female CF socket and wrote just enough driver to get a simple serial port working with a terminal program.

author: ericloewe
author_rank: Unknown
timestamp: November 07, 2016, 08:53:01 am
content: Well, there are two issues: Writing drivers for Windows CE and writing drivers for PCMCIA/CF devicesFor the former, Microsoft will surely have plenty of documentation floating around.As for the latter, you might have more luck searching for PCMCIA or PC Card, instead of CF. I don't expect it to be the same as ISA, but it's certainly going to be very similar. My guess is that you get some initialization stuff (standardized device IDs and such), but the actual interfacing is the same as for ISA.Quote from: rwgast_lowlevellogicdesin on November 07, 2016, 05:12:36 amWell, you can't really do that with your typical small microcontroller. ISA is generally clocked at 8MHz and it's a parallel interface. You'll need either a higher clock and a whole bunch of IO pins (with some parallel IO instructions) or a much higher clock and a bunch of shift registers.