From: J.P. N. <jn...@pr...> - 2006-02-09 21:06:03
|
T25seSBiaXQgYmFuZyBpZiB5b3UgaGF2ZSBubyBiZXR0ZXIgb3B0aW9ucy4gIEl0IHRheGVzIHRo ZSBwcm9jZXNzb3IgcHJldHR5IGhhcmQsIGFuZCB0aGUgZnJlcXVlbmN5IG9mIHRoZSBpbnRlcnJ1 cHRzIHdpbGwgZG8gYSBsb3QgdG8gaHVydCB5b3VyIHN5c3RlbSBsYXRlbmN5LiAgSXQgeW91IGhh dmUgdG8gZG8gaXQsIGtlZXAgaXQgYXMgc2xvdyBhcyB5b3UgY2FuLiAgSSBjYW4ndCByZWNvbW1l bmQgYml0LWJhbmdpbmcgYXQgYWxsLCBidXQgaWYgeW91IGhhdmUgdG8gZG8gaXQsIDk2MDBicHMg c2hvdWxkIGJlIHlvdXIgY2VpbGluZy4NCg0KQW55d2F5LiAuIC4NCg0KQmVmb3JlIHlvdSBkbyB0 aGF0LCB5b3UgbWF5IHdhbnQgdG8gbG9vayBpbnRvIGEgU1BJLVVBUlQgY29udmVydGVyIG9yIGFu IEkyQy1VQVJUIGNvbnZlcnRlci4gIE1heGltIG1ha2VzIHRoZSBmb3JtZXIgKE1BWDMxMTApIGFu ZCBQaGlsaXBzIG1ha2VzIHRoZSBsYXR0ZXIgKHNlYXJjaCBmb3IgSTJDIHRvIFVBUlQgYnJpZGdl KS4gIFRoZSBNQVgzMTEwIGhhcyBvbmUgSVJRLCB3aGljaCB5b3UgY2FuIG1hcCB0byBhIEdQSU8g b24gdGhlIGd1bXN0aXgsIG9yLCBwcmVzdW1hYmx5LCBhIERNQSBJUlEgcGluLg0KDQpJZiB5b3Un cmUgbW9yZSBhZHZlbnR1cm91cywgaXQncyBwb3NzaWJsZSB0byBtYWtlIGEgMjU2IGNlbGwgWGls aW54IENQTEQgaW50byBhIFtyZWxhdGl2ZWx5IHNsb3ddIEkyQyB0byA0eCBVQVJUIGNvbnZlcnRl ci4gIEJ1dCB0aGUgY29zdCBzYXZpbmdzIHRoaXMgYXBwcm9hY2ggZ2V0cyB5b3UgYXJlIG5vdCB1 c3VhbGx5IHdvcnRoIGl0Lg0KDQoNCg0KLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCkZyb206 IGd1bXN0aXgtdXNlcnMtYWRtaW5AbGlzdHMuc291cmNlZm9yZ2UubmV0IFttYWlsdG86Z3Vtc3Rp eC11c2Vycy1hZG1pbkBsaXN0cy5zb3VyY2Vmb3JnZS5uZXRdIE9uIEJlaGFsZiBPZiBOaWsgTWFy dGluDQpTZW50OiBUaHVyc2RheSwgRmVicnVhcnkgMDksIDIwMDYgMTU6MDkNClRvOiBndW1zdGl4 LXVzZXJzQGxpc3RzLnNvdXJjZWZvcmdlLm5ldA0KU3ViamVjdDogW0d1bXN0aXgtdXNlcnNdIEJp dCBCYW5naW5nIEdQSU8gcG9ydHMNCg0KV2hhdCBtZXRob2QgZG9lcyBMaW51eCBvZmZlciB0byBi aXQgYmFuZyBhIHBhaXIgb2YgR1BJTyBwb3J0cyB0byBkbyBzZXJpYWwgUlgvVFg/ICBEbyB5b3Ug aGF2ZSB0byBtYXAgcG9ydHMgdG8gL2Rldi90dHkncyBzb21laG93LCBvciB3b3VsZCBmb3BlbiB3 b3JrIG9uIC9wcm9jL0dQSU9uPyAgV2hhdCBzcGVlZHMgY291bGQgYmUgZXhwZWN0ZWQgd2hlbiBk b2luZyBzbz8NCk4YSFnetemailgndVsODQrepmshH1d+6a6GemsSQwnloadtAkBex5peCHpaZnoe aiF4MiAayassDQphewwsA0g0bVofalkad8elcmd5Aw0KDQo= |
From: Alexandre P. N. <al...@om...> - 2006-02-12 21:00:17
|
J.P. Norair escreveu: >Only bit bang if you have no better options. It taxes the processor pretty hard, and the frequency of the interrupts will do a lot to hurt your system latency. It you have to do it, keep it as slow as you can. I can't recommend bit-banging at all, but if you have to do it, 9600bps should be your ceiling. > >Anyway. . . > >Before you do that, you may want to look into a SPI-UART converter or an I2C-UART converter. Maxim makes the former (MAX3110) and Philips makes the latter (search for I2C to UART bridge). The MAX3110 has one IRQ, which you can map to a GPIO on the gumstix, or, presumably, a DMA IRQ pin. > > > I took a look at some philips i2c <-> uart bridges, the models I looked at supports spi as well. They use a 16C450 uart register set, so it may (or may not) be an easy task to port existing serial drivers to use i2c or spi (supposing there are no such drivers yet). Philips claims that using SPI you can get your uarts with very high speeds, naturally that depends on the kind of load you impose to the bus. It seemed anyway a very promising solution, unless the maxim (or others) have a better price per required feature set. I didn't look at it yet. Alexandre |
From: Leonard S. <lsa...@co...> - 2006-02-12 22:41:30
|
Good day, Responding to the bit-banging and UART comments/questions: I just got a driver working in an 80xx51-based design that uses the MAX3111E, an SPI UART that includes RS-232 level shifters. It is a great little chip, and it took about 2 hours to code the whole thing. (Good quality Linux drivers would *clearly* take longer...) One benefit of the MAX3111 is that the level shifters are logically distinct from the UART. Our little 8051 design is using the MAX3111 level shifters to connect the 8051's internal UART to the outside world, where most of the serial activity actually takes place), and uses the MAX3111 UART to connect to a 3.3v async serial device. The MAX3111 is rated for a 5 MHz SPI clock rate (minimum 100 ns high and 100 ns low times), and each complete SPI transaction is (always) two bytes. So the UART doesn't use much bus time. Receiving a character can be performed in a single 2-byte transfer. Transmitting a character usually takes 2 transfers: one to verify transmit buffer empty, the next to actually transmit the data byte. The MAX3111's interrupt signalling behavior is also quite competent (non-tricky...). Considering that I suggested using the MAX3111E to my co-workers, I am really glad it's working! :-) :-) Len Samuelson Alexandre Pereira Nunes wrote: >J.P. Norair escreveu: > > > >>Only bit bang if you have no better options. It taxes the processor pretty hard, and the frequency of the interrupts will do a lot to hurt your system latency. It you have to do it, keep it as slow as you can. I can't recommend bit-banging at all, but if you have to do it, 9600bps should be your ceiling. >> >>Anyway. . . >> >>Before you do that, you may want to look into a SPI-UART converter or an I2C-UART converter. Maxim makes the former (MAX3110) and Philips makes the latter (search for I2C to UART bridge). The MAX3110 has one IRQ, which you can map to a GPIO on the gumstix, or, presumably, a DMA IRQ pin. >> >> >> >> >> >I took a look at some philips i2c <-> uart bridges, the models I looked >at supports spi as well. They use a 16C450 uart register set, so it may >(or may not) be an easy task to port existing serial drivers to use i2c >or spi (supposing there are no such drivers yet). > >Philips claims that using SPI you can get your uarts with very high >speeds, naturally that depends on the kind of load you impose to the bus. > >It seemed anyway a very promising solution, unless the maxim (or others) >have a better price per required feature set. I didn't look at it yet. > >Alexandre > > > > >------------------------------------------------------- >This SF.net email is sponsored by: Splunk Inc. Do you grep through log files >for problems? Stop! Download the new AJAX search engine that makes >searching your log files as easy as surfing the web. DOWNLOAD SPLUNK! >http://sel.as-us.falkag.net/sel?cmd=lnk&kid=103432&bid=230486&dat=121642 >_______________________________________________ >gumstix-users mailing list >gum...@li... >https://lists.sourceforge.net/lists/listinfo/gumstix-users > > > |
From: Paul C. <pca...@ra...> - 2006-02-13 14:31:50
|
Is your 8051 driver open source? Would you make it available if not? I have a SiLabs board I'd like to use this part with... Paul Calvert -----Original Message----- From: gum...@li... [mailto:gum...@li...] On Behalf Of Leonard Samuelson Sent: Sunday, February 12, 2006 4:46 PM To: gum...@li... Subject: Re: [Gumstix-users] Bit Banging GPIO ports Good day, Responding to the bit-banging and UART comments/questions: I just got a driver working in an 80xx51-based design that uses the MAX3111E, an SPI UART that includes RS-232 level shifters. It is a great little chip, and it took about 2 hours to code the whole thing. (Good quality Linux drivers would *clearly* take longer...) One benefit of the MAX3111 is that the level shifters are logically distinct from the UART. Our little 8051 design is using the MAX3111 level shifters to connect the 8051's internal UART to the outside world, where most of the serial activity actually takes place), and uses the MAX3111 UART to connect to a 3.3v async serial device. The MAX3111 is rated for a 5 MHz SPI clock rate (minimum 100 ns high and 100 ns low times), and each complete SPI transaction is (always) two bytes. So the UART doesn't use much bus time. Receiving a character can be performed in a single 2-byte transfer. Transmitting a character usually takes 2 transfers: one to verify transmit buffer empty, the next to actually transmit the data byte. The MAX3111's interrupt signalling behavior is also quite competent (non-tricky...). Considering that I suggested using the MAX3111E to my co-workers, I am really glad it's working! :-) :-) Len Samuelson |
From: Leonard S. <lsa...@co...> - 2006-02-13 15:38:45
|
Paul, I don't think the "driver" is open source, as I wrote the code for a friend who wishes to keep the structure of his product private (for now...). I would be glad to write you some 8051 code "fresh" to drive the part and post it on the list, though. I may not have been very clear about that; I consider 2 hours to be "trivial", and I think the whole thing is less than 200 lines of 8051 assembly code. The 8051-class CPU environment is so "small", and the code in such systems so tightly integrated, that a fair amount of customization is usually necessary So, some background questions to get started: 1) Are you familiar with the 8051 processor family? If not, then we may need to talk about that part of it. (The 8051 is an 8-bit microcontroller, and I am using the as31 assembler currently supported by Paul Stoffregen, http://www.pjrc.com/ ) 2) Can you tell me something about the SPI environment your processor is using? I do not know SiLabs products (...Googling... Found it... Nice products! I may need to look into these guys!) I haven't downloaded their tech docs, so I don't know the environment. 3) Do you "know" SPI? 4) Are you using C or assembly language? I hope my glibness has not been a problem here. I have been working with 8051's for decades, SPI for years, and have implemented such things as a bit-banged MultiMediaCard driver (using the MMC's SPI mode) in both Linux and the 8xx51 family. Perhaps it seems easy given that context. Please feel free to add some details to your question and I may be able to help! Len Samuelson P.S. slightly off-topic: I've been tempted to try to build a board that looks like a CFstix with an MMC socket added. My application involves using the GumStix as a server, with a >128 Mbyte CF, and the ability to read and write an MMC that has data recorded on a separate box. One can never be too rich or have too much mass storage! Paul Calvert wrote: >Is your 8051 driver open source? Would you make it available if not? I have >a SiLabs board I'd like to use this part with... > > >Paul Calvert > |
From: Paul C. <pca...@ra...> - 2006-02-13 16:03:26
|
Leonard, Perhaps as a courtesy to others on the list, we should take this discussion off line since its not gumstix related at all? My address is pcalvert at radiancetech period com Thanks, Paul -----Original Message----- From: gum...@li... [mailto:gum...@li...] On Behalf Of Leonard Samuelson Sent: Monday, February 13, 2006 9:43 AM To: gum...@li... Subject: Re: [Gumstix-users] Bit Banging GPIO ports Paul, I don't think the "driver" is open source, as I wrote the code for a friend who wishes to keep the structure of his product private (for now...). I would be glad to write you some 8051 code "fresh" to drive the part and post it on the list, though. I may not have been very clear about that; I consider 2 hours to be "trivial", and I think the whole thing is less than 200 lines of 8051 assembly code. The 8051-class CPU environment is so "small", and the code in such systems so tightly integrated, that a fair amount of customization is usually necessary So, some background questions to get started: 1) Are you familiar with the 8051 processor family? If not, then we may need to talk about that part of it. (The 8051 is an 8-bit microcontroller, and I am using the as31 assembler currently supported by Paul Stoffregen, http://www.pjrc.com/ ) 2) Can you tell me something about the SPI environment your processor is using? I do not know SiLabs products (...Googling... Found it... Nice products! I may need to look into these guys!) I haven't downloaded their tech docs, so I don't know the environment. 3) Do you "know" SPI? 4) Are you using C or assembly language? I hope my glibness has not been a problem here. I have been working with 8051's for decades, SPI for years, and have implemented such things as a bit-banged MultiMediaCard driver (using the MMC's SPI mode) in both Linux and the 8xx51 family. Perhaps it seems easy given that context. Please feel free to add some details to your question and I may be able to help! Len Samuelson P.S. slightly off-topic: I've been tempted to try to build a board that looks like a CFstix with an MMC socket added. My application involves using the GumStix as a server, with a >128 Mbyte CF, and the ability to read and write an MMC that has data recorded on a separate box. One can never be too rich or have too much mass storage! Paul Calvert wrote: >Is your 8051 driver open source? Would you make it available if not? I have >a SiLabs board I'd like to use this part with... > > >Paul Calvert > ------------------------------------------------------- This SF.net email is sponsored by: Splunk Inc. Do you grep through log files for problems? Stop! Download the new AJAX search engine that makes searching your log files as easy as surfing the web. DOWNLOAD SPLUNK! http://sel.as-us.falkag.net/sel?cmd=lnk&kid=103432&bid=230486&dat=121642 _______________________________________________ gumstix-users mailing list gum...@li... https://lists.sourceforge.net/lists/listinfo/gumstix-users |