0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

基于上海航芯ACM32F403熱敏打印機(jī)設(shè)計方案

科技綠洲 ? 來源:上海航芯 ? 作者:上海航芯 ? 2022-04-08 16:46 ? 次閱讀

隨著電子信息化、自動化程度提高,條碼識別技術(shù)的發(fā)展,熱敏打印機(jī)的應(yīng)用范圍也在不斷擴(kuò)大,已從傳統(tǒng)的辦公和家庭傳真文檔,快速向商業(yè)零售、工業(yè)制造業(yè)、交通運(yùn)輸業(yè)、物流、金融、彩票、醫(yī)療、教育等新興專業(yè)應(yīng)用領(lǐng)域拓展。

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

打印原理

熱敏打印機(jī)的原理是,在介質(zhì)基底上(通常是紙)覆上一層熱敏材料,將熱敏材料加熱一段時間后變成深色(一般是黑色,也有藍(lán)色)。這種化學(xué)反應(yīng)是在一定的溫度下進(jìn)行的。高溫會加速這種化學(xué)反應(yīng)。當(dāng)溫度低于60℃時,熱敏材料需要經(jīng)過相當(dāng)長,甚至長達(dá)幾年的時間才能變成深色;而當(dāng)溫度為200℃時,這種反應(yīng)會在幾微秒內(nèi)完成。

熱敏打印機(jī)有選擇地在熱敏紙的確定位置上加熱,由此就產(chǎn)生了相應(yīng)的圖形。加熱是由與熱敏材料相接觸的打印頭上的一個小電子加熱器提供的。加熱器排成方點或條的形式由打印機(jī)進(jìn)行邏輯控制,當(dāng)被驅(qū)動時,就在熱敏紙上產(chǎn)生一個與加熱元素相應(yīng)的圖形。控制加熱元素的同一邏輯電路,同時也控制著進(jìn)紙,因而能在整個標(biāo)簽或紙張上印出圖形。

pYYBAGJP9TeAUbLhAADQPR7bMQI481.png

圖1. 熱敏打印機(jī)的原理

使用芯片

本文描述的熱敏打印機(jī)方案,是基于上海航芯ACM32F403系列的MCU進(jìn)行設(shè)計。

ACM32F403芯片采用高性能內(nèi)核,支持Cortex-M33和Cortex-M4F指令集。芯片內(nèi)核支持一整套DSP指令用于數(shù)字信號處理,支持單精度FPU處理浮點數(shù)據(jù),同時還支持Memory Protection Unit(MPU)用于提升應(yīng)用的安全性。

ACM32F403系列芯片最高工作頻率可達(dá)180MHz,內(nèi)嵌數(shù)學(xué)硬件加速,內(nèi)置最大512KB的eFlash和最大192KB SRAM。芯片集成了一個12位多通道2M sps高精度ADC、一個12位2通道的DAC、多達(dá)3路運(yùn)放、2路比較器,集成了1個高級定時器,6個通用16位定時器,1個通用32位定時器,2個基本16位定時器,1個系統(tǒng)看門狗,1個獨立看門狗,一個低功耗的實時鐘(RTC),內(nèi)置多路UART、LPUART、SPI、I2C、I2S、CAN、全速USB等豐富的通訊外設(shè),內(nèi)建AES、CRC、TRNG等算法模塊。

方案特點

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

?支持無任務(wù)時自動進(jìn)入斷電模式,續(xù)航時間更長

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

?SPI FLASH存放字庫,支持在線更新字庫,可調(diào)整字體、大小、粗細(xì)等

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

設(shè)計方案

pYYBAGJP9UaAJMShAADf48Pl8Rg387.png

圖2. 基于ACM32F403熱敏打印機(jī)設(shè)計方案框圖

功能介紹

1.1多接口打印流程

本方案可以通過UART、USB和藍(lán)牙接口接收數(shù)據(jù),并通過ACM32F403芯片的Timer,GPIO,ADC、SPI等模塊進(jìn)行熱敏打印機(jī)頭的打印工作。

具體流程如下:

1)通過UART、USB和藍(lán)牙接口接收數(shù)據(jù),數(shù)據(jù)需要通過GBK碼的方式發(fā)送,并存儲到芯片內(nèi)部;

2)將每個字的GBK碼,通過SPI接口查詢到SPI FLASH上字庫中對應(yīng)的數(shù)據(jù),并傳輸?shù)酱蛴uffer中;

3)芯片通過Timer來控制步進(jìn)電機(jī)運(yùn)行的速度和打印機(jī)頭加熱的時間,通過GPIO來控制加熱使能和控制步進(jìn)電機(jī)的前進(jìn)和后退,ADC來檢測打印機(jī)溫度,最終完成打印工作。

pYYBAGJP9ViAKb9eAABKcYsUdXU424.png

圖3. 多接口打印流程

1.2 字庫更新流程

本方案內(nèi)部firmware實現(xiàn)了一個UART接收數(shù)據(jù),SPI下載數(shù)據(jù)的系統(tǒng),采用類似7816 T=1的數(shù)據(jù)格式進(jìn)行傳輸,將字庫的BIN文件下載到SPI FLASH中,以實現(xiàn)字庫的下載和更新。因為片外SPI FLASH大小的原因,默認(rèn)只支持24*24大小的字體打印,如果更換字體,需要重新下載字庫文件。

pYYBAGJP9WKAe4bZAAAhCFO8Hos774.png

圖4. 字庫下載流程

本方案支持字庫的更新,可以調(diào)節(jié)打印字體的字體、大小,粗細(xì)等參數(shù)。字庫更新后需要修改firmware代碼,以實現(xiàn)不同字體的打印。

pYYBAGJP9WyAbGu8AAB_j02EvIw317.png

圖5. 字體設(shè)置參數(shù)

1.3 字庫調(diào)用流程

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

具體字庫調(diào)用流程如下:

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

2)根據(jù)GBK碼計算出該文字在字庫中的內(nèi)碼;

3)通過SPI接口讀取字庫中內(nèi)碼的數(shù)據(jù),數(shù)據(jù)長度根據(jù)字體大小來定;

4)將讀出的數(shù)據(jù)傳輸?shù)酱蛴C(jī)頭,完成打印。

poYBAGJP9XaAKNO9AABmQrGfycI405.png

圖6. 字庫調(diào)用流程

1.4 數(shù)據(jù)打印流程

pYYBAGJP9YCAEQePAADRtoezwTY877.png

圖7. 數(shù)據(jù)打印軟件流程

pYYBAGJP9YuATjinAAGlRHE6_wE939.png

圖8. 打印機(jī)芯和步進(jìn)電機(jī)原理圖

數(shù)據(jù)打印流程:

1)打印機(jī)開機(jī)流程;

2)將打印數(shù)據(jù)通過SPI接口傳輸?shù)酱蛴C(jī)緩存;

3)判斷是否是第一行,如果是打開電機(jī)Timer,并前進(jìn)一步;

4)判斷是否是最后一行或者是否缺紙,如果是進(jìn)入打印機(jī)關(guān)機(jī)流程;

5)開始加熱,打開加熱Timer,并等待加熱完成;

6)循環(huán)2)~5),直到打印完畢。

打印機(jī)開機(jī)流程:

1)將打印機(jī)DST(選通脈沖)信號設(shè)為低電平;

2)將打印機(jī)LATCH(數(shù)據(jù)鎖存)信號設(shè)為高電平;

3)打開熱敏頭邏輯電源

4)打開熱敏頭加熱電源;

打印機(jī)關(guān)機(jī)流程:

1)停止加熱Timer;

2)關(guān)閉熱敏頭加熱電源;

3)將打印機(jī)DST(選通脈沖)信號設(shè)為低電平;

4)將打印機(jī)LATCH(數(shù)據(jù)鎖存)信號設(shè)為高電平;

5)關(guān)閉熱敏頭邏輯電源。

1.5 電源控制系統(tǒng)介紹

poYBAGJP9b2AEdywAAEGK0EDLoo156.png

圖9. 電源控制系統(tǒng)介紹

1)供電:系統(tǒng)采用單節(jié)鋰電池4.2V或者USB 5V供電;

2)異常:當(dāng)MCU內(nèi)部程序跑飛/死機(jī)時,首先可以按下SW1復(fù)位MCU,再不行可以按住正常開/關(guān)機(jī)鍵,再插入USB線使MCU復(fù)位;

3)開機(jī):系統(tǒng)未通電時,按住開/關(guān)機(jī)鍵,此時MCU上電,MCU開始從eFlash啟動,初始化成功后將POWER_ON/OFF信號置高,雙色燈中的綠燈點亮(InitPass_常亮、內(nèi)部鋰電池充電滿_常亮),若初始化失敗或檢測到異常/錯誤(比如電池電量低,外設(shè)初始化失敗、通信不正常等),將雙色燈中的紅燈點亮(Err1_常亮、Err2_1s閃、Err3_快閃);

4)關(guān)機(jī):系統(tǒng)通電時,按住開/關(guān)機(jī)鍵,Power_Check引腳會檢測到一個下降沿,并且接著會有持續(xù)的低電平,松開按鍵后,再將電源控制信號拉低;

5)正常關(guān)機(jī)的順序是:先滅燈,然后斷電機(jī)驅(qū)動電源和外設(shè)電源,再斷MCU電源;

6)PB1為開/關(guān)機(jī)按鍵與系統(tǒng)喚醒鍵,SW1為系統(tǒng)喚醒按鍵與復(fù)位鍵,通常情況,用戶按一下是要喚醒系統(tǒng),長按是正常開關(guān)機(jī);

7)沒有打印任務(wù)時,需要關(guān)閉電機(jī)電源和外設(shè)電源,來節(jié)省鋰電池電量;所以系統(tǒng)經(jīng)過定時進(jìn)入待機(jī)前,MCU關(guān)閉電機(jī)驅(qū)動電源/外設(shè)電源后,進(jìn)入待機(jī)。

審核編輯:彭菁
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 鋰電池
    +關(guān)注

    關(guān)注

    259

    文章

    7922

    瀏覽量

    167270
  • 熱敏打印機(jī)
    +關(guān)注

    關(guān)注

    1

    文章

    45

    瀏覽量

    12039
  • 上海航芯
    +關(guān)注

    關(guān)注

    1

    文章

    37

    瀏覽量

    3795
收藏 人收藏

    評論

    相關(guān)推薦

    基于上海航ACM32F403熱敏打印機(jī)設(shè)計方案

    ACM32F403芯片采用高性能內(nèi)核,支持Cortex-M33和Cortex-M4F指令集。芯片內(nèi)核支持一整套DSP指令用于數(shù)字信號處理,支持單精度FPU處理浮點數(shù)據(jù),同時還支持Memory Protection Unit(MPU)用于提升應(yīng)用的安全性。
    發(fā)表于 04-08 20:30 ?1504次閱讀
    基于<b class='flag-5'>上海航</b><b class='flag-5'>芯</b><b class='flag-5'>ACM32F403</b>的<b class='flag-5'>熱敏</b><b class='flag-5'>打印機(jī)設(shè)計方案</b>

    求條碼打印機(jī)開發(fā)方案|條碼打印機(jī)設(shè)計方案

    尋找條碼打印機(jī)設(shè)計方案這方面開發(fā)經(jīng)驗的工程師合作!有成熟方案最好。同時也歡迎有POS設(shè)備、條碼設(shè)備方面開發(fā)經(jīng)驗的工程師發(fā)郵件給我商談看有無合作機(jī)會。對此我們將嚴(yán)守保密,如有意向者請發(fā)郵件給我,我將及時回復(fù):gzpcb@vip.qq.com謝謝
    發(fā)表于 06-03 11:13

    上海航ACM32F403開發(fā)板首發(fā)試用】-開箱報告

    非常開心有機(jī)會參加電子發(fā)燒友論壇組織的上海航ACM32F403開發(fā)板試用活動。非常幸運(yùn)的獲得了上海航
    發(fā)表于 11-14 13:47

    上海航ACM32F403開發(fā)板首發(fā)試用】--高級定時器

    本次試用的上海航ACM32F403開發(fā)板,板載一款ACM32F403RET7 MCU。該系列MCU具有非常豐富片上外設(shè),并且具有較高的系統(tǒng)頻率180MHz,ARMv8-M 架構(gòu)同時支
    發(fā)表于 11-14 13:54

    如何將U盤程序從STM32F103移植到ACM32F403上呢

    中,調(diào)用Read_Memory();來實現(xiàn)的。Read_Memory();函數(shù)內(nèi)每次傳輸64字節(jié)數(shù)據(jù)。ACM32F403代碼移植要點本文基于上海航官方USB例程進(jìn)行移植,移植后的程序結(jié)構(gòu)如下圖所示
    發(fā)表于 11-22 16:13

    上海航ACM32F403開發(fā)板首發(fā)試用】上海航ACM32F403開發(fā)板試用--高級定時器

    本次試用的上海航ACM32F403開發(fā)板,板載一款ACM32F403RET7 MCU。該系列MCU具有非常豐富片上外設(shè),并且具有較高的系統(tǒng)頻率180MHz,ARMv8-M 架構(gòu)同時支
    發(fā)表于 12-02 17:41

    上海航ACM32F403開發(fā)板首發(fā)試用】UART2使用

    本次試用的上海航ACM32F403[開發(fā)板]板載一款ACM32F403RET7 MCU。該系列MCU具有非常豐富片上外設(shè),并且具有較高的系統(tǒng)頻率180MHz,[ARM]v8-M 架構(gòu)
    發(fā)表于 12-12 17:16

    什么是熱敏打印機(jī)

    什么是熱敏打印機(jī) 熱敏打印機(jī)圖片 熱敏打印機(jī)的原理是,在淡色材料上(通
    發(fā)表于 10-13 09:19 ?5450次閱讀

    上海航ACM32F403系列芯片的簡單介紹

    上海航 ACM32F403系列芯片最高工作頻率可達(dá)180MHZ,內(nèi)嵌數(shù)學(xué)硬件加速,內(nèi)置最大512KB的eFlash和最大192KB SRAM。芯片集成了一個12位多通道2M sps高精度ADC,一
    發(fā)表于 04-02 09:26 ?559次閱讀
    <b class='flag-5'>上海航</b><b class='flag-5'>芯</b><b class='flag-5'>ACM32F403</b>系列芯片的簡單介紹

    方案分享 | 熱敏打印機(jī)方案

    應(yīng)用領(lǐng)域拓展。 本文將為大家介紹基于上海航ACM32F403熱敏打印機(jī)設(shè)計方案。 打印原理
    的頭像 發(fā)表于 04-08 17:29 ?3578次閱讀
    航<b class='flag-5'>芯</b><b class='flag-5'>方案</b>分享 | <b class='flag-5'>熱敏</b><b class='flag-5'>打印機(jī)</b><b class='flag-5'>方案</b>

    基于上海航主控芯片ACM32F403應(yīng)用方案介紹

    本文將介紹T-BOX的主要功能,以及基于上海航主控芯片ACM32F403、安全芯片S6A/S6B的T-BOX應(yīng)用方案。
    的頭像 發(fā)表于 05-12 10:09 ?2414次閱讀
    基于<b class='flag-5'>上海航</b><b class='flag-5'>芯</b>主控芯片<b class='flag-5'>ACM32F403</b>應(yīng)用<b class='flag-5'>方案</b>介紹

    基于上海航主控芯片ACM32F403的智能網(wǎng)聯(lián)汽車終端T-BOX應(yīng)用方案

    ,必須嚴(yán)格保證其數(shù)據(jù)傳輸?shù)陌踩?、加密性、?zhǔn)確性,才能促進(jìn)車載終端的進(jìn)一步發(fā)展。 本文將介紹T-BOX的主要功能,以及基于上海航主控芯片ACM32F403、安全芯片S6A/S6B的T-BOX應(yīng)用
    的頭像 發(fā)表于 05-12 19:14 ?4470次閱讀

    上海航基于ACM32 MCU電動滑板車驅(qū)動方案

    上海航電動滑板車方案采用ACM32F403作為主控芯片,主要電力來源為24V鋰電池組,通過電源轉(zhuǎn)換,為控制系統(tǒng)供電,同時也提供MOS的門級驅(qū)動。通過HALL傳感器獲取輪轂電機(jī)的位置信
    發(fā)表于 05-11 12:24 ?346次閱讀
    <b class='flag-5'>上海航</b><b class='flag-5'>芯</b>基于<b class='flag-5'>ACM</b>32 MCU電動滑板車驅(qū)動<b class='flag-5'>方案</b>

    熱敏打印機(jī)的設(shè)計實現(xiàn)

    熱敏打印機(jī)是一種通過對熱敏紙加熱之后顯示文字或圖案的打印機(jī)。
    的頭像 發(fā)表于 07-21 14:32 ?3405次閱讀
    <b class='flag-5'>熱敏</b><b class='flag-5'>打印機(jī)</b>的設(shè)計實現(xiàn)

    上海航 AC_Motor_F403_PMSMsensor

    上海航AC_Motor_F403_PMSMsensor
    發(fā)表于 09-01 15:37 ?17次下載