SX48 want program at 3.3 volts
![freaked.gif](http://forums.parallax.com/images/smilies/freaked.gif)
Ive donr the same with the SX28 and 52, never had this problem.
But it gets worse.!, when I run my board at 5 Volts, it works. Seems to me its either the SX48 or the SXkey, any ideas.!. I can't run my system at 5volts, my RF design will fry.!.
·
Comments
Seems when the SX48 in new and unprogrammed, it want allow programming at 3 volts. Very strange problem, must be a register or somthing internal to the SX48.
Running SX Prototype Board at 3.3 volts
Trouble debugging at 3V
Debugging 3.3v Project
I am sorry I can not be of more help.
- Sparks
This may be one to note for future referance. I have programmed 3 boards now, all works fine once you first program at 5 volts the first time.Given this problem is consistant with every new SX48 device, I would say their must be a config register or programming bit that needs to be set or cleared.
when I get time will look into the problem deeper.
·
-Phil
Thats a good point, next chip I solder, I will read the device before progrwmming.
Thanks
I have read the fuses on the SX48 before programming and BOR = OFF. Im building 8 boards and so far all need to be programmed at 5V before they can be programmed at 3V
Thanks
I'm having all sorts of trouble running a 48 at 3.3Volts. Some of my I/O lines refuse to
toggle when they're supposed to.
-Dan
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
"A saint-like quantity of patience is a help, if this is unavailable, a salty vocabulary works nearly as well." - A. S. Weaver
Im running at 4MHZ internal for now. I may have the same problem with IO but could be soldering, will know later.
I had that problem with IO not toggeling before on an SX28 running at 50MHZ, I was using BSET and BCLR, I fixed the problem by OR or AND the IO lines. I use BSET and BCLR only at low frequancy. Hope that helps. I was running 5V on the SX28
Please keep me posted on what you find. I'd be interested in knowing if others are having the same troubles I'm having.
-Dan
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
"A saint-like quantity of patience is a help, if this is unavailable, a salty vocabulary works nearly as well." - A. S. Weaver
write issues with the SX, but I thought the SETB and CLRB's were good.·I'll try And/Or to·modify the pins I need.·
Thanks for the tip!
-Dan
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
"A saint-like quantity of patience is a help, if this is unavailable, a salty vocabulary works nearly as well." - A. S. Weaver
Consecutive write/reads on the same port can be a problem at high speeds. You stated that you were doing read/writes on different ports; C and D, and that does not cause a problem.
At high speeds such as 50 Mhz, you need to insert a NOP in between SETB and CLRB instructions on the same port, EVEN if they are different bits! With capacitive loads, this problem is exacerbated, and on occasion you may need 2 NOPs.
This is well documented in the Parallax info.
Cheers,
Peter (pjv)
My setb and clrb's happen well apart from each other. The comm speed for those pins is 19.2K.
However, I do two setb's in a row...····...on different ports,
ex...
setb··PortC.somepin
setb· PortD.somepin·
.../ex
However, I can try a few nop's between them for kicks.
-Dan
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
"A saint-like quantity of patience is a help, if this is unavailable, a salty vocabulary works nearly as well." - A. S. Weaver
If they are on different ports, then it's not an issue.
However, I should have explained better; and this only holds for activity on the same port, and with high clock rates........ that is if you change the level of a port bit in any manner (that is with any instruction or mechanism) and then immediately re-access the same port in any manner, the change being written may not have adequately proceeded through the system, and settled to the intended level before that next access occurred. The result is that the bit may revert back to what it was prior to your change. The time required for things to settle are in the order of one instruction at 50 MHz; 20 nanoSeconds. This time gets longer with capacitive loading on the port bit. Here is where the intervening NOPs are required.
So in your case you may be doing consecutive writes, or a write followed by a read. Please remember that most port instructions are of the form read-modify-write, so even if you think you are only reading, you are in fact also re-writing.
Have you had any luck in setting up a piece of code that exhibits your problem, yet is not frought with your confidentiality issues??
Cheers,
Peter (pjv)
Im trying to get 9600KHZ from the SX48 running at 4MHZ internal, given the RTC is divide by two minium, can't use it. But from the data sheet, Timer 1&2 have 1:1 divide, which means I should be able to get 9600 by the following.
Timer1 prescaler = 1:1
Compare R1 = 208
Compare R2 = 0
Should only need to test R1 interupt flag, When I run this code the frequancy = 4.35KHZ.!, should 9600.!! as 4000000/208 =19200
Any Ideas