Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

Any software USB possible for PIC16F877A?

Status
Not open for further replies.

vinodstanur

Advanced Member level 3
Joined
Oct 31, 2009
Messages
751
Helped
114
Reputation
234
Reaction score
114
Trophy points
1,333
Location
Kerala (INDIA)
Activity points
7,054
Hi all,
I want to know if it is possible to introduce a software USB to PIC16F877A.. Because i had seen an atmega8 based AVR burning circuit which is connected to USB for burning AVR.
 

Hi all,
I want to know if it is possible to introduce a software USB to PIC16F877A.. Because i had seen an atmega8 based AVR burning circuit which is connected to USB for burning AVR.

Unfortunately not. You could however use a FTDI FT232R which would provide an interface between the PIC16F877A USART and a PC.

If you have the source code for the programmer, you maybe able to modify it.
 
Now i am wondering how that Atmega8 is connected to USB..But i dont have the code for that... Any way, it will be a software USB...Right?
 

Do you have a photo of the PCB of this ATMEGA8 based Programmer? Some USB bridge chips are fairly small, like Silab's devices.
 

There have been designs, that managed to implement a low speed USB device as a pure software solution (in an ATmega chip, if I remember right). It's a nightmare of assembler code and a good idea to drive someone mad.
 
Well, I stand corrected.

Without at least an USB transceiver, I would suspect the interface would be very temperamental.

Frankly, I would have spent a couple more dollars and used either a FTDI or SiLab USB Bridge device in the design.

So are you going to use the "softUSB" interface in another design?
 

Why exactly do you want to go for a software USB? What is the end requirement?
 

There have been designs, that managed to implement a low speed USB device as a pure software solution (in an ATmega chip, if I remember right). It's a nightmare of assembler code and a good idea to drive someone mad.

It must of started off as a dare and moved to a full scale wager, after a night of heavy drinking! One too many shots of schnapps!

As I said before, it must be very temperamental.
 

yes if possible, i would like to do same with a PIC16F877A...Just to learn things....So i think i should study how USB works...is it? Is it much difficult to write code for software USB?
 

yes if possible, i would like to do same with a PIC16F877A...Just to learn things....So i think i should study how USB works...is it? Is it much difficult to write code for software USB?

As FvM alluded, it would be an exercise in frustration. Frankly, there are more productive ways of learning the intricacies of the USB Protocol.

---------- Post added at 08:19 ---------- Previous post was at 08:02 ----------

I would suggest obtaining a PIC 18F which has an USB interface and practice implementing various USB interface projects. It would be considerably more practical and rewarding. And in the future if you still desire to learn the lower level intricacies of the USB protocol, pickup a FPGA dev board, learn Verilog or HDL and then design/implement an USB inteface.

You could even design and build an USB Protocol Analyzer that you could use to troubleshoot the "porting" of the softUSB to the PIC16F877A. :wink:

Good Luck in your endeavors.
 
It must of started off as a dare and moved to a full scale wager, after a night of heavy drinking! One too many shots of schnapps!
Something like this.
I would suggest obtaining a PIC 18F which has an USB interface and practice implementing various USB interface projects. It would be considerably more practical and rewarding. And in the future if you still desire to learn the lower level intricacies of the USB protocol, pickup a FPGA dev board, learn Verilog or HDL and then design/implement an USB interface.
I absolutely agree. The software USB topic is mainly about abusing a processor for doing things, it's not designed for.
 
The software USB topic is mainly about abusing a processor for doing things, it's not designed for.
You may be correct, but think about the price of a controller with USB. Nothing is wrong if software USB is suitable for vinod's application.

Hi all,
I want to know if it is possible to introduce a software USB to PIC16F877A.. Because i had seen an atmega8 based AVR burning circuit which is connected to USB for burning AVR.
Even if you coded well that not gonna work :(. 5MIPS is too low to implement software USB (am not an expert,but i believe 5MIPS is not sufficient to catch/send the packets from/to the PC. Controller will fail from the beginning of USB device initialization).
 

I dont want any great speed. Just the speed of RS232 is enough....any way, is there any restriction that USB will not work below a particular speed or like that?
(any way i know the cheapest solution for USB to serial converter is the cheap data cable of some nokia phones which have built in USB to serial convertor)
 

is there any restriction that USB will not work below a particular speed or like that?
The bitrate of the USB bus itself is fixed (to either low speed 1.5 M MHz or full speed 12 MHz). It has be kept by the interface chip, but doesn't enforce a minimal speed for the application protocol. An USB to serial bridge chip is in fact a simple and almost cheap solution and has been suggested to you from the start.
 

I dont know how desirable or easy it would be, but its definitely doable; here's a guy who has done it on a 16F628!

**broken link removed**

Regards,

Anand
 
I think the concept is quite interesting, My coding skills are nowhere close to what would be required to achieve anything of this nature. So, if anybody following this thread manages to make any headway, it would be nice to report back for the benefit of all.

Regards,

Anand Dhuru
 

I didn't find any source code with the project, did you?
 

No, I'm afraid not. Perhaps you can mail the guy directly?
 

Status
Not open for further replies.

Similar threads

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top