On Sun, Sep 07, 2008 at 02:37:45AM -0400, Grant Brown wrote: > Hi Jan and other's that replied, > > Thank you for your feed back. Its a shame that its was so negative. Grant, I don't think that it was negative. It was hard won group experience that members of the list were passing on to you. > Whist the PIC16F84A maybe old its not completely useless. I still have one working in a project I installed 10 years ago. I certainly isn't useless. > Its interesting given your comments that NSW TAFFE still uses the 16F84A > to teach MCU programming. Its actually where I got the test board from > as I have a friend that works in that department. As Olin pointed out educational institutions often have significant investments of time and money in their existing infrastrcture. But as an instructor myself I would point out for the same reasons that it's a poor starting point. > I also wonder how much industrial equipment is still in use around the > world that has 16F84A chips in them. Just because something is a bit > older and slower than the latest u-bueat does not mean it should be > discarded. The key phrase is "Do not use for new designs." When the 16F84A was a cost effective fit for those applications at the time, they were used. But now there are better fits even for those applications and new applications. The problem isn't that it's older or slower. The problem is that the part has extremely limited peripheral support. A single timer, no USART, A2D, comparitor, PWM, or compare/capture forces designers to use software and/or support hardware for many many common embedded applications tasks, including the one that you asked about initially. A 16F84A that you have laying around is probably good for a single (or very limited) application. The project I referred to above was simply a delay for my basement lights so that they turned off 90 seconds after the door closes. Pretty trivial to implement. But when you are juggling multiple tasks and interfaces as many projects do, it's a lot simpler to have hardware assistance. > Over many years now I have tought a large number of appretices and that > has shown me that one does not teach and or help new comers by being > negative. But you also don't teach by being unrealistic either. You teach apprentices better when they understand that picking the best tool for a job will get the job done better and faster. There is utility in teaching the underlaying basics of how a task works. I have no problem with that. The problem is people generally have a syndrome that one of my colleagues called "love what you learn syndrome." So if you teach an older technique that no longer common practice, often students will use that technique precisely because that is what they were taught. One technique I use is to show an older approach to solving a problem precisely to illustrate why newer solutions became available. In your case shoing bit banging has some utility to illustrate the problems you get when you try to integrate it with multiple other tasks, especially with a chip that only has a single timer for example. All of the peripherals we have referred to in the newer chips are pretty much set and forget. Set up the USART, and drop in a character to transmit, or wait for a received character to receive. No need to track individual bits or timing half bit cells in order to send or receive. > Anyway thank you for your assistance and I will take on-board your advice. That's good. It will help you in the long run. BAJ > > Kind Regards > Grant Brown > > Jan-Erik Soderholm wrote: > > Grant Brown wrote: > > > >> Hi Guys, > >> > >> Its not so much that I am looking to use a PIC16F84A for a new product. > >> > >> Its a case of thats the pic that I have on a demo board > >> > > > > Then that demo-board is just as out-dated as the 84A itself. > > You are realy doing yourself a disservice by using it. > > > > > >> so I want to > >> use it as a learning curve tool to get myself up to speed programing PIC's. > >> > >> I just need a couple of 'C" example codes and that will get me started. > >> > >> Don't want to learn assembler just "C" for PICs. > >> > > > > Now, you'll probably need to know some assembler anyway to be > > able to write any reasonable good C code. At least on > > the small devices such as the 84A. > > > > > >> If I can not use the C18 compiler (as I already have it) > >> > > > > "If" ? > > If you had done *any* homework at all, you should know > > that the C18 compiler is targeted at the PIC18-series > > of PIC processors. > > > > > > > >> which "C" > >> compiler should I use for the PIC16F84A device. > >> > > > > Pesonaly, I'm not sure a C-compiler is the right > > tool at all for that old processor. > > > > -- > Kind Regards > Grant Brown > > SiteDoc Pty Ltd > mob: 0412 926 995 > www.sitedoc.com.au > __________________________________________________________________________________________________________ > This email message together with any attachments is intended only for the addressee(s) and contains information that may be confidential and/or copyright. If you are not the intended recipient, please notify the sender by reply email (or telephone SiteDoc Pty Ltd on +61 2 42291185) and immediately delete this email together with any attachments from your computer. If you are the intended recipient, you must not copy, disclose, reproduce or distribute this communication together with any attachments without the authority of SiteDoc Proprietary Limited. No representation is made that this email or any attachments are free of viruses. Virus scanning is recommended and is the responsibility of the recipient. Unless specifically stated by the sender as the views of SiteDoc Proprietary Limited, any views expressed in this message are those of the individual sender, and no responsibility will be borne by SiteDoc Proprietary Limited for its content or outcomes. > > -- > http://www.piclist.com PIC/SX FAQ & list archive > View/change your membership options at > http://mailman.mit.edu/mailman/listinfo/piclist -- http://www.piclist.com PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist