Programming Forums
User Name Password Register
 

RSS Feed
FORUM INDEX | TODAY'S POSTS | UNANSWERED THREADS | ADVANCED SEARCH

Reply
 
Thread Tools Display Modes
Old Jul 11th, 2005, 6:21 PM   #1
linuxpimp20
Hobbyist Programmer
 
Join Date: May 2005
Location: ma
Posts: 130
Rep Power: 4 linuxpimp20 is on a distinguished road
hardware programming

hi im posting here because i don't know if it really belongs in any of the other catergories. i've become interested in modding and taken things apart and examining them lately. i assume modding id be taking hardware from here and there so i want to learn more about programming hardware that are computers but not necessary pcs. what skills would i need for this besides soldering? do i need to learn assembly? ill give you an example. i was taking apart an old digital alarm clock and was curious what happens after you press the buttons and they hit the hotspots on the circut board. is there any books on the subject that people would recommend? thanks for any replies in advance.
linuxpimp20 is offline   Reply With Quote
Old Jul 11th, 2005, 8:20 PM   #2
DaWei
Resident Grouch
 
DaWei's Avatar
 
Join Date: Jun 2005
Posts: 6,453
Rep Power: 10 DaWei is on a distinguished road
It isn't called "hardware programming", it's just logic design using hardware devices. You should be familiar with boolean algebra so that you can convert logic expressions back and forth, reduce them, etc. One can actually construct any logic expression with AND gates and a NOT function (or OR gates and a NOT function). Flip-flops can be made with those also, but the one's you buy are better because of internal handling of edges. You can get manufacturer's data sheets on all those things and on other things like keypads and generally find how you would hook them up to make them work. There are also tons of microprocessor applications that aren't PCs. Such systems are called "embedded systems" because they often don't even have user interfaces, per se. Examples are mail sorters, the controller for your automobile engine, a lot of telecommunication equipment, stuff like that. Embedded systems ARE programmed, mostly using assembly language or C. I've done a ton of them, including medical equipment. You don't mess around with sloppy programming in many such systems. You could kill someone by failing to check the status of the functions you use.
__________________
Abstraction doesn't make it impossible to write bad code; it makes it possible to write superior code.
Contributor's Corner: Grumpy on C++ Exceptions DaWei on Pointers
DaWei is offline   Reply With Quote
Old Jul 12th, 2005, 8:29 AM   #3
mackenga
Professional Programmer
 
Join Date: Mar 2005
Location: Glasgow, Scotland
Posts: 317
Rep Power: 4 mackenga is on a distinguished road
Just to be pedantic, I thought I'd add that you can make any logic circuit with just one type of gate, if it's either a NAND or a NOR, but in a way that's cheating since these gates combine the functions of the ones DaWei mentions so I suppose I'm just being a smartarse really.
mackenga is offline   Reply With Quote
Old Jul 12th, 2005, 9:11 AM   #4
DaWei
Resident Grouch
 
DaWei's Avatar
 
Join Date: Jun 2005
Posts: 6,453
Rep Power: 10 DaWei is on a distinguished road
You're pedantically correct, and that's cheating, as it's still more than "a gate" . The NAND is an AND and a NOT. When ICs cost a bundle and it paid to get the quantities up, we bought all two-input NORs or all two-input NANDS, plus flip-flops, for our logic. It was cheaper than busting the quantities down by ordering two-input, three-input, four-input, XORs, etc. MSI and LSI sure made things easier when they came along.
__________________
Abstraction doesn't make it impossible to write bad code; it makes it possible to write superior code.
Contributor's Corner: Grumpy on C++ Exceptions DaWei on Pointers
DaWei is offline   Reply With Quote
Reply

Bookmarks

« Previous Thread in Forum | Next Thread in Forum »

Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump




DaniWeb IT Discussion Community
All times are GMT -5. The time now is 6:42 PM.

Powered by vBulletin® Version 3.7.0, Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Copyright ©2007 DaniWeb® LLC