[MakeLV] My dream project
Rob Roschewsk
rob at pabut.org
Thu Jul 19 19:28:30 CDT 2012
Had all intentions of coming to the space tonight ... Even put some stuff on my car to bring .... But getting out of work late and traffic on I-287 sucked the wind out of my sails.
Thanks .... I'm good on the programming side ... Bootstrapping and all that ... I've worked with both basic stamp and arduino .... Each of which have code on them to facilitate the initial load .... I was just looking for how to get down to the bare metal ... As in how do I load code on a chip that doesn't have a boot loader on it yet?? Is there a programmer that the chip needs to be put in??
See where I'm coming from ???
Thanks!
--> Rob
On Jul 19, 2012, at 14:21, rsjames at ix.netcom.com wrote:
> Rob,
> Don’t quite know you’re looking for - a tutorial on the basics of what? Writing programs, working with microprocessors, embedded programming, all of the above? Most tutorial or training I have seen tends to focus on working with a specific device. This includes the book I had for my first computer class, which was based on the PDP-8. The reason for the focus is that although the “basics” are pretty much the same for every microprocessor, there are a ton of details and minutia that vary for every device. And if you have a detail wrong, the thing won’t work, you have no idea why, and you get frustrated. Easier to say “Do this, this, and this, and then watch the LED light.” I expect to be at the Hive tonight, so if you want more specific advice, track me down. I’ll be working on the air compressor.
>
> The quick answer to your question about programming a blank chip – You have to have some external device to do it on a truly completely blank chip. On the other hand, chips that have internal Flash usually are shipped with a Bootloader already programmed. You use the Bootloader to load your code into the Flash. No external device is needed, other than a cable (and a PC). And the Bootloader can happily live in memory with your application program.
>
> “Bootloader” comes from “Bootstrap Loader”, a simple program that a computer uses to load a more complex program or operating system. The computer runs the simple program, which is only intended to do only one thing, load a more complex program. It therefore “pulls its self up by its bootstraps”. Once upon a time, you had to manually load the boot sequence into a computer by hitting switches on the front of the computer. (Remember the computers in 1960s TV shows and movies? They always had rows of flashing lights.) And yes, you were expected to do it from memory. Using a “cheat sheet” was un-cool.
>
> RSJ
>
>
>
> -----Original Message-----
>> From: Rob Roschewsk <rob at pabut.org>
>> Sent: Jul 19, 2012 11:46 AM
>> To: Build things for fun! <makelehighvalley at makelehighvalley.com>
>> Subject: Re: [MakeLV] My dream project
>>
>> I'm intrigued by the MICROCHIP line .... seems they have a flavor of
>> chip for any possibility .... is there a good GROUND ZERO reference /
>> tutorial that can walk someone through the basics .... like I've heard
>> of JTAG and ISP but I have no idea what they do ... how do I program a
>> completely blank chip??
>>
>>
>>
>> On Wed, Jul 18, 2012 at 9:08 PM, <rsjames at ix.netcom.com> wrote:
>>> Atmel's Studio (which includes gcc) is free, and worth every penny! However, you still need something to get the code into the board. For 32 bit processors, we bought debugging modules (JTAGICE mkIIs). I think they were a couple of hundred bucks (And yes, we smoked several. More accurately, they just partially stopped working. The cost of time it took to figure out what they weren't working was considerably more than the units themselves.) We used them primarily to download code, because you can do it directly from the Atmel Studio, with only a few mouse clicks. The other option is to use the boot loader that comes in the flash on the chip. This is a little more involved, because you have to put a jumper on the board an cycle power. Then you can download through a USB port. Interestingly, it is significantly faster to download the code with the bootloader than through the debugger, so that is what I pretty much do all the time anymore. The debugger allows you to examine memory. On a good day, you can set breakpoints. It also allows you to re-write the boot loader, in case you erase it. [Note: Many of the times I erased the bootloader, it was intentional. Some of those times I even knew what I was doing...]
>>>
>>> Most of the time, when you purchase a software development tool from a vendor, what you are really paying for is support. Hobby and beginner programmers are particularly expensive to support, because they tend to need stuff explained to them rather than just answers to specific questions. With the widespread use of processors like the PIC, there are many, many sources of information on the Web, which can reduce the support costs. A vendor can sell a board, knowing that is someone has a question, they can just make a post on any number of boards, and someone will probably answer it. Google is your friend! (Atmel uses AvrFreaks for this. Too bad you usually can't actually get questions answered there.)
>>>
>>> RSJ
>>>
>>>
>>> -----Original Message-----
>>>> From: Rob Roschewsk <rob at pabut.org>
>>>> Sent: Jul 18, 2012 4:17 PM
>>>> To: makelehighvalley at makelehighvalley.com
>>>> Subject: Re: [MakeLV] My dream project
>>>>
>>>> I'm getting beyond my knowledge point here .... but doesn't ATMEL (the
>>>> core of arduino) use gcc (GNU compiler) .. which is free and open ....
>>>> can you program MICROCHIP with gcc as well ???
>>>>
>>>> Thanks ....
>>>>
>>>> --> Rob
>>>>
>>>> On Thu, Jul 12, 2012 at 4:10 PM, Darrell Thayer
>>>> <darrell.thayer at gmail.com> wrote:
>>>>> It is true that the "cost of entry" to writing C code on PICs was once kind
>>>>> of high - because the C compilers were NOT free. However, today ALL the
>>>>> "lite/student" versions of PIC C compilers are totally free. What is not
>>>>> free is the ability to enable the compiler optimizations that can make your
>>>>> code faster and/or smaller (FLASH memory use). However, the very low cost of
>>>>> PIC processors means that you can simply use a somewhat more powerful
>>>>> processor (for like $1 more) and still get the performance and/or RAM/FLASH
>>>>> needed - all WITHOUT optimizations. Also, note that compiler optimizations
>>>>> can OFTEN cause nasty little bugs that are very difficult to find - so it is
>>>>> common for industries like medical and aerospace to simply NOT use
>>>>> optimizations at all anyway.
>>>>>
>>>>> So, for the one time $45 cost of a Microchip debugger (PICKIT3), you can
>>>>> have the same full blown development environment that serious industry uses.
>>>>> If you fork out the cash for the ICD3 debugger (< $200), Microchip will
>>>>> replace it for free whenever you let out its magic smoke.
>>>>>
>>>>> Today, embedded programming for hobbyists has never been easier or cheaper.
>>>>>
>>>>> But... remember that any embedded processor work will likely occasionally
>>>>> need access to an O'scope (try the cheap $300 Owon's from China).
>>>>>
>>>>> Darrell
>>>>>
>>>>>
>>>>> On Wed, Jul 11, 2012 at 11:30 AM, Will <staticphantom at gmail.com> wrote:
>>>>>>
>>>>>> I agree with Darrell too, and anyone who has heard me talk at the space
>>>>>> knows my stance on Arduino's... I really should making fun of them. I'll
>>>>>> admit I'm a biased towards PIC's but the cost of entry is so high that I've
>>>>>> stuck to what limited time I have for embedded to work with AVR's.
>>>>>>
>>>>>> Since the topic came up, does anyone know the pin out for the connect for
>>>>>> the AVR Dragon? I bought programmer that is a knock off (but still had the
>>>>>> ICD like the dragon) and haven't gotten the pin out. I have a board I want
>>>>>> to make a development board but I want the pinout of programmer so I can
>>>>>> solder some headers for programming/debugging.
>>>>>>
>>>>>> -Will
>>>>>>
>>>>>>
>>>>>>
>>>>>> _______________________________________________
>>>>>> Makelehighvalley mailing list
>>>>>> Makelehighvalley at makelehighvalley.com
>>>>>>
>>>>>> http://makelehighvalley.com/mailman/listinfo/makelehighvalley_makelehighvalley.com
>>>>>>
>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> Makelehighvalley mailing list
>>>>> Makelehighvalley at makelehighvalley.com
>>>>> http://makelehighvalley.com/mailman/listinfo/makelehighvalley_makelehighvalley.com
>>>>>
>>>>
>>>> _______________________________________________
>>>> Makelehighvalley mailing list
>>>> Makelehighvalley at makelehighvalley.com
>>>> http://makelehighvalley.com/mailman/listinfo/makelehighvalley_makelehighvalley.com
>>>
>>>
>>> _______________________________________________
>>> Makelehighvalley mailing list
>>> Makelehighvalley at makelehighvalley.com
>>> http://makelehighvalley.com/mailman/listinfo/makelehighvalley_makelehighvalley.com
>>
>> _______________________________________________
>> Makelehighvalley mailing list
>> Makelehighvalley at makelehighvalley.com
>> http://makelehighvalley.com/mailman/listinfo/makelehighvalley_makelehighvalley.com
>
>
> _______________________________________________
> Makelehighvalley mailing list
> Makelehighvalley at makelehighvalley.com
> http://makelehighvalley.com/mailman/listinfo/makelehighvalley_makelehighvalley.com
More information about the MakeLehighValley
mailing list