Thank you for the discussion. Your points are excellent and have caused me to see things from a wider perspective, which after all is the whole idea. I would like to see Myke, or others, take on the challenge of creating interesting tutorials for these new devices. I'll buy a copy. Shawn ----- Original Message ----- From: "Byron A Jeff" To: Sent: Monday, March 25, 2002 2:55 PM Subject: Re: [PIC] Where to start > On Mon, Mar 25, 2002 at 01:28:12PM -0700, SHAWN wrote: > > I advocate the 16F84 (and of course the 16F628 is great too) not because it > > is easy, but because it is hard. You won't be able to 'UART' yourself out of > > every bind -- unfortunately, every now and then you will have to 'bit-bang' > > your way out. And in terms of A/D, I feel that it's best to understand the > > underlying process or first-principles of a problem. What is the harm is > > constructing your first A/D conversion on your own, without Microchip's > > help. > > There's two different spins you can take with the argument. One I agree with, > the other I don't. > > Spin 1: Learn how to compute by hand before using the calculator. I agree. > It's one of the reasons I advocate beginners learning assembly before moving > on to other languages. Lot of beginner can't understand why Basic Stamps are > so slow for example. > > Spin: You may need calculus so let's teach it first. This is the one I have > a problem with. While it's true that you may have to bit bang a UART because > you need a second interface, I think it complicates the learning process. > > > Along the same lines, I would never suggest that you build an opamp > > from transistors, resistors, etc -- unless you were a beginner -- then if I > > were in charge, I would insist it (at least the input stage ;). Furthermore, > > if you think that the only thing that can be done with the '84 is the 'Blinky > > LED thing', then I'm at a loss to respond. > > > > If you can recommend a great beginner book that supports the 16F628, (like > > Pic 'n Up the Pace supports the 16F84) then that would be the better choice, > > for sure. The small differences between the 16F628 and 16F84 may be small to > > us, yet monumental to an absolute beginner. And lastly, I think that someone recommended > > the datasheet, but isn't that a little like teaching long-division with a > > calculas text? It can sometimes be easy to forget what it was like to learn > > material for the first time. The obvious isn't always obvious. > > That's why I deliberatly pointed out the minimal required between the two > parts. And I agree that the datasheet doesn't necessarily organize the > required information in tutorial fashion. I find that the Microchip Midrange > Manual is a better organized tool for learning about PIC features. I highly > recommend it to beginners and experts alike. > > > > > I say, use the 16F84 (or 16F628) and if you like the hobby, use the '877. > > But don't stop there, use the TI MSP430 series too and while you're at it, > > get real 'inertial' and do something with an EPROM or a flip-flop. > > Most beginners aren't in it for the joy of education. Usually they have a > target task and read/heard that a PIC may be a good solver for that problem. > > The problem with the broad range is that it takes time to set up the > infrastructure to learn. It's great when you want to understand the nuances > of how different families do things, but it makes it much much tougher to > leverage the learning curve across families. I'll stick with PICs through > think and thin precisely because I'm invested so much in understanding how > they work. > > Most of the folks who come here are not necessarily students of the process. > I got to cut my teeth on 6800/6809, 8051, and 68000 family parts. I can really > appreciates the advantages of the single chip microcontroller. But it's > takem me a long time to understand that most times it's not about the process, > but the result. And or original assertion above will force the student to > examine the process, but in the short and medium terms will slow the > results. The 16F62X/16F87X have facilitating hardware to help folks get to > the results. That's why I think it really makes a difference. > > As to you point about beginners not understanding while learning, I feel that > to a point. Many beginners who look for cookbook solutions will fall down > as you specify. But generally a bit of reading, some intelligent questions, > and a little research can very quickly bridge many of those gaps. > > Unfortunately beginners are results oriented. So they get impatient with the > simple task of reading a couple of articles or web pages so that they can > bridge the gap. > > I certainly hope that folks like Myke will issue new editions with a focus > on the 16F628. But I still stand by my assertion that it benefits beginners > to have access to a wider range of hardware tools in the 16F628. > > BAJ > > Shawn > > > > > > > I truly think it's a disservice to advocate beginners starting in a > > > > smaller > > > > > box simply due to inertia. Simply put a beginner will have to learn > > more > > > > on a > > > > > 16F84 to get over the initial hump. Hardware generally simplifies > > code. > > > > Less > > > > > hardware requires more complex code. Hardware can asyncronously handle > > > > > tasks without constant code intervention. Software often requires > > syncrony > > > > > and polling to keep track. Then it gets complicated by the fact that > > the > > > > 16F84 > > > > > only has one timer, one puny 8 bit timer. > > > > > > > > > > > > I agree. In fact I recommend beginners start with the 16F876 because it > > is > > > > a full featured part in the smallest package such parts come in. After > > > > getting done with the Blinky LED project, most people will sooner or > > later > > > > want an A/D, which the 16F628 doesn't have. The extra few bucks for the > > > > '876 is small even for amateurs compare to the cost of everything else, > > and > > > > is offset by the fact that they are less likely to need different chips > > in > > > > the future. > > > > > > That is certainly a valid argument. In fact I use 16F877 for pretty much > > that > > > reason, plus getting the extra I/O pins to boot. > > > > > > But cost is one of the reasons I push the 16F628. The other is the form > > factor > > > just in case a beginner is using something prefabricated that's slotted > > for > > > a 16F84. > > > > > > > > > > > I think of it this way: Start with and learn PICs using the 16F876. If > > you > > > > have a project where space is really tight, use the 16F628. If you need > > > > more I/O pins or more A/D channels, use the 16F877. > > > > > > No argument from me. > > > > > > BAJ > > > > > > -- > > > http://www.piclist.com hint: The PICList is archived three different > > > ways. See http://www.piclist.com/#archives for details. > > > > > > > > > > > > > -- > > http://www.piclist.com hint: The PICList is archived three different > > ways. See http://www.piclist.com/#archives for details. > > > > -- > http://www.piclist.com hint: The PICList is archived three different > ways. See http://www.piclist.com/#archives for details. > > > -- http://www.piclist.com hint: The PICList is archived three different ways. See http://www.piclist.com/#archives for details.