Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

printing speed.... a bit Urgent Please.

Status
Not open for further replies.

garg29

Advanced Member level 1
Joined
Nov 17, 2004
Messages
443
Helped
25
Reputation
50
Reaction score
10
Trophy points
1,298
Activity points
3,593
Hi, friends, I'm trying to interface a thermal printer mechanism, from fujitsu FT628MCL103 with 89S52 (with Xtal 11.0592Mhz). I just want to know what is the maximum printing speed that can be acheived. Considering the printing data is only Text type(no graphics) & the data is withing uC's RAM, i.e. No data from outside has to be read.

Thanks

With best regards.
 

I think you made an error in the part number.

FTP-628MCL103 :)

**broken link removed**
https://www.fujitsu.com/downloads/MICRO/fcai/thermal-printers/ftp-628mcl101_103.pdf

That suggests a maximum printing speed of '60mm/sec'

As you said you were only printing 'text', going over the data sheet, it seems that the control board you would use for this accepts character bytes, implying that you would only need one byte per character. So even a slow micro could handle this as the speed would be limited by the printer head itself.

I assume you're using a control board anyway...or are you attempting to interface this directly??
 

    garg29

    Points: 2
    Helpful Answer Positive Rating
Thanks for the reply. I missed 'P' in FTP628... sorry....
I'm not using any control board, I'm trying to interface it directly to 89S52 uC WITH 11.0592 Mhz xtal.
I have made character map of 16x16 bits & i'm able to print but the printing speed is damn slow, less than 1mm/sec. I think the bit reading from the memory is very slow. so I asked whether this controller with 11.0592Mhz frequency would be able to do the printing at good speed or not.

Once again Thanks a lot for your time.

Regards
 

Hi,
Can u share Your Pgm and Sch. we can try to help You.
 

The code charmap looks like this
Code:
switch (Char)
	{
		case 'A':
		if (line==0)  return BIN(0,0,0,1,1,1,1,1,1,0,0,0,0,0,0,0);
		






break;
 

Ok, so you're interfacing it directly.....that really doesn't look easy :)

Found the datasheet for the control board they use:

**broken link removed**


Its always good to see how someone else has done it, and frankly, that looks like a pretty complicated board. Obviously you've done really well to get the printer running off a basic 8-bit micro :)

I checked the datasheet, and the pinout for the printer head has MANY control signals and detection signals, surprised you're not running out of pins.

As for your code, it didn't show the low level routines for actually sending bytes to the printer. I'm not saying we need to see your whole code...just the bits where you actually switch pins high/low. As your micro doesn't have any peripherals with sending serial data, its all bit banged, which I'm sure slows things down significantly. Have you considered switching to an Atmega? Or perhaps using off-chip hardware logic to speed up the communication.

I'm sorry if I'm not really much help, I have never dealt with these printers, nor the 89S52 for that matter... but its certainly interesting, and seeing as you have already got the whole thing working, I'm sure speeding things up is doable.

Also, just searched the forum and found this delightful spec sheet for your printer:


It gives basic schematics of the strobing inputs and timing for the head, as it looks serial based, you may be able to optimize your code. For example, page 21 shows the DC and timing characteristics. It shows 'CLK' with a typical value of 5MHz. Does your micro output this? It seems you will either have to just use a blazing fast clock to do it all in software, or use a micro, equivalent to the one you have, but with on-board SPI or synchronous USART so spit the serial data to the printer as fast as possible.

If that is not an option, then, I guess code optimization is the only way. Whilst C is awesome for complicated tasks, for basic 'pin toggling' and sending serial data, I'm sure the generated assembly will probably run quite slow. You may be able to add some inline assembly for this, purely for toggling pins.

Sorry for the disorganized answer, its 6am and I haven't had my coffee..

Buriedcode
 

    garg29

    Points: 2
    Helpful Answer Positive Rating
A big Thanks to you for giving me your precious time. (that too , too early morning). anyway, I'm still trying, lets hope for the best.

Regards
 

Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top