Good work! Thanks for those responses.
I can't check your stripboard circuit because the connections aren't visible, but you certainly seem to know what you're doing, and your schematic looks OK, so I'm going to assume you've probably built it up correctly.
I think it would be a good idea to clarify the signal names in the connection from the PIC to the MAX-232 board. That MAX232 board is obviously manufactured by some company, and perhaps they have chosen confusing names for the signals. Here is how the signals should be connected and named; perhaps you could modify your schematic to clarify this.
The old RS-232 naming convention is based around connections between a "terminal" and a modem. This is because it was originally used with "data terminals" - a simplified computer that was just a keyboard and a display, with the actual processing being performed by a big computer in a lab somewhere - and modems, which allowed these terminals to connect to these computers.
In the RS-232 naming standard, a "data terminal" is called a "DTE" - "data terminal equipment", and a modem is called a "DCE" - "data communication equipment". In your case, you have a "terminal" and a modem, so these names are still relevant. The PIC and its RS-232 interface is the DTE, and the modem is the DCE.
Signals in the RS-232 naming convention relate to the DTE. So TXD means data that is transmitted by the DTE, i.e. transmitted by the PIC. This data is converted from 0V/5V levels to RS-232 levels by the MAX232, and fed to the modem, where a similar device inside the modem converts it back to logic levels so the modem's microprocessor can deal with it.
At all stages in the process, this signal is called TXD. Because it is data transmitted by the DTE. Even at the input to the modem, on pin 3 of the 9-pin D-sub, this signal is called TXD, although the modem actually RECEIVES data on this pin.
So that defines how the signals should be named. You may want to check these signals all the way from the PIC through to the modem connector.
I'm sure you understand all the details I'm giving here. I'm just spelling it out thoroughly for completeness.
1. Data from PIC to modem:
This signal is called TXD all the way through the path.
PIC transmits on RC6/TX/CK on pin 25. I checked this on the data sheet. This signal should be labelled TXD.
This signal goes into the input of a transmitter on the MAX232 board; specifically, pin 11 of the MAX232, which is called "T1IN" because it's an input to an RS-232 transmitter. The signal at pin 11 should also be called TXD.
The transmitter in the MAX232 converts this signal to RS-232 levels and its output is on pin 14, called T1OUT. This pin is also called TXD.
MAX232 pin 14 must be connected to pin 3 of the 9-pin D-sub connector. This pin is also called TXD.
The 9-pin connector connects to the modem through a pin-to-pin cable, so it arrives at the modem on pin 3 as well. This pin is also called TXD; even though the modem actually receives the data on that pin, that is the data that will be transmitted through the cellular network, so it's still called TXD.
This is also the signal that will carry the AT commands from the PIC to the modem.
2. Data from modem to PIC:
This signal is called RXD all the way through the path.
The modem receives data from the cellular network (and also generates its own responses, such as "OK"<CR><LF>, which come through the same channel. This data comes out on pin 2 of the 9-pin D-sub and is called RXD.
This comes through to pin 2 of the 9-pin connector on the MAX232 board, and into pin 13 of the MAX232, called R1IN, the input to an RS-232 receiver, whose output is on pin 12, which goes to RC7/RX/DT on pin 26 of the PIC (40-pin DIP version). At all points, this signal should be called RXD.