|
|
|
![]() |
|
|||||||
|
||||||||
![]() |
|
|
Thread Tools | Rate Thread | Display Modes |
|
|
|
#1
|
|||||
|
|||||
|
Increasing available program memory
Is it possible to increase the amount of memory availavle for your program in any way? Perhaps through the use of a custom circuit?
Thank you in advance, |
|
#2
|
|||||
|
|||||
|
Re: Increasing available program memory
I know several teams (I know WildStang has done this for awhile, and we can see how they've been quite successful) have done this in the past. I would suggest contacting teams like that for more information about how to do the custom circuit boards.
|
|
#3
|
|||
|
|||
|
Re: Increasing available program memory
program memory? No. The PIC's use a modified Harvard style data bus, seperate data pipelines for the command and for the data. So you aren't going to extend the program memory no matter how creative you get.
However with creative coding you could use an EEPROM to store data on it. and free up space that way somehow. Or by memory do you mean ram? If that is it you can get some sram and use that for extra memory. Or you could offload some of the work to another PIC/ĩC to minimize what the user processor has to do. |
|
#4
|
||||
|
||||
|
Re: Increasing available program memory
Jon is correct. You can not expand program memory. What 111 and others have done is to add a second processor which has a different amount of program memory.
BTW, IFI has hinted that a new PIC chip might be available with 4X the program memory space (link) and compatible with the RC design. Maybe next year? Mike |
|
#5
|
|||||
|
|||||
|
Re: Increasing available program memory
If I add another processor, will I be able to access data from it? Will I be able to send out pwm outputs (Don't I need a motor controller or an H-bridge)?
Thanks, |
|
#6
|
|||||
|
|||||
|
Re: Increasing available program memory
The robot rules clearly state that any custom circuits can only interface with the RC and sensors, so you can't connect any speed controllers to the outboard PIC. I believe the typical MO is to interface with the it through the TTL serial port on the robot. You could theoretically pass all the processing off to it by sending it all the data received by the RC and having it do all the work while the RC just does what the outboard tells it.
|
|
#7
|
|||||
|
|||||
|
Re: Increasing available program memory
So, lets say that I am using the navigation code provided by Kevin watson, I can have the offboard PIC do all the gyro, encoder, and PID calculations, and then pass it all along to the RC? How would I interface through the TTL port?
Thanks, |
|
#8
|
|||
|
|||
|
Re: Increasing available program memory
You would use another PIC with a USART/UART to communicate via asynchronous (no clock signal) serial with the RC. If you are going to get this going for next year, start learning now, it is a lot to learn. Most of the PICs with higher pin counts have a USART module, and a few of the smaller ones do too. If you have good resources, you could use one of the PIC30F's which are the DSPic line of chips. Then you open up a whole new can of worms... Quadrature encoder interface... hardware 17bit X 17bit multiplier... multiple work registers... CAN bus.
Frankly it would be quite feasible to take a 30F and make an 8-bit parallel bus to it with the IO's, and a few more control lines. You could then hook up all your sensors to the 30F, and have the RC send it the OI data, let that do everything, and then send back PWM and relay values to the RC, which outputs them to the victors. Though 6-weeks is one heck of a short time to do that, let alone build a robot to go with it. Oh and about IFI's hint at 4x more memory, the current user processor is an 18F8520. That can handle 16k instruction words, and 2KB of ram. If IFI goes to the 18F8720, there is up to 64k instruction words, and 3.75KB of ram. If you are feeling really lucky, they are pin-compatible, and all you would have to do is change the processor definition in the program, and you might be able to desolder a 8520 and replace it with a 8720. that would give you 4x the memory if you could get it to work, however you would lose your warranty, and for some reason I don't think FIRST would like it. So maybe I was wrong earlier, you could get really creative ![]() |
|
#9
|
|||||
|
|||||
|
Re: Increasing available program memory
Quote:
Thanks again, |
|
#10
|
||||
|
||||
|
Re: Increasing available program memory
Quote:
|
|
#11
|
|||||
|
|||||
|
Re: Increasing available program memory
Hi Dave, do you know of any documentation or source code showing and/or explaining how to interface the TTL port with regards to interfacing with another microprocessor?
Thanks, |
|
#12
|
||||
|
||||
|
Re: Increasing available program memory
Quote:
-Kevin |
![]() |
| Thread Tools | |
| Display Modes | Rate This Thread |
|
|
Similar Threads
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| 2-week FIRST summer program @ WPI | ColleenShaver | General Forum | 20 | 31-05-2009 03:02 |
| program memory | Chris Bright | Programming | 1 | 25-01-2005 08:54 |
| how to add steps in the provided encoder program for the edu | Zaramel2002 | Programming | 3 | 11-02-2004 08:35 |
| Fried program slots? | Jeff Waegelin | Programming | 18 | 19-03-2003 18:08 |
| Ahh! Program trick confusing! | archiver | 2001 | 9 | 24-06-2002 02:26 |