全志F1C100S F1C200S,其中F1C100S内置32MB DDR1内存,F1C200S内置64MB DDR1内存。
而他们能从淘宝轻松的买到,如果找靠谱的店家或者找代理商的话,F1C100S 是10块钱一片,F1C200S是13块钱一片。
从淘宝买一定要注意分辨是拆机还是库存还是正规代理货源,千万别图便宜,拆机良率可能20%;
根据用量,找代理商价格100s是9元多,200s是13块左右。
这么10来块钱,32MB 和 64MB 的外扩内存都买不到啊,用来驱动RGB屏幕啥的,STM32赶紧靠边站。
其实F1C100S F1C200S F1C500S F1C600 R6都是一个芯片,他们都是QFN88封装。
资源方面,
ARM926ejs内核,主频默认408MHz,据了解做产品出货的一般在600M左右,也有720M出货的。
有人说可以跑到900MHz,但我没有成功,uboot还没起来就挂了。
带有100M的SPI接口,2个SDIO接口,1个USB OTG接口,还有CSI摄像头接口,LCD RGB显示屏接口,音频接口。
I2C I2S UART PWM等等。
因为引脚比较少,所以复用严重,但也是有考虑的,如果IO不够用,就使用I2C扩展IO。
物联网芯片性价比之王,全志F1C200S F1C100S系列芯片介绍
我们玩的以F1C100S和F1C200S为主。
目前能从网上找到的只有F1C200S和F1C600的寄存器手册。其实他们里面的内容都是一模一样的。
目前能找到F1C200s和F1C600的完整数据手册和寄存器手册,当然完整是相对的,基础外设的寄存器都是开放的,高级解码部分是不开放的。
关于F1C100S/F1C200S的资料,可以从挖坑网获得,whycan.cn(资料非常零散,找出自己需要的不易)
里面真是花式玩F1C100S,下面按照系统区分来列举一下:
1.流出的全志官方C600的BSP ,linux-3.10。支持硬解码编码,但不支持TVIN。可以从github搜到源码,因为C600面向的是智能音箱,所以bsp部分并没有默认支持显示屏,需要自己趟坑修改。其他问题不知。
2.全志官方的RTOS,名叫melis 2.0。这是全志自己的小系统,支持所有外设,硬件解码编码,TVIN,TVOUT各种外设,学习难度也是很大的,开发环境也是很难,如果能玩转,出些产品还是可以的。不过一般没人去研究他哈。(坑网可以获得)
3.全志官方的linux,名叫tina。有针对F1C200S的tina版本,3.0或者3.5,内核版本是linux3.10,这个软件支持部分比较丰富,还有比较完善的指导文档。不过这个资料是需要和代理商签NDA的,也就是保密协议,个人或小公司应该是不会被理会的吧。
4.社区支持的有linux-4.15,linux5.2,不支持硬解解码编码。其中荔枝派用的就是这个,有很多东西也是他们维护的。
5.XBOOT,九鼎xboot大佬支持的XBOOT,xboot是可以理解为裸机程序也可以理解为一个小系统,可以用来引导linux,也可以用来直接lua开发(很多人玩裸机或rtt从这里提炼驱动),直接用xboot开发也是比较方便的,在xboot群里有人做公司产品的。
6.RT-thread,这个最开始是RTT支持荔枝派做的,后来RTT有了融资,考虑盈利,把这一部分闭源了做了柿饼pie(串口屏),在网上还能找到之前的资料。原来RTT官方支持的现在不能找到了,不过想玩RTT的饼子们,可以从github找第三方移植的RTT,现在支持了lcd和音频,资料还是不错的。有一个领头人@staunchheart ,他想玩RTT,大家可以找他一起完善 ,他已经可以用RTT的IDE studio进行开发了呢)
7.UCOS,这是xboot群的大佬,自己移植的ucos,把TVOUT都支持了,移植了NES模拟器,并做了掌机开发板,现在淘宝有售,名字叫小淘气科技,价格也很贵哟,人家可是付出了多少个夜晚研究出来的,有需求的希望支持一下,让做技术的人生活的更开心。
8.裸机keil开发,这是坑网达克罗德大神自己写的,在坑网上有资料,还可以用jlink调试开发。
玩F1C200S的人大部分是想用来带屏的,所以GUI是大家关心的。 列举一些大家使用的GUI。
1、周立功的AWTK
2、开源的littlevgl GUI
3、Qt
4、minigui
总之,这款片子被大家玩起来了。我也做了个核心板。
粗略算过,不算flash,核心的BOM成本在15块钱。如果全部自己手焊的话,一块板子不到20。
这是我画的板子,做了几十个挂淘宝已经卖完了。欢迎大家一起来玩,一起交流。
现在下图中的板子已经淘汰了,我又设计了新板子呢,而且在做手持机。现在没有可卖的了。我自己都快没有可以用的了。
答案当然是可以,只不过需要进行多处适配,这些坑就是由BSP工程师来踩。下面就由高到低介绍下不同等效主频下启动linux的效果。1. 24MHz几个月前,我抽空从零开始diy了一块简单的cortex-a8水果派(基于Cortex-A8内核的荔枝Pi_Cortex-A8开发板-打造工程师的专属众筹平台-电子发烧友网,荔枝派概览 - [ Lichee Pi 荔枝派 全流程指南 ] - 看云),从板级硬件设计,产测,到boot适配,linux,安卓适配等的坑都踩了一遍。过程中为了调试DDR以及测试在低主频下的功耗情况,就曾把ddr时钟和主频降到了最低的24M.在24M ddr时钟下我甚至成功用入门级100M带宽示波器生成了眼图…实测效果是,基本不用做太多适配,系统就能起来,只是速度慢了很多,原本在1g主频下20s不到启动的,现在需要超过五分钟(具体时间忘了,记得的另一个数据是96M时需要122s),而且由于时钟太慢,800*480的屏幕刷新不过来,出现了严重的图像的d跳/抖动现象,已经无法保证屏幕时序了…不过估计在128*64的点阵屏上还可以 逃(
其实这个感觉有点像关掉icache/dcache的效果,关掉之后连串口终端的回显都不利索了…看上去在24M时结果并没有什么特别的,只是简单的慢了小几十倍而已…其实这基本就是286的主频了,当年286跑dos不就很流畅吗,为啥是24M,不能更低了吗?因为我用的芯片的外置晶振就是24M,主频是由它倍频上去,而无法分频…
2. 10KHz,相比前面的降两个数量级,这次直接降三个数量级看看,某些童鞋应该已经猜到这个等效主频是什么情况下的了:对的,就是在本身主频只有24M的八位avr单片机上跑arm模拟器来启动linux,得到的等效主频不到10KHz,看看作者自己的评价:uARM is certainly no speed demon. It takes about 2 hours to boot to bash prompt ("init=/bin/bash" kernel command line). Then 4 more hours to boot up the entire Ubuntu ("exec init" and then login). Starting X takes a lot longer. The effective emulated CPU speed is about 6.5KHz, which is on par with what you'd expect emulating a 32-bit CPU &MMU on a measly 8-bit micro. Curiously enough, once booted, the system is somewhat usable. You can type a command and get a reply within a minute. That is to say that you can, in fact, use it. I used it to day to format an SD card, for example.
所以到此我们对于电脑卡有了新的理解,也可以了解到做好系统适配,再慢的u都能跑起来。
因此再看这个问题就不会觉得有什么奇怪的了。
3. <5Hz再次降三个数量级,直接到目标频率。这个是我参考前面的数据估算的等效主频,权当yy吧。多数人都知道32/64位cpu,了解dos时代的16位cpu,听过八位的单片机,少数人也许也知道更低成本的四位单片机(只能用汇编编程),但要实现数Hz的等效主频,这些都还太快…其实在dos时代,工控领域还活跃着一朵奇葩: 一位机,以MC14500B为代表。MC14500B - Wiki自身主频是100KHz,再加上只有八位机八分之一的带宽,如果在这个一位机上跑avr模拟器,再跑arm模拟器,那等效主频绝对在5Hz以内。
真跑起来的话,可能就需要小半年才跑到init,快一年到login,若干年来startx...
4. mHz,编不下去了…mHz的话,应该MC的红石电路可以吧!那时可能要用一辈子去看linux启动了…
当然不跑模拟器的话,也许能跑到和一位机比肩的速度呢!
5. 其实计算机的发展就是从最开始几十Hz的继电器开始的,把我的答案倒回去看就是计算机发展史啊!
在这个多数人认为是大开脑洞的问题下,却正是半个多世纪前科学家们实际面临的问题,阿波罗登月时代的常规内存甚至不到1KB,就靠这种容量和主频的数字系统(这时都没有真正意义上的cpu),却能够完成登月任务。相比而言,现在程序员们做的压力测试是不是弱爆了…
所以那个时代的程序员多数可以被称为计算机科学家,而现在的程序员多数只能被称为程序员吧。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)