Email: Password: Remember Me | Create Account (Free)

Back to Subject List

Old thread has been locked -- no new posts accepted in this thread
???
02/10/07 02:45
Read: times


 
#132453 - .
Responding to: ???'s previous message

From reading all the replies to comments that you've made, that you have no oscilloscope, no logic analyzer, and no EPROM/EEPROM/PROM programmer. Do you have a multimeter? Do you have a reasonable supply of various logic components (74xxx-types)? What about passives (resistors, capacitors, inductors, etc.) and what about other semiconductors (transistors, diodes, etc.)?

It appears that what you want is to get your 80C51 running as an 80C31, with your EEPROM as the program store and the SRAM as data memory. Further, you want to program the EEPROM from a PC's parallel port and subsequently run the programmed code on the 80C51.

You've stated that you have an 805x assembler at your disposal. You've stated that you have already written code that runs properly on the 80C51BH that you have, despite the fact that you operated the device at 18.432 MHz rather than the 12MHz or less for which the part is specified.

So, from where I sit, it looks as though you want to be able to compose and assemble code on your PC, download it to your 80C51BH, and execute it there. Is that right?

Yes


Do you need an EEPROM programmer to program other EEPROMs?

No, unless the other eeproms have the same chip number.



You said you have written an executed 805x code on that other system you built. How did you store the program there?

I made a special eeprom programmer with a parallel port attachment, and downloaded code to it. Then I removed the eeprom from the socket, and then inserted it into the main system.

I want to avoid constantly inserting and removing chips.


64 bytes is not a very big program. Are you sure that you can program an EEPROM with data from the PC's parallel port with only 64 bytes of code?

The 64 bytes I am talking about is the maximum size of the code in the "hard-coded rom" that I want to make. The "hard-coded rom" made of logic gates will contain the code necessary for me to send data from the PC, through the parallel port to P1 of the microcontroller, and the INT lines.


Why use an external EEPROM?

I want to increase flexibility. I have about 5 of the same eeprom, and if later on I decide to change eeproms in the same system, I can do it with ease. Think of the eeprom as an extremely reliable floppy disk, and the system as a floppy disk drive.


Why use the parallel port?

It is fast enough for my application, it has flexibility, and it is easy to use. I avoid any port that involves bit-for-bit processing like the serial port and USB port. I just want to send byte-for-byte. I don't want to convert bits to bytes, or I will introduce synchronization problems.


Why build a ROM in discrete hardware?


I want a system that is guaranteed to perform any useful function, whether it be the system waiting to be programmed, or whatever.

If the eeproms were damaged, whether it be software or hardware, and I didn't have this hard-coded "ROM", then the system will be useless and possibly unpredictable.

With the hardware rom onboard, I can be certain that my system will start up every single time. There will be also nothing that can corrupt the code, because it is "hardwired".

It is valid for me to say that this "hardware rom" can contain bootloader code.


Why am I willing to spend time, money, and other resources on this particular solution when, for just a few dollars, I can get a microcontroller that has internal program memory of 64KB, programmable through the serial port and is capable of supporting external SRAM if I want it?


Because I am willing to learn!

From this experience, I have already learned 1/2 of the quine mcclusky algorithm.


Why object to writing the assembled binary program to the SRAM, mapped, partially, into code space, and use that as program store in order to program the EEPROM?

Because there isn't a direct way to do it synchronously?

sure, I can steal the WR' pin for the port, but then I also must hog the address lines as well.

I have a RAM and an EEPROM. My current setup in the system is that the EEPROM is enabled and RAM is disabled when A15 is low. When A15 is high, the reverse is true.


Once you've downloaded the code, you can reconfigure the circuit automatically to provide the desired memory map. An EEPROM can be programmed piecewise, so you can download 2K or so at a time and program it, then use the same 2KB space to download the next 2KB segment.

I don't know if I will do that.



List of 99 messages in thread
TopicAuthorDate
new plan. RE: 8051 SBC/PGMR            01/01/70 00:00      
   Make a front panel            01/01/70 00:00      
      clock needed.            01/01/70 00:00      
         in \"the bible\" there is a discussion of the \"once            01/01/70 00:00      
            think about this            01/01/70 00:00      
               That's how early MCU's were prototyped            01/01/70 00:00      
   FPGA software            01/01/70 00:00      
      Maybe not just yet ...            01/01/70 00:00      
         Logic minimisation            01/01/70 00:00      
      hmm...            01/01/70 00:00      
         Complicate things?            01/01/70 00:00      
            I have guts ;-)            01/01/70 00:00      
               guts?... maybe, but what about brains?            01/01/70 00:00      
         development            01/01/70 00:00      
            what i mean is...            01/01/70 00:00      
               Where's the directory? Where's the FCB, and FAT?            01/01/70 00:00      
         Reality vs perception            01/01/70 00:00      
   Back to basics, ... not BASIC!            01/01/70 00:00      
      .            01/01/70 00:00      
         comments            01/01/70 00:00      
            Erik ... you've struck a nerve ...            01/01/70 00:00      
               if you, just for once, would take the time to read            01/01/70 00:00      
                  So ... where's the help for him in that example?            01/01/70 00:00      
                     right there            01/01/70 00:00      
                        Front panel            01/01/70 00:00      
                     But...            01/01/70 00:00      
               Nerves            01/01/70 00:00      
                  You're right about that ...            01/01/70 00:00      
                     BINGO!            01/01/70 00:00      
                        So why not use a PROM?            01/01/70 00:00      
            did you visit here before?            01/01/70 00:00      
               ISP is not special!            01/01/70 00:00      
         Simple            01/01/70 00:00      
         Why not using an ISP-micro?            01/01/70 00:00      
   Why dismiss rom?            01/01/70 00:00      
      .            01/01/70 00:00      
         Yes, but, still, why dismiss ROM?            01/01/70 00:00      
   Sooooooooooooooooooooooooooooooooooooo complicated            01/01/70 00:00      
      That's an understatement ...            01/01/70 00:00      
         Aren't you doing an Erik now?            01/01/70 00:00      
            It's because I'm confused ...            01/01/70 00:00      
      no            01/01/70 00:00      
         but you said you already have a programmer            01/01/70 00:00      
   KISS, and one step at a time            01/01/70 00:00      
      KISS: alreay been said.            01/01/70 00:00      
   plan vs No_idea            01/01/70 00:00      
   Mike ... It looks as though you want ...            01/01/70 00:00      
      .            01/01/70 00:00      
         It looks as though you have some thinking to do.            01/01/70 00:00      
         Yes, a lot of thinking to do!            01/01/70 00:00      
            why do you worry about that?            01/01/70 00:00      
               Mark this on your calendar! ... Erik and I agree!            01/01/70 00:00      
   Mike - Time to fess up...            01/01/70 00:00      
      I kind of agree            01/01/70 00:00      
   not guts but folly            01/01/70 00:00      
   RE: Free Chips            01/01/70 00:00      
   I give up seeking help here            01/01/70 00:00      
      Because what you plan to do is just idiotic!            01/01/70 00:00      
      good plan!            01/01/70 00:00      
         Bootloader project gone bad            01/01/70 00:00      
            ...            01/01/70 00:00      
               Instead of the mishmash you propose, how about one            01/01/70 00:00      
                  Homework            01/01/70 00:00      
                     if it is, then whoever assigned it is crazier tha            01/01/70 00:00      
                        IT IS NOT HOMEWORK            01/01/70 00:00      
                           really?            01/01/70 00:00      
               16 bytes? Are you sure?            01/01/70 00:00      
      He who laughs last...            01/01/70 00:00      
         let me reword my question one step at a time            01/01/70 00:00      
            Guts            01/01/70 00:00      
            I don't get it Mike            01/01/70 00:00      
               here's the code again            01/01/70 00:00      
                  Mike please read good plan post            01/01/70 00:00      
                  Try to go back to reality, Mike ...            01/01/70 00:00      
                     It looks like he is trying to do minimisation            01/01/70 00:00      
      Sorry know one can help            01/01/70 00:00      
         blatant errors in syntax            01/01/70 00:00      
            Come on, Richard...            01/01/70 00:00      
      The CrazyROM            01/01/70 00:00      
         Agreed            01/01/70 00:00      
         CrazyRom(tm)            01/01/70 00:00      
            It is already taken...            01/01/70 00:00      
               Mike Stegmaier, I found the solution            01/01/70 00:00      
         Blast from the past            01/01/70 00:00      
         welcome back Michael Karas, we missed you            01/01/70 00:00      
            ade7756 interface with 89c51 urgent code needed            01/01/70 00:00      
               Why post that in THIS thread?            01/01/70 00:00      
               Not only is it entirely irrelevant to this thread            01/01/70 00:00      
         Thanks All            01/01/70 00:00      
            Warm welcome, Michael!            01/01/70 00:00      
            Cross-post            01/01/70 00:00      
            Link            01/01/70 00:00      
            Micheal Karas            01/01/70 00:00      
               that ois why there is 'stuff' around the            01/01/70 00:00      
   History lesson            01/01/70 00:00      
      ROM Reliability            01/01/70 00:00      
         high failure rate            01/01/70 00:00      
            Out of Market. Hmmm            01/01/70 00:00      
               Not SLOW, but slower ...            01/01/70 00:00      

Back to Subject List