NiosII的網(wǎng)絡(luò)傳真機(jī)圖像傳輸系統(tǒng)設(shè)計(jì)
3 網(wǎng)絡(luò)傳真圖像傳輸系統(tǒng)軟硬件實(shí)現(xiàn)
系統(tǒng)硬件使用Altera Cyclone EPlC20開(kāi)發(fā)板,CPU為NiosII。開(kāi)發(fā)板含有SMSC LAN91C111-NE MAC/PHY芯片,用于實(shí)現(xiàn)網(wǎng)絡(luò)中的MAC/ PHY功能。操作系統(tǒng)采用μC/OS-II,TCP/IP協(xié)議棧使用移植到μC/OS-II中的Niche TCP/IP協(xié)議棧。由于μC/OS-II是多任務(wù)實(shí)時(shí)內(nèi)核,故圖像傳輸系統(tǒng)設(shè)計(jì)了4個(gè)任務(wù)(Task)。任務(wù)之間的通信使用消息隊(duì)列MailStorageQ、PrintStorageQ,如圖4所示。
Create Tiff Task:該任務(wù)負(fù)責(zé)創(chuàng)建Tiff文件,調(diào)用構(gòu)造Tiff文件的函數(shù)創(chuàng)建Tiff文件,調(diào)用成功后將Tiff文件的首地址通過(guò)消息隊(duì)列MailStorageQ傳遞給發(fā)送網(wǎng)絡(luò)傳真的任務(wù)SmtpClientTask。
SmtpClientTask:該任務(wù)負(fù)責(zé)以SMTP協(xié)議的命令形式與網(wǎng)絡(luò)傳真服務(wù)器進(jìn)行通信,命令有EHLO、AUTH、RCPT、MAIL、DATA、QUIT等。傳真文件以郵件附件的形式進(jìn)行發(fā)送。一封待發(fā)送的網(wǎng)絡(luò)傳真格式郵件(簡(jiǎn)稱“郵件”)定義如下:郵件頭,接著是一個(gè)空行,然后是郵件體(即正文),正文之后是附件。郵件頭主要包括Date、From、To、Subject、Message-ID、Mime-Version、Content-Type等。正文是協(xié)議規(guī)定的標(biāo)簽:值格式的文本行,主要包含有賬號(hào)密碼、發(fā)送參數(shù)、發(fā)送目標(biāo)號(hào)碼列表信息等。附件是傳真數(shù)據(jù)文件(Tiff文件)的base64編碼字符。正文和附件在郵件中被分為兩個(gè)Boundary。
Pop3ClientTask:該任務(wù)負(fù)責(zé)以POP3協(xié)議的命令形式與網(wǎng)絡(luò)傳真服務(wù)器進(jìn)行通信,進(jìn)行網(wǎng)絡(luò)傳真的收取。NetfaxprintTask:該任務(wù)負(fù)責(zé)分析郵件,解析郵件頭,提取出附件(Attachment),對(duì)附件進(jìn)行base64解碼,然后對(duì)Tiff文件進(jìn)行解析,定位出MH編碼數(shù)據(jù),交由MH編碼和打印控制電路進(jìn)行Tiff文件(傳真)打印。
4 測(cè)試與調(diào)試
測(cè)試環(huán)境以亞森公司(AsiaTelecom)的網(wǎng)絡(luò)傳真服務(wù)器為傳真服務(wù)器,Altera Cyclone EP1C20開(kāi)發(fā)板為網(wǎng)絡(luò)傳真終端,開(kāi)發(fā)板連接到Internet。
發(fā)送的Tiff文件(網(wǎng)絡(luò)傳真)樣張如圖5所示。接收的Tiff文件(網(wǎng)絡(luò)傳真)也可以成功解碼和打印輸出。
該網(wǎng)絡(luò)傳真圖像傳輸系統(tǒng)成功解決了網(wǎng)絡(luò)傳真的圖像組織與傳輸、解碼以及打印的技術(shù)難題,對(duì)開(kāi)發(fā)網(wǎng)絡(luò)傳真機(jī)具有重要意義。
評(píng)論