资源预览内容
第1页 / 共16页
第2页 / 共16页
第3页 / 共16页
第4页 / 共16页
第5页 / 共16页
第6页 / 共16页
第7页 / 共16页
第8页 / 共16页
第9页 / 共16页
第10页 / 共16页
亲,该文档总共16页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
合肥师范学院蓝牙打印机课程设计专 业: 计算机科学与技术 班 级: 嵌入式应用技术 学 号: 1410441060 姓 名: 李棒棒 设计题目: 蓝牙打印机程序设计 2016年6月 / 1.绪论31.1概要31.2设计内容32.开发环境的搭建43.蓝牙打印机原理153.1蓝牙打印机的种类和工作原理153.2蓝牙打印机原理图分析164总体设计174.1设计思路174.2设计步骤175.驱动及测试程序17 5.1主程序17 5.2生成字模22综合设计总结与思考27 1.绪论1.1概要嵌入式系统(Embedded system),是一种“完全嵌入受控器件内部,为特定应用而设计的专用计算机系统”,依据英国电气工程师协会( U.K. Institution of Electrical Engineer)的定义,嵌入式系统为掌握、监视或帮助设备、机器或用于工厂运作的设备。与个人计算机这样的通用计算机系统不同,嵌入式系统通常执行的是带有特定要求的预先定义的任务。由于嵌入式系统只针对一项特别的任务,设计人员能够对它进行优化,减小尺寸降低成本。嵌入式系统通常进行大量生产,所以单个的成本节省,能够随着产量进行成百上千的放大。1嵌入式系统是用来掌握或者监视机器、装置、工厂等大规模设备的系统。国内普遍认同的嵌入式系统定义为:以应用为中心,以计算机技术为基础,软硬件可裁剪,适应应用系统对功能、牢靠性、成本、体积、功耗等严格要求的专用计算机系统。通常,嵌入式系统是一个掌握程序存储在ROM中的嵌入式处理器掌握板。事实上,全部带有数字接口的设备,如手表、微波炉、录像机、汽车等,都使用嵌入式系统,有些嵌入式系统还包含操作系统,但大多数嵌入式系统都是由单个程序实现整个掌握规律。嵌入式系统的核心是由一个或几个预先编程好以用来执行少数几项任务的微处理器或者单片机组成。与通用计算机能够运行用户选择的软件不同,嵌入式系统上的软件通常是临时不变的;所以常常称为“固件”。蓝牙是一种低成本大容量的短距离无线通信规范。蓝牙打印机(Bluetooth printer)就是将蓝牙技术应用在打印机上,摆脱打印机连线所带来的不便,实现无线打印,可以削减桌面上令人不快的电缆,并且可以将打印机远离主机任意搬动,摆放在房间中适合的位置。1.2设计内容 2.开发环境的搭建 3.蓝牙打印机原理 3.1蓝牙打印机的种类和工作原理蓝牙打印机的种类:依据机器大小可分为:台式蓝牙打印机、便携式蓝牙打印机。依据打印方式,可分为:针式蓝牙打印机、热敏蓝牙打印机。蓝牙打印机的工作原理:所谓蓝牙打印机,就是指在主机端用一单片机来仿真打印机进行工作,截取从主机并口传出的数据及掌握信号,并通过蓝牙无线连接传送到打印机端。在打印机侧的单片机则依据所收到的蓝牙数据来仿真主机对打印机进行掌握操作,从而实现打印机与主机的蓝牙无线连接。由于大部分的移动设备(手机、笔记本、平板电脑)都置有蓝牙芯片,不需要数据线连接即可快速被识别,操作简洁,连接便利。热敏打印机的原理是用加热的方式使涂在打印纸上的热敏介质变色。热敏微型打印机式也式比较常见的微 型打印机,但比针式微型打印机出来得要晚。热敏打印机打印速度快,噪音小,打印头很少消失机械损耗,并 且不需要色带,免去了更换色带的麻烦。但它也有缺点,由于其使用的是热敏纸,所以不能无限期保存,在避 光的条件下可以保存一年到五年,也有长效热敏纸可以保存十年。3.2蓝牙打印机原理图分析3.21热敏打印头内部硬件框图: 4总体设计4.1设计思路在主机端用一单片机来仿真打印机进行工作,截取从主机并口传出的数据及掌握信号,并通过蓝牙无线连接传送到打印机端。在打印机侧的单片机则依据所收到的蓝牙数据来仿真主机对打印机进行掌握操作,从而实现打印机与主机的蓝牙无线连接。主机端的蓝牙作为主设备进行查询和发起连接,打印机端的蓝牙则作为从设备等待连接的建立。单片机接受89C2051,蓝牙芯片接受爱立信公司生产的支持点对点连接的ROK101-008。该模块内包括了无线部分、基带掌握器、闪存、电源掌握模块和内部时钟这五个主要部分,供应UART、PCM、I2C标准接口并内置晶振。4.2设计步骤4.21 项目系统框架图设计 4.22 项目器件选型 可行性 成本 1) CPU:stm32f103c8t6 48pin 72MHZ flash:64k RAM: 20K 2) 打印头:富士通 58mm 短排线 - 外壳 3) 蓝牙模块:HC-05 4) 存储器(FLASH):w25q64 8MB 08 16 32 64 128 5) 电机驱动:LB1963 6) DC-DC 电源:2307(7.4v) ,2359(5v),1117(3.3v) 4.23 原理图、PCB 设计; 4.24 项目软件分模块编写,测试 4.25 字库烧录 4.26 系统软件下载,综合调试5.驱动及测试程序主程序#include delay.h#include sys.h#include usart.h#include motor.h#include printer.h #include FONT.Hu8 uart_buf100;u8 uart_flag=0;u8 en_dat48*32;void SYS_INT(void)Stm32_Clock_Init(9); / delay_init(72); / init_printer_gpio();init_motor_gpio();uart1_init(72,9600);uart2_init(36,9600);void send_str(char *s) for(;*s!=0;s+)while(!(USART2-SR & (1DR =*s; void print_hzs(void) u8 beat_cnt=2,line=0,hz_line=0;for(line=0;line48;line+)run_motor();delay_us(800);for(hz_line=0;hz_lineget_hz_num();hz_line+)for(line=0;line48;line+)if(beat_cnt=2)HEAT_OFF();/writer_printer();beat_cnt=0;writer_printer(const u8*)hz_strhz_line);/ if(beat_cnt=0)HEAT_RIGHT();if(beat_cnt=1)HEAT_LEFT();beat_cnt+;run_motor();delay_us(800+300);for(line=0;line12;line+)run_motor();delay_us(800); HEAT_OFF();for(line=0;line32)len=32;wr_len=len;for(i=0;i48*32;i+)en_dati=0;/ for(i=0;ilen;i+) if(si=n)|(si=)wr_len=i+1;break;p=(u8*)&en_str (si- ) ; for(j=0;j48;j+) en_datj+i*48=pj; for(line=0;line48;line+)if(beat_cnt=2)HEAT_OFF(); beat_cnt=0;wr_line_en(const u8*)en_dat); if(beat_cnt=0)HEAT_RIGHT();if(beat_cnt=1)HEAT_LEFT();beat_cnt+;run_motor();delay_us(800+300); HEAT_OFF(); return wr_len;void write_en_str(char *s)u16 wr_len=0,len=0,i=0;char *p=s;len=strlen(p);for(i=0;i48;i+)run_motor();delay_us(800);while(1)wr_len=en_one_line(p,len);if(wr_lenlen)len=(len-wr_len);p+=wr_len;else break; for(i=0;i150;i+)run_motor();delay_us(800);int main()u8 beat_cnt=2,line=0;SYS_INT();print_hzs(); write_en_str(No Sweet Without Sweatn); while(1) if(uart_flag)uart_flag=0;write_en_str(uart_buf); void USART2_IRQHandler(void)static u8 i=0,dat=0;
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号