PCB making and design considerations.

In summary, the person is trying to make a robot and is unsure of how to connect a hard disc drive to the microcontroller. They are also unsure of how to write firmware to the hard disc drive. They are considering bank switching to increase the data transfer speed.
  • #1
Hi, I'm messing around with some stuff in an attempt to make a robot, and I was wondering if anyone could help me with a couple questions I have toward those ends.

I'm trying to use an ATmega2560 microcontroller http://www.atmel.com/dyn/resources/prod_documents/doc2549.pdf [Broken] as the CPU of my robot, and I was wondering how exactly I would go about hooking up a hard disc drive to the microcontroller so that I could expand its memory an absurd amount. My best guess at this point is to use multiple digital I/Os from the microcontroller and connect them to possibly the same on the HDD. Then, possibly access the firmware on the HDD(No idea how!(Or maybe it's already written?)), and write a program to control the writing to and reading of the HDD. And possibly do the same on the microcontroller; with the number of I/Os being used representing the amount of data to be transferred each(?) clock pulse. I'm not really sure what HDD I'm going to use yet, so I can't really be more specific on that. I'm aware the external memory of the microcontroller can be expanded to 64KB; I'm looking to expand to 10+GB. I'm getting slowly convinced I'd need to use bank switching to pull this off, which I think negates some of what I just wrote... In conclusion, I'm not really sure on any of what I just said is correct, so any answers/clarifications/corrections/google keywords, would be very much appreciated. Thank you.
Last edited by a moderator:
Engineering news on Phys.org
  • #2
Why not just scavenge an old laptop for the motherboard and HDD?
Probably a smaller footprint and less power consumption than what you are contemplating.
  • #4
That site should help, as soon as I figure out if I can substitute a higher data rate transfer method, and also if it's even worth the effort/cost. Thanks!

No idea where I'd get an old laptop(junkyard maybe?). I do, on the other hand, have an old HP Pavillion 6600 that I tore apart that I was thinking of using. It's just that I'd have to attach an A/D converter(for sensors) and figure out how to access any digital I/Os. Which now that I think about it are probably any pin connections not used on the board. I don't suppose you have any idea how to program an intel chip without an OS on it? I'm trying to avoid incurring a large overhead when my robot accesses its HDD, although I'm not sure if the speed increase from software will even come close to the increase I could get from hardware.
I don't really care about power consumption at this point btw. And I have no idea what you mean by smaller footprint(grasping at straws here).
Last edited:

What is a PCB and why is it used?

A PCB (Printed Circuit Board) is a flat board made of non-conductive material, such as fiberglass, with metal traces and pads on its surface. It is used to mechanically support and electrically connect electronic components, such as resistors, capacitors, and integrated circuits, using conductive pathways.

What are the important considerations when designing a PCB?

Some important considerations when designing a PCB include the size and shape of the board, the type and placement of components, the routing of traces, and the use of a ground plane. Other factors to consider include thermal management, signal integrity, and manufacturability.

What is the purpose of a ground plane in PCB design?

A ground plane is a large conductive area on a PCB that is connected to the ground. Its purpose is to provide a low-impedance return path for current and to reduce interference from external sources. It also helps to improve the overall stability and reliability of the circuit.

What are some common mistakes to avoid when making a PCB?

Some common mistakes to avoid when making a PCB include incorrect trace width and spacing, improper placement of components, not following design rules and guidelines, and not thoroughly checking for errors before production. It is also important to consider the capabilities and limitations of the manufacturer and select appropriate materials and processes for the design.

How can I optimize my PCB design for better performance?

To optimize a PCB design for better performance, it is important to carefully plan the layout and routing of traces to minimize noise and interference. Using a ground plane, as mentioned earlier, can also help improve performance. Additionally, selecting high-quality components and considering factors such as thermal management and signal integrity can also contribute to better overall performance.

Suggested for: PCB making and design considerations.