打印

急急急!!单片机驱动动热敏微打

[复制链接]
2148|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
YEXIANG02|  楼主 | 2009-3-12 20:41 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
 我用89c52 驱动热敏微打(荣达电子公司的)  然后为什么打印机总是不工作啊 !  请问下
程序如下:

#include <reg52.h>
#define uchar unsigned char
#define uint unsigned int
#define data_8 P0
sbit BUSY = P1^2; //打印机 BUSY 接P1.2
sbit STB = P1^0; //打印机 STB 接P1.0
void print(uchar j) //打印子程序
{ uchar i;
while(BUSY){}; //BUSY=1,打印机忙,等待BUSY 为0 再发数
data_8=j;
STB=0;
i++;
i--;
STB=1; //给出数据锁存时钟
BUSY=1;
}
void main(void)
{BUSY = 1; //忙信号置高
STB = 1; //选通信号置高
print(0x1b); //打印机初始化命令
print(0x38);
print(0x04);
for(;;)
{
print(0xd0); //发送汉字内码“新荣达”
print(0xc2);
print(0xc8);
print(0xd9);
print(0xb4);
print(0xef);
print(0x0d); //换行
}
}

相关帖子

沙发
wjy1107| | 2009-3-12 22:57 | 只看该作者

你先用串口调试助手试试打印机好用不?

先忽略READY信号,用串口调试助手将你所要发送的命令,一行一行的输入,调试正确了再用程序实现,省不少力气哦。

使用特权

评论回复
板凳
冷漠| | 2009-3-13 08:55 | 只看该作者

书上有现成的程序。

懒得专门为此跑图书馆,你只要查一查早期出版的51单片机应用汇集的书上基本都有。
找厚的。作者:何力民。黎庆生,之类

使用特权

评论回复
地板
winds| | 2009-3-13 09:51 | 只看该作者

输出用P0口?有没有上拉电阻?

打印口,是标准的TTL接口,输入需要一定的高电平信号电流

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

1

帖子

0

粉丝