小R科技-WIFI机器人网·机器人创意工作室

 找回密码
 立即注册
查看: 29192|回复: 48

最简陋的打印机。。。

[复制链接]
发表于 2012-4-26 12:26:32 | 显示全部楼层 |阅读模式

首先谢谢师兄的指导,才能完成。

这是同超市的小票机是一样的,自己弄蛮好玩的。

好,上图。。。

照片 001.jpg

照片 002.jpg

照片 003.jpg

回复

使用道具 举报

发表于 2012-4-26 12:48:36 | 显示全部楼层
版主,你已经无敌了!太膜拜了
回复 支持 反对

使用道具 举报

发表于 2012-4-26 13:30:58 | 显示全部楼层
我靠 这个也能做出来。
回复 支持 反对

使用道具 举报

发表于 2012-4-26 14:26:45 | 显示全部楼层
强,能详细的介绍就好了。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2012-4-26 14:56:49 | 显示全部楼层
liuviking 发表于 2012-4-26 12:48
版主,你已经无敌了!太膜拜了

呵呵,不要这样说嘛,大家都为自己的兴趣玩着,就象我们做小车一样
回复 支持 反对

使用道具 举报

发表于 2012-4-26 15:16:25 | 显示全部楼层
楼主出教程  我也想做一个
回复 支持 反对

使用道具 举报

发表于 2012-4-26 16:35:09 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

发表于 2012-4-26 17:42:43 | 显示全部楼层
本帖最后由 myrobot 于 2012-4-26 17:45 编辑

这个和条形码里面用的热敏打印机差不多,我也有个!
回复 支持 反对

使用道具 举报

发表于 2012-4-26 17:44:18 | 显示全部楼层
本帖最后由 myrobot 于 2012-4-26 17:50 编辑

/***********检测放纸是否正确,是否存在纸张:******************************/
#include<stdio.h>
#include<absacc.h>
#include<intrins.h>
sbit PAPER=P1^5;                       /*纸张检测端口*/
                void main(void)
                { 
                        delay(200);
                do{}
                        while(PAPER==1);               /*检测是否存在纸张;*/
                print( ) ;                            /*纸张存在,就开始打印*/
        )
/**************************打印程序*****************************/      

                        程序包含:步进电机驱动runmotor()
                        字节读取read()
                        打印程序print()
/***************************************************************/        

    #include<stdio.h>
    #include<absacc.h>
    #include<intrins.h>
     sbit DAT=P1^1;
     sbit CLK=P1^2;
     sbit DST=P1^3;
     sbit LAT=P1^4;
   
     sbit acc_0=ACC^0;
     sbit acc_1=ACC^1;
     sbit acc_2=ACC^2;
     sbit acc_3=ACC^3;
     sbit acc_4=ACC^4;
     sbit acc_5=ACC^5;
     sbit acc_6=ACC^6;
     sbit acc_7=ACC^7;
     char code motorcode[4]={0x6,0x0c,0x9,0x3};     
        void read(char hz)
        {
                ACC=hz;            CLK=0;        CLK=1;
                DAT=acc_7;        CLK=0;        CLK=1;
                DAT=acc_6;        CLK=0;        CLK=1;
                DAT=acc_5;        CLK=0;        CLK=1;
                DAT=acc_4;        CLK=0;        CLK=1;
                DAT=acc_3;        CLK=0;        CLK=1;
                DAT=acc_2;        CLK=0;        CLK=1;
                DAT=acc_1;        CLK=0;        CLK=1;
                DAT=acc_0;
}
char runmotor(int step,char flag)                                  /*步进电机动作*/
{
        int i;
        char j,sp=0;
        for(i=0;i<step;i++)
        {
          j=flag+1;
          flag=flag+1;
          if(flag==4)
                  {flag=0;j=0;}
                     sp=motorcode[j];
          delay(110);
        }
       return j;
}

print( )
{
        char i,j;
        for(i=0;i<24;i++)                         /*24行*/
        {
                        for(j=0;j<2;j++)                  /*3列*/
                        {
                                read (table[j]);              /*读出数据*/
                        }
                            LAT=0;
                                    LAT=1;
                            DST=1;
                            delay(500);                      /*500毫秒用于加热*/
                            LAT=0;
                            DST=0;
                        motorflag=runmotor(2,motorflag);   /*步进电机走两步,打印一行*/
        }
}  

回复 支持 反对

使用道具 举报

 楼主| 发表于 2012-4-26 18:07:57 | 显示全部楼层
ammyself 发表于 2012-4-26 15:16
楼主出教程  我也想做一个

其实这也不难的,会写液晶就可以了,只是在写完之后有一个步进电机走步的动作。参见

9楼的坛友,程序很好,差不多就是那样了。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

新品特惠推荐上一条 /2 下一条

QQ|QQ技术咨询1|QQ技术咨询2|商务合作微信1:xiaorgeek001|商务合作微信2:XiaoRGEEK|诚聘英才|Archiver|手机版|小R科技-WIFI机器人网·机器人创意工作室 ( 粤ICP备15000788号-6 )

GMT+8, 2024-11-26 10:45 , Processed in 1.137662 second(s), 21 queries .

Powered by XiaoR GEEK X3.4

© 2014-2021 XiaoR GEEK

快速回复 返回顶部 返回列表