1200 or 2400 Baud with an 8 or 16 bit microcontroller

Nov 07, 2003 21 Replies

Hi, Is there a way to do 1200 or 2400 baud with an 8 or 16 bit microcontroller?



I have an application that requires modem communications. In the past I have done 110 - 300 baud half duplex with an 8 bit but now most modems are not able to communicate below 1200 baud. I would be interested in finding 3rd party software routines that we can purchase or get freeware. I heard somewhere that some microcontroller vendors offer this.



Any information would be appreciated.



Thank you



Bradley


Most 8 and 16 bit microcontrollers are capable of doing well over

57.6kbaud, many can do several hundred kbaud. Units with built in UARTs will be faster, but even simple micros without the UART hardware are capable of impelmenting software UARTs that can operate at speeds of 38.4kbaud and higher. Equally, once you have picked your micro, assuming it is one of the more commonly available types, it will usually have application notes available that show you how to implement a UART.

Cheers

Al

Bradley wrote:

Please remove capitalised letters to reply My apologies for the inconvenience Blame it on the morons that spam the net

Also be careful with 1200 and 2400 baud speeds with current modems. Some very popular ones don't really support these rates, even though they say they do. This rate is below what typical modem makers find useful. Everyone wants to go faster, so the low end has reallly suffered.

I found tech support from the major modem makers absolutely horrible 2-3 years ago. If you're not putting it on a PC and using standard windows drivers the tech support is useless.

If you're looking to embed a modem in a project, I had very good results with the Multi-tech embeddable modem modules.

Scott

Correct me if I'm wrong, but my impression of the OP's posting is that he wants to do the FSK/PSK/QAM/whatever in firmware, e.g. V.21, V.23, V.22/bis, etc. I don't think you'll be doing V.34 etc etc in firmware on a 16-bit micro unless it has an on-chip DSP :)

Be especially leery of 1200 baud modems. During their heyday there were various incompatible standards. By the time 2400 came along standards kept them compatible.

Chuck F (cbfalconer@yahoo.com) (cbfalconer@worldnet.att.net) Available for consulting/temporary embedded and systems. USE worldnet address!

Absolutely

Check out Microchip's (PIC) website

formatting link
Under the "Engineer's toolbox" you will find a wealth of information, application notes, and sample code for all sorts of asynchronous communications.

Man, my memory may be going but...

Didn't pretty much everyone settle on v.22 for Async 1200bps? I know for Sync 1200bps there were at least three different standards (Bell, Europe and Racal-Vadic), and European and U.S. 300bps standards were different. Or was it that the U.S. was using 212A at 1200 and then everyone merged together at 2400bps with v.22bis?

The last.

Chuck F (cbfalconer@yahoo.com) (cbfalconer@worldnet.att.net) Available for consulting/temporary embedded and systems. USE worldnet address!

been there..done that

The most reliable way is to take an off the shelf modem and wire it up to the microcontroller. I did this with 8052 and 2400Baud modems several years ago for remote energy control systems. It got around all the hassles of DOC( FCC in USA) requirements and made it simple to replace the modem card in case it got fried. I used a desktop 'motherboard-daughterboard' expander to join the two together. Programming was a snap, took, oh a couple of hours more or less.

Hmm...12 years and still working..... Now if what you want to do is doit all in software,well, that's another story. Sorry, I went for the easy and reliable way..

hth jay

With modems 1200 bps and up, baud != bps. Baud is the rate of carrier shift, and at modem speeds above 300 bps, they use more than two states to transfer more than one bit per shift. For example, if a modem is 400 baud with 8 states, each shift transfering 3 bits, that gives 1200 bps.

I lost interest in how modems work after 9600 bps and the Telebit/HST flamewars. Now they approach 56kbps by use of black magic voodoo. :^)

Ron Sharp.

You suggestion bears merit. I have come from an environment where PCB cost has been critical. That is why we used 110 and 300 baud half duplex which only worked with a small number of modems. Now I am in an environment where it is a bit different. For one of my applications I can afford to use a real modem. The other application is still very PCB cost sensitive and I would like to recieve or purchase tested bit banging software for use on an 8 or 16 bit micro.

Bradley

You are correct, I want to do this in firmware and base speed requirement needs to be 1200 or 2400 buad (v.22BIS). PCB cost is critical in the product. We do not mind spending more time on software getting the communications working. I do however "seem to" remember that some microcontroller vendors actually offer this software as a freebie or purchase.

Another technical nitpick: Bell 202 was 1200 baud FSK (baud == bps) half duplex. Well, technically there was a low-speed reverse-channel (5 buad), but I don't know of of the back-channel ever being in the real world, and most of the Bell-202 modem chips on the market don't even support th ereverse-channel. Bell 202 is still in use in millions of telemtry and industrial control applications (esp. ones that use the HART protocol).

Grant Edwards grante Yow! Where's th' DAFFY at DUCK EXHIBIT?? visi.com

Damn. I've got to get ispell fixed....

-- Grant Edwards grante Yow! Where's th' DAFFY at DUCK EXHIBIT?? visi.com

You've said this is a price critical product, yet are willing to spend $??? on software development !! I can get real modems for less than $20C that are approved,replaceable and very.very easy to program. That $20 hardware is a LOT cheaper than HOURS and HOURS of trying to program some other hardware solution. Been there..done that..even the time spent 'on the net' should and must be considered to the overall cost of the product

fwiw jay

I've only seen high-speed softmodems available for ARM cores (you can run K56flex on a 74MHz ARM7; probably slower, for that matter).

Look at Scenix (Now Ubicom)

Does this have to work on a fully open, any-dial-up, any host modem basis (for 5+years), or do you have a more closed system. Duplex, or simplex ?

Challenge with uC solutions is the higher BAUD rates quickly need Phase and Analog processing & line corrections.

They do, at lower end baud rates.

Another 'cost optimise' approach, is to use two uC - rather than one loaded up with everything, two smaller ones can work better. Look at TDK, they have a modem IC that is uC+Firmware, and use that with your own now smaller/cheaper companion uC. IIRC Motorola have some SPI Modem Chips.

-jg

The old Prestel system in the UK (mid 1980's)used 1200baud from the central site and 75 baud from the users sites. The idea being that the users couldn't type very fast so it was fast enough (don't know if it was Bell202, although I suspect it was).

Alan

++++++++++++++++++++++++++++++++++++++++++ Jenal Communications Manufacturers and Suppliers of HF Selcall P O Box 1108, Morley, WA, 6943 Tel: +61 8 9370 5533 Fax +61 8 9370 5106 Web Site:
formatting link
e-mail:
formatting link
++++++++++++++++++++++++++++++++++++++++++

Hi,

No shortage of softmodems around. For a start:

("embedded modem less than $3"), up to V.32bis

(MSP430, auf Deutsch)

(press release, Motorola free reference design softmodem for ColdFire MCF5407, auf Deutsch), the English product page is at

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required