![](templates/subSilver/images/CCSLogo.jpg) |
![CCS C Software and Maintenance Offers](templates/subSilver/images/forumAd6.jpg) |
View previous topic :: View next topic |
Author |
Message |
skara1214
Joined: 14 Sep 2011 Posts: 1
|
pic33f rs232 and dac problem |
Posted: Wed Sep 14, 2011 9:20 am |
|
|
hi I have a pic33fj128gp802.I have problems with that first of all rs232.
I wrote this code
Code: |
#include "33FJ128GP802.h"
#device ADC=12
#Fuses NOWDT,NOPUT,HS,PR_PLL
#use delay(clock=80M,oscillator=10M)
#use rs232 (baud=9600,xmit=PIN_B6, rcv=PIN_B7, parity=N, stop=1,STREAM=il)
void main()
{
while(1)
{
fprintf(il,"h\n\r");
delay_ms(500);
}
}
|
It's working but if I use more than 3 letter it's not working. What's the problem?
Second, I cannot use dac:
Code: |
#include "33FJ128GP802.h"
#device ADC=12
#word DAC1CON =0x03F0
#word DAC1STAT =0x03F2
#word DAC1DFLT =0x03F4
#word DAC1RDAT =0x03F6
#Fuses NOWDT,NOPUT,HS,PR_PLL
#use delay(clock=80M,oscillator=10M)
unsigned int16 i=10000,z=0;
void main()
{
disable_interrupts(INTR_GLOBAL);
DAC1CON=0b1001000000000101;
DAC1STAT=0b0000000010000000;
DAC1DFLT=0x0000;
while(1)
{
DAC1RDAT=i;
delay_ms(2000);
DAC1RDAT=z;
delay_ms(2000);
}
}
|
How can I fix it?
And the last one I cannot use 160 Mhz. Its working at 80 Mhz correctly but not at 160 Mhz. What should I change at fuses or somewhere else? |
|
![](templates/subSilver/images/spacer.gif) |
temtronic
Joined: 01 Jul 2010 Posts: 9174 Location: Greensville,Ontario
|
|
Posted: Wed Sep 14, 2011 1:32 pm |
|
|
I don't use that PIC but...
... as far as the communications problem, it could very easily be whatever you're sending the data to is not running correctly. It doesn't matter to the PIC whether is send 1, 3 or 23 characters to 'somewhere', the code is the same.
However for receiving it is important to add 'errors' to the USE RS232(....) options to avoid buffer overflow...
.. as far as the DAC, can't help there, just be sure the addresses are correct for your PIC ! Not all PICs have the same addreses for peripherals!
... as for the speed issue. Are you sure that PIC will run at 160MHz ??? If so, look at the header for the correct fuse selection.
I'd be running it at a somewhat 'normal' speed(say 20MHz) for testing purposes, especially since my analog scope isn't very fast !!
Also at those higher speeds board layout is CRITICAL !!! You MUST follow the datasheet's comments for layout, part selection,etc. |
|
![](templates/subSilver/images/spacer.gif) |
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
Powered by phpBB © 2001, 2005 phpBB Group
|