1.为什么还有这么多人选择AVR单片机?
鄙人在大学时候接触到了51单片机,作为一个初学者,C51是一款相当不错的选择,对于我来说,他从内部硬件到软件有着属于自己的一套完整的按位操作的系统。这样对于新手可以更加简单粗暴的进行定义和操作。其次新手不需要较大的运算量,太高的工作频率,但是却配有丰富的外围module。满足初学者小小的技能炫耀足矣,极佳的入门经典。
话说回来,当你入门以后,想要针对性的做出一些稳定性的小东西进行提高,你会发现C51已经不足以满足你的小野心,但是学习其他高级的MCU你又信心不足,这时候AVR单片机会是个不错的选择。相较于51,他有很多自己的优势,突出的优势比如速度更快、片上资源更丰富,IO驱动能力更强,功耗更低!!这还不够让你心动吗???哦,别忘了,我们最关注的同样简单易学,费用低廉。
2.为什么要使用ICC作为开发环境呢?
首先,ICC 工程管理器能直接产生可以直接使用的INTEL HEX 格式文件。INTEL HEX 格式文件可被大多数的编程器所支持用于下载程序到芯片中去。。。。。算了,还是说一个比较实在的好处吧。
大家都知道,写一个函数,终究免不了对于函数的初始化过程,这是繁琐而又必须的过程。他要求你对寄存器比较熟悉和了解,但是如今我们在寻求高效率的情况下,只把心思放在了创作出属于自己的流畅算法。ICC内部投你所好,可以通过简单的设置完成你想要的初始化效果。
来走一遍,运行Tools>>Application Builder 建立工程属性设置。如下图
将Targat CPU 改为M128(根据自己要求哦),因为我使用的芯片是mega128
将Xtal speed 改为8.0000 ,我们使用晶振频率为8Mhz。
切换到Ports选项,这里更简单,上边是方向下边是值。点一点搞定。
后边还有定时器啊、中断啊、串口啊、ADC啊,都可以这么玩!!
然后File>>Save as 保存到你刚才第一步建立的工程的文件夹中接可以了哦,切记是.C结尾哈
最后右键将你的源文件和头文件>>add to project。
你将看到如下效果 工程建立完成的效果,恩恩非常棒!!
3.最关键一步,和UE又有什么关系呢?
差点跑题,如果你使用ICC开发一段时间以后,随着你把工程做的越来越多,文件定义原来越多,头脑也变得原来越乱,蓦然回首间,你发现出现了BUG,更悲催的是他还不好找。因为用ICC捋清楚函数关系太困难了,他无法直接跳转,没有上下括号的配对提示,头疼的很,怎么办? 有办法,轮到UltraEdit出马了,你可以把你的工程转移到UE里边进行查看,编译。
下边还是上图说话吧!~
首先,把ICC里边的工程运行一遍,一定要运行无误的(可以先进行部分删减,保证无误),然后把这句话复制下来
找到你的工程文件夹,找到.SRC文件(ASM源文件),右击使用UE打开,会出现下边的图示。
然后右击便可以打开每一个文件。大家可以放手在里边进行定义和修改了。
修改完毕,需要进行编译,这时候关键技术来了,上边复制下来的那一句话派上用场了,在UE里边按F9会出来一个页面如下
然后会出现一个命令输出框,他的意义相当于一般工程的OUTPUT输出,显示提醒和错误。当对工程进行编译后,可以按Ctrl+F9进行编译,仍然会出现命令输出框。这样修改好以后可以直接用编译下载器将程序下载到CPU,硬件调试。
OK,使用UE去调试AVR程序的操作就是这样了,大家可以认真去体会他的奥妙喽
上一篇:单片机MQTT实现推送简单使用
下一篇:AVR调试和下载官方平台的建立
推荐阅读最新更新时间:2024-11-19 22:32
设计资源 培训 开发板 精华推荐
- 使用 Analog Devices 的 LT1171CQ#PBF 的参考设计
- LT1071 负输入/负输出反激式转换器的典型应用
- 在线扬尘监测系统
- 使用 BittWare 的 XCKU095 的参考设计
- 具有增强型 LED 驱动器和接近感应的 SX8636 低功耗电容式按钮触摸控制器(8 个传感器)的典型应用
- ADR280 1.2V 超低功耗、高 PSRR 缓冲输出电压基准的典型应用
- DC989B-A,用于 LTC3872 的演示板,LTC3872 是一款单输出升压转换器 LTC3872。输入电压从 3.0V 到 4.5V 无输出降额
- 使用 Analog Devices 的 LT1072HVIT 的参考设计
- TA8275H 最大功率 41W BTL x 4Ch 音频功率的典型应用
- 使用 Analog Devices 的 LTC2656IUFD-H12#PBF 的参考设计