打印
[NUC120]

基于MDK的ARM-GCC开发环境建立及新唐M0的HID类设备的C++开发

[复制链接]
6187|24
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
缥缈九哥|  楼主 | 2013-1-15 14:29 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 缥缈九哥 于 2013-1-15 19:56 编辑

基于MDK的ARM-GCC开发环境建立及新唐M0的HID类设备的C++开发


一,下载安装测试arm-none-eabi-gcc编译工具链

1,查看arm-none-eabi-gcc编译工具版本
        打开网页:https://sourcery.mentor.com/GNUT ... db0be6eb3fb4a618248
        有关详细的工具手册。
        
2,下载arm-none-eabi-gcc编译工具链
        打开网页:https://sourcery.mentor.com/GNUToolchain/release2322
        下载文件:arm-2012.09-63-arm-none-eabi-i686-mingw32.tar.bz2
        详细连接:https://sourcery.mentor.com/GNUT ... 686-mingw32.tar.bz2

3,安装arm-none-eabi-gcc编译工具链
        把arm-2012.09-63-arm-none-eabi-i686-mingw32.tar.bz2解压到目录:C:\Sourcery\
        或者下载:arm-2012.09-63-arm-none-eabi.exe并且安装(详细连接:https://sourcery.mentor.com/GNUT ... 3-arm-none-eabi.exe
        
4,配置系统环境变量
        右击“我的电脑”->“属性”->“高级”->“环境变量”->“系统变量”选择“Path”后点击“编辑”出现“编辑系统变量”
        后在“变量值”后增加“;C:\Sourcery\arm-2012.09\bin;C:\Sourcery\arm-2012.09\arm-none-eabi\bin”后连续按三次“确定”。
        
4,测试arm-none-eabi-gcc编译工具链
        在开始菜单中打开“运行”,执行cmd.exe,然后在里面执行命令:arm-none-eabi-gcc -v
        然后查看版本是不是:gcc version 4.7.2 (Sourcery CodeBench Lite 2012.09-63)

二,建立MDK环境

1,在“D:\works\9G-CM0\HID\prj”下新建MDK空工程“hid.uvproj”,并且在“prj”下建立“obj”和“lst”文件夹,
在“D:\works\9G-CM0\HID”下建立“inc”和“src”目录;

2,点开“project->manage”下的“Components,Environment and Books”,中间的一页“Folders/Extensions”,
勾选“Use GCC”,并且“GNU-Tool-Prefix”用“arm-none-eabi-”,“GNU-Tool folder”用“C:\Sourcery\arm-2012.09”

3,配置工程“Options”,obj文件放到“prj\obj”,lst文件放到“prj\lst”,在“User”的编译结束
后执行“arm-none-eabi-size !L.elf”来生成的ELF目标码的大小提示;

4,在“CC”页面勾选“Compile Thumb Code”,“Optimiation”用“Level 2 (speed)”,“Warning”用“Level 1”,
在“Misc Controls”用“-pipe -ffunction-sections -fdata-sections -fshort-wchar -gstrict-dwarf -finline-limit=100000000”

5,在“Linker”页面的选择不用系统库及启动文件,连接脚本用“.\nuc122_usb.ld”,“Misc Control” 用:
“-Wl,--relax -Wl,--gc-sections -Wl,-z -Wl,max-page-size=0”

6,然后在工程树中的“Target1”下面创建文件组“Configuration”“C++ Source”“C Source”和“Document”
右击“C++ Source”修改它的“Options”->“CC”的“Include Paths”用“..\inc”,而“Misc Controls”为:
“-std=c++11 -fno-rtti -fno-exceptions -Wno-pmf-conversions”

7,需要下载整个工程源码的可以与我联系。

三,测试HID通信

1,打开“Bus Hound 6.01”软件,选择“Devices”页面,勾选上“Auto select hot plugged devices”,然后把HID工程编译下载到目标板
        NUC123-TINY后运行,听到电脑“冬叮”一声,会自动选择上要监测的“(37)USB人体学输入设备”和“(38)HID-compliant device”;

2,把“(38)HID-compliant device”前的勾去掉,双击“(37)USB人体学输入设备”出现命令发送窗口,选择到“USB”页,点选端点中的
        “interput Out”,“data length”填写“64”,再在下面的“Hex Bytes”中填入64个字节的“55”;

3,在“Bus Hound 6.01”的“Capture”页面的右下角点击上“Run”,再到刚才的“USB”命令页面上面的“Run”按钮,就可以把64个
        BYTE的0x55发送给HID从设备;
        
4,在“Bus Hound 6.01”的“Capture”页面的数据窗口,你就能看到USB发送了64个0x55并且接收到64个0xaa。测试正确。完毕。

--感谢lee老师(j.y.lee@yeah.net)的指导及帮助


基于MDK的ARM-GCC开发环境建立及新唐M0的HID类设备的C++开发.rar

2.09 KB

相关帖子

沙发
缥缈九哥|  楼主 | 2013-1-15 14:35 | 只看该作者
顶起。

使用特权

评论回复
板凳
vvinggth204| | 2013-1-15 14:44 | 只看该作者
九哥玩的都是高科技啊.....膜拜

使用特权

评论回复
地板
缥缈九哥|  楼主 | 2013-1-15 14:48 | 只看该作者
是李老师教我做的。代码也是他的。我只是整理测试一下写出来。成熟的代码征得他同意再公开 。

使用特权

评论回复
5
乡村男孩| | 2013-1-15 14:51 | 只看该作者
感谢9G。。

使用特权

评论回复
6
哒哒哒的马达| | 2013-1-15 14:54 | 只看该作者
报道  报道 mark

使用特权

评论回复
7
fsk000| | 2013-1-15 14:57 | 只看该作者
mark一下

使用特权

评论回复
8
wjsjdeng| | 2013-1-15 15:11 | 只看该作者
不出,mark一下,以后有需要再来照着弄

使用特权

评论回复
9
wjsjdeng| | 2013-1-15 15:12 | 只看该作者
搞错了,,是不错,mark一下,以后有需要再来照着弄

使用特权

评论回复
10
songzm| | 2013-1-15 16:17 | 只看该作者
支持九哥,顶一个,mark!!

使用特权

评论回复
11
xukaiming| | 2013-1-15 16:41 | 只看该作者
Lee老师,9G都很务实啊

使用特权

评论回复
12
1638574407| | 2013-1-16 12:34 | 只看该作者

使用特权

评论回复
13
缥缈九哥|  楼主 | 2013-1-22 12:31 | 只看该作者
谢谢大家 的支持。

使用特权

评论回复
14
缥缈九哥|  楼主 | 2013-3-5 15:15 | 只看该作者
很不错的笔记 ,希望 对大家有用。

使用特权

评论回复
15
犯错的小毛驴| | 2013-3-6 15:48 | 只看该作者
好好学习

使用特权

评论回复
16
1656a3375| | 2013-3-7 22:20 | 只看该作者
支持九哥!向九哥学习!

使用特权

评论回复
17
缥缈九哥|  楼主 | 2013-3-8 23:38 | 只看该作者
我也要向大家 学习。

使用特权

评论回复
18
缥缈九哥|  楼主 | 2013-4-29 15:04 | 只看该作者
顶起

使用特权

评论回复
19
缥缈九哥|  楼主 | 2013-5-22 07:12 | 只看该作者
好久没有顶起了,

使用特权

评论回复
20
abin0415| | 2013-5-22 20:55 | 只看该作者
顶九哥

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:童时不懂世事艰,笑谈学成锦衣还。岁月无声已先过,男儿有泪空自弹。    莫待沾霜愁上发,须嬴吐气喜开颜。拼搏半年誓如愿,不到长城心不甘。

67

主题

1868

帖子

271

粉丝