全志F1C200S F1C100S 介绍-程序员宅基地

技术标签: F1C200S  F1C100S  全志f1c100s  全志f1c200s  内置DDR  

很久以前发现了一颗性价比极高而且比较好玩的SOC,加群请仔细阅读本博客(见DKTool界面,请备注“来自博客”)

那就是全志F1C100S F1C200S,其中F1C100S内置32MB DDR1内存,F1C200S内置64MB DDR1内存。

这个片子能从淘宝轻松的买到,如果找靠谱的店家或者找代理商的话,F1C100S 是10块钱一片,F1C200S是13块钱一片。

从淘宝买一定要注意分辨是拆机还是库存还是正规代理货源,千万别图便宜,拆机良率可能20%;

 根据用量,找代理商价格100s是9元多,200s是13块左右。我有靠谱的代理联系方式,并可提供BSP。

这么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。

我们玩的以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,linux-5.6不支持硬解解码编码。其中荔枝派用的就是这个,有很多东西也是他们维护的。另外前一阵火的运行linux的名片用的就是这个片子。

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调试开发。

9.VFS,这是simon大佬公司维护的项目,使用IAR,在单片机上跑裸机,并可以运行linux子系统。 

10.Aodzip大佬做了uboot kernel rootfs的buildroot的支持,并且uboot支持dfu下载程序,支持spi nor启动,spi nand启动,sdio0 4bit 的TF卡,SD NAND,emmc启动;sdio1 1bit 的tf卡或emmc或sd nand的启动。并且支持dfu烧写。好像还支持硬件解码编码,有大佬可以试试。

玩F1C200S的人大部分是想用来带屏的,所以GUI是大家关心的。 列举一些大家使用的GUI。

1、周立功的AWTK(首推,打算PDA就用这个了)

2、开源的littlevgl GUI

3、Qt

4、minigui

5、RTX

总之,这款片子被大家玩起来了。我也做了个核心板。

粗略算过,不算flash,核心的BOM成本在15块钱。如果全部自己手焊的话,一块板子不到20。

这是我画的板子,做了几十个挂淘宝已经卖完了。欢迎大家一起来玩,一起交流。

现在下图中的板子已经淘汰了,我又设计了新板子呢,而且在做手持机。现在没有可卖的了。如果有想要核心板PCB的话,我可以出售立创EDA工程文件,可以在本文中找到联系群号。我自己都没有可以用的了。

上图中最底部的两个板子就是最新的核心板,增加了LCD接口,也能接通用40PIN的显示屏了。但我没有 继续做下去,毕竟核心板并不好玩,做来卖也是赚不了几十块钱,而且很麻烦。有一款我在立创库里开源过,后来 无人问津就关闭了呢。

所以玩就玩的好, 想必各位买板子回去也是想接各种东西进行测试的,所以为什么不做一个集成的板子呢!

于是PDA开始设计。

PCB板也已经做好了。

另外3D图也设计了一下。

因为视频不好上传,就不上传了,发个截图吧。

同时呢, 为了方便烧写 固件什么的方便一些,我做个了windows下的图形烧录工具(其实就是封装了一下sunxi-fel)

1、支持监测插入电脑的芯片型号,判断是F1C100S还是F1C200S,

2、支持监测spi flash的容量

3、支持烧录文件到spi flash

4、支持读取spi flash数据以文件的方式存储

5、支持烧写文件到DDR

6、支持读取DDR中数据以文件方式存储

7、支持读写指定内存地址的32bit数据(可以读写ddr,也可以用来设置寄存器啥的)

8、我觉得最好的功能还就集成了USB驱动部分,DKTool驱动就是本工具使用的驱动,

另一个则是烧录全志官方BSP固件用的工具。

(全志BSP生成的固件内包含了很多东西,比较复杂,搞不懂)


 


202012月最新DKTool,增加了whycan.cn晕哥的大招,将flash设备模拟为TF卡,内嵌了多款第三方软件


烧写工具还有很多BUG需要完善,所以不在这发布了。可以到群里去找,最新版本0229,不再更新。以后PDA出来再做配套软件,会加上可以烧写emmc等功能。

4层板的PDA正在进行中,还制作了钢网,OK了后续再更新。

PDA的硬件第一版有些不合理,又做了第二版,就是 下面的工程版PDA。

工程PDA算是OK了,知道了一些BUG,下一版不出问题就是正式版了,

另外,RGB屏已经驱动成功,音频带喇叭也已经驱动成功,N76E003的 烧录我要改版到可以使用一个Type-C口烧录。

N76E003模拟N多个额PCF8574。

不出现什么意外,今年看看能不能做出来。

2020今年家有喜事,暂时放下了一段时间,慢慢来吧。

下面绿色的框子不太好看,正式版用的是黑色亚克力。

2020年10月:

3寸屏太小了,板子上塞不了多少东西,于是我又换了一个屏幕3.5寸的(大显家的)。

在此说一下PDA的配置

CPU:F1C100S/F1C200S

RAM:内置32MB/64MB

Flash:TF卡槽焊盘+SD Nand焊盘+EMMC焊盘(看情况进行焊接)

音频:麦克风+iphone6以上高音质喇叭

接口:Type-C USB2.0 slave;充电、单片机/SOC下载程序、串口调试单片机/SOC、调试蓝牙模块

           USB2.0 母口  可以插U盘

按键:美上美优质滚轮编码器(手感贼棒!!!)

屏幕:3.5寸电容触摸 480*800分辨率 IPS屏 非全贴合

摄像头:OV5640 500万像素

WiFi:ESP8266EX  工作在sdio网卡模式,实测速度1MB/S

蓝牙:杰里方案,支持连接手机,通过该蓝牙,可以手机放歌,当蓝牙音箱用;可以借助蓝牙功能,PDA实现打电话功能。可以BLE数据传输,通过微信小程序配置WIFI网络。

电源管理:暂时保密,同时锂电池充电管理

电池:诺基亚BL-5C  1000mAh

包边:不锈钢装饰条

正反面:亚克力广告贴(最终效果逼格高!)

2021年7月:

换屏了,3.8寸的带弧度的屏,这样做出来才像PDA

画一半,先发一下。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/tunqimai9331/article/details/95938903

智能推荐

获取大于等于一个整数的最小2次幂算法(HashMap#tableSizeFor)_整数 最小的2的几次方-程序员宅基地

文章浏览阅读2w次,点赞51次,收藏33次。一、需求给定一个整数,返回大于等于该整数的最小2次幂(2的乘方)。例: 输入 输出 -1 1 1 1 3 4 9 16 15 16二、分析当遇到这个需求的时候,我们可能会很容易想到一个"笨"办法:..._整数 最小的2的几次方

Linux 中 ss 命令的使用实例_ss@,,x,, 0-程序员宅基地

文章浏览阅读865次。选项,以防止命令将 IP 地址解析为主机名。如果只想在命令的输出中显示 unix套接字 连接,可以使用。不带任何选项,用来显示已建立连接的所有套接字的列表。如果只想在命令的输出中显示 tcp 连接,可以使用。如果只想在命令的输出中显示 udp 连接,可以使用。如果不想将ip地址解析为主机名称,可以使用。如果要取消命令输出中的标题行,可以使用。如果只想显示被侦听的套接字,可以使用。如果只想显示ipv4侦听的,可以使用。如果只想显示ipv6侦听的,可以使用。_ss@,,x,, 0

conda activate qiuqiu出现不存在activate_commandnotfounderror: 'activate-程序员宅基地

文章浏览阅读568次。CommandNotFoundError: 'activate'_commandnotfounderror: 'activate

Kafka 实战 - Windows10安装Kafka_win10安装部署kafka-程序员宅基地

文章浏览阅读426次,点赞10次,收藏19次。完成以上步骤后,您已在 Windows 10 上成功安装并验证了 Apache Kafka。在生产环境中,通常会将 Kafka 与外部 ZooKeeper 集群配合使用,并考虑配置安全、监控、持久化存储等高级特性。在生产者窗口中输入一些文本消息,然后按 Enter 发送。ZooKeeper 会在新窗口中运行。在另一个命令提示符窗口中,同样切换到 Kafka 的。Kafka 服务器将在新窗口中运行。在新的命令提示符窗口中,切换到 Kafka 的。,应显示已安装的 Java 版本信息。_win10安装部署kafka

【愚公系列】2023年12月 WEBGL专题-缓冲区对象_js 缓冲数据 new float32array-程序员宅基地

文章浏览阅读1.4w次。缓冲区对象(Buffer Object)是在OpenGL中用于存储和管理数据的一种机制。缓冲区对象可以存储各种类型的数据,例如顶点、纹理坐标、颜色等。在渲染过程中,缓冲区对象中存储的数据可以被复制到渲染管线的不同阶段中,例如顶点着色器、几何着色器和片段着色器等,以完成渲染操作。相比传统的CPU访问内存,缓冲区对象的数据存储和管理更加高效,能够提高OpenGL应用的性能表现。_js 缓冲数据 new float32array

四、数学建模之图与网络模型_图论与网络优化数学建模-程序员宅基地

文章浏览阅读912次。(1)图(Graph):图是数学和计算机科学中的一个抽象概念,它由一组节点(顶点)和连接这些节点的边组成。图可以是有向的(有方向的,边有箭头表示方向)或无向的(没有方向的,边没有箭头表示方向)。图用于表示各种关系,如社交网络、电路、地图、组织结构等。(2)网络(Network):网络是一个更广泛的概念,可以包括各种不同类型的连接元素,不仅仅是图中的节点和边。网络可以包括节点、边、连接线、路由器、服务器、通信协议等多种组成部分。网络的概念在各个领域都有应用,包括计算机网络、社交网络、电力网络、交通网络等。_图论与网络优化数学建模

随便推点

android 加载布局状态封装_adnroid加载数据转圈封装全屏转圈封装-程序员宅基地

文章浏览阅读1.5k次。我们经常会碰见 正在加载中,加载出错, “暂无商品”等一系列的相似的布局,因为我们有很多请求网络数据的页面,我们不可能每一个页面都写几个“正在加载中”等布局吧,这时候将这些状态的布局封装在一起就很有必要了。我们可以将这些封装为一个自定布局,然后每次操作该自定义类的方法就行了。 首先一般来说,从服务器拉去数据之前都是“正在加载”页面, 加载成功之后“正在加载”页面消失,展示数据;如果加载失败,就展示_adnroid加载数据转圈封装全屏转圈封装

阿里云服务器(Alibaba Cloud Linux 3)安装部署Mysql8-程序员宅基地

文章浏览阅读1.6k次,点赞23次,收藏29次。PS: 如果执行sudo grep 'temporary password' /var/log/mysqld.log 后没有报错,也没有任何结果显示,说明默认密码为空,可以直接进行下一步(后面设置密码时直接填写新密码就行)。3.(可选)当操作系统为Alibaba Cloud Linux 3时,执行如下命令,安装MySQL所需的库文件。下面示例中,将创建新的MySQL账号,用于远程访问MySQL。2.依次运行以下命令,创建远程登录MySQL的账号,并允许远程主机使用该账号访问MySQL。_alibaba cloud linux 3

excel离散度图表怎么算_excel离散数据表格-Excel 离散程度分析图表如何做-程序员宅基地

文章浏览阅读7.8k次。EXCEL中数据如何做离散性分析纠错。离散不是均值抄AVEDEV……=AVEDEV(A1:A100)算出来的是A1:A100的平均数。离散是指各项目间指标袭的离散均值(各数值的波动情况),数值较低表明项目间各指标波动幅百度小,数值高表明波动幅度较大。可以用excel中的离散公式为STDEV.P(即各指标平均离散)算出最终度离散度。excel表格函数求一组离散型数据,例如,几组C25的...用exc..._excel数据分析离散

学生时期学习资源同步-JavaSE理论知识-程序员宅基地

文章浏览阅读406次,点赞7次,收藏8次。i < 5){ //第3行。int count;System.out.println ("危险!System.out.println(”真”);System.out.println(”假”);System.out.print(“姓名:”);System.out.println("无匹配");System.out.println ("安全");

linux 性能测试磁盘状态监测:iostat监控学习,包含/proc/diskstats、/proc/stat简单了解-程序员宅基地

文章浏览阅读3.6k次。背景测试到性能、压力时,经常需要查看磁盘、网络、内存、cpu的性能值这里简单介绍下各个指标的含义一般磁盘比较关注的就是磁盘的iops,读写速度以及%util(看磁盘是否忙碌)CPU一般比较关注,idle 空闲,有时候也查看wait (如果wait特别大往往是io这边已经达到了瓶颈)iostatiostat uses the files below to create ..._/proc/diskstat

glReadPixels读取保存图片全黑_glreadpixels 全黑-程序员宅基地

文章浏览阅读2.4k次。问题:在Android上使用 glReadPixel 读取当前渲染数据,在若干机型(华为P9以及魅族某魅蓝手机)上读取数据失败,glGetError()没有抓到错误,但是获取到的数据有误,如果将获取到的数据保存成为图片,得到的图片为黑色。解决方法:glReadPixels实际上是从缓冲区中读取数据,如果使用了双缓冲区,则默认是从正在显示的缓冲(即前缓冲)中读取,而绘制工作是默认绘制到后缓..._glreadpixels 全黑