粉粉嫩嫩的18虎白女,白丝女仆猛 喷水爽自慰,欧美嫩小槡BBBB槡BBBB槡,午夜视频在线免费观看,国产一级a毛一级a看免费视频

當前位置(zhi) : 首頁 > 應用方案 > 物聯網安全方案 > 熱(re)敏打印機方案

航芯(xin)方案(an)分享 | 熱敏打印機方案(an)


隨著電子信息化、自動化程(cheng)度提高,條碼識別技術的(de)(de)(de)發(fa)展(zhan),熱敏打印機的(de)(de)(de)應用(yong)范圍也在不斷擴大,已(yi)從(cong)傳統的(de)(de)(de)辦公和家庭傳真文檔,快速向商(shang)業(ye)零售、工業(ye)制造業(ye)、交通運輸(shu)業(ye)、物流、金融、彩票、醫療、教育等(deng)新興(xing)專業(ye)應用(yong)領域拓展(zhan)。


本文將為大家介(jie)紹基于上海航芯ACM32F403的(de)熱敏打印機設計方案。


打(da)印原理(li)


熱(re)敏打(da)印機的(de)原理是(shi),在(zai)介(jie)質基底上(shang)(通常(chang)是(shi)紙)覆上(shang)一層熱(re)敏材(cai)(cai)料,將熱(re)敏材(cai)(cai)料加(jia)熱(re)一段時間后變成深色(se)(一般是(shi)黑色(se),也有藍色(se))。這種(zhong)化(hua)學反應是(shi)在(zai)一定的(de)溫(wen)(wen)度(du)下進(jin)行的(de)。高溫(wen)(wen)會(hui)加(jia)速這種(zhong)化(hua)學反應。當(dang)溫(wen)(wen)度(du)低于60℃時,熱(re)敏材(cai)(cai)料需要(yao)經過相當(dang)長,甚至長達幾年的(de)時間才(cai)能(neng)變成深色(se);而當(dang)溫(wen)(wen)度(du)為200℃時,這種(zhong)反應會(hui)在(zai)幾微秒內(nei)完成。


熱(re)(re)(re)(re)敏(min)打印機有選擇地在熱(re)(re)(re)(re)敏(min)紙(zhi)的(de)(de)(de)確(que)定位置上加(jia)熱(re)(re)(re)(re),由此就產(chan)生了相(xiang)(xiang)應的(de)(de)(de)圖(tu)形(xing)。加(jia)熱(re)(re)(re)(re)是由與熱(re)(re)(re)(re)敏(min)材料相(xiang)(xiang)接觸的(de)(de)(de)打印頭上的(de)(de)(de)一個(ge)(ge)小電(dian)子加(jia)熱(re)(re)(re)(re)器提供的(de)(de)(de)。加(jia)熱(re)(re)(re)(re)器排成方點(dian)或(huo)條(tiao)的(de)(de)(de)形(xing)式由打印機進(jin)行邏(luo)輯(ji)控制,當被驅動時,就在熱(re)(re)(re)(re)敏(min)紙(zhi)上產(chan)生一個(ge)(ge)與加(jia)熱(re)(re)(re)(re)元素相(xiang)(xiang)應的(de)(de)(de)圖(tu)形(xing)。控制加(jia)熱(re)(re)(re)(re)元素的(de)(de)(de)同(tong)一邏(luo)輯(ji)電(dian)路,同(tong)時也控制著(zhu)進(jin)紙(zhi),因而能在整(zheng)個(ge)(ge)標簽(qian)或(huo)紙(zhi)張上印出(chu)圖(tu)形(xing)。



圖1. 熱敏打印機(ji)的(de)原(yuan)理(li)


使(shi)用芯片


本文描述的熱敏(min)打印機方案,是(shi)基于上海航芯ACM32F403系列(lie)的MCU進行(xing)設計。


ACM32F403芯片采用高性(xing)能內核,支持(chi)Cortex-M33和Cortex-M4F指令集。芯片內核支持(chi)一(yi)整套DSP指令用于數(shu)字信號處理,支持(chi)單精度FPU處理浮點數(shu)據,同時(shi)還支持(chi)Memory Protection Unit(MPU)用于提升應用的(de)安(an)全性(xing)。


ACM32F403系(xi)列芯片(pian)最高(gao)工(gong)作頻(pin)率(lv)可達180MHz,內(nei)嵌數(shu)學硬件加速(su),內(nei)置最大(da)512KB的(de)eFlash和(he)最大(da)192KB SRAM。芯片(pian)集(ji)成(cheng)了一個(ge)12位(wei)(wei)多通道2M sps高(gao)精度(du)ADC、一個(ge)12位(wei)(wei)2通道的(de)DAC、多達3路運放、2路比(bi)較器(qi)(qi)(qi),集(ji)成(cheng)了1個(ge)高(gao)級定(ding)時(shi)器(qi)(qi)(qi),6個(ge)通用16位(wei)(wei)定(ding)時(shi)器(qi)(qi)(qi),1個(ge)通用32位(wei)(wei)定(ding)時(shi)器(qi)(qi)(qi),2個(ge)基本16位(wei)(wei)定(ding)時(shi)器(qi)(qi)(qi),1個(ge)系(xi)統看門狗(gou),1個(ge)獨立看門狗(gou),一個(ge)低功耗(hao)的(de)實(shi)時(shi)鐘(RTC),內(nei)置多路UART、LPUART、SPI、I2C、I2S、CAN、全速(su)USB等(deng)豐富的(de)通訊外設,內(nei)建AES、CRC、TRNG等(deng)算法模塊(kuai)。


方(fang)案特點(dian)


?支持藍牙、USB、UART等多(duo)種通訊接口的打印(yin)方式


?支持無任務時自動(dong)進入斷電(dian)模式(shi),續航時間更長


?支(zhi)持打(da)印高溫、缺紙和低電量報警


?SPI FLASH存放(fang)字(zi)(zi)庫,支持在線更新字(zi)(zi)庫,可調整字(zi)(zi)體(ti)、大小、粗細等


?支持MCU和BLE芯片固件在線升級


設(she)計(ji)方案



圖2. 基(ji)于ACM32F403熱敏打(da)印機設計(ji)方案框(kuang)圖


功(gong)能介紹(shao)


1.1多接口打印(yin)流程


本(ben)方(fang)案可以(yi)通(tong)過(guo)UART、USB和藍牙接(jie)口接(jie)收(shou)數據,并(bing)通(tong)過(guo)ACM32F403芯片的(de)Timer,GPIO,ADC、SPI等模(mo)塊進行熱敏打(da)印機頭的(de)打(da)印工作。


具體流程如下:


1)通過(guo)UART、USB和(he)藍(lan)牙(ya)接(jie)(jie)口接(jie)(jie)收數據,數據需要通過(guo)GBK碼(ma)的方(fang)式發送(song),并存(cun)儲到芯片內(nei)部(bu);


2)將(jiang)每個字的GBK碼,通(tong)過SPI接口(kou)查(cha)詢到SPI FLASH上字庫中對應的數據,并(bing)傳輸到打印buffer中;


3)芯片通過(guo)Timer來(lai)控(kong)制(zhi)步進電機(ji)(ji)運行的速度(du)和(he)打印(yin)機(ji)(ji)頭加(jia)熱的時間,通過(guo)GPIO來(lai)控(kong)制(zhi)加(jia)熱使能和(he)控(kong)制(zhi)步進電機(ji)(ji)的前(qian)進和(he)后退(tui),ADC來(lai)檢測(ce)打印(yin)機(ji)(ji)溫(wen)度(du),最終完成打印(yin)工(gong)作(zuo)。



圖3. 多接口打印流程


1.2 字(zi)庫(ku)更新流(liu)程(cheng)


本方案內部(bu)firmware實現了(le)一個UART接收數據(ju),SPI下(xia)(xia)載(zai)數據(ju)的系統,采用類似7816 T=1的數據(ju)格式進(jin)行傳(chuan)輸,將字庫的BIN文件下(xia)(xia)載(zai)到SPI FLASH中,以實現字庫的下(xia)(xia)載(zai)和(he)更(geng)新。因(yin)為(wei)片外SPI FLASH大(da)小的原(yuan)因(yin),默認只支持24*24大(da)小的字體打印,如果更(geng)換字體,需要重新下(xia)(xia)載(zai)字庫文件。



圖4. 字庫(ku)下(xia)載流程


本方案支持字庫(ku)的更新,可以調節打印字體(ti)的字體(ti)、大小,粗細等參數。字庫(ku)更新后(hou)需(xu)要修改firmware代(dai)碼(ma),以實現不(bu)同(tong)字體(ti)的打印。



圖5. 字(zi)體(ti)設置(zhi)參數


1.3 字庫調(diao)用流(liu)程


本方案中(zhong)的SPI FLASH中(zhong)能存放字體大小為16*16或(huo)24*24的字庫,并且有(you)完整的配套firmware代(dai)碼。


具體字庫調(diao)用流程(cheng)如下:


1)從UART、USB或BLE接口接收需要打印文字的GBK碼;


2)根(gen)據GBK碼計算出該文(wen)字在字庫中的內(nei)碼;


3)通(tong)過SPI接口(kou)讀取(qu)字(zi)庫中內碼的數據,數據長度根據字(zi)體大小(xiao)來定;


4)將(jiang)讀出的(de)數據傳輸到打印機(ji)頭,完成(cheng)打印。



圖(tu)6. 字(zi)庫調用流程


1.4 數據打印流(liu)程



圖7. 數據打印軟件流程



圖8. 打印機(ji)(ji)芯和步進電機(ji)(ji)原(yuan)理圖


數據打印流程:


1)打印機開機流程;


2)將打印數據通過SPI接口(kou)傳輸到(dao)打印機緩存(cun);


3)判斷(duan)是否是第一(yi)行(xing),如(ru)果是打開電機Timer,并前進一(yi)步;


4)判(pan)斷(duan)是否是最后一行(xing)或者是否缺紙,如果(guo)是進入打印機(ji)關(guan)機(ji)流程(cheng);


5)開(kai)始加(jia)(jia)熱(re),打(da)開(kai)加(jia)(jia)熱(re)Timer,并等待加(jia)(jia)熱(re)完成;


6)循環(huan)2)~5),直(zhi)到打印完畢。


打印機開機流程:


1)將打(da)印機DST(選通脈沖)信號設為(wei)低電(dian)平;


2)將打印機LATCH(數據鎖(suo)存)信號設(she)為高電平;


3)打開熱敏頭邏輯電源;


4)打開(kai)熱(re)敏(min)頭加熱(re)電源;


打(da)印機關機流程:


1)停止加熱Timer;


2)關閉熱(re)(re)敏頭加熱(re)(re)電(dian)源;


3)將打印機DST(選通(tong)脈(mo)沖)信號設(she)為低(di)電平;


4)將打印(yin)機LATCH(數據(ju)鎖存)信號(hao)設為高電平;


5)關閉熱敏頭邏輯電源(yuan)。


1.5 電源控制系(xi)統介紹(shao)



圖9. 電源控制系統介紹


1)供電(dian):系統采用單節鋰電(dian)池4.2V或者USB 5V供電(dian);


2)異常(chang)(chang):當MCU內(nei)部(bu)程序跑飛/死(si)機時,首先可以按下SW1復位(wei)MCU,再(zai)不(bu)行可以按住正常(chang)(chang)開/關(guan)機鍵,再(zai)插入USB線使(shi)MCU復位(wei);


3)開機:系統未通(tong)電(dian)時(shi),按住開/關機鍵,此時(shi)MCU上電(dian),MCU開始從(cong)eFlash啟動(dong),初(chu)始化(hua)(hua)成功后將POWER_ON/OFF信號置高(gao),雙(shuang)(shuang)色燈(deng)中的(de)綠燈(deng)點(dian)亮(liang)(InitPass_常(chang)亮(liang)、內(nei)部鋰(li)電(dian)池(chi)充電(dian)滿_常(chang)亮(liang)),若初(chu)始化(hua)(hua)失敗(bai)或檢測(ce)到異常(chang)/錯(cuo)誤(wu)(比如電(dian)池(chi)電(dian)量低,外設初(chu)始化(hua)(hua)失敗(bai)、通(tong)信不正常(chang)等),將雙(shuang)(shuang)色燈(deng)中的(de)紅燈(deng)點(dian)亮(liang)(Err1_常(chang)亮(liang)、Err2_1s閃(shan)、Err3_快閃(shan));


4)關機(ji):系統通電時,按住開(kai)/關機(ji)鍵,Power_Check引腳會(hui)檢測到一個下降沿,并且(qie)接著會(hui)有持續的低(di)電平,松開(kai)按鍵后,再將電源(yuan)控制(zhi)信號拉(la)低(di);


5)正常關機的順序是:先滅燈(deng),然后斷(duan)(duan)電(dian)機驅動電(dian)源(yuan)(yuan)和外設電(dian)源(yuan)(yuan),再斷(duan)(duan)MCU電(dian)源(yuan)(yuan);


6)PB1為開(kai)/關(guan)機按(an)鍵與系(xi)統(tong)喚(huan)醒(xing)鍵,SW1為系(xi)統(tong)喚(huan)醒(xing)按(an)鍵與復(fu)位(wei)鍵,通(tong)常情況,用(yong)戶(hu)按(an)一(yi)下是要喚(huan)醒(xing)系(xi)統(tong),長按(an)是正常開(kai)關(guan)機;


7)沒有打印任務時,需要關(guan)閉(bi)電(dian)(dian)機(ji)(ji)電(dian)(dian)源和(he)外設電(dian)(dian)源,來節(jie)省鋰(li)電(dian)(dian)池電(dian)(dian)量(liang);所以系(xi)統經過(guo)定時進入待機(ji)(ji)前,MCU關(guan)閉(bi)電(dian)(dian)機(ji)(ji)驅動電(dian)(dian)源/外設電(dian)(dian)源后,進入待機(ji)(ji)。


資源分享


Gitee資源:



ACM32F303對比STM32F103差異說明:



STM32F103標準(zhun)外(wai)設庫SPL移植說明(ACM32F403):



航芯MCU軟(ruan)件HAL庫使用(yong)說(shuo)明(ming)及STM32 API差異說(shuo)明(ming):



如需銷售咨詢,請郵件至: