经过一段时间的应用,感觉应广双核单片机在这些方面可以给大家一些提示。
1.
对C的支持相对有限,目前最主要的是不支持乘法(*)和除法(/),如果是想做一些运算的处理需要程序员自己编写相应程序,这样就对程序员的编程技能有一定要求。不过这只是编译器的不足,我相信假以时日应广的技术人员会在编译器中增加对乘法和除法操作符的支持。
(补充说明:现在应广的IDE工具已经支持乘除法,可以由IDE工具直接生成乘除法的汇编代码)
补充一句,台湾MCU厂商我个人感觉HOLTEK的C编译器最强,真的做得不错,就是MCU价格贵了点。
IDE自动生成的字节相乘代码:
BYTE mul_y1, mul_x1;
WORD mul_t2;
void Byte_Mul_Byte (void)
{ // mul_t2 = mul_x1 * mul_y1
// 16 = 8 * 8
mul_t2$1 = 0;
BYTE cnt;
cnt = 8;
do
{
mul_x1 >>= 1;
if (CF)
{
mul_t2 += (mul_y1 << 8);
}
mul_t2 >>>= 1;
} while (--cnt);
}
2.
汇编和MINI_C都不区分大小写,会对习惯C程序风格的程序员产生小小的干扰。
3.
当电压低于3.3V时,对内部RC的影响会非常之大,我们实测结果是当电压为2.65V时,内部RC的频率已经变慢到3.3V的一半,需要注意的是这个测试和系统时钟的设定有一定关联。
我咨询应广台湾技术人员他们要求工作电压不得低于2.5V,实测结果是在2.5V以下芯片其实还能工作,就是速度变得很慢,我用少量芯片测试当电压降到2.0时芯片还在正常工作。(对于量产产品建议还是按应广产品手册要求设计供电电压范围)
4.
ADC对采样电压点的输入阻抗要求偏高(芯片数据手册中已经提到此点),我们通过两个电阻分压测量电池电压,系统时钟为8M,ADC时钟为系统时钟16分频,如果用51k/39k,ADC结果不对,改为5.1k/3.9k才能得到正确结果。这个特性对需要高速AD测量并且是电池供电的设计有不良影响,如不做特殊处理待机状态下分压电阻会有几百微安得电流损耗。
5.
还是编译器的问题,目前MINI_C只支持无符号数,如果需要处理有符号数,还得需要程序员自己想拌饭。
6.
应广的MCU在待机电流方面做得还不错,我们实测结果是3.3V为0.65uA,2.5V为0.3uA。
用户1511250 2012-9-5 21:55
正打算学习应广单片机,谢谢指点!
用户1588142 2011-9-25 12:19
用户1394981 2011-3-17 21:02
用户1578291 2011-3-16 09:41
好东西啊
用户1119123 2011-3-16 09:27
用户1566687 2010-8-24 15:02
看看学习拉
用户1108569 2010-7-15 11:09
用户1277994 2010-7-15 08:24
另外借博主的评论做个推荐,今年秋季的IIC-China深圳会展中心,将会有多个关于LED照明和显示的技术、市场、供应链方面的主题演讲和免费技术应用课程。欢迎各位工程师报名参加。初定的议程如下:
9月6日上午 深圳会展中心4号馆
10点开始
1. 半导体器件在LED照明应用中的市场机遇/LED产业链发展趋势
2. 打破LED大规模商业应用的瓶颈
下午的技术应用课程:
1. LED直背光与侧背光的设计比较
2. LED照明设计挑战及方案
这些主题都是关于LED很好的技术与行业动态的活动,诚邀各位参与报名。
报名请点击下面的链接:
http://www.iic-china.com/HOME.HTM
用户1277994 2010-7-15 08:24