All the AT&T calling plans on the iPhone include 200 SMS messages, but if you're pushing that limit where you'll have to start paying per message, eBuddy gives you access to regular old AIM on your iPhone. Go to this URL and you can use AIM without paying a per-message charge. It's not perfect, though.
First of all, the type size of the messages is way too small on your screen—the text is barely even two points high. You can zoom in, but after every message you send, you must zoom in again. Also, messages don't come in live; they're fetched at the same time you send yours, making for some rather halting conversations and missed connections. Overall, it works, but it's awkward.
If you don't send and receive a lot of messages, you're probably better off using the iPhone's SMS service. After all, that delightful iChat-like interface is hard to resist. Another choice if you're using AIM: you can send messages to an iPhone (or any cellphone's text messaging system for that matter), if you type +1 and then the 10 digit phone number as your buddy's name. Any replies to your messages from your cellphone-toting buddy will count as a message, though.
You can also try Meebo, the supposedly do-everything-anywhere messaging service, but all we're getting at that site when we access it from our iPhone is a spinning cursor. Colleague Jason Chen had some luck with it and was actually able to communicate, but characterized it as "super slow," and certainly not pantsworthy. Meanwhile, technicians at Meebo tell us they're working on optimizing the service.
Let's hope this AIM/iPhone situation works itself out soon. Sure, AT&T wants to generate cash from messaging, but we look forward to the day when we can just use AIM for free on the iPhone, unfettered and easy to use just like the rest of the apps on the iPhone.