[ARM]TI(原流明)  LM3S9B92 注意的一些事情 作者 gdpiao 日期 2010-9-25 12:31:00

最近申请了2个9B92的样品,画板测试使用,感受如下:

1.硬件上跟8000 6000系列有一定的区别,比如网络端需要一个1%的电阻,把原来的VCC,GND都换 了新的GPIO

2.软件上,有更新

2.1  C1版本有补丁,出厂前就打上了,位置0-0x1000,因此用户的程序需要从0x1000出开始。C3则不需要如此。

2.2 GPIO的特殊功能需要新的函数来启动,比如原来UART2的程序不能使用,而UART0的却可以,因为UART2默认是GPIO,而UART0则默认是UART所以才可以使用。

 

 

[个人感想]打开尘封的记忆 作者 gdpiao 日期 2010-9-25 12:30:00

以下为分割线

----------------------------------------------------------------------------------------------------------------------------------------

[ARM]学习AT91RM9200-USART 作者 gdpiao 日期 2008-11-5 22:32:00

之前想用HJTAG来调试,未曾调通,只好改用Ulink2来调试了。

Keil里有个demo叫做Blinky,控制LED闪烁的,还好弄。于是想尽量用keil来调试所有的功能部件,然后再去搞Linux下面的编程。GPIO好了,那下一步自然是USART了。

阅读了AT91RM9200的DataSheet,觉得跟LPC的有些差别。

配置USART主要的是一个BaudRate,还有就是IO的转换(GPIO->USARIO),以下是部分初始化代码:

     AT91F_US1_CfgPIO();
     AT91F_US1_CfgPMC();


……
[8位单片机]STC RD+ 扩展总线 作者 gdpiao 日期 2008-9-12 16:25:00

有个朋友用STC 54RD+ 使用的时候扩展了总线,把一个IC 卡管理芯片挂在总线上了,对总线操作的时候,发现没问题。怎么个没问题发呢,就是对总线上的寄存器进行读写,结果发现读出来的跟写进去的一样,但是就是驱动不了。有点意思。

后来寻思,啥情况呢?莫非电路有问题?但是根据datasheet上的指引,电路是没问题的。再看看54RD+ 的说明,才发现,确实有点不同。对于RD+系列,因为他内部扩展了1k的ram,正是挂在总线上的,占据0x0000 - 0x0400 。如果没使用到总线那相安无事。如果使用了总线,并且XBYTE[a] a 是在Ram的范围内,则指向内部扩展的ram,除非使用指令对AUXR进行设置。

有鉴于此,把地址改变,改在0x0400之外,外设运行正常。


……
[ARM]LM3S 的bootloader 作者 gdpiao 日期 2008-9-5 23:16:00

LM3S没有像 NXP那些ARM一样带有Bootloader,在批量生产的时候可以使用上层的软件对程序进行加密。有点繁琐。

根据一些朋友提供的建议,可以自己做一个bootloader然后把Jtag口配置城GPIO,可以防止别人读出。Luminary也提供demo,之前试过却是不行。

前段时间弄了重新编译了,程序可以跑起来了。使用Luminary提供的PC程序,也可以烧写 。注意几点:

1.生成的是BIN文件,需要在编译器里面设置一个转换命令

2.开始的地址需要保留给bootloader

本来还想编译一个NetLoader的,经过一番配置却是编译不通过,暂时放下,有时间再研究下。


……
[ARM]Mifare 作者 gdpiao 日期 2008-9-5 23:12:00

 最近在玩Mifare卡,感觉有点意思,第一次搞很多不懂,网上资料多为并口方式控制,而我则采用了SPI模式。

遇到几个问题:

1.上电不起振

2.SPI的PageAddress 如何定义?如何去设置?

3.天线对读卡距离的影响

 

前2个在朋友不断的帮助下解决,第三点,需要测试。

[ARM]usb驱动 作者 gdpiao 日期 2008-8-5 12:11:00

最近的项目使用了NXP的LPC2148,有个USB Device ,想弄很久了,最近终于找到了机会。

之前不知道在哪里down了一个demo,是LPC2148端的source来的,没细看,大概意思是驱动USB端,跟PC通讯的吧。当时试了一下,连上USB没反应,也没时间深入去探究,就放到一边了。

后来才发现,LPC2148如果要用USB得使用12MHZ的Crystal的,N年都没用过12MHZ的了,好在前段时间找到了一个废弃的U盘,上面有一个12MHZ的,便拿来用了。

demo烧下去了,连上PC,结果PC端缺少驱动,真是郁闷阿。。。。。。

用USBView 已经可以读到Descrition 了,但是设备管理上面还是有一个大大的感叹号。。网上想找个驱动,却发现很少有。有部分介绍的,也是十分简陋,不够详细。弄了大半天,大概知道需要安装这些东西:VC--- WinDDK---- DriverStudio 。3个软件都还算好找,噼里啪啦就下了,TNND,害得我还被网管封了IP,狂晕。

根据网上一个介绍运行了一个向导,搞了一个基本的测试程序,结果编译不通过。

好在willing 网友提示,需要编译库,这才解决了问题。


……
[ARM]Insufficient RAM for Flash Algorithms ! 作者 gdpiao 日期 2008-5-15 21:10:00

今天有网友遇到这个问题了。于是我去测试了一下,发觉还真的不可以直接写入去。

后来在网上找到2个信息:

This can have two reasons:

a) JTAG clock set to high. Use RTCK or 200KHz as JTAG clock for this device.

b) Project - Options - Utilities - ULINK Settings - RAM for Algorithm incorrect. Should be Start: 0x40000000 Size: 0x800 for this device.

 

因为手头上的电路板没原理图,也没细看是不是没有连接RTCK,所以就选择了200KHz的clock,一试果然ok。

于是我再测试手头上的2103,使用2MHz也没问题,估计上2368的一个BUG吧。暂时不管它,有机会再深入研究。


……
[ARM]库函数使用要慎重 作者 gdpiao 日期 2008-2-14 3:24:00

以前使用过Sprintf 觉得十分方便,今天遇到大问题。

环境:LPC2148 uCOS

void Task(viod *pd)

{

...........

sprintf((char *)(tmpbuf+3),"%0.5lf",curtime);

..........

}

 

结果发现出错,经仔细检查发现是Stack 溢出了。

到网上一搜sprintf的源码才发现sprintf 需要申请不小的内存。以后在使用的时候真的是要小心啊!

[ARM]FAT文件系统的一些关键点 II 作者 gdpiao 日期 2007-12-27 9:11:00
接着昨天的话题,如果说只是使用某一种FAT格式,是比较容易的,而我的目的是要做一个兼容的FAT,可以支持FAT12,FAT16以及FAT32,因而,对于NextClustor的编程,是其中一个关键。下面先来看看一段代码:
if( partition.fat_type==FAT12 )
    {
   cluster &= 0xfff; //FAT12 is actually 12 bit
   sizeofCluster = 1;  //1.5
   offsetdata = cluster+cluster/2;
     }
 else if( partition.fat_type==FAT16 )
    {
   cluster &= 0xffff; //FAT16 is actually 16 bit
   offsetdata = cluster*2;
  
……
首页 上一页 下一页 尾页 页次:1/6页  10篇日志/页 转到:

载入中...

载入中...

About Me

载入中...

Category

载入中...

newlog

载入中...

Recent Comments

载入中...

Recent Message

载入中...

Links

Search

Statistics

载入中...