Python调用dll
python语言简洁、易读、扩展性强,用师兄的话说:python糙、快、猛!目前在国外用Python做科学计算的研究机构日益增多,一些知名大学已经采用Python教授程序设计课程。
调用dll过程非常简洁和方便:
from ctypes import*
dll = CDLL("Name.dll") #目标动态链接库Name.dll需放在.py文件所在目录下。
完成调用,即可使用dll中的函数。
初次使用python,完成调用研华PCM3362(PC104)自带的GPIO动态链接库,实现主板GPIO输出高低电平信号:
from ctypes import*
dll = CDLL("Susi.dll")
#调用完成,接下来调用所需函数
dll.SusiDllInit()
a = 0x0 #调节变量a值,即可控制GPIO输出
dll.SusiIOAvailable()
dll.SusiIOSetDirectionMulti(0xff,a)
dll.SusiIOWriteMultiEx(0xff,0x0)
print dll.SusiIOAvailable()
ps: python定义变量时,无需定义变量类型;语句结尾无需分号。这在C语言中是严格要求的。此外python还有很多特色,陆续挖掘。
勘误:研华GPIO的dll中SusiIOSetDirectionMult(int,*int)有一个指针变量,而python是没有指针的概念的,因此修改a的值后,程序发生错误。修改为:
from ctypes import*
dll = CDLL("Susi.dll")
#调用完成,接下来调用所需函数
dll.SusiDllInit()
a = c_int(0x0) #调节变量a值,即可控制GPIO输出
dll.SusiIOAvailable()
dll.SusiIOSetDirectionMulti(0xff,byref(a))
dll.SusiIOWriteMultiEx(0xff,0x0)
本内容试读结束,登录后可阅读更多
下载后可阅读完整内容,剩余1页未读,立即下载