Most CMOS logic works reasonably well at 3.3V, although not at full rated speed. Have you tried dropping the supply voltage to your development board to see if it works at 3V? As long as the crystal isn't up at 20Mhz, it should run fine and you can test your GPS at nominal voltage. You may have a problem with the low voltage reset device (BOD or external part) holding the PIC in reset. A quick slice through the trace disables the LVD if it's external. If internal (BOD), you'd need to reprogram the config reg and add a LVD one of your own. MN13811-G (2.5V) is nice. TO92 or SMT with minimal supply current and choosable trigger point. If 20 Mhz, you may have to change the speed, by powers of two so that you can choose lower baud rates and still be able to communicate with the board. I would suggest bit banging the GPS channel since NMEA standard is 4800 baud, and most GPS's default to this speed, and with once per second updates you'll have lots of time to process the bits, leaving the UART free for high speed comms with the PC. Robert Padu wrote: > The idea of using a 3.3v pic is good, because the gps module gets 3.0v in > its vcc. This way I wouldn't need to do any voltage conversion as I'm doing > now. The thing is that I'm trying to test some concepts using the > development board, that's why I'm having this problem. > Another idea a colleague of mine had was to use to 5v NOT gates (I don't > know if this is the correct nomenclature). When gps sends 0v, then it is > converted to 5v and again to 0v, but when gps sends 2.5v, NOT gate inverts > to 0v then subsequently to 5v. Would it work in this case? Of course the > production board would either have the 3.3v pic of a proper level shifter. > > Regarding the soft USART (bit-bang), I saw the help file of my pascal > compiler (mikropascal) and they have libraries to both hardware USART and > software USART. The later has the advantage of allowing you to choose which > port and which pin will be used for Rx/Tx. > > Cheers, > Padu > > ----- Original Message ----- > From: "Peter Moreton" > >>Padu, >> >>You can bit-bang the second serial port using routines freely available on >>the web. (Alternatively, select a PIC with two USART modules!) You will > > need > >>to level shift the PIC pins to 1.8v for your GPS - are you sure the >>interface is 1.8?, if it is say 3.3v logic then you can use a PIC 'LF' > > part > >>that will run at 3.3v, and do away with level translation. >> >>Peter Moreton >> >> >> >>>-----Original Message----- >>>From: "Padu" >>> >>>Dear Gurus, >>> >>>I'm designing an application using a PIC16F877A that >>>communicates with another component (a gps module) through >>>two serial pins (Rx/Tx). What I would like to do is receive >>>gps messages in the PIC, do some processing and output them >>>to a MAX232 that will connect to a PC. >>> >>>Having said that, I have two questions that are intriguing me: >>> >>>1) In the PIC datasheet, I only see RC6 and RC7 as serial >>>ports. In this application, I will need two ports, one to >>>communicate with the GPS module and another to communicate >>>with the PC through a COM port. How can that be done? >>> >>>2) The GPS serial port operates at 1.8V levels. Can I still >>>connect it pin-to-pin with the PIC or do I need a level >>>shifter in between? What is the voltage used in serial >>>communication by the PIC16F877A? I tried to look at the PIC >>>datasheet but I got even more confused. >>> >>>Help please >>> >>>Cheers >>> >>>Padu> >> >>_______________________________________________ >>http://www.piclist.com PIC/SX FAQ & list archive >>View/change your membership options at >>http://mailman.mit.edu/mailman/listinfo/piclist >> > > > _______________________________________________ > http://www.piclist.com PIC/SX FAQ & list archive > View/change your membership options at > http://mailman.mit.edu/mailman/listinfo/piclist > _______________________________________________ http://www.piclist.com PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist