AG1F1是雅格羅技公司推出的一款針對嵌入式應(yīng)用的現(xiàn)場可編程微控制器。AG1F1內(nèi)嵌了高性能8051微控制器硬核,包含1K可編程邏輯單元(logic cells),而且擁有穩(wěn)定的存儲器模塊和鎖相環(huán)時鐘控制模塊。通過雅格羅技的可編程SoC設(shè)計平臺,可以有效地提升嵌入式系統(tǒng)設(shè)計的性能,降低成本。本文描述了如何基于AG1F1,完成微型熱敏打印機控制系統(tǒng)的設(shè)計。通過利用1K可編程邏輯單元,有效減少了處理器的負(fù)荷,提高了系統(tǒng)性能。
AG1F1主要的內(nèi)部資源:
- 增強型8051,兼容標(biāo)準(zhǔn)51指令,開發(fā)方便,包含128K數(shù)據(jù)RAM,32K程序RAM
- 1K可編程邏輯單元,可以根據(jù)需要,靈活設(shè)計成各種功能
- 1 PLL 單元,可實現(xiàn)倍頻,分頻,相移
- 4塊可配置9K bit 雙端口RAM
如圖1 所示,典型的微型打印控制系統(tǒng)數(shù)據(jù)處理流程如下:來自并口/串口/USB的打印控制命令和數(shù)據(jù)進入輸入緩沖區(qū),處理器對分析這些命令和數(shù)據(jù),并從字庫中取出字符相應(yīng)的點陣數(shù)據(jù),這些點陣圖像數(shù)據(jù)按行/頁送入打印緩沖,再按串行模式送至打印頭。

除此之外,還需要控制的對象包括走紙電機,切紙電機,和紙張位置傳感器等。
針對微型打印機的控制需求,以AG1F1器件為主控芯片,設(shè)計了打印驅(qū)動板,主要包含的硬件資源是:
- M25P40, 4Mbit 串行flash, 用作字庫存儲
- HY62U8100B, 128Kx8bit CMOS SRAM,用作片外打印頁緩沖
- Parallel port
- Serial port (RS-232)
- Feed motor & autocutter motor 驅(qū)動電路
- 狀態(tài)指示和配置開關(guān)
充分利用1K可編程邏輯單元帶來的靈活性,系統(tǒng)硬件設(shè)計框圖如圖2。

所有的硬件模塊影射到8051的外部存儲空間,主要包括了控制寄存器,SRAM DMA, SPI接口,內(nèi)部打印緩沖(使用片內(nèi)雙端口RAM),打印頭控制等功能模塊。
各個模塊完成的主要功能:
- 控制寄存器:
- 8051通過控制寄存器,控制和監(jiān)視其它所有模塊。
- SPI接口:
- SPI接口控制,用于串行flash的讀寫
- SRAM DMA:
- 該模塊自動從外部SRAM的打印緩沖搬運數(shù)據(jù)到內(nèi)部存儲器
- 內(nèi)部打印緩沖:
- 設(shè)計成PING-PONG操作,打印頭控制模塊讀取打印數(shù)據(jù)的同時,SRAM DMA可繼續(xù)搬運數(shù)據(jù)。
- 打印頭控制模塊:
- 控制串行數(shù)據(jù)向打印頭的傳輸。
通過這些擴充的功能模塊,大大減小了處理器的運算負(fù)擔(dān),可以用8位的處理器完成32位處理器才能完成的任務(wù),而且沒有系統(tǒng)性能的損失,這也正是現(xiàn)場可編程微控制器的優(yōu)勢所在。 |