At 02:41 AM 2/14/01 -0500, Ray Russell wrote: >David, >Thanks for your very quick reply! >While I understand the theory, putting what you are saying to use has left me >out in the cold! >Do you have a program that would do all this that you could add notes to that >tell me what each line is doing? This way I could go to the data sheet and >actually figure out what is going on? This way I am not burning up hours >beating my head against the wall. Unfortuntely no. I don't write a lot of PIC code, and what I do, belongs to my customers. You need to set up seven pins as one group of outputs for the segments. I would try to make that all on one port. Look at the TRIS register to do that. You also need three more output pins for the digits, again the TRIS register. It won't matter much which port they are on. For simplicity, I'd put them on another port. Now you have Port X, bits 0-6 as segments, and Port Y bits 0-2 as digits. This part depends on your display: Some are "common cathode", and want the digit low, and segments high. Others are "common anode", and want the digit high, and segments low. Either way, if you output 11110000 to port X (Look at the port registers), and output 010 to port Y, then you'll be able to figure out which sort of display you have, and how to drive it. I wouldn't advise you to start out with a C compiler. Assembler is the way to talk directly to the machine. Your first program will look something like this: Start: movlw $00 ; movwf trisX ;Make all of port X, outputs movwf trisy ;and port y movlw $F0 movwf portx ;Set up the segment pattern movlw $02 movwf porty ;Set up the digit pattern Here: goto Here ;Just hang here in a loop -- Dave's Engineering Page: http://www.dvanhorn.org Where's dave? http://www.findu.com/cgi-bin/find.cgi?kc6ete-9 -- http://www.piclist.com#nomail Going offline? Don't AutoReply us! email listserv@mitvma.mit.edu with SET PICList DIGEST in the body