How to deploy the TTL Serial Control on my Jrk12v12

I have a Jrk 12v12 (motor controller with feedback), I have tested the analog control mode by using a potentiometer (connected to RX, 5V and GND) as analog input, and a linear actuator potentiometer (connected to FB, 5V and GND) as feedback signal. This analog control mode works perfectly.

However I do not intend to work on analog mode. I have a Freescale demo board MC9S12XEP100, it is designed to work under TTL serial mode and give the digital TTL output to the Jrk12v12 RX port. I have found from Youtube how the Jrk12v12 work with an Orangutan SVP-XXXX as shown here:

My problem is I do not intend to have an Orangutan/Arduino/Baby Orangutan. I only want to build up communication with Freescale MC9S12XEP100 and Jrk12v12 using “Compact Protocol” to drive my motor forward or reverse according to the TTL serial output from the Freescale digital output (Please note this Freescale digital output is calculated form the control algorithm programmed in Freescale CPU and it changes in real time).

I tried using “Pololu Serial Transmitter v1.3”, but it can only send command with FIXED target (for example: “0xAA, 0x3F” where ‘3F’ must be appointed when you send the 2-byte command), so it is not useful to me. I have also checked some example C-codes that generate the serial bytes that offering a variable ‘target’ to change the range of the design variable, but it is not working for my Freescale (because these codes are integrated with Orangutan/Arduino/Baby Orangutan microprocessors).

How can I make the Jrk12v12 recognize the TTL serial signal from the Freescale digital (the Freescale has no analog output available) output port?

Many thanks.

Hello, Alexding.

The type of serial protocol used by the jrk on its RX and TX lines is known as non-inverted asynchronous serial with 8 data bits, no parity, and 1 stop bit. The voltage levels are 0-5V. This type of serial protocol is ubiquitous. We describe the protocol in the jrk user’s guide:
pololu.com/docs/0J38/4.b

First of all you should make sure that your microcontroller and demo board support this serial protocol, and you should figure out which pins to use. Some boards have RS-232 serial outputs and/or DB9 connectors: do NOT use those, because they will probably have the wrong voltage levels and be inverted.

You will need to use the Jrk Configuration Utility to set the jrk’s serial mode. I recommend setting it to “UART, fixed baud rate”. You will need to ensure that your board uses the same baud rate as the jrk; 9600 is a good baud rate to start with until you get things working.

You should write a simple program on your board that just sends a few bytes on your board’s TX line. In the jrk user’s guide we have two lines of example C code for generating serial bytes for the Set Target command. Those lines should work without modification on any device that is programmable in C, and if you understand what those lines are doing you should be able to write them in other programming languages:
pololu.com/docs/0J38/4.e

If you have an oscilloscope, you should look at the TX line of your board to verify that the bytes look correct.

You will need to connect the the ground of your board to that of the jrk and connect the TX line of your board to the RX line of the jrk.

If you follow all this advice and things aren’t working, you can use the Jrk Configuration Utility to help diagnose the problem.

–David

P.S. I deleted your duplicate post.