tag 标签: t3

相关博文
  • 热度 3
    2023-12-12 15:21
    373 次阅读|
    0 个评论
    移植ncurses库 本文使用的ncurses版本为ncurses-5.9.tar.gz 下载地址:https://ftp.gnu.org/gnu/ncurses/ncurses-5.9.tar.gz 1. 将ncurses压缩包拷贝至Linux主机或使用wget命令下载并解压 tar-zxvfncurses-5.9.tar.gz 2. 解压后进入到ncurses-5.9目录下 cdncurses-5.9 3. 在ncurses-5.9目录下创建编译完成后生成文件位置 mkdiroutput cdoutput mkdirarm-linux 4. 生成Makefile文件 ./configure--target=arm-none-linux-gnueabi--prefix=$PWD/output/arm-linux--enable-termcap--with-shared--without-ada l --target表示编译器的前缀,需要根据编译的不同需求进行修改 l --prefix表示编译完成后生成文件的位置 l --nable-termcap表示关键代码使用termcap(terminalcapabilities)数据库 l --with-shared表示动态编译 5. 编译 make 当遇到如下报错时 Makefile:794:recipefortarget'../obj_s/lib_gen.o'failed make :*** Error1 make :Leavingdirectory'.../ncurses-5.9/ncurses' Makefile:109:recipefortarget'all'failed make:*** Error2 需要进入ncurses-5.9/include文件夹,修改curses.tail文件下的如下内容,将注释/*generated*/去掉 externNCURSES_EXPORT(bool)mouse_trafo(int*,int*,bool);/*generated*/ 6. 安装 Makeinstall 7. 安装完成后会在/output/arm-linux目录下生成库文件,我们只需将lib目录下的libncurses.so.5库拷贝至开发板 移植gdb 本文使用的gdb版本为gdb-7.12.tar.gz 下载地址:https://ftp.gnu.org/gnu/gdb/gdb-7.12.tar.gz 1. 将gdb压缩包拷贝至Linux主机或使用wget命令下载并解压 tar-zxvfgdb-7.12.tar.gz 2. 解压后进入到ncurses-5.9目录下 cdgdb-7.12 3. 生成Makefile文件 ./configure-host=arm-none-linux-gnueabiCC=/home/vanxoak/CodeSourcery/Sourcery_G++_Lite/bin/arm-none-linux-gnueabi-gcc--enable-shared--prefix=$PWD/output/arm-linux--disable-werror--without-x--disable-gdbtk--disable-tui--without-included-regex--without-included-gettextLDFLAGS="-L$PWD/../output/arm-linux/lib"CPPFLASS="-I$PWD/../output/arm-linux/include" l --host=arm-none-linux-gnueabi用arm-none-linux-gnueabi编译 l CC为交叉编译器绝对路径 l --enable-shared动态编译 l prefix=“$PWD/output/arm-linux”安装目录 l --disable-werror屏蔽werror报警 l --without-x取消xwindows支持 l --disable-gdbtk取消gdbtk l --disable-tui取消tui界面 l --without-included-gettext去掉用于多语言处理的gettext库 l "LDFLAGS=XXX"指交叉编译完成的ncurse的lib目录路径 l "CPPFLAGS=XXX"指是交叉编译完成的ncurse的include目录路径 4. 编译 make 5. 安装 makeinstall 安装完成后会在.../gdb-7.12/output/arm-linux/bin/目录下生成gdb可执行程序。 移植至HDT3-EVM开发板 1. 将libncurses.so.5库文件拷贝至/usr/lib目录下,若/usr目录下无lib目录可手动创建mkdirlib 2. 将gdb程序拷贝至/bin目录下 ​ 测试调试 1. 编写可执行测试程序,示例hello.c代码如下,该代码执行后会打印HelloWorld 。 #include intmain(intargc,char*argv 如上述代码显示"HelloWorld"即表示hello程序执行完成 (gdb)help Listofclassesofcommands: aliases--Aliasesofothercommands breakpoints--Makingprogramstopatcertainpoints data--Examiningdata files--Specifyingandexaminingfiles internals--Maintenancecommands obscure--Obscurefeatures running--Runningtheprogram stack--Examiningthestack status--Statusinquiries support--Supportfacilities tracepoints--Tracingofprogramexecutionwithoutstoppingtheprogram user-defined--User-definedcommands Type"help"followedbyaclassnameforalistofcommandsinthatclass. Type"helpall"forthelistofallcommands. Type"help"followedbycommandnameforfulldocumentation. Type"aproposword"tosearchforcommandsrelatedto"word". Commandnameabbreviationsareallowedifunambiguous.
  • 热度 9
    2023-3-16 13:31
    472 次阅读|
    0 个评论
    如果你试着在Linux系统里面输入中文,那么将会有一片乱码呈现在你面前,这是因为Linux系统的默认语言是英文。但是如果可以显示中文的话,那么在使用过程中的便利程度一定会大大提升。今天小编就通过飞凌嵌入式的OKA40i-C开发板来为大家演示让Linux系统显示中文的修改方法。 STEP 1 如果之前使用的是全源码编译方式对源码进行编译处理的,就可以直接往下走;如果之前有更改过源码部分,且使用的是单步编译,则需要重新解压一份OKA40i-C开发板的源码,进入该源码的lichee文件夹,执行sudo ./build.sh进行一次全编译,耗时会有点长,需要耐心的等待。 STEP 2 在新的源码全编译的过程中,到之前使用的源码里面做一些准备工作吧;要是更改过程中遇到只读等权限问题,打开的时候加上sudo就好了。 01. 首先在lichee下面找到linux-3.10/.config这个配置文件, 将里面的iso8859-1全部替换成utf8 ,就像下面这样,一共有两处。行前面的“-”表示去掉,“+”表示添加上。 FAT使用的默认输入/输出字符集: -CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" +CONFIG_FAT_DEFAULT_IOCHARSET="utf8" 挂载文件系统时使用的默认NLS -CONFIG_NLS_DEFAULT=" iso8859-1" +CONFIG_NLS_DEFAULT="utf8" 02. out/sun8iw11p1/linux/common/buildroot/target/etc/inputrc 在上方lichee中的文件中添加两行命令: 03. lichee/out/sun8iw11p1/linux/common/buildroot/target/root 然后到上方路径下创建一个.vimrc文件,打开.vimrc文件,在里面添加上三行命令: set fileencodings=utf-8,gb2312,gbk,gb18030 set termencoding=utf-8 set encoding=utf8 STEP 3 现在,新的源码已经全部编译完成了,在新源码的里面找到busybox-1.25.1这个文件夹。进入以下路径: lichee/out/sun8iw11p1/linux/common/buildroot/build/busybox-1.25.1 01. 执行make menuconfig ARCH=arm进入busybox的图形化编辑界面。 Enable locale support (system needs locale for this to work) Support Unicode Use libc routines for Unicode (else uses internal ones) (65533) Character code to substitute unprintable characters with (195102) Range of supported Unicode characters 更改好之后一路Exit退出,最后选择yes保存配置。 02. 然后更改busybox-1.25.1文件夹路径下的文件 libbb / printable_string.c, 搜索 0x7f ,删除以下两行: 将这里更改为 -if (c = 0x7f) +if (c < ' ') 03. 更改libbb/unicode.c文件,先找到这样一段:static char* FAST_FUNC。然后将里面的1022行和1030行进行修改: 将 = ' ' && c < 0x7f) ? c : '?'; 修改为 = ' ') ? c : '?'; 将 if (c = 0x7f) 修改为 if (c < ' ') 修改完成之后,删除.stamp_built文件和.stamp_target_installed文件,返回到lichee文件夹下面,重新进行全编译sudo ./build.sh操作。 在out/sun8iw11p1/linux/common/buildroot/target/bin路径后面会生成一个busybox的可执行文件,将这个叫busybox的可执行文件替换到需要中文源码的相同路径下面—— lichee/out/sun8iw11p1/linux/common/buildroot/target/bin 里面。 STEP 4 最后,在需要中文的那一份源码里面进行内核编译,打包文件系统,打包镜像操作,再将镜像烧录到OKA40i-C开发板里面就可以显示中文了。 sudo ./build.sh -m kernel sudo ./build.sh -m pack_rootfs sudo ./build.sh pack 最后我们来验证一下。可以看到此时已经可以直接进行中文输入了,并且和windows对接的中文文件可以直接显示查看。 结语 Linux系统中文显示的更改其实就是更改内核的字符集和打开busybox的显示封锁,第一次编译好后,以后需要中文的busybox可以直接使用这次的busybox进行替换,节省了很多的工作量。更改完成之后就可以在OKA40i-C开发板的Linux系统上面编辑和查看中文了。
  • 热度 11
    2023-2-16 09:13
    693 次阅读|
    0 个评论
    一. 开源软件MJPG-Streamer 上次介绍了使用FFmpeg将USB摄像头的视频转换为视频流发送给PC机,今天来介绍另一个解决方案MJPG-Streamer。MJPG-Streamer的原理是将USB摄像头采集的图像以JPEG格式发送出去,然后持续更新图片形成一个视频流。 它的优势有两个: 一个是和浏览器的兼容性最好,可以轻松地在浏览器中显示,而无需担心浏览器是否支持Flash或流媒体协议;二是采用JPEG没有前后帧的关联,所以如果出现丢包只影响当前画面,而不会像H.264那样可能连续一段时间的马赛克图像。 当然也有缺点: 它的缺点是JPEG流的压缩效率比较低,比H.264浪费带宽。 二. Libjpeg库的编译 MJPG-Streamer要用到libjpeg,所以首先需要编译libjpeg。首先访问 http://www.ijg.org/ 下载源代码,我使用的是最新的9e版本。将源代码解压到jpeg-9e目录后,在该命令下执行configure命令进行配置: 1 ./configure --host=ARM-linux-gnueabihf --prefix=/mnt/boaled/jpeg-9e/_install/ 其中的host是指明所使用的编译器,prefix是指定编译后文件安装的目录。 然后执行下面的命令: 1 make 2 make install 命令执行完毕,就会在prefix所指定的目录下生成4个目录,其中include目录包括所需要的头文件,而lib目录下包括库文件。这些在后面会用到。 编译后需要把libjpeg.so.9.5.0拷贝到开发板的 /usr/lib 目录下,并建立一个指向该文件的软连接libjpeg.so.9。 另外,开发板原来带有libjpeg.so.8.0.2这个版本。如果不希望安装更新版本,也可以在 http://www.ijg.org/files/ 下载和板子对应的历史版本。 三. MJPG-Streamer的编译 MJPG-Streamer有两个主要版本(建议在PC打开链接): 1. http://sourceforge.net/projects/mjpg-streamer/ 这个是原始版本,不过原作者已经放弃更新了。 2. https://github.com/jacksonliam/mjpg-streamer/ 这个是后续更新的版本。 要在飞凌嵌入式OKA40i-C开发板上使用,只能使用sourceforge那个版本。因为github的版本虽然更新,但是它对内核的版本有要求,至少3.18以上。 OKA40i-C开发板提供的内核版本是3.10,无法正确处理新版本的某些V4L2消息。另外,github版本采用CMake进行编译,后面所介绍的编译方法也不适用。 进入下方地址: https://sourceforge.net/p/mjpg-streamer/code/HEAD/tree/ 点右上的“Download Snapshot”下载最新版的mjpg-streamer-code-182。这里可以看到两个mjpg-streamer目录。一般使用mjpg-streamer-experimental这个版本,它支持的功能更多一些。 在编译之前,需要先修改plugins/input_uvc目录下的makefile文件,在其中加入如下两行: 这两行的作用就是编译时能够找到我们前面生成的libjpeg库。如果想修改MJPG-Streamer的插件设置,也可以修改mjpg-streamer-experimental目录下的makefile: 在本次测试中用不到其他插件,所以就采用默认配置。 然后在命令行执行下面的命令就可以编译了。 1 make CC=arm-linux-gnueabihf-gcc 编译成功后把mjpg_streamer和几个so文件都拷贝到开发板上并正确设置好权限就可以运行了。 四. 测试结果 在input_testpicture插件中带有一幅默认图片,即使你手上没有摄像头,也可以使用该插件测试MJPG-Streamer的功能。 在开发板的终端输入如下命令: 1 ./mjpg_streamer -i "input_testpicture.so" 如果使用USB摄像头,需要使用input_uvc.so插件,在开发板的终端输入命令,结果如下图所示: 1 ./mjpg_streamer -i "input_uvc.so -r 800x600" -o "output_http.so"
  • 热度 4
    2022-8-8 15:13
    1095 次阅读|
    0 个评论
    新技能丨FETA40i-C核心板实现高清模拟摄像头720P方案 飞凌嵌入式 搭载 全志A40i处理器 的 FETA40i - C核心板 ,可支持4路模拟摄像头PAL(720x576)/NTSC(720x480)。而实际使用过程中,PAL或者NTSC格式的分辨率无法满足实际需求,经常有客户提出,是否可支持高清模拟摄像头?高清摄像头分辨率能否支持720P或者1080P?针对此需求,小编整理编辑了FET A40i -C 核心板Linux /Android 系统支持720P高清模拟摄像头解决思路。 一、 方案 评估 根据A40i CPU手册描述,CSI0支持最大到1080p@30fps,支持8-bitBT656接口。 根据上述信息,硬件选择RN6752 芯片 ,支持2路CVBS转BT656高清视频解码芯片,输入为2路不同时输入的CVBS,输出为BT656格式,自动检测NTSC/PAL输入,720P和1080P解码,其中ADC采样率高达72MHz,可实现最佳色彩和图像瞬态响应。 二、参考原理图 VINA与VINB为不同时输入,默认采用VINA输入。内部有寄存器可控制通道切换。 三、驱动移植 ■将对应驱动放入如下路径:drivers/media/platform/sunxi-vfe/device/rn6752.c ■修改Makefile文件obj-y +=rn6752.o ■驱动编译 ■修改sys_config1024x600.fex中csi0对应csi0_dev0_mname,csi0_dev0_twi_addr等参数 ■编译内核并重新打包镜像,烧写 驱动移植时,需要注意: 1.摄像头所用 引脚 的复用需要去掉。 2.CSI接口采用BT656,输入格式为YUV422,输出为NV21/NV12。 3.RN6752采用V4L2_MBUS_FMT_UYVY8_2X8格式。 4.RN6752 采用的晶振为72MHz。 四、Linux和Android上显示效果1、Linux上 在Linux上可采用默认出厂的Cameratest进行测试。 预览效果如下: 2、Android上 在Android上可采用 Multiple Camera 进行测试。 预览效果如下: 拓展阅读 目前Android上行车记录仪APP只支持video4对应的模拟摄像头,其他3路未做支持。可采用Multiple Camera预览4路模拟摄像头图像。具体如图: 因手头摄像头有限,测试采用2个摄像头:(默认支持NTSC格式的模拟摄像头) 总结 最后总结一下FETA40i-C核心板支持HD摄像头方案: ■目前调试了RN6752 的支持。其它解码芯片方案,可考虑项目定制。 ■目前只调试了720P@30fps 的支持。 ■ Multiple Camera为简单测试DEMO,旨在验证摄像头通路可预览,不做其它支持。 ■其中RN6752驱动与配置,以及Multiple Camera测试程序,后续如果客户如有需要此方案可联系销售工程师。
  • 热度 5
    2022-7-20 09:48
    1187 次阅读|
    0 个评论
    一、 A40i / T3 简介 A40i是 全志 在智能 工控 领域的一款高性能、超高效处理器。A40i采用 ARM Cortex - A7 内核,运行频率高达1.2GHz,配备Mali400 MP2图形处理器及多种 显示接口 ,并具有丰富的 行业应用 接口,主要应用于各种具有视频输出的工控行业。A40i配套使用的PMIC支持外部电源、USB、锂电池三种供电方式,并集成了供 电路 径选择和锂电池充放电管理功能,极大简化了终端产品的设计难度。 T3是全志的一款四核 车载 导航处理器,功能及 引脚 与A40i完全兼容。T3为汽车级 芯片 ,能适应更加严酷的工作环境。 二、 FETA40i /T3- C核心板 介绍 三、FETA40i/T3-C核心板引脚定义 2、FETA40i/T3-C核心板引脚功能说明 注1: Num——核心板连接器引脚序号; Ball——CPU引脚球号 GPIO ——CPU引脚通用I/O口序号 Vol ——引脚信号 电平 注2: 信号名称——核心板连接器网络名称,信号右上角角标含义如下图: 角标序号 角标含义 引脚可配置为中断使用 引脚默认电平为1.8V 引脚为CPU启动相关引脚,不推荐作为IO使用 专用引脚,不能作为IO使用 引脚描述——核心板引脚信号名称描述 默认功能——核心板所有引脚功能均按下表的“默认功能”作了规定,请勿修改,否则可能和出厂驱动冲突。如有疑问,请及时联系我们的销售或技术支持。 注3:“默认功能”一栏中标明“底板勿用”的引脚是核心板使用的引脚,底板设计时不可使用
相关资源
  • 所需E币: 0
    时间: 2020-9-1 23:02
    大小: 544.57KB
    上传者: Goodluck2020
    CC2530定时器T3的使用.
  • 所需E币: 0
    时间: 2020-9-1 23:11
    大小: 609.66KB
    上传者: Goodluck2020
    CC2530基础实验代码教程-CC2530定时器T3的使用.rar
  • 所需E币: 0
    时间: 2020-8-24 22:25
    大小: 545.91KB
    上传者: samewell
    CC2530定时器T3的使用.pdf
  • 所需E币: 3
    时间: 2019-12-28 23:32
    大小: 87KB
    上传者: rdg1993
    ThisapplicationnoteshowshowtoconnectourT3/E3lineinterfaceunits(LIUs)inclear-channel,transMUX,andmap/demapapplicationswiththeAgereUltramappers™……
  • 所需E币: 4
    时间: 2019-12-24 18:23
    大小: 82.96KB
    上传者: givh79_163.com
    摘要:本应用笔记将描述什么是需要设计一个T3/E3/STS-1光纤铜光电转换器。这种装置将铜信号,并把它转换到光纤链路传输的光信号。一双转换器将超越的T3/E3/STS-1信号,其铜的规范透明。这使得,例如,T3/E3/STS-1信号的使用超出了建筑物内长度的限制。Maxim/Dallas>AppNotes>COMMUNICATIONSCIRCUITSFIBER-OPTICCIRCUITSTELECOMKeywords:T3,E3,STS-1,fiberopticextension,mediaconverter,fiber,fibreDec12,2003APPLICATIONNOTE2931HFTA-09.0:T3/E3/STS-1FiberOpticExtensionThisapplicationnotewilldescribewhatisneededtodesignaT3/E3/STS-1FibertoCopperMediaConverter.Suchadevicewilltakethecoppersignalandconvertittoanopticalsignaltobetransportedoverafiberlink.ApairofconverterswillextendtheT3/E3/STS-1signalbeyonditscopperspecification,transparently.Thisallows,forexample,theT3/E3/STS-1signaltobeutilizedbeyondtheintrabuildinglengthlimitation.IntroductionTypically,T3/E3/STS-1signalsarerunovershortdistances,butsome……
  • 所需E币: 3
    时间: 2019-12-28 23:59
    大小: 265KB
    上传者: wsu_w_hotmail.com
    ThisapplicationnoteprovidesanexampleofhowtoconfigureasingleT3/E3/HSSI/VDSLportforunchannelizedoperationontheDS31256inbridgemode.Itincludesacodingexampleforeasyadaptationtoend-userapplications.……
  • 所需E币: 3
    时间: 2019-12-28 23:59
    大小: 35KB
    上传者: 978461154_qq
    ApplicationNote3344showshowtoconfigurethehardwareconnectionsthatcanbeutilizedwithvariousDallasSemiconductordevices.ItincludestheHDLCController,Framer,MUXandLineInterfaceUnit.……