VFP 愛用者社區 首頁 VFP 愛用者社區
本討論區為 Visual Foxpro 愛用者經驗交流的地方, 請多多利用"搜尋"的功能, 先查看看有無前例可循, 如果還有不懂的再發問. 部份主題有附加檔案, 須先註冊成為社區居民才可以下載.
 
 常見問題常見問題   搜尋搜尋   會員列表會員列表   會員群組會員群組   會員註冊會員註冊 
 個人資料個人資料   登入檢查您的私人訊息登入檢查您的私人訊息   登入登入

請問一個錢櫃的問題

 
發表新主題   回覆主題    VFP 愛用者社區 首頁 -> VFP 討論區
上一篇主題 :: 下一篇主題  
發表人 內容
guku1101



註冊時間: 2006-07-03
文章: 84
來自: 高雄

第 1 樓

發表發表於: 星期三 十月 15, 2008 3:54 pm    文章主題: 請問一個錢櫃的問題 引言回覆

我們公司用一台pos主機~有內鍵的錢櫃接頭~說明書上寫要送一個訊號到一個指定的位址 0x4B8 請問要如何送信號到這個位址呢~請會的前輩們教我一下~謝謝
_________________
BB
回頂端
檢視會員個人資料 發送私人訊息 雅虎訊息通 MSN Messenger
lincm5712



註冊時間: 2008-09-12
文章: 6


第 2 樓

發表發表於: 星期四 十月 16, 2008 11:15 am    文章主題: 引言回覆

打開錢櫃很簡單,
只要對COM PORT隨便送出一個字元它就開了!
回頂端
檢視會員個人資料 發送私人訊息 發送電子郵件
guku1101



註冊時間: 2006-07-03
文章: 84
來自: 高雄

第 3 樓

發表發表於: 星期五 十月 17, 2008 8:38 am    文章主題: 引言回覆

問題他是內建的(像電話接頭)不是COM PORT 的才傷腦筋
_________________
BB
回頂端
檢視會員個人資料 發送私人訊息 雅虎訊息通 MSN Messenger
JEFFWANG



註冊時間: 2004-03-03
文章: 40


第 4 樓

發表發表於: 星期五 十月 17, 2008 9:06 am    文章主題: 引言回覆

那就要用轉接頭,一般都會有附才對,
如果是整組買的,看看整個組合就可以了,
一般錢櫃大都是利用com port的,除非接線被有心人...
不然在買過線材就可以了。
回頂端
檢視會員個人資料 發送私人訊息
lincm5712



註冊時間: 2008-09-12
文章: 6


第 5 樓

發表發表於: 星期五 十月 17, 2008 11:12 am    文章主題: 引言回覆

像電話接頭可能是CASIO的或是接發票機的,
ON ERROR RETURN
IF THISFORM.CASHDRAW.PORTOPEN=.F.
THISFORM.CASHDRAW.PORTOPEN=.T.
ENDIF
IF VINV = 2 && 有發票機
THISFORM.CASHDRAW.OUTPUT=CHR(27)+"p0"+CHR(50)+CHR(250) ELSE
THISFORM.CASHDRAW.OUTPUT=CHR(71)+CHR(87)
ENDIF
IF THISFORM.CASHDRAW.PORTOPEN=.T.
THISFORM.CASHDRAW.PORTOPEN=.F.
ENDIF
回頂端
檢視會員個人資料 發送私人訊息 發送電子郵件
syntech



註冊時間: 2003-05-16
文章: 4211
來自: Taipei,Taiwan

第 6 樓

發表發表於: 星期五 十月 17, 2008 11:25 am    文章主題: 引言回覆

還以為要告知有關"錢櫃"KTV有好康的.
_________________
如果公司有下列困擾:
1. 找不到便宜,快速,簡易的 生產排程軟體
2. 不知道如何快速排定 採購計劃
3. 成本抓不準,自己算比軟體算有用
4. 想學習系統規劃,想找系統架構的顧問

請聯絡我們,也許我們幫得上忙
回頂端
檢視會員個人資料 發送私人訊息 發送電子郵件 AIM Address
green



註冊時間: 2003-09-19
文章: 136


第 7 樓

發表發表於: 星期五 十月 17, 2008 2:28 pm    文章主題: 引言回覆

= = 我也是耶~~~
回頂端
檢視會員個人資料 發送私人訊息
guku1101



註冊時間: 2006-07-03
文章: 84
來自: 高雄

第 8 樓

發表發表於: 星期五 十月 17, 2008 9:06 pm    文章主題: 引言回覆

啊~大家都那~~~麼喜歡唱歌喔
_________________
BB
回頂端
檢視會員個人資料 發送私人訊息 雅虎訊息通 MSN Messenger
spfrk



註冊時間: 2004-11-08
文章: 161


第 9 樓

發表發表於: 星期六 十月 25, 2008 11:48 am    文章主題: 引言回覆

一般寫高階語言的人, 對於 I/O 都是很陌生的, 從 LINCM5712 就可以得知, 還扯到 RS232, 聽我說分明.
在 NT 核心的作業系統中, 是不准直接動到 I/O , 必須將繞一大圈才能使用, 因此很複雜, 在這裡無法全部
說明, 在此http://logix4u.net/Legacy_Ports/Parallel_Port/Inpout32.dll_for_Windows_98/2000/NT/XP.html
網頁有詳細的說明, 而且有 inpout32.dll 可免費下載, 這一個free的網站, 沒有版權的問題. 以下為如何使用
inpout32.dll 來開前跪的範例, 如有關於pos 的疑問, 可來信 spfrk.lin@msa.hinnet.net 凌r.
*///
Declare integer Inp32 in inpout32.dll AS SysDirInp Integer
Declare Out32 in inpout32.dll AS SysDirOut Integer, Integer

DrwAdrs = "4B8"
SysDirOut(Num16s(DrwAdrs), 255) && 開啟錢櫃, 通常是 255, 參考手冊
delay(25) && 延遲, 讓磁力線圈動作 250 ms
SysDirOut(Num16s(DrwAdrs), 0) && 關閉, 一定要關閉, 否則會將錢櫃燒毀
retu .Y.

*///
*/ 延滯時間 1/100 秒
*///
func delay
para xtime
local vtime

do while xtime > 0
vtime = seconds()
do while .T.
if abs(seconds() - vtime) > 0.01
exit
else
loop
endif
enddo
xtime = xtime - 1
enddo
retu .T.

*///
*/ 16 進制
*///
func Num16s
para vnum, vRetuLen
local vcnt, vstr, v1, v2, vlen

if type("vRetuLen") <> 'N'
vRetuLen = 0
endif

if type("vnum") = 'N' && 數值轉字串
vstr = ''
vcnt = 1
do while vcnt <= 8
v1 = vnum % (16^vcnt)
v2 = v1
if vcnt > 1
v1 = v1 % (16^vcnt)
if v1 <> 0
v1 = v1 / (16^(vcnt-1))
endif

endif
if v1 >= 0 .and. v1 < 10
vstr = str(v1,1) + vstr
else
vstr = chr(64+(v1-9)) + vstr
endif
vnum = vnum - v2
if vnum < 1
exit
endif
vcnt = vcnt + 1
enddo
if len(vstr) = 0
vstr = '0'
endif
if vRetuLen > 0 .and. len(vstr) < vRetuLen
retu repl('0', vRetuLen - len(vstr)) + vstr
endif
retu vstr
endif
vnum = alltrim(vnum)
vnum = upper(vnum)
vlen = Len(vnum)
if vlen = 1
vasc = asc(vnum)
if vasc > 47 .and. vasc < 58
retu vasc
endif
vasc = vasc - 55
if vasc > -1
retu vasc
endif
retu 0
endif

vcnt = vlen
vStrCnt = 1
v1 = 0
do while vcnt > 0
vasc = asc(substr(vnum,vStrCnt,1))
if !((vasc > 47 .and. vasc < 5Cool .or. (vasc > 64 .and. vasc < 91))
exit
endif

if vcnt = 1
if vasc > 47 .and. vasc < 58
v1 = v1 + vasc - 48
else
v1 = v1 + vasc - 55
endif
else
if vasc > 47 .and. vasc < 58
v1 = v1 + ((vasc-4Cool * (16^(vcnt-1)))
else
v1 = v1 + ((vasc-55) * (16^(vcnt-1)))
endif
endif
vcnt = vcnt - 1
vStrCnt = vStrCnt + 1
enddo
retu v1
回頂端
檢視會員個人資料 發送私人訊息
lincm5712



註冊時間: 2008-09-12
文章: 6


第 10 樓

發表發表於: 星期日 十月 26, 2008 1:06 am    文章主題: 引言回覆

十幾年前要開錢櫃真的需要寫一大串程式,
現在只要用MSCOMM.OCX幾行就OK了!
只要加上ON ERROR RETURN 錢櫃就不會燒掉,
每個字元力道不同要試一試,切記不能用DELAY
接 COMM PORT 的是 12V,接發票機的是 24V,
履試不爽!至少目前遇到的錢櫃都能輕易的開啟!
回頂端
檢視會員個人資料 發送私人訊息 發送電子郵件
spfrk



註冊時間: 2004-11-08
文章: 161


第 11 樓

發表發表於: 星期日 十月 26, 2008 9:49 am    文章主題: 引言回覆

由POS主機來開錢櫃是沒有辦法中的辦法, 當使用的場合沒有發票機或出單機時, 由POS 主機來開錢櫃就是必然
的, 也許會有人說那就用RS232的錢櫃, 但這會增加成本, 更何況很多 USER 會用分離式POS, 現在新生產的 PC
或 筆電大多將 RS232介面拿掉, 又要去買 USB轉 RS232, 這又是一筆費用, 身為一個POS系統供應商是要多方面考慮的.
回頂端
檢視會員個人資料 發送私人訊息
guku1101



註冊時間: 2006-07-03
文章: 84
來自: 高雄

第 12 樓

發表發表於: 星期四 十一月 13, 2008 2:39 pm    文章主題: 引言回覆

spfrk 大大的程式可以用~真是太感謝謝了~謝謝
_________________
BB
回頂端
檢視會員個人資料 發送私人訊息 雅虎訊息通 MSN Messenger
chuander



註冊時間: 2003-08-25
文章: 16


第 13 樓

發表發表於: 星期三 八月 25, 2010 5:32 pm    文章主題: 引言回覆

感謝分享!
回頂端
檢視會員個人資料 發送私人訊息
kalok



註冊時間: 2010-08-26
文章: 284


第 14 樓

發表發表於: 星期四 八月 26, 2010 3:44 am    文章主題: 引言回覆

spfrk 是錢櫃高手, 我也有用錢櫃, 只連到printer, 用vfp送出一個control code即可, 請問 spfrk 如何檢查錢櫃有沒有關上?
回頂端
檢視會員個人資料 發送私人訊息
從之前的文章開始顯示:   
發表新主題   回覆主題    VFP 愛用者社區 首頁 -> VFP 討論區 所有的時間均為 台北時間 (GMT + 8 小時)
1頁(共1頁)

 
前往:  
無法 在這個版面發表文章
無法 在這個版面回覆文章
無法 在這個版面編輯文章
無法 在這個版面刪除文章
無法 在這個版面進行投票
無法 在這個版面附加檔案
無法 在這個版面下載檔案


Powered by phpBB © 2001, 2005 phpBB Group
正體中文語系由 phpbb-tw 維護製作