论坛风格切换切换到宽版
  • 4409阅读
  • 10回复

刚装了个Portable WinAVR [复制链接]

上一主题 下一主题
离线danju
 
发帖
415
只看楼主 倒序阅读 0楼 发表于: 2009-09-16
其实也不算安装,就是解压了而已,共120m左右,pn感觉还不错,有makefile生成工具,就是不知道仿真是怎样的,先把工具环境熟悉起来
离线danju
发帖
415
只看该作者 1楼 发表于: 2009-09-16
找了个demo编译了一下,还比较顺利,编译没有出问题。

这个portable winavr不需要安装,可以解压到u盘里面带着走,插上计算机就能用,一直很喜欢这类“绿色”软件。

软件带有编辑器pn,makefile生成工具mfile,这两项都试了一下。还带有调试工具insight,下载工具avrdude,这两项网上的资料不多,好像很少人用。
离线danju
发帖
415
只看该作者 2楼 发表于: 2009-09-17
感觉winavr带的调试工具simulavr+insight不太好用,网上教程也没找到,目前还没能调试仿真,也可能是我自己没搞懂
离线radiolee
发帖
6050
只看该作者 3楼 发表于: 2009-09-17
pn很牛,问题是用pn做ide的人更牛
离线danju
发帖
415
只看该作者 4楼 发表于: 2009-09-18
嗯,是的,pn很牛

用simulavr+insight没有进展,选的器件是atmega168,调试是总是退出远程连接,只好退到gdb模式,文件调入,list等都可以,但调试时总是出现address out of bounds,换了器件atmega8在gdb命令行下可以运行基本的调试命令,很奇怪的现象
离线danju
发帖
415
只看该作者 5楼 发表于: 2009-09-19
在command shell中打入simulavr -l命令后:

currently available device types:

at90s1200
at90s2313
at90s4414
at90s8515
atmega8
atmega16
atmega103
atmega128
at43usb351
at43usb353
at43usb355
at43usb320
at43usb324
at43usb325
at43usb326

居然没有atmega168?
离线danju
发帖
415
只看该作者 6楼 发表于: 2009-09-20
simulavr不支持atmega168,找了个叫做vmlab的仿真工具,只有4.2m,试着跑了一个从pb2交替输出高低电平、去点亮一个led灯的程序,似乎是支持atmega168的。这个工具比较新奇,用法和一般的仿真调试器不太一样,还得熟悉一下
离线danju
发帖
415
只看该作者 7楼 发表于: 2009-09-22
vmlab支持atmega168芯片,但是似乎不支持 函数指针 的类型定义,比较郁闷,只能把函数一个一个的都写死
离线danju
发帖
415
只看该作者 8楼 发表于: 2009-09-26
vmlab可以仿真atmega168,对于外设字符型lcd显示,只支持内置的字符,不能显示用户自定义字符,自定义的字符有的不显示,有的显示小方块
离线albert
发帖
4807
只看该作者 9楼 发表于: 2009-09-26
windude还不错,主要我在makefile里面用它,但和avrstudio驱动打假很不爽.
vmlab看上去不错哦!
偶尔用下insight,gdb实在是菜的,以前也就跟过几次cordump文件.用insight调试,感觉单步速度不如avrstudio快,只好多用几个断点.我是用jtag+avarice硬件调试的
离线danju
发帖
415
只看该作者 10楼 发表于: 2009-09-26
目前我没有硬件仿真工具,所以找了vmlab做软件仿真,其实我觉得如果能用熟windude和makefile,对于转arm会比较容易,楼上您一定是比较熟悉gnu工具链了,我不太熟悉,开始想用simulavr+insight的,但是simulavr支持的芯片少,好像这个simulavr已经比较长时间没有更新了,是无奈之下找了这个vmlab,是freeware

vmlab比较直观,有一些常用的外设模块可以选用做仿真,熟悉了几天,感觉也是有一些bug的,要仔细体会,并到网上找一些解决方法,目前用下来感觉还可以

最满意的是有常用输入模块可以选用,做仿真会很方便,如电压输入、按钮、串口、eeprom等,里面有一个nrz信号发生器,比较神奇。我正好有一个编码旋钮,是根据两个引脚上的信号跳变情况来判断正向旋转、或是反向旋转的,这个vmlab可以用面板上的按键来产生互相关联的信号,加到相关的引脚上,这样调试的时候鼠标点一个按键就是正转,点另外一个按键就是反转,用于改变程序内部的参数,使得仿真调试非常方便