我制作了 userdef.c 来添加一些函数 otsu_Threshold 和 onBinarOtzu。函数库头文件是pxa_lib.h,我输入了这样的函数
void otzu_Threshold(unsigned char* orgImg, unsigned char* outImg, int height, int width);
无效 onBinarOtzu(unsigned char* m_InImg);
在文件夹“演示”中的 camera.c 中,我输入了
'#include <pxa_lib.h>
……
……
onBinarOtzu(vidbuf->ycbcr.y);
生成文件
CC=/usr/local/arm-linux-4.1.1/bin/arm-linux-gcc
CFLAGS+= -mcpu=iwmmxt -mtune=iwmmxt -mabi=aapcs-linux \
-Iinclude/ -DDEBUG_BUILD
LFLAGS+=-Llib/ -lpxadev
.PHONY:全部编译 install-host install-target clean clean-local \
卸载主机卸载目标
全部:编译安装主机安装目标
编译:lib/libpxadev.so bin/camera
lib/libpxadev.so:驱动程序/camera.o驱动程序/overlay2.o驱动程序/userdef.o
$(CC) $(CFLAGS) -shared -W1,-soname,libpxadev.so -o lib/libpxadev.so $^
bin/相机:demo/camera.c
$(CC) $(CFLAGS) $(LFLAGS) -o $@ $^
安装主机:
安装目标:
清洁:清洁本地卸载主机卸载目标
清洁本地:
-rm -f lib/* 驱动程序/*.o
-rm -f bin/*
卸载主机:
-rm -f $(PXA_HOST_LIB_DIR)/libpxadev.so
卸载目标:
$(SUDO) rm -f $(PXA_TARGET_BIN_DIR)/相机
$(SUDO) rm -f $(PXA_TARGET_LIB_DIR)/libpxadev.so
我制作了二进制文件并通过minicom,zmodem在机器人中传输。
但是,发生了错误。
[root@WENDERS root]# [root@WENDERS root]# ./camera
PXA_CAMERA:choose MT.... sensor
PXA_CAMERA:choose MT.. sensor
camera_config : streamparm.type = 1
count = 3
width=320, height =240
./camera:符号查找错误:./camera:未定义符号:onBinarOtzu
我该怎么办...
附言。对不起。我英语不好...